[webkit-changes] [WebKit/WebKit] 90a47d: [UI-side compositing] Plumb mouseMovedInContentAre...
Nikos Mouchtaris
noreply at github.com
Thu Apr 6 21:27:21 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 90a47db0ffa461850eaba59ae2b2f2dae80eee2a
https://github.com/WebKit/WebKit/commit/90a47db0ffa461850eaba59ae2b2f2dae80eee2a
Author: Nikolaos Mouchtaris <nmouchtaris at apple.com>
Date: 2023-04-06 (Thu, 06 Apr 2023)
Changed paths:
M Source/WebCore/page/EventHandler.cpp
M Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp
M Source/WebCore/page/scrolling/AsyncScrollingCoordinator.h
M Source/WebCore/page/scrolling/ScrollingCoordinator.h
M Source/WebCore/page/scrolling/ScrollingStateNode.h
M Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp
M Source/WebCore/page/scrolling/ScrollingStateScrollingNode.h
M Source/WebCore/page/scrolling/mac/ScrollerPairMac.h
M Source/WebCore/page/scrolling/mac/ScrollerPairMac.mm
M Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm
M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
Log Message:
-----------
[UI-side compositing] Plumb mouseMovedInContentArea event to UI process
https://bugs.webkit.org/show_bug.cgi?id=255126
rdar://107732708
Reviewed by Simon Fraser.
This patch plumbs mouseMovedInContentArea events to the UI process.
This event is generated each time the mouse is moved within the
particular content area, and eventually results into a
mouseLocationInScrollerForScrollerImp call into our delegate class,
which allows AppKit to know where the mouse is within the scroller
(this function still needs to be fixed for overflow scroll nodes).
Since there is no state related to this we simply use the property
change on the ScrollingStateNode to tell the UI process to send this
event to the ScrollerPairMac. This patch also ensures that the
NSScrollerImpPairs are accessed on the main thread for the various
mouse events.
* Source/WebCore/page/EventHandler.cpp:
(WebCore::EventHandler::notifyScrollableAreasOfMouseEvents):
* Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::setMouseIsActiveInContentArea):
* Source/WebCore/page/scrolling/AsyncScrollingCoordinator.h:
* Source/WebCore/page/scrolling/ScrollingCoordinator.h:
(WebCore::ScrollingCoordinator::setMouseIsActiveInContentArea):
* Source/WebCore/page/scrolling/ScrollingStateNode.h:
* Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::setMouseIsActiveInContentArea):
* Source/WebCore/page/scrolling/ScrollingStateScrollingNode.h:
* Source/WebCore/page/scrolling/mac/ScrollerPairMac.h:
* Source/WebCore/page/scrolling/mac/ScrollerPairMac.mm:
(WebCore::ScrollerPairMac::mouseMovedInContentArea):
* Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm:
(WebCore::ScrollingTreeScrollingNodeDelegateMac::updateFromStateNode):
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:
Canonical link: https://commits.webkit.org/262699@main
More information about the webkit-changes
mailing list