Loading libs/WindowManager/Shell/src/com/android/wm/shell/transition/DefaultTransitionHandler.java +7 −6 Original line number Diff line number Diff line Loading @@ -149,8 +149,7 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { private Drawable mEnterpriseThumbnailDrawable; static final InteractionJankMonitor sInteractionJankMonitor = InteractionJankMonitor.getInstance(); final InteractionJankMonitor mInteractionJankMonitor; private BroadcastReceiver mEnterpriseResourceUpdatedReceiver = new BroadcastReceiver() { @Override Loading @@ -169,7 +168,8 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { @NonNull TransactionPool transactionPool, @NonNull ShellExecutor mainExecutor, @NonNull Handler mainHandler, @NonNull ShellExecutor animExecutor, @NonNull RootTaskDisplayAreaOrganizer rootTDAOrganizer) { @NonNull RootTaskDisplayAreaOrganizer rootTDAOrganizer, @NonNull InteractionJankMonitor interactionJankMonitor) { mDisplayController = displayController; mTransactionPool = transactionPool; mContext = context; Loading @@ -181,6 +181,7 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { mDevicePolicyManager = mContext.getSystemService(DevicePolicyManager.class); shellInit.addInitCallback(this::onInit, this); mRootTDAOrganizer = rootTDAOrganizer; mInteractionJankMonitor = interactionJankMonitor; } private void onInit() { Loading Loading @@ -331,14 +332,14 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { final boolean isTaskTransition = isTaskTransition(info); if (isTaskTransition) { sInteractionJankMonitor.begin(info.getRoot(0).getLeash(), mContext, mInteractionJankMonitor.begin(info.getRoot(0).getLeash(), mContext, mMainHandler, CUJ_DEFAULT_TASK_TO_TASK_ANIMATION); } final Runnable onAnimFinish = () -> { if (!animations.isEmpty()) return; if (isTaskTransition) { sInteractionJankMonitor.end(CUJ_DEFAULT_TASK_TO_TASK_ANIMATION); mInteractionJankMonitor.end(CUJ_DEFAULT_TASK_TO_TASK_ANIMATION); } mAnimations.remove(transition); finishCallback.onTransitionFinished(null /* wct */); Loading Loading @@ -1031,6 +1032,6 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { @Override public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted, @Nullable SurfaceControl.Transaction finishTransaction) { sInteractionJankMonitor.cancel(CUJ_DEFAULT_TASK_TO_TASK_ANIMATION); mInteractionJankMonitor.cancel(CUJ_DEFAULT_TASK_TO_TASK_ANIMATION); } } libs/WindowManager/Shell/src/com/android/wm/shell/transition/Transitions.java +3 −1 Original line number Diff line number Diff line Loading @@ -77,6 +77,7 @@ import androidx.annotation.BinderThread; import com.android.internal.R; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.jank.InteractionJankMonitor; import com.android.internal.protolog.ProtoLog; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; Loading Loading @@ -335,7 +336,8 @@ public class Transitions implements RemoteCallable<Transitions>, mDisplayController = displayController; mPlayerImpl = new TransitionPlayerImpl(); mDefaultTransitionHandler = new DefaultTransitionHandler(context, shellInit, displayController, pool, mainExecutor, mainHandler, animExecutor, rootTDAOrganizer); displayController, pool, mainExecutor, mainHandler, animExecutor, rootTDAOrganizer, InteractionJankMonitor.getInstance()); mRemoteTransitionHandler = new RemoteTransitionHandler(mMainExecutor); mShellCommandHandler = shellCommandHandler; mShellController = shellController; Loading libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/transition/DefaultTransitionHandlerTest.java +2 −1 Original line number Diff line number Diff line Loading @@ -48,6 +48,7 @@ import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; import androidx.test.platform.app.InstrumentationRegistry; import com.android.internal.jank.InteractionJankMonitor; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.TestShellExecutor; Loading Loading @@ -96,7 +97,7 @@ public class DefaultTransitionHandlerTest extends ShellTestCase { mTransitionHandler = new DefaultTransitionHandler( mContext, mShellInit, mDisplayController, mTransactionPool, mMainExecutor, mMainHandler, mAnimExecutor, mRootTaskDisplayAreaOrganizer); mRootTaskDisplayAreaOrganizer, mock(InteractionJankMonitor.class)); mShellInit.init(); } Loading Loading
libs/WindowManager/Shell/src/com/android/wm/shell/transition/DefaultTransitionHandler.java +7 −6 Original line number Diff line number Diff line Loading @@ -149,8 +149,7 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { private Drawable mEnterpriseThumbnailDrawable; static final InteractionJankMonitor sInteractionJankMonitor = InteractionJankMonitor.getInstance(); final InteractionJankMonitor mInteractionJankMonitor; private BroadcastReceiver mEnterpriseResourceUpdatedReceiver = new BroadcastReceiver() { @Override Loading @@ -169,7 +168,8 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { @NonNull TransactionPool transactionPool, @NonNull ShellExecutor mainExecutor, @NonNull Handler mainHandler, @NonNull ShellExecutor animExecutor, @NonNull RootTaskDisplayAreaOrganizer rootTDAOrganizer) { @NonNull RootTaskDisplayAreaOrganizer rootTDAOrganizer, @NonNull InteractionJankMonitor interactionJankMonitor) { mDisplayController = displayController; mTransactionPool = transactionPool; mContext = context; Loading @@ -181,6 +181,7 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { mDevicePolicyManager = mContext.getSystemService(DevicePolicyManager.class); shellInit.addInitCallback(this::onInit, this); mRootTDAOrganizer = rootTDAOrganizer; mInteractionJankMonitor = interactionJankMonitor; } private void onInit() { Loading Loading @@ -331,14 +332,14 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { final boolean isTaskTransition = isTaskTransition(info); if (isTaskTransition) { sInteractionJankMonitor.begin(info.getRoot(0).getLeash(), mContext, mInteractionJankMonitor.begin(info.getRoot(0).getLeash(), mContext, mMainHandler, CUJ_DEFAULT_TASK_TO_TASK_ANIMATION); } final Runnable onAnimFinish = () -> { if (!animations.isEmpty()) return; if (isTaskTransition) { sInteractionJankMonitor.end(CUJ_DEFAULT_TASK_TO_TASK_ANIMATION); mInteractionJankMonitor.end(CUJ_DEFAULT_TASK_TO_TASK_ANIMATION); } mAnimations.remove(transition); finishCallback.onTransitionFinished(null /* wct */); Loading Loading @@ -1031,6 +1032,6 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { @Override public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted, @Nullable SurfaceControl.Transaction finishTransaction) { sInteractionJankMonitor.cancel(CUJ_DEFAULT_TASK_TO_TASK_ANIMATION); mInteractionJankMonitor.cancel(CUJ_DEFAULT_TASK_TO_TASK_ANIMATION); } }
libs/WindowManager/Shell/src/com/android/wm/shell/transition/Transitions.java +3 −1 Original line number Diff line number Diff line Loading @@ -77,6 +77,7 @@ import androidx.annotation.BinderThread; import com.android.internal.R; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.jank.InteractionJankMonitor; import com.android.internal.protolog.ProtoLog; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; Loading Loading @@ -335,7 +336,8 @@ public class Transitions implements RemoteCallable<Transitions>, mDisplayController = displayController; mPlayerImpl = new TransitionPlayerImpl(); mDefaultTransitionHandler = new DefaultTransitionHandler(context, shellInit, displayController, pool, mainExecutor, mainHandler, animExecutor, rootTDAOrganizer); displayController, pool, mainExecutor, mainHandler, animExecutor, rootTDAOrganizer, InteractionJankMonitor.getInstance()); mRemoteTransitionHandler = new RemoteTransitionHandler(mMainExecutor); mShellCommandHandler = shellCommandHandler; mShellController = shellController; Loading
libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/transition/DefaultTransitionHandlerTest.java +2 −1 Original line number Diff line number Diff line Loading @@ -48,6 +48,7 @@ import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; import androidx.test.platform.app.InstrumentationRegistry; import com.android.internal.jank.InteractionJankMonitor; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.TestShellExecutor; Loading Loading @@ -96,7 +97,7 @@ public class DefaultTransitionHandlerTest extends ShellTestCase { mTransitionHandler = new DefaultTransitionHandler( mContext, mShellInit, mDisplayController, mTransactionPool, mMainExecutor, mMainHandler, mAnimExecutor, mRootTaskDisplayAreaOrganizer); mRootTaskDisplayAreaOrganizer, mock(InteractionJankMonitor.class)); mShellInit.init(); } Loading