Merge "Reduce operations before dispatching transition ready" into udc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
3b1304d65c
@@ -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();
|
||||
|
||||
@@ -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) {
|
||||
|
||||
Reference in New Issue
Block a user