summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Treehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com> 2025-03-16 19:27:54 -0700
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2025-03-16 19:27:54 -0700
commitc4c91e49e3157510e65ea4bc032e1930a5956b5b (patch)
tree29292c814bab75ef439ed09a76eccce82d2fe771
parenta925685baa95a3bc9342837b59fe5b0a085c5da3 (diff)
parent140f7c623627de82baa5b74c25da6486e4f11645 (diff)
Merge "Ensure that the resize can be triggered properly" into main
-rw-r--r--services/core/java/com/android/server/wm/WindowManagerService.java8
1 files changed, 8 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java
index fb8621d9113c..09ff1aae4d7b 100644
--- a/services/core/java/com/android/server/wm/WindowManagerService.java
+++ b/services/core/java/com/android/server/wm/WindowManagerService.java
@@ -2546,6 +2546,14 @@ public class WindowManagerService extends IWindowManager.Stub
// in the new out values right now we need to force a layout.
mWindowPlacerLocked.performSurfacePlacement(true /* force */);
+ if (!win.mHaveFrame && displayContent.mWaitingForConfig) {
+ // We just forcibly triggered the layout, but this could still be intercepted by
+ // mWaitingForConfig. Here, we are forcefully marking a value for mLayoutSeq to
+ // ensure that the resize can occur properly later. Otherwise, the window's frame
+ // will remain empty forever.
+ win.mLayoutSeq = displayContent.mLayoutSeq;
+ }
+
if (shouldRelayout) {
Trace.traceBegin(TRACE_TAG_WINDOW_MANAGER, "relayoutWindow: viewVisibility_1");