RESOLVED INVALID 218857
Use native animations for scroll-behavior:smooth on Mac
https://bugs.webkit.org/show_bug.cgi?id=218857
Summary Use native animations for scroll-behavior:smooth on Mac
cathiechen
Reported 2020-11-12 10:24:50 PST
Try to use the native scroll animation of Mac (scrolling momentum) for smooth scroll.
Attachments
Patch (13.54 KB, patch)
2021-06-29 02:18 PDT, Martin Robinson
no flags
Patch (13.64 KB, patch)
2021-06-30 03:48 PDT, Martin Robinson
no flags
Patch (14.14 KB, patch)
2021-07-02 02:11 PDT, Martin Robinson
no flags
Patch (14.72 KB, patch)
2021-07-06 07:46 PDT, Martin Robinson
ews-feeder: commit-queue-
Patch (15.09 KB, patch)
2021-07-06 08:15 PDT, Martin Robinson
no flags
Radar WebKit Bug Importer
Comment 1 2020-11-19 10:25:12 PST
Martin Robinson
Comment 2 2021-06-29 02:18:59 PDT
Martin Robinson
Comment 3 2021-06-30 03:48:14 PDT
cathiechen
Comment 4 2021-07-02 01:54:41 PDT
Comment on attachment 432581 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=432581&action=review > Source/WebCore/platform/ScrollAnimator.cpp:-125 > - m_scrollAnimation->setCurrentPosition(adjustedPosition); I wonder would this change affect the platform still using m_scrollAnimation? > Source/WebCore/platform/ScrollView.cpp:-540 > - setScrollBehaviorStatus(ScrollBehaviorStatus::NotInAnimation); Looks like we can also remove this in RenderLayerScrollableArea::scrollToOffset()?
Martin Robinson
Comment 5 2021-07-02 02:11:08 PDT
Martin Robinson
Comment 6 2021-07-02 02:12:49 PDT
(In reply to cathiechen from comment #4) Thanks for taking a look at this! > > View in context: > https://bugs.webkit.org/attachment.cgi?id=432581&action=review > > > Source/WebCore/platform/ScrollAnimator.cpp:-125 > > - m_scrollAnimation->setCurrentPosition(adjustedPosition); > > I wonder would this change affect the platform still using m_scrollAnimation? I don't think this will, because setCurrentPosition is always called before starting a new animation with m_scrollAnimation. > > Source/WebCore/platform/ScrollView.cpp:-540 > > - setScrollBehaviorStatus(ScrollBehaviorStatus::NotInAnimation); > > Looks like we can also remove this in > RenderLayerScrollableArea::scrollToOffset()? Nice catch! I thought I had gotten all of these, but I missed one. I've uploaded a new version of the change.
Martin Robinson
Comment 7 2021-07-06 07:46:13 PDT
Martin Robinson
Comment 8 2021-07-06 08:15:21 PDT
Martin Robinson
Comment 9 2021-09-23 08:00:17 PDT
Now that ScrollAnimator and ScrollAnimatorMac use the same smooth animation, this change is no longer valid. See: https://bugs.webkit.org/show_bug.cgi?id=230445
Simon Fraser (smfr)
Comment 10 2021-09-23 09:57:04 PDT
We still want to run smooth scrolling animations in the UI process on iOS, but we can do that via a separate bug.
Martin Robinson
Comment 11 2021-09-24 09:18:40 PDT
(In reply to Simon Fraser (smfr) from comment #10) > We still want to run smooth scrolling animations in the UI process on iOS, > but we can do that via a separate bug. That's right. If I'm not mistaken it's tracked by: https://bugs.webkit.org/show_bug.cgi?id=204936.
Note You need to log in before you can comment on or make changes to this bug.