summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Evan Rosky <erosky@google.com> 2022-07-29 18:57:08 +0000
committer Evan Rosky <erosky@google.com> 2022-07-29 22:11:01 +0000
commit4b8cd1d4e8a3b67e656e23ca5318ea538ef04bf5 (patch)
treee4f558b23ec75927353f3a7395b22b5edf8df267
parenta6e81f57393be87852b791addfe48ca8f533108b (diff)
Only set display ready when transfering displays
Was doing it when removing window, but that case should be handled already by the transition already. Here it triggers too easily causing premature readiness Bug: 238328090 Test: atest CtsTextTestCases Change-Id: Ie3b4def4940125fcc31d8a7d5583acbe799f5f29
-rw-r--r--services/core/java/com/android/server/wm/WindowContainer.java6
1 files changed, 3 insertions, 3 deletions
diff --git a/services/core/java/com/android/server/wm/WindowContainer.java b/services/core/java/com/android/server/wm/WindowContainer.java
index d9b25adb8c4c..2749b11ce6a1 100644
--- a/services/core/java/com/android/server/wm/WindowContainer.java
+++ b/services/core/java/com/android/server/wm/WindowContainer.java
@@ -3773,9 +3773,9 @@ class WindowContainer<E extends WindowContainer> extends ConfigurationContainer<
// Check if this is changing displays. If so, mark the old display as "ready" for
// transitions. This is to work around the problem where setting readiness against this
// container will only set the new display as ready and leave the old display as unready.
- if (mSyncState != SYNC_STATE_NONE && oldParent != null
- && oldParent.getDisplayContent() != null && (newParent == null
- || oldParent.getDisplayContent() != newParent.getDisplayContent())) {
+ if (mSyncState != SYNC_STATE_NONE && oldParent != null && newParent != null
+ && oldParent.getDisplayContent() != null && newParent.getDisplayContent() != null
+ && oldParent.getDisplayContent() != newParent.getDisplayContent()) {
mTransitionController.setReady(oldParent.getDisplayContent());
}