diff --git a/packages/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandler.kt b/packages/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandler.kt index 688d0eee93..4b3ae9351e 100644 --- a/packages/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandler.kt +++ b/packages/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandler.kt @@ -685,6 +685,7 @@ open class GestureHandler() { } } - override fun onCancel() { + private fun dispatchCancelEventToView() { val time = SystemClock.uptimeMillis() val event = MotionEvent.obtain(time, time, MotionEvent.ACTION_CANCEL, 0f, 0f, 0).apply { action = MotionEvent.ACTION_CANCEL @@ -159,6 +159,10 @@ class NativeViewGestureHandler : GestureHandler() { event.recycle() } + override fun onCancel() = dispatchCancelEventToView() + + override fun onFail() = dispatchCancelEventToView() + override fun onReset() { this.hook = defaultHook }