Summary: | [iOS Scrolling] Propagate scrolls to non-nested UIScrollViews | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Antti Koivisto <koivisto> | ||||||||||
Component: | Scrolling | Assignee: | Nobody <webkit-unassigned> | ||||||||||
Status: | RESOLVED FIXED | ||||||||||||
Severity: | Normal | CC: | commit-queue, simon.fraser, webkit-bug-importer | ||||||||||
Priority: | P2 | Keywords: | InRadar | ||||||||||
Version: | WebKit Nightly Build | ||||||||||||
Hardware: | Unspecified | ||||||||||||
OS: | Unspecified | ||||||||||||
Attachments: |
|
Description
Antti Koivisto
2019-06-26 04:25:39 PDT
Created attachment 372913 [details]
WIP
Created attachment 372914 [details]
test case
Created attachment 373030 [details]
test with more nested scrollers
Created attachment 373104 [details]
patch
Comment on attachment 373104 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=373104&action=review > Source/WebKit/UIProcess/RemoteLayerTree/ios/RemoteLayerTreeViews.mm:141 > + if (auto* nonAncestorScrollingNode = host.nodeForID(node->relatedScrollContainerIDs()[0])) I'm having a hard time convincing myself that using relatedScrollContainerIDs()[0] is correct. What does it mean to have more than one? What is the order? > I'm having a hard time convincing myself that using
> relatedScrollContainerIDs()[0] is correct. What does it mean to have more
> than one? What is the order?
Would knowing that you wrote the code that sets it be help? :)
It is simply the layer tree counterpart of ScrollingTreeOverflowScrollProxyNode::m_overflowScrollingNodeID. Having Moves and Stationary cases in a single vector matches the old design where PositionedNode handled both cases. It should really be refactored into two separate variables, matching PositionedNode split.
Comment on attachment 373104 [details] patch Clearing flags on attachment: 373104 Committed r246926: <https://trac.webkit.org/changeset/246926> All reviewed patches have been landed. Closing bug. |