Make programmatic frame scrolling work on iOS
authorantti@apple.com <antti@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 21 Feb 2019 03:28:11 +0000 (03:28 +0000)
committerantti@apple.com <antti@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 21 Feb 2019 03:28:11 +0000 (03:28 +0000)
commit5f4df515c226470047c4985ed34f6062be75537a
tree4fa0a0b5352df57d521a6f6394caac9742896009
parente44e6bf7dcceb8a7bbca0a26b23a762b54a8ffe2
Make programmatic frame scrolling work on iOS
https://bugs.webkit.org/show_bug.cgi?id=194886

Reviewed by Simon Fraser.

Source/WebKit:

* UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm:
(WebKit::ScrollingTreeScrollingNodeDelegateIOS::commitStateAfterChildren):

Don't move based on the layout scroll position. This just overrides the user scroll position.
Remove ScrolledContentsLayer checks, we only need to deal with the ScrollContainerLayer here.

(WebKit::ScrollingTreeScrollingNodeDelegateIOS::setScrollLayerPosition):

Scroll the UIScrollView correctly. This is called as a result of setting the RequestedScrollPosition property.
Remove scroll origin code, it doesn't look correct (and is untested).

LayoutTests:

Test by Frederic Wang.

* fast/scrolling/ios/programmatic-scroll-iframe-expected.html: Added.
* fast/scrolling/ios/programmatic-scroll-iframe.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@241859 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/ChangeLog
LayoutTests/fast/scrolling/ios/programmatic-scroll-iframe-expected.html [new file with mode: 0644]
LayoutTests/fast/scrolling/ios/programmatic-scroll-iframe.html [new file with mode: 0644]
Source/WebKit/ChangeLog
Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm