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

Commit 3b1304d6 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Reduce operations before dispatching transition ready" into udc-dev

parents 89d3076a 63e79f72
Loading
Loading
Loading
Loading
+10 −2
Original line number Diff line number Diff line
@@ -1473,7 +1473,6 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener {
                        "Calling onTransitionReady: %s", info);
                mLogger.mSendTimeNs = SystemClock.elapsedRealtimeNanos();
                mLogger.mInfo = info;
                mController.mTransitionTracer.logSentTransition(this, mTargets, info);
                mController.getTransitionPlayer().onTransitionReady(
                        mToken, info, transaction, mFinishTransaction);
                if (Trace.isTagEnabled(TRACE_TAG_WINDOW_MANAGER)) {
@@ -1501,13 +1500,17 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener {
            }
            postCleanupOnFailure();
        }
        mController.mLoggerHandler.post(mLogger::logOnSend);
        mOverrideOptions = null;

        reportStartReasonsToLogger();

        // Since we created root-leash but no longer reference it from core, release it now
        info.releaseAnimSurfaces();

        mController.mLoggerHandler.post(mLogger::logOnSend);
        if (mLogger.mInfo != null) {
            mController.mTransitionTracer.logSentTransition(this, mTargets, info);
        }
    }

    /**
@@ -2245,6 +2248,7 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener {
            info.mReadyMode = change.getMode();
            change.setStartAbsBounds(info.mAbsoluteBounds);
            change.setFlags(info.getChangeFlags(target));
            info.mReadyFlags = change.getFlags();
            change.setDisplayId(info.mDisplayId, getDisplayId(target));

            final Task task = target.asTask();
@@ -2628,6 +2632,10 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener {
        @TransitionInfo.TransitionMode
        int mReadyMode;

        /** The flags which is set when the transition is ready. */
        @TransitionInfo.ChangeFlags
        int mReadyFlags;

        ChangeInfo(@NonNull WindowContainer origState) {
            mContainer = origState;
            mVisible = origState.isVisibleRequested();
+2 −4
Original line number Diff line number Diff line
@@ -144,8 +144,6 @@ public class TransitionTracer {

            final Transition.ChangeInfo target = targets.get(i);

            final int mode = target.getTransitMode(target.mContainer);
            final int flags = target.getChangeFlags(target.mContainer);
            final int layerId;
            if (target.mContainer.mSurfaceControl.isValid()) {
                layerId = target.mContainer.mSurfaceControl.getLayerId();
@@ -153,8 +151,8 @@ public class TransitionTracer {
                layerId = -1;
            }

            outputStream.write(com.android.server.wm.shell.Target.MODE, mode);
            outputStream.write(com.android.server.wm.shell.Target.FLAGS, flags);
            outputStream.write(com.android.server.wm.shell.Target.MODE, target.mReadyMode);
            outputStream.write(com.android.server.wm.shell.Target.FLAGS, target.mReadyFlags);
            outputStream.write(com.android.server.wm.shell.Target.LAYER_ID, layerId);

            if (mActiveTracingEnabled) {