When you call controller.forward(direction: SwipeDirection.Right) (or Left) while the animation of an older call is still ongoing the controller store a SwipeInfo with SwipeDirection.Right.
https://github.com/BrunoJurkovic/tcard/blob/10b7d7fa4c4643dc436282428530df266c277fc9/lib/src/controller.dart#L22
When the controller then call state!.runChangeOrderAnimation() the state find an older animation is still ongoing and the it return without doing nothing.
This way at the next controller.forward(direction: SwipeDirection.Left) (or Right) the card will swipe in the wrong direction.
A easy fix is to remove the last SwipeInfo if the animation is still ongoing.
When you call
controller.forward(direction: SwipeDirection.Right)
(or Left) while the animation of an older call is still ongoing the controller store a SwipeInfo with SwipeDirection.Right. https://github.com/BrunoJurkovic/tcard/blob/10b7d7fa4c4643dc436282428530df266c277fc9/lib/src/controller.dart#L22 When the controller then callstate!.runChangeOrderAnimation()
the state find an older animation is still ongoing and the it return without doing nothing. This way at the nextcontroller.forward(direction: SwipeDirection.Left)
(or Right) the card will swipe in the wrong direction.A easy fix is to remove the last SwipeInfo if the animation is still ongoing.