Merge "Finish sync for relayout a drawn window" into tm-qpr-dev am: 4d18e2d558 am: 43830e6168

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20543366

Change-Id: Iec39e692943b8348144afd7c0d3d192ebfbdfb89
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Riddle Hsu
2022-11-24 16:50:00 +00:00
committed by Automerger Merge Worker

View File

@@ -2553,6 +2553,12 @@ public class WindowManagerService extends IWindowManager.Stub
&& win.mSyncSeqId > lastSyncSeqId) {
maybeSyncSeqId = win.shouldSyncWithBuffers() ? win.mSyncSeqId : -1;
win.markRedrawForSyncReported();
if (win.mSyncState == WindowContainer.SYNC_STATE_WAITING_FOR_DRAW
&& winAnimator.mDrawState == WindowStateAnimator.HAS_DRAWN
&& maybeSyncSeqId < 0) {
// Do not wait for a drawn window which won't report draw.
win.onSyncFinishedDrawing();
}
} else {
maybeSyncSeqId = -1;
}