diff options
| author | 2019-12-06 09:03:25 +0000 | |
|---|---|---|
| committer | 2019-12-06 09:03:25 +0000 | |
| commit | 49cffcfcd550e96a6023751a93a76eeb68a44d4c (patch) | |
| tree | dbc564b540a69092a5dfce11e1715014e001ad56 | |
| parent | 32a5f2bb3768b77aaf37bdd86707eefec76f0060 (diff) | |
| parent | 96f08b62b4ca7f6f8a1ab6e7f3bef31125fa1b67 (diff) | |
Merge "Avoid nav bar leakage when remove display"
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/NavigationBarController.java | 4 |
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); } } |