Don't process windows belonging to unshown users
Add a test for whether a window will be shown to the current user. Otherwise we wait to process windows that are drawn but will never be shown. Consequently we end up in a layout loop that continues to set pendingLayoutChanges at the point where "wallpaper and commitFinishDrawingLocked true" message is generated. Fixes bug 18510914. Change-Id: Ib067b41b5f26b146ee6bdb16c2f3b07d20aa2c54
This commit is contained in:
@@ -9764,7 +9764,7 @@ public class WindowManagerService extends IWindowManager.Stub
|
||||
w.mContentChanged = false;
|
||||
|
||||
// Moved from updateWindowsAndWallpaperLocked().
|
||||
if (w.mHasSurface) {
|
||||
if (w.mHasSurface && !w.isHiddenFromUserLocked()) {
|
||||
// Take care of the window being ready to display.
|
||||
final boolean committed =
|
||||
winAnimator.commitFinishDrawingLocked(currentTime);
|
||||
|
||||
Reference in New Issue
Block a user