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

Commit c158371d authored by Mateusz Cicheński's avatar Mateusz Cicheński
Browse files

Make PiP round corners when entering from split screen.

Bug: 213597585
Test: http://recall/-/b4c7RdloJffWblJ6lo9xVu/YN4EY16KVcTYcRcK5IFZr

Change-Id: I810a040db387d8b1a7c8e11c3a27ba53c0920996
parent 6fcd7dd7
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -665,6 +665,15 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener,
                mSurfaceControlTransactionFactory.getTransaction();
        tx.setAlpha(mLeash, 0f);
        tx.apply();

        // When entering PiP this transaction will be applied within WindowContainerTransaction and
        // ensure that the PiP has rounded corners.
        final SurfaceControl.Transaction boundsChangeTx =
                mSurfaceControlTransactionFactory.getTransaction();
        mSurfaceTransactionHelper
                .crop(boundsChangeTx, mLeash, destinationBounds)
                .round(boundsChangeTx, mLeash, true /* applyCornerRadius */);

        mPipTransitionState.setTransitionState(PipTransitionState.ENTRY_SCHEDULED);
        applyEnterPipSyncTransaction(destinationBounds, () -> {
            mPipAnimationController
@@ -677,7 +686,7 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener,
            // mState is set right after the animation is kicked off to block any resize
            // requests such as offsetPip that may have been called prior to the transition.
            mPipTransitionState.setTransitionState(PipTransitionState.ENTERING_PIP);
        }, null /* boundsChangeTransaction */);
        }, boundsChangeTx);
    }

    private void onEndOfSwipePipToHomeTransition() {