summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author TreeHugger Robot <treehugger-gerrit@google.com> 2019-12-06 09:03:25 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2019-12-06 09:03:25 +0000
commit49cffcfcd550e96a6023751a93a76eeb68a44d4c (patch)
treedbc564b540a69092a5dfce11e1715014e001ad56
parent32a5f2bb3768b77aaf37bdd86707eefec76f0060 (diff)
parent96f08b62b4ca7f6f8a1ab6e7f3bef31125fa1b67 (diff)
Merge "Avoid nav bar leakage when remove display"
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/NavigationBarController.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/NavigationBarController.java b/packages/SystemUI/src/com/android/systemui/statusbar/NavigationBarController.java
index 9f5cf684b3b4..61043fbc1bc9 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/NavigationBarController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/NavigationBarController.java
@@ -36,6 +36,7 @@ import com.android.internal.statusbar.RegisterStatusBarResult;
import com.android.systemui.Dependency;
import com.android.systemui.assist.AssistHandleViewController;
import com.android.systemui.dagger.qualifiers.MainHandler;
+import com.android.systemui.fragments.FragmentHostManager;
import com.android.systemui.plugins.DarkIconDispatcher;
import com.android.systemui.statusbar.CommandQueue.Callbacks;
import com.android.systemui.statusbar.phone.AutoHideController;
@@ -168,6 +169,9 @@ public class NavigationBarController implements Callbacks {
View navigationWindow = navBar.getView().getRootView();
WindowManagerGlobal.getInstance()
.removeView(navigationWindow, true /* immediate */);
+ // Also remove FragmentHostState here in case that onViewDetachedFromWindow has not yet
+ // invoked after display removal.
+ FragmentHostManager.removeAndDestroy(navigationWindow);
mNavigationBars.remove(displayId);
}
}