Merge "Added some logging for removal animations" into sc-dev am: 9a6bdd9fc1

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15054860

Change-Id: I0ba86ef4e5a8e8adac7f36552faff67f35c4a2c5
This commit is contained in:
Selim Cinek
2021-06-23 15:08:03 +00:00
committed by Automerger Merge Worker

View File

@@ -141,6 +141,9 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
// adb shell setprop persist.debug.nssl true && adb reboot // adb shell setprop persist.debug.nssl true && adb reboot
private static final boolean DEBUG = SystemProperties.getBoolean("persist.debug.nssl", private static final boolean DEBUG = SystemProperties.getBoolean("persist.debug.nssl",
false /* default */); 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_NORMAL = 0.35f;
private static final float RUBBER_BAND_FACTOR_AFTER_EXPAND = 0.15f; private static final float RUBBER_BAND_FACTOR_AFTER_EXPAND = 0.15f;
@@ -2675,7 +2678,17 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
*/ */
@ShadeViewRefactor(RefactorComponent.STATE_RESOLVER) @ShadeViewRefactor(RefactorComponent.STATE_RESOLVER)
boolean generateRemoveAnimation(ExpandableView child) { 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 (removeRemovedChildFromHeadsUpChangeAnimations(child)) {
if (DEBUG_REMOVE_ANIMATION) {
Log.d(TAG, "removedBecauseOfHeadsUp " + key);
}
mAddedHeadsUpChildren.remove(child); mAddedHeadsUpChildren.remove(child);
return false; return false;
} }
@@ -2684,8 +2697,17 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
mClearTransientViewsWhenFinished.add(child); mClearTransientViewsWhenFinished.add(child);
return true; 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 (mIsExpanded && mAnimationsEnabled && !isChildInInvisibleGroup(child)) {
if (!mChildrenToAddAnimated.contains(child)) { if (!mChildrenToAddAnimated.contains(child)) {
if (DEBUG_REMOVE_ANIMATION) {
Log.d(TAG, "needsAnimation = true " + key);
}
// Generate Animations // Generate Animations
mChildrenToRemoveAnimated.add(child); mChildrenToRemoveAnimated.add(child);
mNeedsAnimation = true; mNeedsAnimation = true;
@@ -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 * 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) @ShadeViewRefactor(RefactorComponent.STATE_RESOLVER)
private boolean removeRemovedChildFromHeadsUpChangeAnimations(View child) { private boolean removeRemovedChildFromHeadsUpChangeAnimations(View child) {
@@ -2726,7 +2748,7 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
((ExpandableNotificationRow) child).setHeadsUpAnimatingAway(false); ((ExpandableNotificationRow) child).setHeadsUpAnimatingAway(false);
} }
mTmpList.clear(); 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 // TODO (b/162832756): remove since this won't happen in new pipeline (we prune groups in