[Webkit-unassigned] [Bug 228302] macOS key-driven smooth scrolling does not stop when focus changes

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Sep 28 01:30:42 PDT 2021


https://bugs.webkit.org/show_bug.cgi?id=228302

--- Comment #12 from Tim Horton <thorton at apple.com> ---
Comment on attachment 439405
  --> https://bugs.webkit.org/attachment.cgi?id=439405
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=439405&action=review

> Source/WebCore/page/Page.cpp:2381
> +            scrollableArea->updateScrollAnimationIfNecessary();

Can anything downstream of `updateScrollAnimationIfNecessary` run script and invalidate your iterator? (I pray the answer is no, but you never know)

> Source/WebCore/page/Page.h:890
> +    void updateScrollAnimationIfNecessary();

I /expect/ smfr to object to the vague name, maybe this should be named about the specific animation?

> Source/WebCore/platform/ScrollingEffectsController.cpp:93
> +void ScrollingEffectsController::updateScrollAnimationIfNecessary()
> +{
> +    if (m_isAnimatingKeyboardScrolling)
> +        m_client.keyboardScrollingAnimator()->handleKeyUpEvent();
> +}

"update scroll animation if necessary" /always/ sends a key up if you're scrolling? That sounds even less like "update if necessary" than I realized. Is it really like "hey please stop any outstanding keyboard scrolling animations for this Page/Frame/ScrollableArea"?

> Tools/DumpRenderTree/mac/EventSendingController.mm:1440
> +    if ([character isEqualToString:@"leftArrow"]) {

I assume all of this code is copied from somewhere? Is it possible to at least share the keycode/character mapping stuff?

> Tools/WebKitTestRunner/mac/EventSenderProxy.mm:857
> +    NSString *eventCharacter = character;

Ditto my question from the WK1 version.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20210928/e0a65631/attachment.htm>


More information about the webkit-unassigned mailing list