fix: [ROKU-1647] Animation does not work when called in the callback #20
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What did you implement:
Closes #19
The behavior of the
animate
function should now be handled properly and it should be possible to call new animations when the previous one was resolved or rejected.However, I don't fully understand why aborted animation is rejected and handled like an error, but I didn't change this behavior to not break anything in case of someone already handling it this way and to not introduce a breaking change.
How did you implement it:
AnimatorCore.animate
before clearing up the previous animation context checks if the previous promise was resolved.If yes, then it queues the next animation instead of replacing the old one.
How can we verify it:
Given there is a component with an id container the following code:
should log the following steps:
And all animations should behave accordingly, so 2 first will be aborted, and the next 4 should proceed in proper order.
Todos:
Is this ready for review?: YES
Is it a breaking change?: NO