Loading packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java +24 −2 Original line number Diff line number Diff line Loading @@ -141,6 +141,9 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable // adb shell setprop persist.debug.nssl true && adb reboot private static final boolean DEBUG = SystemProperties.getBoolean("persist.debug.nssl", false /* default */); // TODO(b/187291379) disable again before release private static final boolean DEBUG_REMOVE_ANIMATION = SystemProperties.getBoolean( "persist.debug.nssl.dismiss", true /* default */); private static final float RUBBER_BAND_FACTOR_NORMAL = 0.35f; private static final float RUBBER_BAND_FACTOR_AFTER_EXPAND = 0.15f; Loading Loading @@ -2675,7 +2678,17 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable */ @ShadeViewRefactor(RefactorComponent.STATE_RESOLVER) boolean generateRemoveAnimation(ExpandableView child) { String key = ""; if (DEBUG_REMOVE_ANIMATION) { if (child instanceof ExpandableNotificationRow) { key = ((ExpandableNotificationRow) child).getEntry().getKey(); } Log.d(TAG, "generateRemoveAnimation " + key); } if (removeRemovedChildFromHeadsUpChangeAnimations(child)) { if (DEBUG_REMOVE_ANIMATION) { Log.d(TAG, "removedBecauseOfHeadsUp " + key); } mAddedHeadsUpChildren.remove(child); return false; } Loading @@ -2684,8 +2697,17 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable mClearTransientViewsWhenFinished.add(child); return true; } if (DEBUG_REMOVE_ANIMATION) { Log.d(TAG, "generateRemove " + key + "\nmIsExpanded " + mIsExpanded + "\nmAnimationsEnabled " + mAnimationsEnabled + "\n!invisible group " + !isChildInInvisibleGroup(child)); } if (mIsExpanded && mAnimationsEnabled && !isChildInInvisibleGroup(child)) { if (!mChildrenToAddAnimated.contains(child)) { if (DEBUG_REMOVE_ANIMATION) { Log.d(TAG, "needsAnimation = true " + key); } // Generate Animations mChildrenToRemoveAnimated.add(child); mNeedsAnimation = true; Loading @@ -2707,7 +2729,7 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable /** * Remove a removed child view from the heads up animations if it was just added there * * @return whether any child was removed from the list to animate * @return whether any child was removed from the list to animate and the view was just added */ @ShadeViewRefactor(RefactorComponent.STATE_RESOLVER) private boolean removeRemovedChildFromHeadsUpChangeAnimations(View child) { Loading @@ -2726,7 +2748,7 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable ((ExpandableNotificationRow) child).setHeadsUpAnimatingAway(false); } mTmpList.clear(); return hasAddEvent; return hasAddEvent && mAddedHeadsUpChildren.contains(child); } // TODO (b/162832756): remove since this won't happen in new pipeline (we prune groups in Loading Loading
packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java +24 −2 Original line number Diff line number Diff line Loading @@ -141,6 +141,9 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable // adb shell setprop persist.debug.nssl true && adb reboot private static final boolean DEBUG = SystemProperties.getBoolean("persist.debug.nssl", false /* default */); // TODO(b/187291379) disable again before release private static final boolean DEBUG_REMOVE_ANIMATION = SystemProperties.getBoolean( "persist.debug.nssl.dismiss", true /* default */); private static final float RUBBER_BAND_FACTOR_NORMAL = 0.35f; private static final float RUBBER_BAND_FACTOR_AFTER_EXPAND = 0.15f; Loading Loading @@ -2675,7 +2678,17 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable */ @ShadeViewRefactor(RefactorComponent.STATE_RESOLVER) boolean generateRemoveAnimation(ExpandableView child) { String key = ""; if (DEBUG_REMOVE_ANIMATION) { if (child instanceof ExpandableNotificationRow) { key = ((ExpandableNotificationRow) child).getEntry().getKey(); } Log.d(TAG, "generateRemoveAnimation " + key); } if (removeRemovedChildFromHeadsUpChangeAnimations(child)) { if (DEBUG_REMOVE_ANIMATION) { Log.d(TAG, "removedBecauseOfHeadsUp " + key); } mAddedHeadsUpChildren.remove(child); return false; } Loading @@ -2684,8 +2697,17 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable mClearTransientViewsWhenFinished.add(child); return true; } if (DEBUG_REMOVE_ANIMATION) { Log.d(TAG, "generateRemove " + key + "\nmIsExpanded " + mIsExpanded + "\nmAnimationsEnabled " + mAnimationsEnabled + "\n!invisible group " + !isChildInInvisibleGroup(child)); } if (mIsExpanded && mAnimationsEnabled && !isChildInInvisibleGroup(child)) { if (!mChildrenToAddAnimated.contains(child)) { if (DEBUG_REMOVE_ANIMATION) { Log.d(TAG, "needsAnimation = true " + key); } // Generate Animations mChildrenToRemoveAnimated.add(child); mNeedsAnimation = true; Loading @@ -2707,7 +2729,7 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable /** * Remove a removed child view from the heads up animations if it was just added there * * @return whether any child was removed from the list to animate * @return whether any child was removed from the list to animate and the view was just added */ @ShadeViewRefactor(RefactorComponent.STATE_RESOLVER) private boolean removeRemovedChildFromHeadsUpChangeAnimations(View child) { Loading @@ -2726,7 +2748,7 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable ((ExpandableNotificationRow) child).setHeadsUpAnimatingAway(false); } mTmpList.clear(); return hasAddEvent; return hasAddEvent && mAddedHeadsUpChildren.contains(child); } // TODO (b/162832756): remove since this won't happen in new pipeline (we prune groups in Loading