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

Commit eaeb0fd7 authored by Adrian Roos's avatar Adrian Roos Committed by Automerger Merge Worker
Browse files

Merge "WindowInsetsAnimation: Synchronously dispatch window insets animation...

Merge "WindowInsetsAnimation: Synchronously dispatch window insets animation callbacks" into rvc-dev am: f5a0f80f am: bbec0bba

Change-Id: I1cef916282f8db7c9fa76a53c539e5d7f3a6de27
parents 5738a692 bbec0bba
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -40,8 +40,10 @@ public interface InsetsAnimationControlCallbacks {

    /**
     * Schedule the apply by posting the animation callback.
     *
     * @param runner The runner that requested applying insets
     */
    void scheduleApplyChangeInsets();
    void scheduleApplyChangeInsets(InsetsAnimationControlRunner runner);

    /**
     * Finish the final steps after the animation.
+1 −1
Original line number Diff line number Diff line
@@ -156,7 +156,7 @@ public class InsetsAnimationControlImpl implements WindowInsetsAnimationControll
        mPendingFraction = sanitize(fraction);
        mPendingInsets = sanitize(insets);
        mPendingAlpha = sanitize(alpha);
        mController.scheduleApplyChangeInsets();
        mController.scheduleApplyChangeInsets(this);
    }

    @VisibleForTesting
+1 −1
Original line number Diff line number Diff line
@@ -54,7 +54,7 @@ public class InsetsAnimationThreadControlRunner implements InsetsAnimationContro
        }

        @Override
        public void scheduleApplyChangeInsets() {
        public void scheduleApplyChangeInsets(InsetsAnimationControlRunner runner) {
            mControl.applyChangeInsets(mState);
        }

+2 −2
Original line number Diff line number Diff line
@@ -1076,8 +1076,8 @@ public class InsetsController implements WindowInsetsController, InsetsAnimation

    @VisibleForTesting
    @Override
    public void scheduleApplyChangeInsets() {
        if (mStartingAnimation) {
    public void scheduleApplyChangeInsets(InsetsAnimationControlRunner runner) {
        if (mStartingAnimation || runner.getAnimationType() == ANIMATION_TYPE_USER) {
            mAnimCallback.run();
            mAnimCallbackScheduled = false;
            return;
+1 −1
Original line number Diff line number Diff line
@@ -229,7 +229,7 @@ public class InsetsAnimationControlImplTest {
        doAnswer(invocation -> {
            mController.applyChangeInsets(mInsetsState);
            return null;
        }).when(mMockController).scheduleApplyChangeInsets();
        }).when(mMockController).scheduleApplyChangeInsets(any());
        mController.finish(true /* shown */);
        assertEquals(Insets.of(0, 100, 100, 0), mController.getCurrentInsets());
        verify(mMockController).notifyFinished(eq(mController), eq(true /* shown */));
Loading