From 2fce3c8c2891d339120e267ad36d210755000c6f Mon Sep 17 00:00:00 2001 From: Selim Cinek Date: Mon, 8 May 2017 12:38:09 -0700 Subject: [PATCH] Fixed that the shelf was animating the icons When expanding instantly, the shelf was still animating it's icons which shouldn't happen. Change-Id: I76ceb4cc77a1830e555499fff9ce8b94c77b0bfe Fixes: 37918141 --- .../com/android/systemui/statusbar/NotificationShelf.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationShelf.java b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationShelf.java index b134fc542776f..ea10c923e1764 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationShelf.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationShelf.java @@ -70,6 +70,8 @@ public class NotificationShelf extends ActivatableNotificationView implements private float mMaxShelfEnd; private int mRelativeOffset; private boolean mInteractive; + private float mOpenedAmount; + private boolean mNoAnimationsInThisFrame; private boolean mAnimationsEnabled = true; public NotificationShelf(Context context, AttributeSet attrs) { @@ -365,7 +367,8 @@ public class NotificationShelf extends ActivatableNotificationView implements } else { // We take the clamped position instead transitionAmount = clampedAmount; - iconState.needsCannedAnimation = iconState.clampedAppearAmount != clampedAmount; + iconState.needsCannedAnimation = iconState.clampedAppearAmount != clampedAmount + && !mNoAnimationsInThisFrame; } iconState.iconAppearAmount = !USE_ANIMATIONS_WHEN_OPENING || iconState.useFullTransitionAmount @@ -503,6 +506,8 @@ public class NotificationShelf extends ActivatableNotificationView implements } private void setOpenedAmount(float openedAmount) { + mNoAnimationsInThisFrame = openedAmount == 1.0f && mOpenedAmount == 0.0f; + mOpenedAmount = openedAmount; if (!mAmbientState.isPanelFullWidth()) { // We don't do a transformation at all, lets just assume we are fully opened openedAmount = 1.0f;