Merge "Revert "Revert "Revert "Hold WeakReference to split callback"""" into main
diff --git a/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java b/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java
index 5b13eeb..16fe07d 100644
--- a/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java
+++ b/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java
@@ -101,7 +101,6 @@
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;
@@ -586,13 +585,13 @@
private final int mInitialTaskId;
private final int mSecondTaskId;
- private final WeakReference<Consumer<Boolean>> mSuccessCallback;
+ private final Consumer<Boolean> mSuccessCallback;
RemoteSplitLaunchTransitionRunner(int initialTaskId, int secondTaskId,
@Nullable Consumer<Boolean> callback) {
mInitialTaskId = initialTaskId;
mSecondTaskId = secondTaskId;
- mSuccessCallback = new WeakReference<>(callback);
+ mSuccessCallback = callback;
}
@Override
@@ -611,8 +610,8 @@
TaskViewUtils.composeRecentsSplitLaunchAnimator(mLaunchingTaskView, mStateManager,
mDepthController, mInitialTaskId, mSecondTaskId, info, t, () -> {
finishAdapter.run();
- if (mSuccessCallback.get() != null) {
- mSuccessCallback.get().accept(true);
+ if (mSuccessCallback != null) {
+ mSuccessCallback.accept(true);
}
resetState();
});