From d649fbc6691871f0348076bce185d11a183c02cf Mon Sep 17 00:00:00 2001 From: Andrius Janauskas Date: Mon, 30 Mar 2020 15:36:04 +0300 Subject: [PATCH] fix: finish stack animation on CANCELLED event (#7898) fixes #7897 --- packages/stack/src/views/Stack/Card.tsx | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/packages/stack/src/views/Stack/Card.tsx b/packages/stack/src/views/Stack/Card.tsx index a5d627e6..db1c7a2f 100755 --- a/packages/stack/src/views/Stack/Card.tsx +++ b/packages/stack/src/views/Stack/Card.tsx @@ -246,11 +246,21 @@ export default class Card extends React.Component { this.handleStartInteraction(); onGestureBegin?.(); break; - case GestureState.CANCELLED: + case GestureState.CANCELLED: { this.isSwiping.setValue(FALSE); this.handleEndInteraction(); + + const velocity = + gestureDirection === 'vertical' || + gestureDirection === 'vertical-inverted' + ? nativeEvent.velocityY + : nativeEvent.velocityX; + + this.animate({ closing: this.props.closing, velocity }); + onGestureCanceled?.(); break; + } case GestureState.END: { this.isSwiping.setValue(FALSE);