Closed
Bug 301807
Opened 19 years ago
Closed 19 years ago
On startup, tabbar isn't drawn
Categories
(Core Graveyard :: GFX: Mac, defect)
Tracking
(Not tracked)
VERIFIED
FIXED
mozilla1.8beta4
People
(Reporter: asaf, Assigned: sfraser_bugs)
Details
(Keywords: regression)
Attachments
(1 file, 1 obsolete file)
4.75 KB,
patch
|
mark
:
review+
jhpedemonte
:
review+
sfraser_bugs
:
superreview+
benjamin
:
approval1.8b4+
|
Details | Diff | Splinter Review |
Seen usijn: Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8b4)
Gecko/20050721 Firefox/1.0+
STR:
1) Turn off "Hide the tab bar" (Prefs->Tabs)
2) Restart the browser
-> Everything is drawn but the tabbar
If you mousehover the first tab area, part of it is drawn, the rest of the
tabbar is drawn after resize actions, etc.
probably a regression from bug 289973
Reporter | ||
Updated•19 years ago
|
Flags: blocking1.8b4?
Target Milestone: --- → mozilla1.8beta4
Assignee | ||
Comment 1•19 years ago
|
||
crap
Assignee | ||
Comment 2•19 years ago
|
||
I can't reproduce this in my build. Also, unlikely a regression from bug 289973
because the window isn't being resized. More likely related to the various
scrollbar futzing.
Reporter | ||
Comment 3•19 years ago
|
||
Note that I first get the profile manager window (intended, of course) which
means the browser window isn't focused/active until I foucus it (known bug).
Comment 4•19 years ago
|
||
I can reproduce what Mano's seeing. It was caused directly by that other thing
that bug 289973 did, namely, switching from HandleUpdateEvent() directly to
Update().
Comment 5•19 years ago
|
||
I can't reproduce with Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US;
rv:1.8b4) Gecko/20050722 Firefox/1.0+
Assignee | ||
Comment 6•19 years ago
|
||
(In reply to comment #4)
> I can reproduce what Mano's seeing. It was caused directly by that other thing
> that bug 289973 did, namely, switching from HandleUpdateEvent() directly to
> Update().
I made that change because we need to do BeginUpdate/EndUpdate in response to
the kEventWindowUpdate event. It wasn't clear to me why it went through
mMacEventHandler, but maybe I changed the widget that Update was called on?
Assignee | ||
Comment 7•19 years ago
|
||
I still can't repro. Mano, what page loads when you start the browser? Does it
happen if the profile manager doesn't show first?
Reporter | ||
Comment 8•19 years ago
|
||
<Shrung/> I can't reproduce it anymore...
Mark, could you check those details in your build (assuming you're still able to
reproduce it)?
Comment 9•19 years ago
|
||
I see it both in the official nightly and a couple of my own builds. On a fresh
profile, clear the hide-when-only-one-tab preference and set your home page to
about:blank. Quit and launch again from the command line with a -profilemanager
argument to ensure that the app starts backgrounded after you select a profile.
If you've got a home page set, all of that extra drawing is probably reviving
the tab bar.
Updated•19 years ago
|
Flags: blocking1.8b4? → blocking1.8b4+
Comment 10•19 years ago
|
||
I experienced the same problem while upgrading to the 0725 build. On first
launch, the browser loads with the default theme (I use a custom theme), and
with the tab bar invisible.
At first, I thought bug 301872 was back, but that is not the case.
When checking the Theme Manager window, the tabbar started painting - not fully,
mind you. In my set up, that window is positioned partly over the browser chrome.
Restarting the browser, and 1/ my custom theme was in use and 2/ no problems
with the tabbar.
Preferences:
about:blank as home page
tabbar: always visible.
Assignee | ||
Comment 11•19 years ago
|
||
I can repro now.
Changing the carbon event handler back to
self->mMacEventHandler->UpdateEvent();
from
self->Update();
which has the effect of bypassing BeginUpdate/EndUpdate results in lots more
full-window redraws, which is slower (but causes the tab bar to draw).
What's odd is that if I log the invalidate calls made on the window, I don't see
one that corresponds to the tab bar area. I need to debug some more.
Assignee: joshmoz → sfraser_bugs
Assignee | ||
Comment 12•19 years ago
|
||
Ah, this is the "invalidate inside a paint" striking Carbon widget. It's also a
race; if I debug or turn on paint flashing then it doesn't happen.
Status: NEW → ASSIGNED
Assignee | ||
Comment 13•19 years ago
|
||
The bug was that there was code in nsWindow::Update() that assumed that the
region redrawn by gecko would not need to be drawn again, so is validated. This
clobbered any changes made to the update region during drawing (by
invalidatation).
The new strategy is to subtract the drawn region from the old update region
(thus preserving dirty areas outside of gecko), and invalidate it, which adds
to (rather than replacing) the new update region.
Assignee | ||
Updated•19 years ago
|
Attachment #190661 -
Flags: superreview?(jhpedemonte)
Attachment #190661 -
Flags: review?(mark)
Comment 14•19 years ago
|
||
Comment on attachment 190661 [details] [diff] [review]
Patch
What's going on with postUpdateRgn?
Assignee | ||
Comment 15•19 years ago
|
||
postUpdateRgn is unused; I should remove it.
Assignee | ||
Comment 16•19 years ago
|
||
Attachment #190661 -
Attachment is obsolete: true
Attachment #190668 -
Flags: superreview?(jhpedemonte)
Attachment #190668 -
Flags: review?(mark)
Assignee | ||
Updated•19 years ago
|
Attachment #190661 -
Flags: superreview?(jhpedemonte)
Attachment #190661 -
Flags: review?(mark)
Comment 17•19 years ago
|
||
Comment on attachment 190668 [details] [diff] [review]
Updated patch
Makes sense. I like.
Attachment #190668 -
Flags: review?(mark) → review+
Updated•19 years ago
|
Attachment #190668 -
Flags: superreview?(jhpedemonte) → review+
Assignee | ||
Updated•19 years ago
|
Attachment #190668 -
Flags: superreview+
Attachment #190668 -
Flags: approval1.8b4?
Updated•19 years ago
|
Attachment #190668 -
Flags: approval1.8b4? → approval1.8b4+
Assignee | ||
Comment 18•19 years ago
|
||
Checked in.
Status: ASSIGNED → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
Reporter | ||
Updated•19 years ago
|
Status: RESOLVED → VERIFIED
Updated•16 years ago
|
Product: Core → Core Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•