In a vertically document with snap points, if your vertical scroll gesture has some horizontal component, we can start a rubberband animation in X which kills the scroll snap momentum animation: ThreadedScrollingTree::willStartRenderingUpdate - scrollingThreadIsActive 1 ScrollingEffectsController::applyScrollDeltaWithStretching() - stretchScrollForce width=4 height=0 move delta width=0 height=0 dampedDelta width=1 height=0 ThreadedScrollingTree::willStartRenderingUpdate - scrollingThreadIsActive 1 ScrollingEffectsController::applyScrollDeltaWithStretching() - stretchScrollForce width=4 height=0 move delta width=0 height=0 dampedDelta width=1 height=0 ThreadedScrollingTree::willStartRenderingUpdate - scrollingThreadIsActive 1 ScrollingEffectsController::applyScrollDeltaWithStretching() - stretchScrollForce width=5 height=0 move delta width=1 height=0 dampedDelta width=1 height=0 ScrollingEffectsController::applyScrollDeltaWithStretching() - stretchScrollForce width=6 height=0 move delta width=1 height=0 dampedDelta width=1 height=0 ScrollingEffectsController 0x31062c180 updateRubberBandingState - isRubberBanding 0 ScrollingEffectsController 0x31062c180 startMomentumScrollWithInitialVelocity width=0 height=0 from (1,319) ScrollingEffectsController 0x31062c180 scrollAnimationWillStart ScrollAnimation 0x3106124b0 momentum active 1 current offset (0,0) ScrollingEffectsController::startRubberBandAnimationIfNecessary() - rubberBandAnimationRunning 0 stretchAmount width=1 height=0 targetOffset (1,319) ScrollingEffectsController 0x31062c180 scrollAnimationDidEnd ScrollAnimation 0x3106124b0 momentum active 0 current offset (0,0) ScrollingEffectsController 0x31062c180 stopAnimatedScroll ScrollingEffectsController::startRubberBandAnimation() - starting rubbberband with targetOffset (0,319) initialVelocity width=0 height=0 initialOverscroll width=1 height=0 ScrollingEffectsController 0x31062c180 scrollAnimationWillStart ScrollAnimation 0x31f8bf240 rubber-band active 1 current offset (0,0) ScrollingEffectsController 0x31062c180 updateRubberBandingState - isRubberBanding 1 ScrollingEffectsController 0x31062c180 scrollAnimationDidUpdate ScrollAnimation 0x31f8bf240 rubber-band active 1 current offset (1,319) (main thread 0) scrolling to (1,319) ThreadedScrollingTree::willStartRenderingUpdate - scrollingThreadIsActive 1 ScrollingEffectsController 0x31062c180 scrollAnimationDidUpdate ScrollAnimation 0x31f8bf240 rubber-band active 1 current offset (1,319) (main thread 0) scrolling to (1,319) ThreadedScrollingTree::willStartRenderingUpdate - scrollingThreadIsActive 1 ScrollingEffectsController 0x31062c180 scrollAnimationDidUpdate ScrollAnimation 0x31f8bf240 rubber-band active 1 current offset (1,319) (main thread 0) scrolling to (1,319) ThreadedScrollingTree::willStartRenderingUpdate - scrollingThreadIsActive 1 ScrollingEffectsController 0x31062c180 scrollAnimationDidUpdate ScrollAnimation 0x31f8bf240 rubber-band active 1 current offset (0,319) (main thread 0) scrolling to (0,319) ScrollingEffectsController 0x31062c180 updateRubberBandingState - isRubberBanding 0 ScrollingEffectsController 0x31062c180 scrollAnimationDidEnd ScrollAnimation 0x31f8bf240 rubber-band active 0 current offset (0,319) ThreadedScrollingTree::willStartRenderingUpdate - scrollingThreadIsActive 1 ThreadedScrollingTree::willStartRenderingUpdate - scrollingThreadIsActive 0
<rdar://problem/85041566>
This will be a regression from the scroll animation refactoring.
Created attachment 443694 [details] Test case
QA is unable to reproduce this.