[webkit-changes] [WebKit/WebKit] c942c1: [UI-side compositing] fast/scrolling/mac/async-scr...

Simon Fraser noreply at github.com
Mon Mar 6 12:24:44 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c942c1f76a75b0149b02c6b2a14caed460fa167d
      https://github.com/WebKit/WebKit/commit/c942c1f76a75b0149b02c6b2a14caed460fa167d
  Author: Simon Fraser <simon.fraser at apple.com>
  Date:   2023-03-06 (Mon, 06 Mar 2023)

  Changed paths:
    M Source/WebCore/page/scrolling/ScrollingTreeFrameScrollingNode.h
    M Source/WebCore/page/scrolling/ScrollingTreeScrollingNodeDelegate.cpp
    M Source/WebCore/page/scrolling/ScrollingTreeScrollingNodeDelegate.h
    M Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.mm

  Log Message:
  -----------
  [UI-side compositing] fast/scrolling/mac/async-scroll-overflow-top-inset.html fails
https://bugs.webkit.org/show_bug.cgi?id=253382
rdar://106115858

Reviewed by Tim Horton.

RemoteScrollingTreeMac::scrollingNodeForPoint() mistakenly offset the hit-testing point by
the scroll position because of a bug where RemoteScrollingTreeMac::scrollingTreeNodeDidScroll()
failed to call the base class, leaving m_mainFrameScrollPosition stale (the caller maps the
point through m_mainFrameScrollPosition) before we get here.

In addition, we have to do the same math used to position the root layer, which takes top
content inset and header height into account, so use `FrameView::positionForRootContentLayer()`
to do that.

Fixes fast/scrolling/mac/async-scroll-overflow-top-inset.html.

* Source/WebCore/page/scrolling/ScrollingTreeFrameScrollingNode.h:
* Source/WebCore/page/scrolling/ScrollingTreeScrollingNodeDelegate.cpp:
(WebCore::ScrollingTreeScrollingNodeDelegate::totalContentsSize):
(WebCore::ScrollingTreeScrollingNodeDelegate::reachableContentsSize):
(WebCore::ScrollingTreeScrollingNodeDelegate::scrollOrigin const):
* Source/WebCore/page/scrolling/ScrollingTreeScrollingNodeDelegate.h:
* Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.mm:
(WebKit::RemoteScrollingTreeMac::scrollingTreeNodeDidScroll):
(WebKit::RemoteScrollingTreeMac::scrollingNodeForPoint):

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




More information about the webkit-changes mailing list