[webkit-changes] [WebKit/WebKit] c87ffd: Make more of WheelEventTestMonitor work with UI-si...
Simon Fraser
noreply at github.com
Fri Jan 6 11:07:54 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: c87ffdc4dd04a58334af508245cd9a4aa5b75380
https://github.com/WebKit/WebKit/commit/c87ffdc4dd04a58334af508245cd9a4aa5b75380
Author: Simon Fraser <simon.fraser at apple.com>
Date: 2023-01-06 (Fri, 06 Jan 2023)
Changed paths:
M Source/WebCore/page/WheelEventTestMonitor.cpp
M Source/WebCore/page/WheelEventTestMonitor.h
M Source/WebCore/platform/PlatformWheelEvent.h
M Source/WebKit/Scripts/webkit/messages.py
M Source/WebKit/Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp
M Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivateForTesting.h
M Source/WebKit/UIProcess/API/Cocoa/WKWebViewTesting.mm
M Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp
M Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h
M Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp
M Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingTree.h
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Source/WebKit/UIProcess/WebPageProxy.h
M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.h
M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.messages.in
M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.mm
M Tools/WebKitTestRunner/EventSenderProxy.h
M Tools/WebKitTestRunner/InjectedBundle/EventSendingController.cpp
M Tools/WebKitTestRunner/InjectedBundle/ios/EventSenderProxyIOS.mm
M Tools/WebKitTestRunner/TestController.cpp
M Tools/WebKitTestRunner/gtk/EventSenderProxyGtk.cpp
M Tools/WebKitTestRunner/libwpe/EventSenderProxyLibWPE.cpp
M Tools/WebKitTestRunner/mac/EventSenderProxy.mm
M Tools/WebKitTestRunner/win/EventSenderProxyWin.cpp
Log Message:
-----------
Make more of WheelEventTestMonitor work with UI-side compositing
https://bugs.webkit.org/show_bug.cgi?id=250183
rdar://103941080
Reviewed by Brent Fulgham.
In 258002 at main I made a misguided attempt to make `eventSender.monitorWheelEvents` work
with UI-side compositing by updating "monitoringWheelEvents" state directly in the UI process,
but this just gets clobbered by a scrolling tree commit from the web process. So revert most
of 258002 at main.
Now that all tests wait for a rendering update after calling `monitorWheelEvents` (258483 at main)
we can just rely on "IsMonitoringWheelEvents" state to propagate from the web process to the
UI process, so start encoding it in RemoteScrollingCoordinatorTransaction.
We also have to hook up "defer"/"stop deferring" reasons from the UI process to the web process,
which go via RemoteScrollingCoordinatorProxy/RemoteScrollingCoordinator.
* Source/WebCore/page/WheelEventTestMonitor.cpp:
(WebCore::WheelEventTestMonitor::receivedWheelEventWithPhases):
* Source/WebCore/page/WheelEventTestMonitor.h:
* Source/WebCore/platform/PlatformWheelEvent.h:
* Source/WebKit/Scripts/webkit/messages.py:
(headers_for_type):
* Source/WebKit/Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp:
(ArgumentCoder<ScrollingStateScrollingNode>::encode):
(ArgumentCoder<ScrollingStateScrollingNode>::decode):
(WebKit::dump):
* Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivateForTesting.h:
* Source/WebKit/UIProcess/API/Cocoa/WKWebViewTesting.mm:
(-[WKWebView _startMonitoringWheelEvents]): Deleted.
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::receivedWheelEventWithPhases):
(WebKit::RemoteScrollingCoordinatorProxy::deferWheelEventTestCompletionForReason):
(WebKit::RemoteScrollingCoordinatorProxy::removeWheelEventTestCompletionDeferralForReason):
(WebKit::RemoteScrollingCoordinatorProxy::startMonitoringWheelEventsForTesting): Deleted.
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h:
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp:
(WebKit::RemoteScrollingTree::receivedWheelEventWithPhases):
(WebKit::RemoteScrollingTree::deferWheelEventTestCompletionForReason):
(WebKit::RemoteScrollingTree::removeWheelEventTestCompletionDeferralForReason):
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingTree.h:
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::startMonitoringWheelEventsForTesting): Deleted.
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.h:
* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.messages.in:
* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.mm:
(WebKit::RemoteScrollingCoordinator::receivedWheelEventWithPhases):
(WebKit::RemoteScrollingCoordinator::startDeferringScrollingTestCompletionForNode):
(WebKit::RemoteScrollingCoordinator::stopDeferringScrollingTestCompletionForNode):
* Tools/WebKitTestRunner/EventSenderProxy.h:
* Tools/WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
(WTR::EventSendingController::monitorWheelEvents):
* Tools/WebKitTestRunner/InjectedBundle/ios/EventSenderProxyIOS.mm:
(WTR::EventSenderProxy::monitorWheelEvents): Deleted.
* Tools/WebKitTestRunner/TestController.cpp:
(WTR::TestController::didReceiveMessageFromInjectedBundle):
* Tools/WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
(WTR::EventSenderProxy::monitorWheelEvents): Deleted.
* Tools/WebKitTestRunner/libwpe/EventSenderProxyLibWPE.cpp:
(WTR::EventSenderProxy::monitorWheelEvents): Deleted.
* Tools/WebKitTestRunner/mac/EventSenderProxy.mm:
(WTR::EventSenderProxy::monitorWheelEvents): Deleted.
* Tools/WebKitTestRunner/win/EventSenderProxyWin.cpp:
(WTR::EventSenderProxy::monitorWheelEvents): Deleted.
Canonical link: https://commits.webkit.org/258549@main
More information about the webkit-changes
mailing list