Closed Bug 116394 Opened 22 years ago Closed 16 years ago

Tab borders disappear (classic skin only)

Categories

(SeaMonkey :: Themes, defect)

x86
Linux
defect
Not set
minor

Tracking

(Not tracked)

RESOLVED WORKSFORME
Future

People

(Reporter: cgushue, Unassigned)

References

()

Details

(Keywords: classic, helpwanted, polish)

Attachments

(3 files)

From Bugzilla Helper:
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:0.9.7+)
Gecko/20011220
BuildID:    2001122003

If you have multiple tabs open, and close the last one to the right while it is
focused, the second last tab will have part of its right edge cut off. This
doesn't happen if you right click on the tab, while it is NOT focused, and close it.

Reproducible: Always
Steps to Reproduce:
1. Make sure the tab bar is visible
2. Open a link in a new tab
3. Make sure that the new tab is focused
4. Close the new tab again
5. The last tab on the bar will now have part of the edge gone

Actual Results:  The right edge of the tab disappears.

Expected Results:  The tab should have changed back to how it would normally
look if it was the last tab in tha tab bar.

I believe this has been a problem in the Classic theme since tabbed browsing was
implemented
Status: UNCONFIRMED → NEW
Ever confirmed: true
Status: NEW → ASSIGNED
Target Milestone: --- → Future
*** Bug 132687 has been marked as a duplicate of this bug. ***
*** Bug 136157 has been marked as a duplicate of this bug. ***
related: bug 109607
Adding words to summary to make bug more findable in searches, adding keywords,
nominating for nsbeta1. This bug is pretty visible.

I can see this on Linux, win2000 and winxp, platform -> all
Keywords: classic, nsbeta1, polish, ui
OS: Windows 2000 → All
Hardware: PC → All
Summary: Problem with tabs in Classic theme → Problem with tabs in Classic theme (tab borders disappearing)
Here's how to make all tab borders disappear:

1) use classic, have 5 tabs open
2) switch to the 1st tab, close it
3) switch to 4th tab, close
4) switch to 2nd tab, close

The result: Two tabs with no borders at all.
nsbeta1- per Nav triage team. helpwanted
Keywords: nsbeta1helpwanted, nsbeta1-
Workaround: since this bug only happens when closing the current tab, a quick
workaround could be that when the user wants to close the active tab, mozilla
would figure out which tab would have focus after this one is closed (currently
that's always the tab to the left, see eg bug 105722), switch to that tab and
then close the tab that was originally meant to be closed. That would fix most
problems.
The underlying problem seems to be that in classic theme, an active tab is wider
than an inactive one, and the active tab overlaps its neighbours' borders. When
a tab is closed, the tab to the left becomes active but isn't given enough
"room" for the right border to fit in. When the right-borderless tab is also the
rightmost, it won't have enough space in the tab bar to draw its right border --
until a new tab is created and it can draw its right border on top of that tab's
left border:

1. create 3 tabs
2. close the last one (the second one loses its right border) 
3. create a new tab 
4. switch to the 2nd -> it has a border again

However, if the borderless tab has a tab on its right side, the next time it is
activated, the right border reappears:

1. create 3 tabs
2. close the 2nd one (the 1st loses its right border)
3. switch to 2nd, back to 1st -> it has a border again

If the first tab is closed, the new first tab loses its left border. That border
is gone for good, because no new tabs can be created to the left of the first
tab, and thus it won't have any tab borders to overwrite (!)

1. create 3 tabs
2. close the 1st one (1st tab loses its left border, no way to get it back)

Ok, so here's a way to fix this: when a tab is closed, mozilla should make sure
that the new active tab has the right width, and check the other tabs too (and
probably redraw all borders, just to be sure). Note that the widths change when
no more tabs would fit using the current tab width. This should also be taken
into account.

Ps: This checking should also be made when adding a new tab (that can also
resize tabs), ie each tab's width should be checked and borders be redrawn every
time a new tab is added or removed. That would fix bug 116926 too (which is
pretty similar to this one)

(summary: when closing and adding tabs, tab widths should be checked and borders
should be redrawn :)
Summary: Problem with tabs in Classic theme (tab borders disappearing) → Tab borders disappear (classic skin only)
*** Bug 137617 has been marked as a duplicate of this bug. ***
Using the DOM inspector I noticed the following:

Say you have 5 tabs open, and tab 3 is active. Now tab 2 has the
'beforeselected' property, and tab 4 has the 'afterselected' property. This
actives a style with resp. no  left- or rightborder.
Now we close tab 3. Tab 2 becomes the active tab. But tab 2 and tab 4 (which is
now tab 3) keep the properties. So, they still have no border.
I will attach a patch that deselects tha tab before colsing it, so that the
beforeselected and afterselected properties gets removed, and the border is
drawn ok.
Attached patch proposed patchSplinter Review
Deselect tab before removing it.
This bug appears to have been fixed with the recent checkin of a fix to
tabbrowser.xml (See bug 137836) -can anyone else veryify this?
Yes, it looks fixed in build 2002042403 trunk (on Win2k).
(Is that fix already in the branch, too?)
Yep, I tested and tested and couldn't find a way to make the borders disappear
any more (win2000, 2002042403). This should probably be marked as a duplicate of
bug 137836. Or WFM. Either way, this bug is gone. Yay.
It isn't gone on the 1.0.0 branch...
Depends on: 137836
I can't believe that mozilla is going to 1.0 with the disappearing tab border
bug - I'd gotten used to it in the nightlies, so why isn't it fixed in 1.0? This
makes mozilla look broken, and I can't recommend it to people with such a user
visible bug. I hope this has just been overlooked..
With recent checking of updated tabbrowser.xml to 1.0 branch this is now no
longer a problem on trunk and 1.0 branch. Hurrah.
It's working fine for me on RC3 - now the skin is actually usable :)
Status: ASSIGNED → RESOLVED
Closed: 22 years ago
Resolution: --- → FIXED
There is a similar bug with mozilla-1.6-beta 2003121012 (and mozilla-1.5) under
Linux. The left side border of the first tab is not drawn when closing the first
tab. To reproduce do the following:
1) Make sure you are using the classic theme
2) Open a couple of tabs (at least 3)
3) Select the first tab and close it
4) Notice how the new first tab is missing the left border.

I've attached a screenshot showing the bug.
This image shows the missing left border of the first tab
reopening.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Severity: trivial → minor
OS: All → Linux
Hardware: All → PC
*** Bug 190110 has been marked as a duplicate of this bug. ***
INVALID?  since this theme is gone?
Assignee: hewitt → nobody
Status: REOPENED → NEW
QA Contact: pmac → themes
WFM is better than nothing
Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9pre) Gecko/2008042302 SeaMonkey/2.0a1pre
Status: NEW → RESOLVED
Closed: 22 years ago16 years ago
Resolution: --- → WORKSFORME
Product: Core → SeaMonkey
You need to log in before you can comment on or make changes to this bug.