Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0e22967d authored by Rob Carr's avatar Rob Carr Committed by Android (Google) Code Review
Browse files

Merge "SurfaceView: Ensure we don't fill unused BLAST Transaction." into rvc-dev

parents 7309ac60 92e08bf9
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -1241,7 +1241,7 @@ public class SurfaceView extends View implements ViewRootImpl.SurfaceChangedCall
    private void applySurfaceTransforms(SurfaceControl surface, SurfaceControl.Transaction t,
            Rect position, long frameNumber) {
        final ViewRootImpl viewRoot = getViewRootImpl();
        if (frameNumber > 0 && viewRoot != null && !viewRoot.useBLAST()) {
        if (frameNumber > 0 && viewRoot != null && !viewRoot.isDrawingToBLASTTransaction()) {
            t.deferTransactionUntil(surface, viewRoot.getRenderSurfaceControl(),
                    frameNumber);
        }
@@ -1258,7 +1258,7 @@ public class SurfaceView extends View implements ViewRootImpl.SurfaceChangedCall

    private void setParentSpaceRectangle(Rect position, long frameNumber) {
        final ViewRootImpl viewRoot = getViewRootImpl();
        final boolean useBLAST = viewRoot.useBLAST();
        final boolean useBLAST = viewRoot.isDrawingToBLASTTransaction();
        final SurfaceControl.Transaction t = useBLAST ? viewRoot.getBLASTSyncTransaction() :
            mRtTransaction;

@@ -1319,7 +1319,7 @@ public class SurfaceView extends View implements ViewRootImpl.SurfaceChangedCall
        @Override
        public void positionLost(long frameNumber) {
            final ViewRootImpl viewRoot = getViewRootImpl();
            boolean useBLAST = viewRoot != null && viewRoot.useBLAST();
            boolean useBLAST = viewRoot != null && viewRoot.isDrawingToBLASTTransaction();
            if (DEBUG) {
                Log.d(TAG, String.format("%d windowPositionLost, frameNr = %d",
                        System.identityHashCode(this), frameNumber));
+8 −0
Original line number Diff line number Diff line
@@ -9610,4 +9610,12 @@ public final class ViewRootImpl implements ViewParent,
    boolean useBLAST() {
        return mUseBLASTAdapter;
    }

    /**
     * Returns true if we are about to or currently processing a draw directed
     * in to a BLAST transaction.
     */
    boolean isDrawingToBLASTTransaction() {
        return mNextReportConsumeBLAST;
    }
}