Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: cf4ff1c081a21c2fea1e89893f8b5598112df968
      
https://github.com/WebKit/WebKit/commit/cf4ff1c081a21c2fea1e89893f8b5598112df968
  Author: Nikolaos Mouchtaris <[email protected]>
  Date:   2025-07-18 (Fri, 18 Jul 2025)

  Changed paths:
    M LayoutTests/TestExpectations
    M LayoutTests/fast/scrolling/mac/scrollend-event-user-scroll-basic.html
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll_include=root-scrollBy-auto-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll_include=root-scrollBy-smooth-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll_include=root-scrollTo-auto-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll_include=root-scrollTo-smooth-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll_include=subframe-scrollBy-auto-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll_include=subframe-scrollBy-smooth-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll_include=subframe-scrollTo-auto-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll_include=subframe-scrollTo-smooth-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scroll-attr-change_include=root-scrollLeft-auto-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scroll-attr-change_include=root-scrollLeft-smooth-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scroll-attr-change_include=root-scrollTop-auto-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scroll-attr-change_include=root-scrollTop-smooth-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scroll-attr-change_include=subframe-scrollLeft-auto-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scroll-attr-change_include=subframe-scrollLeft-smooth-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scroll-attr-change_include=subframe-scrollTop-auto-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scroll-attr-change_include=subframe-scrollTop-smooth-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scrollIntoView_include=nested-scrollIntoView-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scrollIntoView_include=root-inline-end-block-end-behavior-auto-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scrollIntoView_include=root-inline-start-block-start-behavior-smooth-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scrollIntoView_include=subframe-inline-end-block-end-behavior-auto-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scrollIntoView_include=subframe-inline-start-block-start-behavior-smooth-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-to-document-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-to-element-with-overscroll-behavior-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-to-window-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fires-on-visual-viewport-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fires-to-iframe-window-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-for-user-scroll-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-handler-content-attributes-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-not-fired-on-no-scroll-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-fires-to-text-input-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-with-snap-on-fractional-offset-expected.txt
    M LayoutTests/platform/glib/TestExpectations
    M LayoutTests/platform/ios/TestExpectations
    M LayoutTests/platform/mac-wk1/TestExpectations
    M LayoutTests/platform/mac-wk2/TestExpectations
    A 
LayoutTests/platform/mac-wk2/imported/w3c/web-platform-tests/css/cssom-view/smooth-scrollIntoView-with-smooth-fragment-scroll-expected.txt
    M LayoutTests/platform/win/TestExpectations
    M Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp
    M Source/WebCore/page/scrolling/AsyncScrollingCoordinator.h
    M Source/WebCore/page/scrolling/ScrollingCoordinatorTypes.cpp
    M Source/WebCore/page/scrolling/ScrollingCoordinatorTypes.h
    M Source/WebCore/page/scrolling/ScrollingTree.h
    M Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp
    M Source/WebCore/platform/ScrollingEffectsController.cpp
    M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
    M Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.h
    M Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.mm

  Log Message:
  -----------
  [macOS] Add support for scrollend event of programmatic scroll
rdar://156077004
https://bugs.webkit.org/show_bug.cgi?id=209134

Reviewed by Simon Fraser.

Fire scrollend events for instant and animated programmatic scrolls (including 
keyboard scrolls).

* LayoutTests/TestExpectations:
* LayoutTests/fast/scrolling/mac/scrollend-event-user-scroll-basic.html:
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll_include=root-scrollBy-auto-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll_include=root-scrollBy-smooth-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll_include=root-scrollTo-auto-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll_include=root-scrollTo-smooth-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll_include=subframe-scrollBy-auto-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll_include=subframe-scrollBy-smooth-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll_include=subframe-scrollTo-auto-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll_include=subframe-scrollTo-smooth-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scroll-attr-change_include=root-scrollLeft-auto-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scroll-attr-change_include=root-scrollLeft-smooth-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scroll-attr-change_include=root-scrollTop-auto-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scroll-attr-change_include=root-scrollTop-smooth-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scroll-attr-change_include=subframe-scrollLeft-auto-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scroll-attr-change_include=subframe-scrollLeft-smooth-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scroll-attr-change_include=subframe-scrollTop-auto-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scroll-attr-change_include=subframe-scrollTop-smooth-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scrollIntoView_include=nested-scrollIntoView-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scrollIntoView_include=root-inline-end-block-end-behavior-auto-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scrollIntoView_include=root-inline-start-block-start-behavior-smooth-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scrollIntoView_include=subframe-inline-end-block-end-behavior-auto-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scrollIntoView_include=subframe-inline-start-block-start-behavior-smooth-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-to-document-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-to-element-with-overscroll-behavior-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fired-to-window-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fires-on-visual-viewport-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-fires-to-iframe-window-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-for-user-scroll-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-handler-content-attributes-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-event-not-fired-on-no-scroll-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-fires-to-text-input-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/dom/events/scrolling/scrollend-with-snap-on-fractional-offset-expected.txt:
 Added.
* LayoutTests/platform/glib/TestExpectations:
* LayoutTests/platform/ios/TestExpectations:
* LayoutTests/platform/mac-wk1/TestExpectations:
* LayoutTests/platform/mac-wk2/TestExpectations:
* 
LayoutTests/platform/mac-wk2/imported/w3c/web-platform-tests/css/cssom-view/smooth-scrollIntoView-with-smooth-fragment-scroll-expected.txt:
 Added.
* LayoutTests/platform/win/TestExpectations:
* Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::applyScrollPositionUpdate):
(WebCore::AsyncScrollingCoordinator::animatedScrollDidEndForNode):
(WebCore::AsyncScrollingCoordinator::wheelEventScrollDidEndForNode):
(WebCore::AsyncScrollingCoordinator::notifyScrollableAreasForScrollEnd):
* Source/WebCore/page/scrolling/AsyncScrollingCoordinator.h:
* Source/WebCore/page/scrolling/ScrollingCoordinatorTypes.cpp:
(WebCore::operator<<):
* Source/WebCore/page/scrolling/ScrollingCoordinatorTypes.h:
* Source/WebCore/page/scrolling/ScrollingTree.h:
(WebCore::ScrollingTree::scrollingTreeNodeDidStopProgrammaticScroll):
* Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::handleScrollPositionRequest):
* Source/WebCore/platform/ScrollingEffectsController.cpp:
(WebCore::ScrollingEffectsController::scrollAnimationDidEnd):
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:
* Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.h:
* Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.mm:
(WebKit::RemoteScrollingTreeMac::scrollingTreeNodeDidStopProgrammaticScroll):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to