Apply fixed rotation animation for pip to fullscreen
The activity surface is rotated by WM core when changing the windowing mode of PiP activity to fullscreen. And then PipTaskOrganizer#onFixedRotationStarted will be called before WindowContainerTransactionCallback#onTransactionReady. So PipTaskOrganizer can use the given new rotation to run the animation in current rotation. After the animation is done, PipTaskOrganizer will set the task to fullscreen, that makes previous top activity pause and then resume the next top activity (the original PiP). Finally, the fixed rotation is finished by transition done event, and then continue to rotate the display seamlessly. Also remove mInitialState from PipTaskOrganizer because it is no longer needed for predicting the fullscreen bounds. Bug: 165794724 Test: DisplayContentTests#testFixedRotationWithPip PipAnimationControllerTest#pipTransitionAnimator_rotatedEndValue Test: Expand PiP in portrait which was in landscape Change-Id: I5c1400ece9d80226bc35b497d308215010ead027
Loading
Please register or sign in to comment