Merge "Make sure to remove NotificationShade surface when keyguard went away." into sc-dev

This commit is contained in:
TreeHugger Robot
2021-06-02 10:08:49 +00:00
committed by Android (Google) Code Review

View File

@@ -2329,6 +2329,17 @@ public class WindowManagerService extends IWindowManager.Stub
}
result |= RELAYOUT_RES_SURFACE_CHANGED;
if (!win.mWillReplaceWindow) {
// When FLAG_SHOW_WALLPAPER flag is removed from a window, we usually set a flag
// in DC#pendingLayoutChanges and update the wallpaper target later.
// However it's possible that FLAG_SHOW_WALLPAPER flag is removed from a window
// when the window is about to exit, so we update the wallpaper target
// immediately here. Otherwise this window will be stuck in exiting and its
// surface remains on the screen.
// TODO(b/189856716): Allow destroying surface even if it belongs to the
// keyguard target.
if (wallpaperMayMove) {
displayContent.mWallpaperController.adjustWallpaperWindows();
}
focusMayChange = tryStartExitingAnimation(win, winAnimator, focusMayChange);
}
}