Closed Bug 1059498 Opened 5 years ago Closed 5 years ago

Scrolling filtered stuff into view that extends past the unfiltered bounds doesn't paint properly

Categories

(Core :: Layout, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla35
Tracking Status
firefox31 --- unaffected
firefox32 --- unaffected
firefox33 --- unaffected
firefox34 + fixed
firefox35 + fixed

People

(Reporter: mstange, Assigned: mstange)

References

Details

(Keywords: regression)

Attachments

(3 files)

Attached file testcase
I thought this used to work, so this may be a recent regression.

STR:
 1. Load the testcase.
 2. Scroll down.
 3. Slowly scroll back up.

The blue shadow should be painted completely as it gets visible. Instead, it's only painted when you've scrolled up far enough that parts of the green square are also visible.
This regressed between July 18th and July 20th, so it's probably due to bug 1022612.
Blocks: 1022612
Keywords: regression
Attached patch v1Splinter Review
When building the display list for the filter's stacking context, we were initializing the display items with the post-filter dirty rect instead of the pre-filter dirty rect because the call to nsSVGIntegrationUtils::GetRequiredSourceForInvalidArea was happening after we already passed the post-filter dirtyRect to the AutoBuildingDisplayList thing. So the filtered background color item's mVisibleRect, which is initialized using aBuilder->GetDirtyRect(), ended up outside the item's bounds, which meant that it didn't contribute any visible area to the basic thebes layer that's built for the filter's inactive layer manager later.
Attachment #8482349 - Flags: review?(roc)
The reftest failures in that try push are from a different patch (bug 1009786).
https://hg.mozilla.org/mozilla-central/rev/39a8d9b2b639
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Flags: in-testsuite+
Resolution: --- → FIXED
Target Milestone: --- → mozilla35
[Tracking Requested - why for this release]: regression, caused by bug 1022612
Comment on attachment 8482349 [details] [diff] [review]
v1

Approval Request Comment
[Feature/regressing bug #]: caused by bug 1022612
[User impact if declined]: incomplete drawing on pages that use filters
[Describe test coverage new/current, TBPL]: this patch adds a test, green on m-c
[Risks and why]: low to moderate, test coverage is fairly good in this area
[String/UUID change made/needed]: none
Attachment #8482349 - Flags: approval-mozilla-aurora?
(This seems to have caused bug 1059498; we probably should hold off on backporting until we have a fix over there.)
Comment on attachment 8482349 [details] [diff] [review]
v1

Agreed.
Attachment #8482349 - Flags: approval-mozilla-aurora?
Attached patch aurora patchSplinter Review
This patch includes the regression fix from bug 1062870.

Approval Request Comment
[Feature/regressing bug #]: caused by bug 1022612
[User impact if declined]: incomplete drawing on pages that use filters
[Describe test coverage new/current, TBPL]: this patch adds a test, green on m-c
[Risks and why]: low to moderate
[String/UUID change made/needed]: none
Attachment #8488737 - Flags: approval-mozilla-aurora?
Comment on attachment 8488737 [details] [diff] [review]
aurora patch

Aurora+
Attachment #8488737 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
You need to log in before you can comment on or make changes to this bug.