Closed
Bug 591435
Opened 13 years ago
Closed 13 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
(Blocks 1 open bug)
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•13 years ago
|
blocking2.0: --- → ?
Assignee | ||
Comment 1•13 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•13 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•13 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•13 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•13 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•13 years ago
|
||
(In reply to comment #8) > nit: use <!-- --> for those comments Done. Thanks Mats.
Assignee | ||
Updated•13 years ago
|
Attachment #470704 -
Flags: approval2.0?
Assignee | ||
Updated•13 years ago
|
Attachment #470721 -
Flags: approval2.0?
blocking2.0: ? → beta6+
Comment 10•13 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•13 years ago
|
Attachment #470721 -
Flags: approval2.0?
Assignee | ||
Comment 11•13 years ago
|
||
http://hg.mozilla.org/mozilla-central/rev/a7e7578e3ba7 http://hg.mozilla.org/mozilla-central/rev/b38d6617f160
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•