diff --git a/src/index.js b/src/index.js index 9b8d7699..535bf182 100644 --- a/src/index.js +++ b/src/index.js @@ -83,6 +83,7 @@ class Toast extends Component { this._setState = this._setState.bind(this); this._animateMovement = this._animateMovement.bind(this); this._animateRelease = this._animateRelease.bind(this); + this._shouldSetPanResponder = this._shouldSetPanResponder.bind(this); this.startTimer = this.startTimer.bind(this); this.animate = this.animate.bind(this); this.show = this.show.bind(this); @@ -102,11 +103,10 @@ class Toast extends Component { }; this.panResponder = PanResponder.create({ - onMoveShouldSetPanResponder: (event, gestureState) => { - const { dx, dy } = gestureState; - // Fixes onPress handler https://github.com/calintamas/react-native-toast-message/issues/113 - return Math.abs(dx) > 1 || Math.abs(dy) > 1; - }, + onMoveShouldSetPanResponder: (event, gesture) => + this._shouldSetPanResponder(gesture), + onMoveShouldSetPanResponderCapture: (event, gesture) => + this._shouldSetPanResponder(gesture), onPanResponderMove: (event, gesture) => { this._animateMovement(gesture); }, @@ -158,6 +158,12 @@ class Toast extends Component { return new Promise((resolve) => this.setState(reducer, () => resolve())); } + _shouldSetPanResponder(gesture) { + const { dx, dy } = gesture; + // Fixes onPress handler https://github.com/calintamas/react-native-toast-message/issues/113 + return Math.abs(dx) > 2 || Math.abs(dy) > 2; + } + _animateMovement(gesture) { const { position, animation, keyboardVisible } = this.state; const { dy } = gesture;