Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Ui-side compositing] Fix mouse position reporting to AppKit in WebSc…
…rollerImpPairDelegateMac https://bugs.webkit.org/show_bug.cgi?id=255188 rdar://107776583 Reviewed by Simon Fraser. This patch aims to fix several issues with the way ScrollerPairMac and ScrollerMac handle mouse events, with the intent of fixing hovering over overlay scrollbars in overflow scrolling nodes. The first issue is that currently there isn't a good way to convert the frame relative mouse position to a scrollbar relative mouse position. To work around this, bundle the scrollbar relative mouse positions in the mouseMovedInContentArea event. When we know that we have updated mouse positions from the WebProcess, return them in the various WebScrollerImpPairDelegateMac functions. The second issue is that RemoteScrollingTree is only calling handleMouseEvent on the root scroller. Since this mouse position was only being used as input to convertContentPoint, it is ok to just return a zero point and use the converted mouse position from the Web Process. * Source/WebCore/page/scrolling/ScrollingTree.h: (WebCore::ScrollingTree::lastKnownMousePosition): * Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp: (WebCore::ScrollingTreeScrollingNode::lastKnownMousePosition const): * Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h: * Source/WebCore/page/scrolling/ScrollingTreeScrollingNodeDelegate.h: (WebCore::ScrollingTreeScrollingNodeDelegate::lastKnownMousePosition const): * Source/WebCore/page/scrolling/mac/ScrollerMac.mm: (-[WebScrollerImpDelegateMac mouseLocationInScrollerForScrollerImp:]): * Source/WebCore/page/scrolling/mac/ScrollerPairMac.h: (WebCore::ScrollerPairMac::node const): (WebCore::ScrollerPairMac::lastKnownMousePosition const): Deleted. * Source/WebCore/page/scrolling/mac/ScrollerPairMac.mm: (-[WebScrollerImpPairDelegateMac mouseLocationInContentAreaForScrollerImpPair:]): (-[WebScrollerImpPairDelegateMac scrollerImpPair:convertContentPoint:toScrollerImp:]): (WebCore::ScrollerPairMac::lastKnownMousePosition const): * Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.h: * Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm: (WebCore::ScrollingTreeScrollingNodeDelegateMac::lastKnownMousePosition const): * Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.h: * Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.mm: (WebKit::RemoteScrollingTreeMac::lastKnownMousePosition): * Source/WebKit/UIProcess/RemoteLayerTree/mac/ScrollingTreeFrameScrollingNodeRemoteMac.cpp: (WebKit::ScrollingTreeFrameScrollingNodeRemoteMac::lastKnownMousePosition): * Source/WebKit/UIProcess/RemoteLayerTree/mac/ScrollingTreeFrameScrollingNodeRemoteMac.h: Canonical link: https://commits.webkit.org/262995@main
- Loading branch information
Showing
15 changed files
with
69 additions
and
68 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters