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

Commit bc7eee81 authored by Riddle Hsu's avatar Riddle Hsu Committed by Automerger Merge Worker
Browse files

Merge "Avoid invisible PiP handling input events" into udc-dev am: 4af5694e...

Merge "Avoid invisible PiP handling input events" into udc-dev am: 4af5694e am: bed0fbf3 am: b1432a74

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



Change-Id: Icd265accb4d3d8ef568f0d580e6ffcb54dc1397b
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 9d862f36 b1432a74
Loading
Loading
Loading
Loading
+19 −1
Original line number Original line Diff line number Diff line
@@ -1079,10 +1079,28 @@ public class PipTransition extends PipTransitionController {
        }
        }
        final float alphaStart = show ? 0 : 1;
        final float alphaStart = show ? 0 : 1;
        final float alphaEnd = show ? 1 : 0;
        final float alphaEnd = show ? 1 : 0;
        final PipAnimationController.PipTransactionHandler transactionHandler =
                new PipAnimationController.PipTransactionHandler() {
            @Override
            public boolean handlePipTransaction(SurfaceControl leash,
                    SurfaceControl.Transaction tx, Rect destinationBounds, float alpha) {
                if (alpha == 0) {
                    if (show) {
                        tx.setPosition(leash, destinationBounds.left, destinationBounds.top);
                    } else {
                        // Put PiP out of the display so it won't block touch when it is hidden.
                        final Rect displayBounds = mPipDisplayLayoutState.getDisplayBounds();
                        final int max = Math.max(displayBounds.width(), displayBounds.height());
                        tx.setPosition(leash, max, max);
                    }
                }
                return false;
            }
        };
        mPipAnimationController
        mPipAnimationController
                .getAnimator(taskInfo, leash, mPipBoundsState.getBounds(), alphaStart, alphaEnd)
                .getAnimator(taskInfo, leash, mPipBoundsState.getBounds(), alphaStart, alphaEnd)
                .setTransitionDirection(TRANSITION_DIRECTION_SAME)
                .setTransitionDirection(TRANSITION_DIRECTION_SAME)
                .setPipAnimationCallback(mPipAnimationCallback)
                .setPipTransactionHandler(transactionHandler)
                .setDuration(mEnterExitAnimationDuration)
                .setDuration(mEnterExitAnimationDuration)
                .start();
                .start();
        mHasFadeOut = !show;
        mHasFadeOut = !show;