Revert "Break strong ref to ExpandableNotificationRow"
This reverts commit a9593e965db697da3018f600bbe70581fbdf34fc.
Reason for revert: Causing NPE, see b/144701184.
Bug: 144109427
Fixes: 144701184
Change-Id: Icb6f95f73219944b905822cbfa1f0c6460b3d628
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/ActivityLaunchAnimator.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/ActivityLaunchAnimator.java
index e48e819..9b31234 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/ActivityLaunchAnimator.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/ActivityLaunchAnimator.java
@@ -125,21 +125,22 @@
return mAnimationRunning;
}
- private class AnimationRunner extends IRemoteAnimationRunner.Stub {
+ class AnimationRunner extends IRemoteAnimationRunner.Stub {
- private ExpandableNotificationRow mSourceNotification;
- private final ExpandAnimationParameters mParams = new ExpandAnimationParameters();
+ private final ExpandableNotificationRow mSourceNotification;
+ private final ExpandAnimationParameters mParams;
private final Rect mWindowCrop = new Rect();
private final float mNotificationCornerRadius;
private float mCornerRadius;
private boolean mIsFullScreenLaunch = true;
private final SyncRtSurfaceTransactionApplier mSyncRtTransactionApplier;
- AnimationRunner(ExpandableNotificationRow sourceNotification) {
- mSourceNotification = sourceNotification;
- mSyncRtTransactionApplier = new SyncRtSurfaceTransactionApplier(sourceNotification);
- mNotificationCornerRadius = Math.max(sourceNotification.getCurrentTopRoundness(),
- sourceNotification.getCurrentBottomRoundness());
+ public AnimationRunner(ExpandableNotificationRow sourceNofitication) {
+ mSourceNotification = sourceNofitication;
+ mParams = new ExpandAnimationParameters();
+ mSyncRtTransactionApplier = new SyncRtSurfaceTransactionApplier(mSourceNotification);
+ mNotificationCornerRadius = Math.max(mSourceNotification.getCurrentTopRoundness(),
+ mSourceNotification.getCurrentBottomRoundness());
}
@Override
@@ -154,7 +155,6 @@
setAnimationPending(false);
invokeCallback(iRemoteAnimationFinishedCallback);
mNotificationPanel.collapse(false /* delayed */, 1.0f /* speedUpFactor */);
- mSourceNotification = null;
return;
}
@@ -254,7 +254,6 @@
mCallback.onExpandAnimationFinished(mIsFullScreenLaunch);
applyParamsToNotification(null);
applyParamsToNotificationList(null);
- mSourceNotification = null;
}
}
@@ -282,7 +281,6 @@
mSourceNotification.post(() -> {
setAnimationPending(false);
mCallback.onLaunchAnimationCancelled();
- mSourceNotification = null;
});
}
};