Set mAlreadyRequestedSync only when in a BLASTSync
WindowState#useBLASTSync returns true if in a blast sync but also if there are mDrawHandlers. In that case, we only want to mark mAlreadyRequestedSync to true if we know it's a blast sync since the unmark is done when the sync is complete. Test: Pip expand no delay Fixes: 236882306 Change-Id: Ifb5785b93888a0fb3e27180005ea1b3940a293b7
This commit is contained in:
committed by
Evan Rosky
parent
23d883bc4c
commit
5ef2940b89
@@ -122,6 +122,7 @@ import static com.android.server.wm.SurfaceAnimator.ANIMATION_TYPE_ALL;
|
||||
import static com.android.server.wm.SurfaceAnimator.ANIMATION_TYPE_APP_TRANSITION;
|
||||
import static com.android.server.wm.WindowContainer.AnimationFlags.CHILDREN;
|
||||
import static com.android.server.wm.WindowContainer.AnimationFlags.TRANSITION;
|
||||
import static com.android.server.wm.WindowContainer.SYNC_STATE_NONE;
|
||||
import static com.android.server.wm.WindowManagerDebugConfig.DEBUG;
|
||||
import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_DISPLAY;
|
||||
import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_INPUT_METHOD;
|
||||
@@ -2550,7 +2551,11 @@ public class WindowManagerService extends IWindowManager.Stub
|
||||
|
||||
win.mLastSeqIdSentToRelayout = win.mSyncSeqId;
|
||||
outSyncIdBundle.putInt("seqid", win.mSyncSeqId);
|
||||
win.mAlreadyRequestedSync = true;
|
||||
// Only mark mAlreadyRequestedSync if there's an explicit sync request, and not if
|
||||
// we're syncing due to mDrawHandlers
|
||||
if (win.mSyncState != SYNC_STATE_NONE) {
|
||||
win.mAlreadyRequestedSync = true;
|
||||
}
|
||||
} else {
|
||||
outSyncIdBundle.putInt("seqid", -1);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user