summaryrefslogtreecommitdiff
path: root/src/com/android/launcher3/anim
diff options
context:
space:
mode:
authorLuca Zuccarini <acul@google.com>2022-06-09 11:26:17 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2022-06-09 11:26:17 +0000
commit4618d3471f748625f82fb2141f61d2ab96c73701 (patch)
tree815b603b9cc8c9a74dcfd363253ee9a8929a2297 /src/com/android/launcher3/anim
parent291115ce7e549f106f6271026d0c069985ece2e0 (diff)
parent8009c1d4462bdca5a37c8b11825e4a154c4e88c5 (diff)
downloadLauncher3-4618d3471f748625f82fb2141f61d2ab96c73701.tar.gz
Merge "Add support for text color animations in PropertySetter." into tm-qpr-dev
Diffstat (limited to 'src/com/android/launcher3/anim')
-rw-r--r--src/com/android/launcher3/anim/AnimatedPropertySetter.java12
-rw-r--r--src/com/android/launcher3/anim/PropertySetter.java10
2 files changed, 22 insertions, 0 deletions
diff --git a/src/com/android/launcher3/anim/AnimatedPropertySetter.java b/src/com/android/launcher3/anim/AnimatedPropertySetter.java
index 01301f2b57..82e645a7a0 100644
--- a/src/com/android/launcher3/anim/AnimatedPropertySetter.java
+++ b/src/com/android/launcher3/anim/AnimatedPropertySetter.java
@@ -97,6 +97,18 @@ public class AnimatedPropertySetter extends PropertySetter {
return anim;
}
+ @NonNull
+ @Override
+ public <T> Animator setColor(T target, IntProperty<T> property, int value,
+ TimeInterpolator interpolator) {
+ if (property.get(target) == value) {
+ return NO_OP;
+ }
+ Animator anim = ObjectAnimator.ofArgb(target, property, value);
+ anim.setInterpolator(interpolator);
+ add(anim);
+ return anim;
+ }
/**
* Adds a callback to be run on every frame of the animation
diff --git a/src/com/android/launcher3/anim/PropertySetter.java b/src/com/android/launcher3/anim/PropertySetter.java
index d2207f6351..b0ed2d2277 100644
--- a/src/com/android/launcher3/anim/PropertySetter.java
+++ b/src/com/android/launcher3/anim/PropertySetter.java
@@ -89,6 +89,16 @@ public abstract class PropertySetter {
}
/**
+ * Updates a color property of the target using the provided interpolator
+ */
+ @NonNull
+ public <T> Animator setColor(T target, IntProperty<T> property, int value,
+ TimeInterpolator interpolator) {
+ property.setValue(target, value);
+ return NO_OP;
+ }
+
+ /**
* Runs the animation as part of setting the property
*/
public abstract void add(Animator animatorSet);