[webkit-changes] [WebKit/WebKit] dd9846: Make programmatic scrolls work with macOS UI-side ...

Simon Fraser noreply at github.com
Tue Oct 25 09:28:32 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: dd98466d9224ffcddac229571808009244d0df3c
      https://github.com/WebKit/WebKit/commit/dd98466d9224ffcddac229571808009244d0df3c
  Author: Simon Fraser <simon.fraser at apple.com>
  Date:   2022-10-25 (Tue, 25 Oct 2022)

  Changed paths:
    M Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h
    M Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingCoordinatorProxyMac.h
    M Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingCoordinatorProxyMac.mm

  Log Message:
  -----------
  Make programmatic scrolls work with macOS UI-side compositing
https://bugs.webkit.org/show_bug.cgi?id=246990
rdar://101529255

Reviewed by Tim Horton.

On iOS, where main frame scrolling is handled via the main UIScrollView, we had special behavior
in RemoteLayerTreeDrawingAreaProxy::commitLayerTree() to save any main frame requested
scrolls found during the scrolling tree commit, and apply them via WebPageProxy::requestScroll().

We don't need this on macOS, where requested scrolls on the main frame are handled exactly as they
are for subscrollers, so override scrollingTreeNodeRequestsScroll() to do nothing and return false.

* Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h:
* Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingCoordinatorProxyMac.h:
* Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingCoordinatorProxyMac.mm:
(WebKit::RemoteScrollingCoordinatorProxyMac::scrollingTreeNodeRequestsScroll):

Canonical link: https://commits.webkit.org/255965@main




More information about the webkit-changes mailing list