[webkit-changes] [WebKit/WebKit] 8c822f: Wheel event does not stop macOS smooth keyboard sc...

Richard Robinson noreply at github.com
Fri Sep 16 09:31:32 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8c822fa15adbdecd22d0c3ece07c9e9aa2260af1
      https://github.com/WebKit/WebKit/commit/8c822fa15adbdecd22d0c3ece07c9e9aa2260af1
  Author: Richard Robinson <richard_robinson2 at apple.com>
  Date:   2022-09-16 (Fri, 16 Sep 2022)

  Changed paths:
    A LayoutTests/fast/scrolling/mac/keyboard-scrolling-with-mouse-scroll-expected.txt
    A LayoutTests/fast/scrolling/mac/keyboard-scrolling-with-mouse-scroll.html
    M Source/WebCore/platform/KeyboardScrollingAnimator.cpp
    M Source/WebCore/platform/KeyboardScrollingAnimator.h
    M Source/WebKit/WebProcess/WebPage/EventDispatcher.cpp

  Log Message:
  -----------
  Wheel event does not stop macOS smooth keyboard scroll
https://bugs.webkit.org/show_bug.cgi?id=244303
rdar://99101109

Reviewed by Tim Horton.

Currently, if you enable EventHandlerDrivenSmoothKeyboardScrolling,
scroll using the keyboard, then immediately after use the trackpad to
scroll, the webpage will scroll back to the position where the keyboard
scroll left off. This patch improves the smooth scroll setting so that a
wheel event tells the KeyboardScrollingAnimator to stop scrolling.

This adds a method to KeyboardScrollingAnimator, stopScrollingImmediately
 that can be called to stop the animation without taking the time
To decelerate, which is what should happen when a wheel event
Interrupts the keyboard scroll.

* LayoutTests/fast/scrolling/mac/keyboard-scrolling-with-mouse-scroll.html:
* Source/WebCore/platform/KeyboardScrollingAnimator.cpp
(WebCore::KeyboardScrollingAnimator::stopScrollingImmediately):
* Source/WebCore/platform/KeyboardScrollingAnimator.h
* Source/WebKit/WebProcess/WebPage/EventDispatcher.cpp

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




More information about the webkit-changes mailing list