[Webkit-unassigned] [Bug 195278] Add Internals API to simulate delegated user scroll

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Mar 5 09:30:10 PST 2019


https://bugs.webkit.org/show_bug.cgi?id=195278

--- Comment #3 from Simon Fraser (smfr) <simon.fraser at apple.com> ---
Comment on attachment 363516
  --> https://bugs.webkit.org/attachment.cgi?id=363516
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=363516&action=review

> Source/WebCore/ChangeLog:8
> +        It would be useful to be able to test delegated user scrolling without using clumsy and slow UI scripting.

slow!?

> Source/WebCore/ChangeLog:14
> +        This mechanism currently supports subframes and overflow scrolling on iOS.

Will it support main frame scrolling, and macOS too?

> Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp:221
> +void ScrollingStateScrollingNode::setRequestedDelegatedScrollPositionForTesting(const FloatPoint& requestedDelegatedScrollPositionForTesting)
> +{
> +    m_requestedDelegatedScrollPositionForTesting = requestedDelegatedScrollPositionForTesting;
> +    setPropertyChanged(RequestedDelegatedScrollPositionForTesting);
> +}

I don't think doing this via a scrolling tree commit is the right approach. This will trigger a commit of any dirty state in the scrolling state tree, which may mask bugs.

I think we want to simulate a user scroll more directly. On iOS, this should actually scroll the UIScrollVIew, which would trigger the wasScrolledByDelegatedScrolling() code path. On macOS, it would enter the code path that is called form handling wheel events. I think we also want this test mode to disable messaging back to the main thread/UI process.

So I think we do need UIScriptController on iOS (and maybe macOS too), in conjunction with something that cuts of the dispatch in ThreadedScrollingTree::scrollingTreeNodeDidScroll() (macOS) and calling the scrolling coordinator in RemoteScrollingTree::scrollingTreeNodeDidScroll (iOS).

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20190305/5df5236f/attachment.html>


More information about the webkit-unassigned mailing list