From bb163118e1e423e86a15aead27930eb3344e7db6 Mon Sep 17 00:00:00 2001 From: Nishan Date: Sun, 2 Jan 2022 13:34:14 +0530 Subject: [PATCH 1/2] fix: android single finger behaviour in pinch --- .../swmansion/gesturehandler/PinchGestureHandler.kt | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/android/lib/src/main/java/com/swmansion/gesturehandler/PinchGestureHandler.kt b/android/lib/src/main/java/com/swmansion/gesturehandler/PinchGestureHandler.kt index 965c8fa941..6805ba27de 100644 --- a/android/lib/src/main/java/com/swmansion/gesturehandler/PinchGestureHandler.kt +++ b/android/lib/src/main/java/com/swmansion/gesturehandler/PinchGestureHandler.kt @@ -57,14 +57,13 @@ class PinchGestureHandler : GestureHandler() { scaleGestureDetector = ScaleGestureDetector(context, gestureListener) val configuration = ViewConfiguration.get(context) spanSlop = configuration.scaledTouchSlop.toFloat() - begin() } - scaleGestureDetector?.onTouchEvent(event) - var activePointers = event.pointerCount - if (event.actionMasked == MotionEvent.ACTION_POINTER_UP) { - activePointers -= 1 + + if(event.actionMasked != MotionEvent.ACTION_POINTER_UP){ + scaleGestureDetector?.onTouchEvent(event) } - if (state == STATE_ACTIVE && activePointers < 2) { + + if (state == STATE_ACTIVE && event.actionMasked == MotionEvent.ACTION_UP) { end() } else if (event.actionMasked == MotionEvent.ACTION_UP) { fail() From aad9c874f793165629268d57f9111b9ff6793eb8 Mon Sep 17 00:00:00 2001 From: Nishan Date: Sun, 2 Jan 2022 13:51:27 +0530 Subject: [PATCH 2/2] fix: android single finger behaviour in pinch --- .../java/com/swmansion/gesturehandler/PinchGestureHandler.kt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/android/lib/src/main/java/com/swmansion/gesturehandler/PinchGestureHandler.kt b/android/lib/src/main/java/com/swmansion/gesturehandler/PinchGestureHandler.kt index 6805ba27de..f805bed5b8 100644 --- a/android/lib/src/main/java/com/swmansion/gesturehandler/PinchGestureHandler.kt +++ b/android/lib/src/main/java/com/swmansion/gesturehandler/PinchGestureHandler.kt @@ -57,9 +57,10 @@ class PinchGestureHandler : GestureHandler() { scaleGestureDetector = ScaleGestureDetector(context, gestureListener) val configuration = ViewConfiguration.get(context) spanSlop = configuration.scaledTouchSlop.toFloat() + begin() } - - if(event.actionMasked != MotionEvent.ACTION_POINTER_UP){ + + if(event.actionMasked != MotionEvent.ACTION_POINTER_UP){ scaleGestureDetector?.onTouchEvent(event) }