diff --git a/packages/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.kt b/packages/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.kt index 30cce31994..71927fd071 100644 --- a/packages/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.kt +++ b/packages/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.kt @@ -145,6 +145,10 @@ class RNGestureHandlerModule(reactContext: ReactApplicationContext?) : UiThreadUtil.assertOnUiThread() registry.getHandler(handlerTag)?.let { handler -> + if (handler.state == GestureHandler.STATE_UNDETERMINED && !handler.hasTrackedPointers) { + return + } + if (newState == GestureHandler.STATE_ACTIVE) { // The first touch event reaches JS before the handler begins, so a handler // that already tracks a pointer may still be UNDETERMINED here.