diff --git a/native/components/full-screen-view-modal.react.js b/native/components/full-screen-view-modal.react.js --- a/native/components/full-screen-view-modal.react.js +++ b/native/components/full-screen-view-modal.react.js @@ -833,7 +833,10 @@ 'worklet'; lastPinchScale.value = 1; pinchActive.value = true; - }, [lastPinchScale, pinchActive]); + cancelAnimation(curX); + cancelAnimation(curY); + cancelAnimation(curScale); + }, [curScale, curX, curY, lastPinchScale, pinchActive]); const pinchUpdate = React.useCallback( ({ scale, focalX, focalY }: PinchGestureEvent) => { @@ -877,8 +880,21 @@ absoluteX - translationX, absoluteY - translationY, ); + if (panActive.value) { + cancelAnimation(curX); + cancelAnimation(curY); + cancelAnimation(curScale); + } }, - [lastPanTranslationX, lastPanTranslationY, outsideButtons, panActive], + [ + lastPanTranslationX, + lastPanTranslationY, + outsideButtons, + panActive, + curX, + curY, + curScale, + ], ); const panUpdate = React.useCallback(