Merge "Provide vsync id for all animation transactions (except PIP)"
This commit is contained in:
@@ -81,6 +81,7 @@ public class InsetsAnimationThreadControlRunner implements InsetsAnimationContro
|
||||
SyncRtSurfaceTransactionApplier.SurfaceParams surfaceParams = params[i];
|
||||
applyParams(t, surfaceParams, mTmpFloat9);
|
||||
}
|
||||
t.setFrameTimelineVsync(Choreographer.getSfInstance().getVsyncId());
|
||||
t.apply();
|
||||
t.close();
|
||||
}
|
||||
|
||||
@@ -26,6 +26,7 @@ import android.annotation.Nullable;
|
||||
import android.graphics.Rect;
|
||||
import android.os.Handler;
|
||||
import android.util.Slog;
|
||||
import android.view.Choreographer;
|
||||
import android.view.SurfaceControl;
|
||||
import android.window.TaskOrganizer;
|
||||
import android.window.WindowContainerToken;
|
||||
@@ -338,6 +339,7 @@ class DividerImeController implements DisplayImeController.ImePositionProcessor
|
||||
SurfaceControl.Transaction t = mTransactionPool.acquire();
|
||||
float value = (float) animation.getAnimatedValue();
|
||||
onProgress(value, t);
|
||||
t.setFrameTimelineVsync(Choreographer.getSfInstance().getVsyncId());
|
||||
t.apply();
|
||||
mTransactionPool.release(t);
|
||||
});
|
||||
|
||||
@@ -37,6 +37,7 @@ import android.os.Handler;
|
||||
import android.os.RemoteException;
|
||||
import android.util.AttributeSet;
|
||||
import android.util.Slog;
|
||||
import android.view.Choreographer;
|
||||
import android.view.Display;
|
||||
import android.view.MotionEvent;
|
||||
import android.view.PointerIcon;
|
||||
@@ -1108,6 +1109,7 @@ public class DividerView extends FrameLayout implements OnTouchListener,
|
||||
}
|
||||
resizeSplitSurfaces(t, mDockedRect, mDockedTaskRect, mOtherRect, mOtherTaskRect);
|
||||
if (ownTransaction) {
|
||||
t.setFrameTimelineVsync(Choreographer.getSfInstance().getVsyncId());
|
||||
t.apply();
|
||||
mTiles.releaseTransaction(t);
|
||||
}
|
||||
|
||||
@@ -259,6 +259,7 @@ class SurfaceAnimationRunner {
|
||||
|
||||
private void applyTransaction() {
|
||||
mFrameTransaction.setAnimationTransaction();
|
||||
mFrameTransaction.setFrameTimelineVsync(mChoreographer.getVsyncId());
|
||||
mFrameTransaction.apply();
|
||||
mApplyScheduled = false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user