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

Commit b4a8a82f authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Centralize assignment of pip enter animation type" into udc-dev

parents af38ede4 06f9bb38
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -716,15 +716,16 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener,
            return;
        }

        final int animationType = shouldAlwaysFadeIn()
                ? ANIM_TYPE_ALPHA
                : mPipAnimationController.takeOneShotEnterAnimationType();
        if (Transitions.ENABLE_SHELL_TRANSITIONS) {
            mPipTransitionController.setEnterAnimationType(animationType);
            // For Shell transition, we will animate the window in PipTransition#startAnimation
            // instead of #onTaskAppeared.
            return;
        }

        final int animationType = shouldAlwaysFadeIn()
                ? ANIM_TYPE_ALPHA
                : mPipAnimationController.takeOneShotEnterAnimationType();
        if (mWaitForFixedRotation) {
            onTaskAppearedWithFixedRotation(animationType);
            return;
+5 −5
Original line number Diff line number Diff line
@@ -274,9 +274,6 @@ public class PipTransition extends PipTransitionController {
        if (!requestHasPipEnter(request)) {
            throw new IllegalStateException("Called PiP augmentRequest when request has no PiP");
        }
        mEnterAnimationType = mPipOrganizer.shouldAlwaysFadeIn()
                ? ANIM_TYPE_ALPHA
                : mPipAnimationController.takeOneShotEnterAnimationType();
        if (mEnterAnimationType == ANIM_TYPE_ALPHA) {
            mRequestedEnterTransition = transition;
            mRequestedEnterTask = request.getTriggerTask().token;
@@ -665,6 +662,11 @@ public class PipTransition extends PipTransitionController {
        return false;
    }

    @Override
    public void setEnterAnimationType(@PipAnimationController.AnimationType int type) {
        mEnterAnimationType = type;
    }

    private void startEnterAnimation(@NonNull TransitionInfo info,
            @NonNull SurfaceControl.Transaction startTransaction,
            @NonNull SurfaceControl.Transaction finishTransaction,
@@ -786,8 +788,6 @@ public class PipTransition extends PipTransitionController {

        final int enterAnimationType = mEnterAnimationType;
        if (enterAnimationType == ANIM_TYPE_ALPHA) {
            // Restore to default type.
            mEnterAnimationType = ANIM_TYPE_BOUNDS;
            startTransaction.setAlpha(leash, 0f);
        }
        startTransaction.apply();
+4 −0
Original line number Diff line number Diff line
@@ -225,6 +225,10 @@ public abstract class PipTransitionController implements Transitions.TransitionH
        throw new IllegalStateException("Request isn't entering PiP");
    }

    /** Sets the type of animation when a PiP task appears. */
    public void setEnterAnimationType(@PipAnimationController.AnimationType int type) {
    }

    /** Play a transition animation for entering PiP on a specific PiP change. */
    public void startEnterAnimation(@NonNull final TransitionInfo.Change pipChange,
            @NonNull final SurfaceControl.Transaction startTransaction,