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

Commit 08b0b82d authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Reset windows bounds when stop one handed mode" into sc-dev

parents 8cd0c593 9e963584
Loading
Loading
Loading
Loading
+12 −0
Original line number Original line Diff line number Diff line
@@ -89,6 +89,7 @@ public class OneHandedDisplayAreaOrganizer extends DisplayAreaOrganizer {
                        OneHandedAnimationController.OneHandedTransitionAnimator animator) {
                        OneHandedAnimationController.OneHandedTransitionAnimator animator) {
                    mAnimationController.removeAnimator(animator.getToken());
                    mAnimationController.removeAnimator(animator.getToken());
                    if (mAnimationController.isAnimatorsConsumed()) {
                    if (mAnimationController.isAnimatorsConsumed()) {
                        resetWindowsOffsetInternal(animator.getTransitionDirection());
                        finishOffset(animator.getDestinationOffset(),
                        finishOffset(animator.getDestinationOffset(),
                                animator.getTransitionDirection());
                                animator.getTransitionDirection());
                    }
                    }
@@ -99,6 +100,7 @@ public class OneHandedDisplayAreaOrganizer extends DisplayAreaOrganizer {
                        OneHandedAnimationController.OneHandedTransitionAnimator animator) {
                        OneHandedAnimationController.OneHandedTransitionAnimator animator) {
                    mAnimationController.removeAnimator(animator.getToken());
                    mAnimationController.removeAnimator(animator.getToken());
                    if (mAnimationController.isAnimatorsConsumed()) {
                    if (mAnimationController.isAnimatorsConsumed()) {
                        resetWindowsOffsetInternal(animator.getTransitionDirection());
                        finishOffset(animator.getDestinationOffset(),
                        finishOffset(animator.getDestinationOffset(),
                                animator.getTransitionDirection());
                                animator.getTransitionDirection());
                    }
                    }
@@ -205,6 +207,16 @@ public class OneHandedDisplayAreaOrganizer extends DisplayAreaOrganizer {
        applyTransaction(wct);
        applyTransaction(wct);
    }
    }


    private void resetWindowsOffsetInternal(
            @OneHandedAnimationController.TransitionDirection int td) {
        if (td == TRANSITION_DIRECTION_TRIGGER) {
            return;
        }
        final WindowContainerTransaction wct = new WindowContainerTransaction();
        resetWindowsOffset(wct);
        applyTransaction(wct);
    }

    private void resetWindowsOffset(WindowContainerTransaction wct) {
    private void resetWindowsOffset(WindowContainerTransaction wct) {
        final SurfaceControl.Transaction tx =
        final SurfaceControl.Transaction tx =
                mSurfaceControlTransactionFactory.getTransaction();
                mSurfaceControlTransactionFactory.getTransaction();