diff options
| author | 2024-12-03 11:36:27 +0000 | |
|---|---|---|
| committer | 2024-12-03 11:36:27 +0000 | |
| commit | 729d0609e73294d60027f913252a7726e35c5846 (patch) | |
| tree | e9a93725362e4d75e4be94ae55bedca60ef4e35f | |
| parent | 675467c896303f10ae79ef71fb2004fac42e8635 (diff) | |
| parent | 55b1b0dbe7fe8ffd80df6ea19428ad497426d2be (diff) | |
Merge "Fix the wallpaper not hiding immediately" into main am: 55b1b0dbe7
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/3385960
Change-Id: I9c89d3d1e75d10caf78a6b9a1c4324bd4ba9ae81
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
| -rw-r--r-- | services/core/java/com/android/server/wm/Transition.java | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/wm/Transition.java b/services/core/java/com/android/server/wm/Transition.java index d042b3859c3e..dd5f6134e2eb 100644 --- a/services/core/java/com/android/server/wm/Transition.java +++ b/services/core/java/com/android/server/wm/Transition.java @@ -1385,7 +1385,16 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener { // Commit wallpaper visibility after activity, because usually the wallpaper target token is // an activity, and wallpaper's visibility depends on activity's visibility. for (int i = mParticipants.size() - 1; i >= 0; --i) { - final WallpaperWindowToken wt = mParticipants.valueAt(i).asWallpaperToken(); + final WindowContainer<?> wc = mParticipants.valueAt(i); + WallpaperWindowToken wt = wc.asWallpaperToken(); + if (!Flags.ensureWallpaperInTransitions()) { + if (wt == null) { + final WindowState windowState = wc.asWindowState(); + if (windowState != null) { + wt = windowState.mToken.asWallpaperToken(); + } + } + } if (wt == null) continue; final WindowState target = wt.mDisplayContent.mWallpaperController.getWallpaperTarget(); final boolean isTargetInvisible = target == null || !target.mToken.isVisible(); |