From ff4e92f15cd953bffe78416a4fa5a1b6de4c34fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20Ja=CC=88rleberg?= Date: Wed, 13 Apr 2022 09:55:19 +0200 Subject: [PATCH 1/2] Fix LottieDrawable#start for non-View callbacks Previously, the start function would be a noop if your callback was something other than a View instance. --- lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java b/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java index 3f01bd9a2..c5e45fb00 100644 --- a/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java +++ b/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java @@ -551,7 +551,7 @@ public void draw(Canvas canvas, Matrix matrix) { public void start() { // Don't auto play when in edit mode. Callback callback = getCallback(); - if (callback instanceof View && !((View) callback).isInEditMode()) { + if (!(callback instanceof View) || !((View) callback).isInEditMode()) { playAnimation(); } } From 609ec0d39430559c3c507350be468af090c8db15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20Ja=CC=88rleberg?= Date: Wed, 13 Apr 2022 17:10:21 +0200 Subject: [PATCH 2/2] Invert the if condition for clarity --- lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java b/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java index c5e45fb00..637e49446 100644 --- a/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java +++ b/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java @@ -549,11 +549,12 @@ public void draw(Canvas canvas, Matrix matrix) { @MainThread @Override public void start() { - // Don't auto play when in edit mode. Callback callback = getCallback(); - if (!(callback instanceof View) || !((View) callback).isInEditMode()) { - playAnimation(); + if (callback instanceof View && ((View) callback).isInEditMode()) { + // Don't auto play when in edit mode. + return; } + playAnimation(); } @MainThread