diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTaskOrganizer.java b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTaskOrganizer.java index 25b68d590037a..fbd606478419b 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTaskOrganizer.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTaskOrganizer.java @@ -828,11 +828,14 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, WindowContainerTransaction wct) { // note that this can be called when swipe-to-home or fixed-rotation is happening. // Skip this entirely if that's the case. - if ((mInSwipePipToHomeTransition || mWaitForFixedRotation) && fromRotation) { + final boolean waitForFixedRotationOnEnteringPip = mWaitForFixedRotation + && (mPipTransitionState.getTransitionState() != PipTransitionState.ENTERED_PIP); + if ((mInSwipePipToHomeTransition || waitForFixedRotationOnEnteringPip) && fromRotation) { if (DEBUG) { Log.d(TAG, "Skip onMovementBoundsChanged on rotation change" + " mInSwipePipToHomeTransition=" + mInSwipePipToHomeTransition - + " mWaitForFixedRotation=" + mWaitForFixedRotation); + + " mWaitForFixedRotation=" + mWaitForFixedRotation + + " getTransitionState=" + mPipTransitionState.getTransitionState()); } return; }