Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e310d0d2 authored by Jorge Gil's avatar Jorge Gil Committed by Automerger Merge Worker
Browse files

Merge "Expand PIP to the normal size when menu actions don't fit" into sc-dev...

Merge "Expand PIP to the normal size when menu actions don't fit" into sc-dev am: 37c32978 am: f6bd7f81

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14668168

Change-Id: I0e43769901b2c5adee1e7cb1a985a9e65471f091
parents 361d267e f6bd7f81
Loading
Loading
Loading
Loading
+7 −14
Original line number Diff line number Diff line
@@ -667,7 +667,9 @@ public class PipTouchHandler {
            // we store back to this snap fraction.  Otherwise, we'll reset the snap
            // fraction and snap to the closest edge.
            if (resize) {
                animateToExpandedState(callback);
                // PIP is too small to show the menu actions and thus needs to be resized to a
                // size that can fit them all. Resize to the default size.
                animateToNormalSize(callback);
            }
        } else if (menuState == MENU_STATE_NONE && mMenuState == MENU_STATE_FULL) {
            // Try and restore the PiP to the closest edge, using the saved snap fraction
@@ -721,22 +723,13 @@ public class PipTouchHandler {
                callback);
    }

    private void animateToMinimizedState() {
        animateToUnexpandedState(new Rect(0, 0, mPipBoundsState.getMinSize().x,
                mPipBoundsState.getMinSize().y));
    }

    private void animateToExpandedState(Runnable callback) {
    private void animateToNormalSize(Runnable callback) {
        mPipResizeGestureHandler.setUserResizeBounds(mPipBoundsState.getBounds());
        final Rect currentBounds = mPipBoundsState.getBounds();
        final Rect expandedBounds = mPipBoundsState.getExpandedBounds();
        Rect finalExpandedBounds = new Rect(expandedBounds.width() > expandedBounds.width()
                        && expandedBounds.height() > expandedBounds.height()
                        ? currentBounds : expandedBounds);
        final Rect normalBounds = new Rect(mPipBoundsState.getNormalBounds());
        Rect restoredMovementBounds = new Rect();
        mPipBoundsAlgorithm.getMovementBounds(finalExpandedBounds,
        mPipBoundsAlgorithm.getMovementBounds(normalBounds,
                mInsetBounds, restoredMovementBounds, mIsImeShowing ? mImeHeight : 0);
        mSavedSnapFraction = mMotionHelper.animateToExpandedState(finalExpandedBounds,
        mSavedSnapFraction = mMotionHelper.animateToExpandedState(normalBounds,
                mPipBoundsState.getMovementBounds(), restoredMovementBounds, callback);
    }