[webkit-changes] [WebKit/WebKit] 117ebe: Wrap calls to eventSender.monitorWheelEvents() in ...

Simon Fraser noreply at github.com
Thu Jan 5 09:16:02 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 117ebe14e9c273e6be15f47cd04a7867d7145e74
      https://github.com/WebKit/WebKit/commit/117ebe14e9c273e6be15f47cd04a7867d7145e74
  Author: Simon Fraser <simon.fraser at apple.com>
  Date:   2023-01-05 (Thu, 05 Jan 2023)

  Changed paths:
    M LayoutTests/compositing/fixed-with-main-thread-scrolling.html
    M LayoutTests/fast/events/wheel/platform-wheelevent-in-scrolling-div.html
    M LayoutTests/fast/events/wheel/wheel-events-become-non-cancelable.html
    M LayoutTests/fast/repaint/resources/fixed-move-after-keyboard-scroll-iframe.html
    M LayoutTests/fast/scrolling/arrow-key-scroll-in-rtl-document.html
    M LayoutTests/fast/scrolling/latching/iframe-latch-small-deltas.html
    M LayoutTests/fast/scrolling/latching/iframe_in_iframe.html
    M LayoutTests/fast/scrolling/latching/latched-scroll-in-passive-region.html
    M LayoutTests/fast/scrolling/latching/latched-scroll-into-nonfast-region.html
    M LayoutTests/fast/scrolling/latching/latching-and-wheel-events.html
    M LayoutTests/fast/scrolling/latching/latching-stuck-to-main-page.html
    M LayoutTests/fast/scrolling/latching/nested-cross-axis-latch-expiration.html
    M LayoutTests/fast/scrolling/latching/overflow-hidden-on-one-axis.html
    M LayoutTests/fast/scrolling/latching/overflow-in-iframe-latching.html
    M LayoutTests/fast/scrolling/latching/scroll-div-latched-div.html
    M LayoutTests/fast/scrolling/latching/scroll-div-latched-mainframe.html
    M LayoutTests/fast/scrolling/latching/scroll-div-no-latching.html
    M LayoutTests/fast/scrolling/latching/scroll-div-with-nested-nonscrollable-iframe.html
    M LayoutTests/fast/scrolling/latching/scroll-iframe-fragment.html
    M LayoutTests/fast/scrolling/latching/scroll-iframe-in-overflow.html
    M LayoutTests/fast/scrolling/latching/scroll-iframe-latched-iframe.html
    M LayoutTests/fast/scrolling/latching/scroll-iframe-latched-mainframe.html
    M LayoutTests/fast/scrolling/latching/scroll-iframe-webkit1-latching-bug.html
    M LayoutTests/fast/scrolling/latching/scroll-latched-nested-div.html
    M LayoutTests/fast/scrolling/latching/scroll-nested-iframe.html
    M LayoutTests/fast/scrolling/latching/scroll-select-bottom-test.html
    M LayoutTests/fast/scrolling/latching/scroll-select-latched-mainframe.html
    M LayoutTests/fast/scrolling/latching/scroll-select-latched-select.html
    M LayoutTests/fast/scrolling/latching/scroll-snap-latching.html
    M LayoutTests/fast/scrolling/mac/adjust-scroll-snap-during-gesture.html
    M LayoutTests/fast/scrolling/mac/async-overscroll-behavior-element.html
    M LayoutTests/fast/scrolling/mac/async-overscroll-behavior-iframe.html
    M LayoutTests/fast/scrolling/mac/async-overscroll-behavior-unscrollable-element.html
    M LayoutTests/fast/scrolling/mac/async-overscroll-behavior-unscrollable-iframe.html
    M LayoutTests/fast/scrolling/mac/horizontal-overflow-trapping-small-deltas.html
    M LayoutTests/fast/scrolling/mac/keyboard-scrolling-terminates.html
    M LayoutTests/fast/scrolling/mac/keyboard-scrolling-with-mouse-scroll.html
    M LayoutTests/fast/scrolling/mac/rubberband-axis-locking.html
    M LayoutTests/fast/scrolling/mac/scroll-container-horizontally.html
    M LayoutTests/fast/scrolling/mac/smooth-scroll-fixed-element.html
    M LayoutTests/fast/scrolling/mac/smooth-scroll-iframe.html
    M LayoutTests/fast/scrolling/mac/smooth-scroll-with-overflow-hidden-and-layout.html
    M LayoutTests/fast/scrolling/mac/smooth-scroll-with-overflow-hidden.html
    M LayoutTests/fast/scrolling/mac/vertical-scroll-in-horizontal-scroller.html
    M LayoutTests/fast/scrolling/overflow-scroll-past-max.html
    M LayoutTests/fast/scrolling/programmatic-scroll-to-zero-zero.html
    M LayoutTests/fast/scrolling/programmatic-smooth-scroll-after-focus.html
    M LayoutTests/fast/scrolling/resources/overscroll-behavior-support.js
    M LayoutTests/fast/scrolling/rtl-point-in-iframe.html
    M LayoutTests/fast/scrolling/sync-scroll-overscroll-behavior-element.html
    M LayoutTests/fast/scrolling/sync-scroll-overscroll-behavior-iframe.html
    M LayoutTests/fast/scrolling/sync-scroll-overscroll-behavior-unscrollable-element.html
    M LayoutTests/fast/scrolling/sync-scroll-overscroll-behavior-unscrollable-iframe.html
    M LayoutTests/resources/ui-helper.js
    M LayoutTests/scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe-overscroll-behavior.html
    M LayoutTests/scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe.html
    M LayoutTests/scrollingcoordinator/mac/latching/horizontal-overflow-in-vertical-overflow.html
    M LayoutTests/scrollingcoordinator/mac/latching/scrolling-select-should-not-latch-mainframe.html
    M LayoutTests/scrollingcoordinator/mac/nested-sticky-with-nonsticking-sticky-parent.html
    M LayoutTests/tiled-drawing/scrolling/fast-scroll-select-latched-mainframe.html
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/resources/mainframe-scroll-snap-test.js
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-async-iframe.html
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-iframe.html
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-2d-overflow.html
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-async-overflow-stateless.html
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-async-overflow.html
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-borders.html
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-hidden-scrollbars.html
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-overflow-stateless.html
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-overflow.html
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-padding.html
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-rotated.html
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-then-proximity.html
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-phase-change-relatching.html
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-proximity-mainframe.html
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-proximity-overflow.html
    M LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-scrolling-jumps-to-top.html
    M LayoutTests/tiled-drawing/scrolling/stateless-scrolling-no-rubber-band.html

  Log Message:
  -----------
  Wrap calls to eventSender.monitorWheelEvents() in a UIHelper function
