summaryrefslogtreecommitdiff
path: root/packages/SystemUI/src/com/android/keyguard/AnimatableClockController.java
diff options
context:
space:
mode:
authorBeverly <beverlyt@google.com>2021-03-08 16:17:03 -0500
committerBeverly Tai <beverlyt@google.com>2021-03-11 18:21:04 +0000
commitaadf7bafc53724e8069e6e4f64a9da3d6eb9d05c (patch)
tree97d9fc56e4fd45bfde0aa5f48a2f5fcb6ab1b1e1 /packages/SystemUI/src/com/android/keyguard/AnimatableClockController.java
parentd3035fe485b76588bf5c196214dd3185178a9ddb (diff)
Only animate clock weight if doze is animating
Test: manual Fixes: 180574794 Change-Id: I055e1b7d2e3f0db9d4359bba5295f6ee8ae27502
Diffstat (limited to 'packages/SystemUI/src/com/android/keyguard/AnimatableClockController.java')
-rw-r--r--packages/SystemUI/src/com/android/keyguard/AnimatableClockController.java15
1 files changed, 12 insertions, 3 deletions
diff --git a/packages/SystemUI/src/com/android/keyguard/AnimatableClockController.java b/packages/SystemUI/src/com/android/keyguard/AnimatableClockController.java
index 1569fff63453..3f0e3eb84424 100644
--- a/packages/SystemUI/src/com/android/keyguard/AnimatableClockController.java
+++ b/packages/SystemUI/src/com/android/keyguard/AnimatableClockController.java
@@ -45,6 +45,7 @@ public class AnimatableClockController extends ViewController<AnimatableClockVie
private int mLockScreenColor;
private boolean mIsDozing;
+ private float mDozeAmount;
private Locale mLocale;
private final NumberFormat mBurmeseNf = NumberFormat.getInstance(Locale.forLanguageTag("my"));
@@ -59,6 +60,7 @@ public class AnimatableClockController extends ViewController<AnimatableClockVie
super(view);
mStatusBarStateController = statusBarStateController;
mIsDozing = mStatusBarStateController.isDozing();
+ mDozeAmount = mStatusBarStateController.getDozeAmount();
mBroadcastDispatcher = broadcastDispatcher;
mBurmeseNumerals = mBurmeseNf.format(FORMAT_NUMBER);
@@ -82,6 +84,7 @@ public class AnimatableClockController extends ViewController<AnimatableClockVie
new IntentFilter(Intent.ACTION_LOCALE_CHANGED));
mStatusBarStateController.addCallback(mStatusBarStateListener);
mIsDozing = mStatusBarStateController.isDozing();
+ mDozeAmount = mStatusBarStateController.getDozeAmount();
refreshTime();
initColors();
}
@@ -136,9 +139,15 @@ public class AnimatableClockController extends ViewController<AnimatableClockVie
private final StatusBarStateController.StateListener mStatusBarStateListener =
new StatusBarStateController.StateListener() {
@Override
- public void onDozingChanged(boolean isDozing) {
- mIsDozing = isDozing;
- mView.animateDoze(mIsDozing, true);
+ public void onDozeAmountChanged(float linear, float eased) {
+ boolean noAnimation = (mDozeAmount == 0f && linear == 1f)
+ || (mDozeAmount == 1f && linear == 0f);
+ boolean isDozing = linear > mDozeAmount;
+ mDozeAmount = linear;
+ if (mIsDozing != isDozing) {
+ mIsDozing = isDozing;
+ mView.animateDoze(mIsDozing, !noAnimation);
+ }
}
};
}