Closed
Bug 591435
Opened 15 years ago
Closed 15 years ago
need to honour paint suppression in subdocuments
Categories
(Core :: Layout, defect)
Core
Layout
Tracking
()
RESOLVED
FIXED
| Tracking | Status | |
|---|---|---|
| blocking2.0 | --- | beta7+ |
People
(Reporter: tnikkel, Assigned: tnikkel)
References
Details
(Keywords: perf)
Attachments
(2 files, 2 obsolete files)
|
8.29 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
|
2.78 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
We only look at the paint suppression of the root document we are painting. We never check if a subdocument we are painting is suppressed. Adding bug 130078 into the mix makes this a lot more important to do since the main content window is now a subdocument.
Updated•15 years ago
|
blocking2.0: --- → ?
| Assignee | ||
Comment 1•15 years ago
|
||
Assignee: nobody → tnikkel
Attachment #470704 -
Flags: review?(roc)
+ if (builder.GetHadToIgnorePaintSuppression()) {
+ willFlushLayers = PR_TRUE;
+ }
This should be unnecessary, if we modify PresShell::UnsuppressAndInvalidate to call rootFrame->InvalidateFrameSubtree() --- which just landed!
| Assignee | ||
Comment 3•15 years ago
|
||
content/base/test/test_bug333198.html and content/events/test/test_bug402089.html use nsIDOMWindowUtils::SendMouseEvent to send some events off onload, in PresShell::HandleEvent when we call nsLayoutUtils::GetFrameForPoint it does not pass true for ignore paint suppression so the events don't find their intended targets.
Attachment #470711 -
Flags: review?(roc)
| Assignee | ||
Comment 4•15 years ago
|
||
Use InvalidateFrameSubtree in UnsuppressAndInvalidate instead of keeping track.
Attachment #470704 -
Attachment is obsolete: true
Attachment #470716 -
Flags: review?(roc)
Attachment #470704 -
Flags: review?(roc)
| Assignee | ||
Comment 5•15 years ago
|
||
Fix tests better.
Attachment #470711 -
Attachment is obsolete: true
Attachment #470721 -
Flags: review?(roc)
Attachment #470711 -
Flags: review?(roc)
+ // *and after* we draw. We don't need flush for PAINT_IGNORE_SUPPRESSION
+ // because we flush in PresShell::UnsuppressAndInvalidate.
Hmm. I think I put you wrong. If someone does a paint with PAINT_IGNORE_SUPPRESSION, and then we do a normal paint, seems like we'll paint the contents of ThebesLayers that show unsuppressed content.
Comment on attachment 470704 [details] [diff] [review]
Part 1. Honour paint suppression in subdocuments.
Let's go with this.
Attachment #470704 -
Attachment is obsolete: false
Attachment #470704 -
Flags: review+
Attachment #470716 -
Attachment is obsolete: true
Attachment #470716 -
Flags: review?(roc)
Attachment #470721 -
Flags: review?(roc) → review+
Comment 8•15 years ago
|
||
Comment on attachment 470721 [details] [diff] [review]
Part 2 v2. Fix tests that were relying on a lack of paint suppression in subdocuments.
nit: use <!-- --> for those comments
| Assignee | ||
Comment 9•15 years ago
|
||
(In reply to comment #8)
> nit: use <!-- --> for those comments
Done. Thanks Mats.
| Assignee | ||
Updated•15 years ago
|
Attachment #470704 -
Flags: approval2.0?
| Assignee | ||
Updated•15 years ago
|
Attachment #470721 -
Flags: approval2.0?
blocking2.0: ? → beta6+
Comment 10•15 years ago
|
||
Comment on attachment 470704 [details] [diff] [review]
Part 1. Honour paint suppression in subdocuments.
Land it, please!
Attachment #470704 -
Flags: approval2.0?
Updated•15 years ago
|
Attachment #470721 -
Flags: approval2.0?
| Assignee | ||
Comment 11•15 years ago
|
||
http://hg.mozilla.org/mozilla-central/rev/a7e7578e3ba7
http://hg.mozilla.org/mozilla-central/rev/b38d6617f160
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•