https://bugs.webkit.org/show_bug.cgi?id=250058
rdar://103857097

Reviewed by Ryosuke Niwa.

`eventSender.monitorWheelEvents()` will need to become async, so in preparation (and also to fix
scrolling tests with UI-side compositing), hide calls to `eventSender.monitorWheelEvents()` inside a
UIHelper function, which also waits for a rendering update.

Do other minor cleanup, like using `await UIHelper.waitForScrollCompletion()` where possible.

* LayoutTests/compositing/fixed-with-main-thread-scrolling.html:
* LayoutTests/fast/events/wheel/platform-wheelevent-in-scrolling-div.html:
* LayoutTests/fast/events/wheel/wheel-events-become-non-cancelable.html:
* LayoutTests/fast/repaint/resources/fixed-move-after-keyboard-scroll-iframe.html:
* LayoutTests/fast/scrolling/arrow-key-scroll-in-rtl-document.html:
* LayoutTests/fast/scrolling/latching/iframe-latch-small-deltas.html:
* LayoutTests/fast/scrolling/latching/iframe_in_iframe.html:
* LayoutTests/fast/scrolling/latching/latched-scroll-in-passive-region.html:
* LayoutTests/fast/scrolling/latching/latched-scroll-into-nonfast-region.html:
* LayoutTests/fast/scrolling/latching/latching-and-wheel-events.html:
* LayoutTests/fast/scrolling/latching/latching-stuck-to-main-page.html:
* LayoutTests/fast/scrolling/latching/nested-cross-axis-latch-expiration.html:
* LayoutTests/fast/scrolling/latching/overflow-hidden-on-one-axis.html:
* LayoutTests/fast/scrolling/latching/overflow-in-iframe-latching.html:
* LayoutTests/fast/scrolling/latching/scroll-div-latched-div.html:
* LayoutTests/fast/scrolling/latching/scroll-div-latched-mainframe.html:
* LayoutTests/fast/scrolling/latching/scroll-div-no-latching.html:
* LayoutTests/fast/scrolling/latching/scroll-div-with-nested-nonscrollable-iframe.html:
* LayoutTests/fast/scrolling/latching/scroll-iframe-fragment.html:
* LayoutTests/fast/scrolling/latching/scroll-iframe-in-overflow.html:
* LayoutTests/fast/scrolling/latching/scroll-iframe-latched-iframe.html:
* LayoutTests/fast/scrolling/latching/scroll-iframe-latched-mainframe.html:
* LayoutTests/fast/scrolling/latching/scroll-iframe-webkit1-latching-bug.html:
* LayoutTests/fast/scrolling/latching/scroll-latched-nested-div.html:
* LayoutTests/fast/scrolling/latching/scroll-nested-iframe.html:
* LayoutTests/fast/scrolling/latching/scroll-select-bottom-test.html:
* LayoutTests/fast/scrolling/latching/scroll-select-latched-mainframe.html:
* LayoutTests/fast/scrolling/latching/scroll-select-latched-select.html:
* LayoutTests/fast/scrolling/latching/scroll-snap-latching.html:
* LayoutTests/fast/scrolling/mac/adjust-scroll-snap-during-gesture.html:
* LayoutTests/fast/scrolling/mac/async-overscroll-behavior-element.html:
* LayoutTests/fast/scrolling/mac/async-overscroll-behavior-iframe.html:
* LayoutTests/fast/scrolling/mac/async-overscroll-behavior-unscrollable-element.html:
* LayoutTests/fast/scrolling/mac/async-overscroll-behavior-unscrollable-iframe.html:
* LayoutTests/fast/scrolling/mac/horizontal-overflow-trapping-small-deltas.html:
* LayoutTests/fast/scrolling/mac/keyboard-scrolling-terminates.html:
* LayoutTests/fast/scrolling/mac/keyboard-scrolling-with-mouse-scroll.html:
* LayoutTests/fast/scrolling/mac/rubberband-axis-locking.html:
* LayoutTests/fast/scrolling/mac/scroll-container-horizontally.html:
* LayoutTests/fast/scrolling/mac/smooth-scroll-fixed-element.html:
* LayoutTests/fast/scrolling/mac/smooth-scroll-iframe.html:
* LayoutTests/fast/scrolling/mac/smooth-scroll-with-overflow-hidden-and-layout.html:
* LayoutTests/fast/scrolling/mac/smooth-scroll-with-overflow-hidden.html:
* LayoutTests/fast/scrolling/mac/vertical-scroll-in-horizontal-scroller.html:
* LayoutTests/fast/scrolling/overflow-scroll-past-max.html:
* LayoutTests/fast/scrolling/programmatic-scroll-to-zero-zero.html:
* LayoutTests/fast/scrolling/programmatic-smooth-scroll-after-focus.html:
* LayoutTests/fast/scrolling/resources/overscroll-behavior-support.js:
(async mouseWheelScrollAndWait):
* LayoutTests/fast/scrolling/rtl-point-in-iframe.html:
* LayoutTests/fast/scrolling/sync-scroll-overscroll-behavior-element.html:
* LayoutTests/fast/scrolling/sync-scroll-overscroll-behavior-iframe.html:
* LayoutTests/fast/scrolling/sync-scroll-overscroll-behavior-unscrollable-element.html:
* LayoutTests/fast/scrolling/sync-scroll-overscroll-behavior-unscrollable-iframe.html:
* LayoutTests/resources/ui-helper.js:
(window.UIHelper.async startMonitoringWheelEvents):
(window.UIHelper.async mouseWheelScrollAt):
(window.UIHelper.async statelessMouseWheelScrollAt):
* LayoutTests/scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe-overscroll-behavior.html:
* LayoutTests/scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe.html:
* LayoutTests/scrollingcoordinator/mac/latching/horizontal-overflow-in-vertical-overflow.html:
* LayoutTests/scrollingcoordinator/mac/latching/scrolling-select-should-not-latch-mainframe.html:
* LayoutTests/scrollingcoordinator/mac/nested-sticky-with-nonsticking-sticky-parent.html:
* LayoutTests/tiled-drawing/scrolling/fast-scroll-select-latched-mainframe.html:
* LayoutTests/tiled-drawing/scrolling/scroll-snap/resources/mainframe-scroll-snap-test.js:
(async doScrollTest):
* LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-async-iframe.html:
* LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-iframe.html:
* LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-2d-overflow.html:
* LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-async-overflow-stateless.html:
* LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-async-overflow.html:
* LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-borders.html:
* LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-hidden-scrollbars.html:
* LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-overflow-stateless.html:
* LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-overflow.html:
* LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-padding.html:
* LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-rotated.html:
* LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-then-proximity.html:
* LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-phase-change-relatching.html:
* LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-proximity-mainframe.html:
* LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-proximity-overflow.html:
* LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-scrolling-jumps-to-top.html:
* LayoutTests/tiled-drawing/scrolling/stateless-scrolling-no-rubber-band.html:

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




More information about the webkit-changes mailing list