From bb9fe162541201e15182dce36fadfc0db8f19db5 Mon Sep 17 00:00:00 2001 From: Vinit Nayak Date: Sat, 26 Aug 2023 18:35:12 +0000 Subject: [PATCH] Revert "Revert "Hold WeakReference to split callback"" This reverts commit 06be7eb88ee96d1eba0bcedc7728d9f64c2bd6d1. Reason for revert: Potential forward fix with ag/24562796 Change-Id: I1f01dda728491e627ec0cc34fd364cbd794854d5 --- .../quickstep/util/SplitSelectStateController.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java b/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java index 6d5aa169ab..9eebf2a684 100644 --- a/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java +++ b/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java @@ -101,6 +101,7 @@ import com.android.systemui.shared.system.RemoteAnimationRunnerCompat; import com.android.wm.shell.splitscreen.ISplitSelectListener; import java.io.PrintWriter; +import java.lang.ref.WeakReference; import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -567,13 +568,13 @@ public class SplitSelectStateController { private final int mInitialTaskId; private final int mSecondTaskId; - private final Consumer mSuccessCallback; + private final WeakReference> mSuccessCallback; RemoteSplitLaunchTransitionRunner(int initialTaskId, int secondTaskId, @Nullable Consumer callback) { mInitialTaskId = initialTaskId; mSecondTaskId = secondTaskId; - mSuccessCallback = callback; + mSuccessCallback = new WeakReference<>(callback); } @Override @@ -593,8 +594,8 @@ public class SplitSelectStateController { TaskViewUtils.composeRecentsSplitLaunchAnimator(mLaunchingTaskView, mStateManager, mDepthController, mInitialTaskId, mSecondTaskId, info, t, () -> { finishAdapter.run(); - if (mSuccessCallback != null) { - mSuccessCallback.accept(true); + if (mSuccessCallback.get() != null) { + mSuccessCallback.get().accept(true); } resetState(); });