If you invoke snapTo before the previous animation is finished (before onSettle), nothing will happen.
Expected Behavior
The ongoing animation should stop, and the new snapTo should begin. Animations can take a few hundred ms before state.finished is updated. For example, if I open a sheet, drag it around, and then immediately try to dismiss it via snapTo, often the first attempt to dismiss will be ignored.
How to reproduce
Invoke snapTo when an existing animation is running before it has fully settled.
Increasing the restDisplacementThreshold and restSpeedThreshold has significantly reduced the severity of this. Ongoing animations now settle faster, meaning we see this issue much less often.
Current Behavior
If you invoke
snapTo
before the previous animation is finished (beforeonSettle
), nothing will happen.Expected Behavior
The ongoing animation should stop, and the new
snapTo
should begin. Animations can take a few hundred ms beforestate.finished
is updated. For example, if I open a sheet, drag it around, and then immediately try to dismiss it viasnapTo
, often the first attempt to dismiss will be ignored.How to reproduce
Invoke
snapTo
when an existing animation is running before it has fully settled.Your Environment