Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: a9d8f8b89517139a774a25647ffcbf0e44fc6b8c https://github.com/WebKit/WebKit/commit/a9d8f8b89517139a774a25647ffcbf0e44fc6b8c Author: Nikolaos Mouchtaris <nmouchta...@apple.com> Date: 2023-04-15 (Sat, 15 Apr 2023)
Changed paths: M Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp M Source/WebCore/page/scrolling/AsyncScrollingCoordinator.h M Source/WebCore/page/scrolling/ScrollingTree.h M Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp M Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h M Source/WebCore/page/scrolling/mac/ScrollerMac.h M Source/WebCore/page/scrolling/mac/ScrollerMac.mm M Source/WebCore/page/scrolling/mac/ScrollerPairMac.h M Source/WebCore/platform/ScrollTypes.h M Source/WebCore/platform/ScrollbarsController.h M Source/WebKit/Scripts/webkit/messages.py M Source/WebKit/SourcesCocoa.txt M Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp M Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h M Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.h M Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.mm M Source/WebKit/WebKit.xcodeproj/project.pbxproj R Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollbarsController.cpp M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollbarsController.h A Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollbarsController.mm 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 Log Message: ----------- [UI-side compositing] Have RemoteScrollbarsController keep track of scrollbar visibility for hit testing https://bugs.webkit.org/show_bug.cgi?id=255303 rdar://107859102 Reviewed by Simon Fraser. Overlay scrollbars should only participate in hit testing when they are visible. When we do a knob alpha animation in the UI process, send a visibility change event to the web process, notifying RemoteScrollbarsController so it can properly report in shouldScrollbarParticipateInHitTesting whether the scrollbar should participate in hit testing or not. * Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp: (WebCore::AsyncScrollingCoordinator::scrollingTreeNodeScrollbarVisibilityDidChange): * Source/WebCore/page/scrolling/AsyncScrollingCoordinator.h: * Source/WebCore/page/scrolling/ScrollingTree.h: (WebCore::ScrollingTree::scrollingTreeNodeScrollbarVisibilityDidChange): * Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp: (WebCore::ScrollingTreeScrollingNode::scrollbarVisibilityDidChange): * Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h: * Source/WebCore/page/scrolling/mac/ScrollerMac.h: * Source/WebCore/page/scrolling/mac/ScrollerMac.mm: (-[WebScrollerImpDelegateMac scrollerImp:animateKnobAlphaTo:duration:]): (WebCore::ScrollerMac::visibilityChanged): * Source/WebCore/page/scrolling/mac/ScrollerPairMac.h: (WebCore::ScrollerPairMac::scrollingNode): * Source/WebCore/platform/ScrollTypes.h: * Source/WebCore/platform/ScrollbarsController.h: (WebCore::ScrollbarsController::setScrollbarVisibilityState): * Source/WebKit/Scripts/webkit/messages.py: (headers_for_type): * Source/WebKit/SourcesCocoa.txt: * Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp: (WebKit::RemoteScrollingCoordinatorProxy::scrollingTreeNodeScrollbarVisibilityDidChange): * Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h: * Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.h: * Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.mm: (WebKit::RemoteScrollingTreeMac::scrollingTreeNodeScrollbarVisibilityDidChange): * Source/WebKit/WebKit.xcodeproj/project.pbxproj: * Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollbarsController.h: * Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollbarsController.mm: Renamed from Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollbarsController.cpp. (WebKit::RemoteScrollbarsController::RemoteScrollbarsController): (WebKit::RemoteScrollbarsController::mouseEnteredContentArea): (WebKit::RemoteScrollbarsController::mouseExitedContentArea): (WebKit::RemoteScrollbarsController::mouseMovedInContentArea): (WebKit::RemoteScrollbarsController::mouseEnteredScrollbar const): (WebKit::RemoteScrollbarsController::mouseExitedScrollbar const): (WebKit::RemoteScrollbarsController::shouldScrollbarParticipateInHitTesting): (WebKit::RemoteScrollbarsController::setScrollbarVisibilityState): * Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.h: * Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.messages.in: * Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.mm: (WebKit::RemoteScrollingCoordinator::scrollingTreeNodeScrollbarVisibilityDidChange): Canonical link: https://commits.webkit.org/263004@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes