From b960ea2be115288692c3f96d2c35b341bb44b8fb Mon Sep 17 00:00:00 2001 From: Shan Huang Date: Fri, 11 Mar 2022 17:58:59 +0000 Subject: [PATCH] Clear back callback in SystemUiProxy. Bug: 223955009 Test: atest com.android.launcher3.jank.BinderTests#testPressHome Change-Id: I00197732a6e50c0907afecff497702fc4b799925 --- quickstep/src/com/android/quickstep/SystemUiProxy.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/quickstep/src/com/android/quickstep/SystemUiProxy.java b/quickstep/src/com/android/quickstep/SystemUiProxy.java index d8cbd36cd4..5ef89d309a 100644 --- a/quickstep/src/com/android/quickstep/SystemUiProxy.java +++ b/quickstep/src/com/android/quickstep/SystemUiProxy.java @@ -99,7 +99,7 @@ public class SystemUiProxy implements ISystemUiProxy, DisplayController.DisplayI private ILauncherUnlockAnimationController mPendingLauncherUnlockAnimationController; private IRecentTasksListener mRecentTasksListener; private final ArrayList mRemoteTransitions = new ArrayList<>(); - private IOnBackInvokedCallback mBackToLaunchCallback; + private IOnBackInvokedCallback mBackToLauncherCallback; // Used to dedupe calls to SystemUI private int mLastShelfHeight; @@ -200,8 +200,8 @@ public class SystemUiProxy implements ISystemUiProxy, DisplayController.DisplayI if (mRecentTasksListener != null && mRecentTasks != null) { registerRecentTasksListener(mRecentTasksListener); } - if (mBackAnimation != null && mBackToLaunchCallback != null) { - setBackToLauncherCallback(mBackToLaunchCallback); + if (mBackAnimation != null && mBackToLauncherCallback != null) { + setBackToLauncherCallback(mBackToLauncherCallback); } if (mPendingSetNavButtonAlpha != null) { @@ -836,7 +836,7 @@ public class SystemUiProxy implements ISystemUiProxy, DisplayController.DisplayI /** Sets the launcher {@link android.window.IOnBackInvokedCallback} to shell */ public void setBackToLauncherCallback(IOnBackInvokedCallback callback) { - mBackToLaunchCallback = callback; + mBackToLauncherCallback = callback; if (mBackAnimation == null) { return; } @@ -849,6 +849,7 @@ public class SystemUiProxy implements ISystemUiProxy, DisplayController.DisplayI /** Clears the previously registered {@link IOnBackInvokedCallback}. */ public void clearBackToLauncherCallback() { + mBackToLauncherCallback = null; if (mBackAnimation == null) { return; }