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
Loading
Please register or sign in to comment