Loading libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipAnimationController.java +5 −0 Original line number Diff line number Diff line Loading @@ -89,6 +89,11 @@ public class PipAnimationController { || direction == TRANSITION_DIRECTION_LEAVE_PIP_TO_SPLIT_SCREEN; } /** Whether the given direction represents removing PIP. */ public static boolean isRemovePipDirection(@TransitionDirection int direction) { return direction == TRANSITION_DIRECTION_REMOVE_STACK; } private final PipSurfaceTransactionHelper mSurfaceTransactionHelper; private final ThreadLocal<AnimationHandler> mSfAnimationHandlerThreadLocal = Loading libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTaskOrganizer.java +12 −2 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTI import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTION_USER_RESIZE; import static com.android.wm.shell.pip.PipAnimationController.isInPipDirection; import static com.android.wm.shell.pip.PipAnimationController.isOutPipDirection; import static com.android.wm.shell.pip.PipAnimationController.isRemovePipDirection; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; Loading Loading @@ -186,8 +187,17 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, mDeferredAnimEndTransaction = tx; return; } final boolean isExitPipDirection = isOutPipDirection(direction) || isRemovePipDirection(direction); if (mState != State.EXITING_PIP || isExitPipDirection) { // Finish resize as long as we're not exiting PIP, or, if we are, only if this is // the end of an exit PIP animation. // This is necessary in case there was a resize animation ongoing when exit PIP // started, in which case the first resize will be skipped to let the exit // operation handle the final resize out of PIP mode. See b/185306679. finishResize(tx, destinationBounds, direction, animationType); sendOnPipTransitionFinished(direction); } if (direction == TRANSITION_DIRECTION_TO_PIP) { // TODO (b//169221267): Add jank listener for transactions without buffer updates. //InteractionJankMonitor.getInstance().end( Loading Loading
libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipAnimationController.java +5 −0 Original line number Diff line number Diff line Loading @@ -89,6 +89,11 @@ public class PipAnimationController { || direction == TRANSITION_DIRECTION_LEAVE_PIP_TO_SPLIT_SCREEN; } /** Whether the given direction represents removing PIP. */ public static boolean isRemovePipDirection(@TransitionDirection int direction) { return direction == TRANSITION_DIRECTION_REMOVE_STACK; } private final PipSurfaceTransactionHelper mSurfaceTransactionHelper; private final ThreadLocal<AnimationHandler> mSfAnimationHandlerThreadLocal = Loading
libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTaskOrganizer.java +12 −2 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTI import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTION_USER_RESIZE; import static com.android.wm.shell.pip.PipAnimationController.isInPipDirection; import static com.android.wm.shell.pip.PipAnimationController.isOutPipDirection; import static com.android.wm.shell.pip.PipAnimationController.isRemovePipDirection; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; Loading Loading @@ -186,8 +187,17 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, mDeferredAnimEndTransaction = tx; return; } final boolean isExitPipDirection = isOutPipDirection(direction) || isRemovePipDirection(direction); if (mState != State.EXITING_PIP || isExitPipDirection) { // Finish resize as long as we're not exiting PIP, or, if we are, only if this is // the end of an exit PIP animation. // This is necessary in case there was a resize animation ongoing when exit PIP // started, in which case the first resize will be skipped to let the exit // operation handle the final resize out of PIP mode. See b/185306679. finishResize(tx, destinationBounds, direction, animationType); sendOnPipTransitionFinished(direction); } if (direction == TRANSITION_DIRECTION_TO_PIP) { // TODO (b//169221267): Add jank listener for transactions without buffer updates. //InteractionJankMonitor.getInstance().end( Loading