Loading services/core/java/com/android/server/wm/TransitionController.java +11 −0 Original line number Diff line number Diff line Loading @@ -38,6 +38,7 @@ import android.os.SystemProperties; import android.util.ArrayMap; import android.util.Slog; import android.util.proto.ProtoOutputStream; import android.view.SurfaceControl; import android.view.WindowManager; import android.window.ITransitionMetricsReporter; import android.window.ITransitionPlayer; Loading Loading @@ -116,6 +117,8 @@ class TransitionController { */ boolean mBuildingFinishLayers = false; private final SurfaceControl.Transaction mWakeT = new SurfaceControl.Transaction(); TransitionController(ActivityTaskManagerService atm, TaskSnapshotController taskSnapshotController, TransitionTracer transitionTracer) { Loading Loading @@ -619,8 +622,16 @@ class TransitionController { private void updateRunningRemoteAnimation(Transition transition, boolean isPlaying) { if (mTransitionPlayerProc == null) return; if (isPlaying) { mWakeT.setEarlyWakeupStart(); mWakeT.apply(); // Usually transitions put quite a load onto the system already (with all the things // happening in app), so pause task snapshot persisting to not increase the load. mAtm.mWindowManager.mTaskSnapshotController.setPersisterPaused(true); mTransitionPlayerProc.setRunningRemoteAnimation(true); } else if (mPlayingTransitions.isEmpty()) { mWakeT.setEarlyWakeupEnd(); mWakeT.apply(); mAtm.mWindowManager.mTaskSnapshotController.setPersisterPaused(false); mTransitionPlayerProc.setRunningRemoteAnimation(false); mRemotePlayer.clear(); return; Loading Loading
services/core/java/com/android/server/wm/TransitionController.java +11 −0 Original line number Diff line number Diff line Loading @@ -38,6 +38,7 @@ import android.os.SystemProperties; import android.util.ArrayMap; import android.util.Slog; import android.util.proto.ProtoOutputStream; import android.view.SurfaceControl; import android.view.WindowManager; import android.window.ITransitionMetricsReporter; import android.window.ITransitionPlayer; Loading Loading @@ -116,6 +117,8 @@ class TransitionController { */ boolean mBuildingFinishLayers = false; private final SurfaceControl.Transaction mWakeT = new SurfaceControl.Transaction(); TransitionController(ActivityTaskManagerService atm, TaskSnapshotController taskSnapshotController, TransitionTracer transitionTracer) { Loading Loading @@ -619,8 +622,16 @@ class TransitionController { private void updateRunningRemoteAnimation(Transition transition, boolean isPlaying) { if (mTransitionPlayerProc == null) return; if (isPlaying) { mWakeT.setEarlyWakeupStart(); mWakeT.apply(); // Usually transitions put quite a load onto the system already (with all the things // happening in app), so pause task snapshot persisting to not increase the load. mAtm.mWindowManager.mTaskSnapshotController.setPersisterPaused(true); mTransitionPlayerProc.setRunningRemoteAnimation(true); } else if (mPlayingTransitions.isEmpty()) { mWakeT.setEarlyWakeupEnd(); mWakeT.apply(); mAtm.mWindowManager.mTaskSnapshotController.setPersisterPaused(false); mTransitionPlayerProc.setRunningRemoteAnimation(false); mRemotePlayer.clear(); return; Loading