Closed
Bug 1145263
Opened 10 years ago
Closed 9 years ago
Absolutely positioned element disappears when scrollbox gets active APZ scrolling (absolute element is child of scrolled container layer and positioned outside the scrollbox)
Categories
(Core :: Layout, defect)
Core
Layout
Tracking
()
RESOLVED
FIXED
mozilla46
People
(Reporter: mstange, Assigned: mstange)
References
Details
Attachments
(3 files)
784 bytes,
text/html
|
Details | |
1.69 KB,
patch
|
Details | Diff | Splinter Review | |
14.10 KB,
image/png
|
Details |
If you start scrolling the scrollbox with the black border, the element with the blue border disappears.
Comment 1•10 years ago
|
||
(Note that we didn't even draw the abspos item until bug 1119117.)
I think the clip that we get from SetupScrollingMetadata is to blame. We don't need that, and I don't think we should be adding it when we don't have some kind of async scrolling enabled. But that still means we have the problem with async scrolling.
The container layer is for the opacity div, and so it's animated geometry root is the scrollbox during active scrolling. But it can contain painted layers that have their AGR as the scrollbox (non abs-pos content inside the opacity div) and painted layers that have their AGR as the root scroll frame (the abs-pos element). So we simply can't set a clip on the opacity container layer. We need to set different clips on the child painted layers in order to do it properly.
Comment 2•10 years ago
|
||
Here is what I think we should do. Only assign framemetrics and set clip rects on leaf layers. Container layers may contain content that is contained by an active scroll frame, and content that is not. (scrollinfo layers are a special case, they are a container layer with no children, so a leaf layer).
I don't know if AZPC can handle this without changes though.
Updated•10 years ago
|
Flags: needinfo?(bugmail.mozilla)
Comment 3•10 years ago
|
||
When I load the test case in B2G it looks like this, both with and without the patch. In neither case do I see the rect in the top-left.
Flags: needinfo?(bugmail.mozilla)
Comment 4•10 years ago
|
||
As mentioned on IRC this patch has at least one regression on B2G - if you load the reference-workload-medium, go into the contacts app, go into a contact's details and scroll, the photo doesn't get clipped properly. "Barbara L. Chandler" is a contact for example where this happens, with the robot-head contact photo.
Comment 5•9 years ago
|
||
The attached testcase was fixed by the landing of bug 1148582. Not sure if it can be checked in as a reftest or not, though?
Assignee: nobody → dvander
Status: NEW → RESOLVED
Closed: 9 years ago
Depends on: 1148582
Flags: needinfo?(mstange)
Flags: in-testsuite?
Keywords: regressionwindow-wanted
Resolution: --- → FIXED
Target Milestone: --- → mozilla42
Assignee | ||
Comment 6•9 years ago
|
||
It could be converted into a reftest with a few small tweaks. But on my machine the testcase still fails in today's nightly (e10s + APZ on). Do you know why we are getting different results?
Flags: needinfo?(mstange) → needinfo?(ryanvm)
Comment 7•9 years ago
|
||
Ah, I have APZ disabled. Which would have also been the case for nightlies back in the late-May timeframe, which explains why the testcase worked with mozregression as well.
Guess we should reopen this then, but change scope to reflect that APZ is required to reproduce?
Flags: needinfo?(ryanvm)
Assignee | ||
Comment 8•9 years ago
|
||
Sounds good to me.
Assignee: dvander → nobody
Blocks: apz-desktop
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Summary: Absolutely positioned element disappears when scrollbox gets active scrolling (absolute element is child of scrolled container layer and positioned outside the scrollbox) → Absolutely positioned element disappears when scrollbox gets active APZ scrolling (absolute element is child of scrolled container layer and positioned outside the scrollbox)
Target Milestone: mozilla42 → ---
Assignee | ||
Updated•9 years ago
|
Status: REOPENED → NEW
Assignee | ||
Comment 9•9 years ago
|
||
Bug 1147673 fixed this.
Assignee: nobody → mstange
Status: NEW → RESOLVED
Closed: 9 years ago → 9 years ago
Depends on: 1147673
Resolution: --- → FIXED
Target Milestone: --- → mozilla46
You need to log in
before you can comment on or make changes to this bug.
Description
•