Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: bdce1d6d1b68d8c04c45c4128a257a5778f6fcbd
https://github.com/WebKit/WebKit/commit/bdce1d6d1b68d8c04c45c4128a257a5778f6fcbd
Author: Nikolaos Mouchtaris <[email protected]>
Date: 2023-12-04 (Mon, 04 Dec 2023)
Changed paths:
A
LayoutTests/fast/scrolling/ios/scroll-anchoring-momentum-scroll-expected.txt
A LayoutTests/fast/scrolling/ios/scroll-anchoring-momentum-scroll.html
M Source/WebCore/page/scrolling/ScrollAnchoringController.cpp
Log Message:
-----------
[scroll-anchoring] A scroll anchoring adjustment during a momentum scroll
stops the scroll
https://bugs.webkit.org/show_bug.cgi?id=264898
rdar://118476758
Reviewed by Simon Fraser.
On iOS, _scrollToContentScrollPosition calls [_scrollView
_wk_stopScrollingAndZooming], which
means when we issue a programmatic scroll, it would stop a current user scroll
(rdar://115703492).
For scroll anchoring, this isn't great as a scroll anchoring adjustment could
kill a user scroll.
To mitigate this, ignore scroll anchoring adjustments on scrollable areas that
have an ongoing
user scroll. Ideally, we would add the delta to the ongoing momentum scroll to
compensate for layout
changes during user scrolls, which requires a fix for rdar://115703492.
* LayoutTests/resources/js-test.js:
(getOrCreate):
(description):
(debug):
* Source/WebCore/page/scrolling/ScrollAnchoringController.cpp:
(WebCore::ScrollAnchoringController::adjustScrollPositionForAnchoring):
* Source/WebCore/platform/mac/ScrollingEffectsController.mm:
(WebCore::ScrollingEffectsController::handleWheelEvent):
Canonical link: https://commits.webkit.org/271517@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes