Revert "Use out pipBounds to save reentry size"

This reverts commit a6e524e127f960159aa631509c5b6d6b0baa2a86.

Reason for revert: should not use current pipBounds as reentry bounds when the bounds are temporarily expanded due to active menu

Bug: 170748861

Change-Id: I26a2ce4d9fb70db051b941ff09cdb423513b9ffc
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/phone/PipController.java b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/phone/PipController.java
index ea9c960..41c0a88 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/phone/PipController.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/phone/PipController.java
@@ -61,6 +61,7 @@
     private final DisplayInfo mTmpDisplayInfo = new DisplayInfo();
     private final Rect mTmpInsetBounds = new Rect();
     private final Rect mTmpNormalBounds = new Rect();
+    protected final Rect mReentryBounds = new Rect();
 
     private DisplayController mDisplayController;
     private PipAppOpsListener mAppOpsListener;
@@ -395,7 +396,8 @@
     public void onPipTransitionStarted(ComponentName activity, int direction, Rect pipBounds) {
         if (isOutPipDirection(direction)) {
             // Exiting PIP, save the reentry bounds to restore to when re-entering.
-            mPipBoundsHandler.onSaveReentryBounds(activity, pipBounds);
+            updateReentryBounds(pipBounds);
+            mPipBoundsHandler.onSaveReentryBounds(activity, mReentryBounds);
         }
         // Disable touches while the animation is running
         mTouchHandler.setTouchEnabled(false);
@@ -404,6 +406,16 @@
         }
     }
 
+    /**
+     * Update the bounds used to save the re-entry size and snap fraction when exiting PIP.
+     */
+    public void updateReentryBounds(Rect bounds) {
+        final Rect reentryBounds = mTouchHandler.getUserResizeBounds();
+        float snapFraction = mPipBoundsHandler.getSnapFraction(bounds);
+        mPipBoundsHandler.applySnapFraction(reentryBounds, snapFraction);
+        mReentryBounds.set(reentryBounds);
+    }
+
     @Override
     public void onPipTransitionFinished(ComponentName activity, int direction) {
         onPipTransitionFinishedOrCanceled(direction);