Fix unexpected crossfade animation when updating Lottie animation or rendering engine #2202
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.
This PR fixes an issue where updating the animation displayed by a
LottieAnimationView
, or its current rendering engine, would unexpectedly trigger a short crossfade animation.This was a default implicit animation added by Core Animation, which we can disable by disabling it in
actions
.This was a regression introduced by the architecture change that created the
LottieAnimationLayer
CALayer
subclass (#2073). I think theCALayer
of aUIView
has all of these implicit actions disabled by default, so moving this code from aUIView
subclass to aCALayer
subclass changed the behavior of inserting a sublayer.Fixes #2200:
This also fixes an issue I had noticed in the example app where the view would animate strangely when updating the rendering engine:
Before
After
fyi @eromanc in case you find this interesting / helpful