diff --git a/lottie/src/main/java/com/airbnb/lottie/animation/keyframe/BaseKeyframeAnimation.java b/lottie/src/main/java/com/airbnb/lottie/animation/keyframe/BaseKeyframeAnimation.java
index 19cf7c2..42c3a7e 100644
--- a/lottie/src/main/java/com/airbnb/lottie/animation/keyframe/BaseKeyframeAnimation.java
+++ b/lottie/src/main/java/com/airbnb/lottie/animation/keyframe/BaseKeyframeAnimation.java
@@ -5,6 +5,7 @@
 import com.airbnb.lottie.value.Keyframe;
 import com.airbnb.lottie.value.LottieValueCallback;
 
+import java.security.Key;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -52,7 +53,7 @@
   public void setProgress(@FloatRange(from = 0f, to = 1f) float progress) {
     // Must use hashCode() since the actual object instance will be returned
     // from getValue() below with the new values.
-    int previousValue = valueCallback == null ? getValue().hashCode() : 0;
+    Keyframe<K> previousKeyframe = getCurrentKeyframe();
     if (progress < getStartDelayProgress()) {
       progress = getStartDelayProgress();
     } else if (progress > getEndProgress()) {
@@ -64,9 +65,9 @@
     }
     this.progress = progress;
     // Just trigger a change but don't compute values if there is a value callback.
-    int newValue = valueCallback == null ? getValue().hashCode() : -1;
+    Keyframe<K> newKeyframe = getCurrentKeyframe();
 
-    if (previousValue != newValue) {
+    if (previousKeyframe != newKeyframe || !newKeyframe.isStatic()) {
       notifyListeners();
     }
   }
