Bug 198086

Summary: Layer with negative z-index in a scroller doesn't scroll with the scroller
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: CompositingAssignee: Simon Fraser (smfr) <simon.fraser>
Status: ASSIGNED    
Severity: Normal CC: koivisto, simon.fraser, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=199253
Attachments:
Description Flags
Testcase none

Simon Fraser (smfr)
Reported 2019-05-21 15:01:54 PDT
Created attachment 370345 [details] Testcase Scroller with a negative z-index child fails to composite, and scroll the scroller.
Attachments
Testcase (1.31 KB, text/html)
2019-05-21 15:01 PDT, Simon Fraser (smfr)
no flags
Radar WebKit Bug Importer
Comment 1 2019-05-21 15:05:17 PDT
Radar WebKit Bug Importer
Comment 2 2019-05-21 15:05:22 PDT
Simon Fraser (smfr)
Comment 3 2019-06-02 09:58:31 PDT
We don't composite the negative z child, and it doesn't use backing sharing.
Simon Fraser (smfr)
Comment 4 2019-06-02 10:01:07 PDT
isNonScrolledLayerInsideScrolledCompositedAncestor() needs to take care of this, but not in a way that prevents backing sharing.
Simon Fraser (smfr)
Comment 5 2019-06-26 15:13:55 PDT
Another problem here is that in the first compositing update, we hit the 'traverseUnchangedSubtree' code path for the negative z-order child, because we haven't composited the scroller yet, so we don't composite the child.
Simon Fraser (smfr)
Comment 6 2019-06-26 18:04:56 PDT
The patch in bug 199253 mostly fixes this, other than bad state on the first layer traversal which I'll keep this bug open for.
Note You need to log in before you can comment on or make changes to this bug.