From 24e7db361fe03ce6939cc04dcc491593ae1e932f Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Tue, 14 Feb 2017 03:20:15 +0530 Subject: [PATCH] Fix gesture recognition in card stack (#324) --- src/views/CardStackPanResponder.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/views/CardStackPanResponder.js b/src/views/CardStackPanResponder.js index 607f3c5..3b3abb4 100644 --- a/src/views/CardStackPanResponder.js +++ b/src/views/CardStackPanResponder.js @@ -99,7 +99,7 @@ class CardStackPanResponder extends AbstractPanResponder { this._addNativeListener(this._props.position); } - onMoveShouldSetPanResponder(event: any, gesture: any): boolean { + onMoveShouldSetPanResponder(event: {nativeEvent: {pageY: number, pageX: number}}, gesture: any): boolean { const props = this._props; if (props.navigationState.index !== props.scene.index) { @@ -110,7 +110,7 @@ class CardStackPanResponder extends AbstractPanResponder { const isVertical = this._isVertical; const index = props.navigationState.index; const currentDragDistance = gesture[isVertical ? 'dy' : 'dx']; - const currentDragPosition = gesture[isVertical ? 'moveY' : 'moveX']; + const currentDragPosition = event.nativeEvent[isVertical ? 'pageY' : 'pageX']; const maxDragDistance = isVertical ? layout.height.__getValue() : layout.width.__getValue(); @@ -123,7 +123,7 @@ class CardStackPanResponder extends AbstractPanResponder { */ props.gestureResponseDistance || 30; - if (positionMax != null && currentDragPosition > positionMax) { + if (positionMax != null && (currentDragPosition - currentDragDistance) > positionMax) { return false; }