Avoid weird expand animation when a notification is updated

Whenever a notification was updated and it was expanded, the
animation would look incredibly weird. This is now fixed.

Change-Id: Iaeac6f71c3771c4782e751be50b54b62d08b643e
Fixes: 30693397
This commit is contained in:
Selim Cinek
2016-08-10 13:02:38 -07:00
parent 2dabc8286b
commit bb42b7dd48
2 changed files with 3 additions and 13 deletions

View File

@@ -507,7 +507,7 @@ public class ExpandableNotificationRow extends ActivatableNotificationView {
int intrinsicHeight = getIntrinsicHeight(); int intrinsicHeight = getIntrinsicHeight();
mIsPinned = pinned; mIsPinned = pinned;
if (intrinsicHeight != getIntrinsicHeight()) { if (intrinsicHeight != getIntrinsicHeight()) {
notifyHeightChanged(false); notifyHeightChanged(false /* needsAnimation */);
} }
if (pinned) { if (pinned) {
setIconAnimationRunning(true); setIconAnimationRunning(true);
@@ -840,8 +840,6 @@ public class ExpandableNotificationRow extends ActivatableNotificationView {
} }
public void resetHeight() { public void resetHeight() {
mMaxExpandHeight = 0;
mHeadsUpHeight = 0;
onHeightReset(); onHeightReset();
requestLayout(); requestLayout();
} }
@@ -1290,7 +1288,7 @@ public class ExpandableNotificationRow extends ActivatableNotificationView {
} }
mHeadsUpHeight = headsUpChild.getHeight(); mHeadsUpHeight = headsUpChild.getHeight();
if (intrinsicBefore != getIntrinsicHeight()) { if (intrinsicBefore != getIntrinsicHeight()) {
notifyHeightChanged(false /* needsAnimation */); notifyHeightChanged(true /* needsAnimation */);
} }
} }
@@ -1398,7 +1396,7 @@ public class ExpandableNotificationRow extends ActivatableNotificationView {
if (isChildInGroup()) { if (isChildInGroup()) {
mGroupManager.setGroupExpanded(mStatusBarNotification, true); mGroupManager.setGroupExpanded(mStatusBarNotification, true);
} }
notifyHeightChanged(false); notifyHeightChanged(false /* needsAnimation */);
} }
public void setChildrenExpanded(boolean expanded, boolean animate) { public void setChildrenExpanded(boolean expanded, boolean animate) {

View File

@@ -216,7 +216,6 @@ public class NotificationStackScrollLayout extends ViewGroup
private float mTopPaddingOverflow; private float mTopPaddingOverflow;
private boolean mDontReportNextOverScroll; private boolean mDontReportNextOverScroll;
private boolean mDontClampNextScroll; private boolean mDontClampNextScroll;
private boolean mRequestViewResizeAnimationOnLayout;
private boolean mNeedViewResizeAnimation; private boolean mNeedViewResizeAnimation;
private View mExpandedGroupView; private View mExpandedGroupView;
private boolean mEverythingNeedsAnimation; private boolean mEverythingNeedsAnimation;
@@ -515,10 +514,6 @@ public class NotificationStackScrollLayout extends ViewGroup
setMaxLayoutHeight(getHeight()); setMaxLayoutHeight(getHeight());
updateContentHeight(); updateContentHeight();
clampScrollPosition(); clampScrollPosition();
if (mRequestViewResizeAnimationOnLayout) {
requestAnimationOnViewResize(null);
mRequestViewResizeAnimationOnLayout = false;
}
requestChildrenUpdate(); requestChildrenUpdate();
updateFirstAndLastBackgroundViews(); updateFirstAndLastBackgroundViews();
} }
@@ -3100,9 +3095,6 @@ public class NotificationStackScrollLayout extends ViewGroup
@Override @Override
public void onReset(ExpandableView view) { public void onReset(ExpandableView view) {
if (mIsExpanded && mAnimationsEnabled) {
mRequestViewResizeAnimationOnLayout = true;
}
updateAnimationState(view); updateAnimationState(view);
updateChronometerForChild(view); updateChronometerForChild(view);
} }