Closed
Bug 622542
Opened 14 years ago
Closed 14 years ago
Switching main window between active and inactive doesn't update the title bar active state
Categories
(Core :: Widget: Win32, defect)
Tracking
()
VERIFIED
FIXED
Tracking | Status | |
---|---|---|
blocking2.0 | --- | final+ |
People
(Reporter: bugzilla, Assigned: roc)
References
Details
(Keywords: regression, Whiteboard: [hardblocker][fx4-fixed-bugday])
Attachments
(2 files, 2 obsolete files)
1.50 KB,
patch
|
tnikkel
:
review+
|
Details | Diff | Splinter Review |
7.32 KB,
patch
|
tnikkel
:
review+
|
Details | Diff | Splinter Review |
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:2.0b9pre) Gecko/20110103 Firefox/4.0b9pre
Build Identifier: 20110103030359
If I hide the menu bar, and I open an another program with a non maximized window then the title bar of Firefox doesn't change to inactive automatically, only if I move the cursor over the title bar. Also when I click back to Firefox then it doesn't change back to active.
Reproducible: Always
Steps to Reproduce:
1. Open firefox
2. Open another software with a non maximized window.
3. Make Firefox the active window
4. Click on the other program on the taskbar to make it active
Actual Results:
Firefox' title bar doesn't change to inactive
Expected Results:
It should change to inactive
But there are exceptions when the change is working.
1. Text is selected in Firefox,
2. The cursor is in a textbox in Firefox.
Comment 1•14 years ago
|
||
What windows theme are you using?
The default Luna theme.
I checked with Firefox beta 8 and using this there is no problem.
Comment 3•14 years ago
|
||
confirmed, this should block.
Assignee: nobody → jmathies
Status: UNCONFIRMED → NEW
blocking2.0: --- → ?
Ever confirmed: true
Updated•14 years ago
|
Summary: Switch between active and incative title bar doen't work → Switching main window between active and inactive doesn't update the title bar active state
Updated•14 years ago
|
Keywords: regression
Assignee | ||
Updated•14 years ago
|
blocking2.0: ? → final+
Whiteboard: [hardblocker]
Comment 4•14 years ago
|
||
Can anyone else confirm this goes away after the browser sits open for about a minute?
Comment 5•14 years ago
|
||
Ah, never mind. If you have the cursor focus in the search edit, the problem goes away. Clearly some sort of invalidation/repainting problem.
Comment 6•14 years ago
|
||
Regression range - 12/27 -> 12/28:
http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=24b63f638579&tochange=e928817fb4e9
Comment 7•14 years ago
|
||
(In reply to comment #6)
> Regression range - 12/27 -> 12/28:
>
> http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=24b63f638579&tochange=e928817fb4e9
Confirmed, backing out part 2 from bug 615870 fixes this - Part 2: Track per-display-root-frame 'update layer tree' state bit. r=tnikkel a=b-f
Blocks: 615870
Comment 9•14 years ago
|
||
Any time we get a paint event that wasn't preceded by an nsIFrame::Invalidate call we will try to do an empty transaction. I bet Windows sends us a paint event when we become inactive?
Assignee | ||
Comment 10•14 years ago
|
||
I bet PresShell::DocumentStatesChanged needs to mark the layer tree as needing an update.
Or maybe FrameLayerBuilder::InvalidateAllLayers/InvalidateAllThebesLayerContents/InvalidateThebesLayersInSubtree should all ensure the layer tree gets updated at the next paint.
Comment 11•14 years ago
|
||
(In reply to comment #9)
> Any time we get a paint event that wasn't preceded by an nsIFrame::Invalidate
> call we will try to do an empty transaction. I bet Windows sends us a paint
> event when we become inactive?
We generate this in widget when we receive an activation state change. The nc areas we paint are invalidated.
Assignee | ||
Comment 13•14 years ago
|
||
Does this fix it?
Assignee | ||
Comment 14•14 years ago
|
||
I think we should do something here even if it doesn't fix this bug. Maybe instead of all this leading down to FrameLayerBuilder::InvalidateAllThebesLayerContents, we should call root->InvalidateFrameSubtree() (which didn't exist when this code was written) and remove FrameLayerBuilder::InvalidateAllThebesLayerContents completely.
Comment 15•14 years ago
|
||
Yeah, that fixes it.
Assignee | ||
Comment 16•14 years ago
|
||
Well then, this should fix it too.
Assignee: tnikkel → roc
Attachment #509072 -
Attachment is obsolete: true
Attachment #509232 -
Flags: review?(tnikkel)
Assignee | ||
Comment 17•14 years ago
|
||
Attachment #509239 -
Flags: review?(tnikkel)
Updated•14 years ago
|
Attachment #509232 -
Flags: review?(tnikkel) → review+
Comment 18•14 years ago
|
||
Comment on attachment 509239 [details] [diff] [review]
Remove unused API
I think you might need to remove more code. I think there is one instance of InvalidateAllThebesLayerContents in a comment that this patch does not remove.
Assignee | ||
Updated•14 years ago
|
Keywords: checkin-needed
Whiteboard: [hardblocker] → [hardblocker][needs landing]
Updated•14 years ago
|
Whiteboard: [hardblocker][needs landing] → [hardblocker][has patch]
Assignee | ||
Comment 19•14 years ago
|
||
Assignee | ||
Comment 20•14 years ago
|
||
(In reply to comment #18)
> Comment on attachment 509239 [details] [diff] [review]
> Remove unused API
>
> I think you might need to remove more code. I think there is one instance of
> InvalidateAllThebesLayerContents in a comment that this patch does not remove.
Where?
Comment 21•14 years ago
|
||
http://mxr.mozilla.org/mozilla-central/source/layout/base/FrameLayerBuilder.cpp#746
I don't see that in your diff.
Assignee | ||
Comment 22•14 years ago
|
||
Sorry, I had updated my patch locally and forgot to upload it.
Attachment #509239 -
Attachment is obsolete: true
Attachment #509514 -
Flags: review?(tnikkel)
Attachment #509239 -
Flags: review?(tnikkel)
Comment 23•14 years ago
|
||
Verified fixed in Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0b12pre) Gecko/20110204 Firefox/4.0b12pre
Status: RESOLVED → VERIFIED
Whiteboard: [hardblocker][has patch] → [hardblocker][has patch][fx4-fixed-bugday]
Updated•14 years ago
|
Attachment #509514 -
Flags: review?(tnikkel) → review+
Updated•14 years ago
|
Whiteboard: [hardblocker][has patch][fx4-fixed-bugday] → [hardblocker][has patch][fx4-fixed-bugday][needs landing]
Updated•14 years ago
|
Keywords: checkin-needed
Whiteboard: [hardblocker][has patch][fx4-fixed-bugday][needs landing] → [hardblocker][fx4-fixed-bugday][second patch needs landing][needs landing]
Second patch landed:
http://hg.mozilla.org/mozilla-central/rev/3268bdbd64c4
Keywords: checkin-needed
Whiteboard: [hardblocker][fx4-fixed-bugday][second patch needs landing][needs landing] → [hardblocker][fx4-fixed-bugday]
You need to log in
before you can comment on or make changes to this bug.
Description
•