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

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

Merge "Insets Animations: Always dispatch onEnd when cancelled" into sc-dev am: e53e6f5c

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

Change-Id: Ie5832b5a022a0c6742efac628f35bb378f748e18
parents 134c6bf7 e53e6f5c
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1265,7 +1265,7 @@ public class InsetsController implements WindowInsetsController, InsetsAnimation
                    }
                    stateChanged |= getSourceConsumer(types.valueAt(j)).notifyAnimationFinished();
                }
                if (invokeCallback && runningAnimation.startDispatched) {
                if (invokeCallback) {
                    dispatchAnimationEnd(runningAnimation.runner.getAnimation());
                }
                break;
+4 −0
Original line number Diff line number Diff line
@@ -110,6 +110,10 @@ public class ViewRootInsetsControllerHost implements InsetsController.Host {
    @Override
    public void dispatchWindowInsetsAnimationEnd(@NonNull WindowInsetsAnimation animation) {
        if (DEBUG) Log.d(TAG, "windowInsetsAnimation ended");
        if (mViewRoot.mView == null) {
            // The view has already detached from window.
            return;
        }
        mViewRoot.mView.dispatchWindowInsetsAnimationEnd(animation);
    }

+7 −0
Original line number Diff line number Diff line
@@ -360,6 +360,13 @@ public final class WindowInsetsAnimation {
         * finished, and then revert to the starting state of the animation in the first
         * {@link #onProgress} callback by using post-layout view properties like {@link View#setX}
         * and related methods.
         *
         * <p>Note that the animation might be cancelled before {@link #onStart} is dispatched. On
         * {@link android.os.Build.VERSION_CODES#S S} and later, {@link #onEnd} is immediately
         * dispatched without an {@link #onStart} in that case.
         * On {@link android.os.Build.VERSION_CODES#R R}, no callbacks are dispatched after
         * {@code #onPrepare} for such an animation.
         *
         * <p>
         * Note: If the animation is application controlled by using
         * {@link WindowInsetsController#controlWindowInsetsAnimation}, the end state of the