Merge "Always remove IconState in onViewRemoved, even if animations are off" into qt-dev
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationIconContainer.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationIconContainer.java
index f458618..e20a23e 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationIconContainer.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationIconContainer.java
@@ -315,10 +315,11 @@
@Override
public void onViewRemoved(View child) {
super.onViewRemoved(child);
- if (mAnimationsEnabled && child instanceof StatusBarIconView) {
+
+ if (child instanceof StatusBarIconView) {
boolean isReplacingIcon = isReplacingIcon(child);
final StatusBarIconView icon = (StatusBarIconView) child;
- if (icon.getVisibleState() != StatusBarIconView.STATE_HIDDEN
+ if (mAnimationsEnabled && icon.getVisibleState() != StatusBarIconView.STATE_HIDDEN
&& child.getVisibility() == VISIBLE && isReplacingIcon) {
int animationStartIndex = findFirstViewIndexAfter(icon.getTranslationX());
if (mAddAnimationStartIndex < 0) {
@@ -329,7 +330,7 @@
}
if (!mChangingViewPositions) {
mIconStates.remove(child);
- if (!isReplacingIcon) {
+ if (mAnimationsEnabled && !isReplacingIcon) {
addTransientView(icon, 0);
boolean isIsolatedIcon = child == mIsolatedIcon;
icon.setVisibleState(StatusBarIconView.STATE_HIDDEN, true /* animate */,