diff options
Diffstat (limited to 'services/java/com/android/server/wm/WindowAnimator.java')
| -rw-r--r-- | services/java/com/android/server/wm/WindowAnimator.java | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/services/java/com/android/server/wm/WindowAnimator.java b/services/java/com/android/server/wm/WindowAnimator.java index efed0a4..b5cf201 100644 --- a/services/java/com/android/server/wm/WindowAnimator.java +++ b/services/java/com/android/server/wm/WindowAnimator.java @@ -496,7 +496,15 @@ public class WindowAnimator { final int N = mWinAnimators.size(); for (int i = 0; i < N; i++) { - mWinAnimators.get(i).prepareSurfaceLocked(true); + final WindowStateAnimator winAnimator = mWinAnimators.get(i); + if (winAnimator.mWin.mIsWallpaper && mService.mWallpaperTarget == null) { + if (!winAnimator.mWin.mWallpaperVisible && !winAnimator.mLastHidden) { + // Wallpaper is no longer visible and there is no wp target => hide it. + winAnimator.hide(); + } + continue; + } + winAnimator.prepareSurfaceLocked(true); } if (mDimParams != null) { |
