diff options
author | 2025-03-13 20:09:40 -0700 | |
---|---|---|
committer | 2025-03-13 21:47:21 -0700 | |
commit | 140f7c623627de82baa5b74c25da6486e4f11645 (patch) | |
tree | c687109c735749ee5851a92c3194c6d9af80f877 /api/api_test.go | |
parent | 1849a4c11671573e5b2815f4b3ea7eb9d24ab98d (diff) |
Ensure that the resize can be triggered properly
If we add a window during a screen rotation, this may cause the layout
operation to be intercepted by DisplayContent#mWaitingForConfig.
Logically, we should be able to trigger the resize normally later, but
it hasn't been triggered. This is because during the operation of
DisplayContent#mPerformLayout, the resize gets intercepted due to being
the first layout, which is a reasonable optimization, but it incorrectly
intercepts this operation. As a result, the window's frame will remain
empty forever, and the window will not display correctly.
To solve this problem, we forcefully mark mLayoutSeq for the current
window after calling performSurfacePlacement in
WindowManagerService#relayoutWindowInner to ensure that the resize can
be triggered properly later, ensuring that the window displays
correctly.
Bug: 403413503
Flag: EXEMPT bugfix
Test: Manual
Change-Id: I2a1ccc657efa7f5aa9fd6818e3cb1693de14f88f
Diffstat (limited to 'api/api_test.go')
0 files changed, 0 insertions, 0 deletions