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

Commit ab3a01c9 authored by Aaron Liu's avatar Aaron Liu Committed by Automerger Merge Worker
Browse files

Merge "[Bouncer] Reset y translation and alpha" into tm-dev am: 9ebf6999

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



Change-Id: Icc7a14fd654beec44af11034e558cce23f731791
Ignore-AOSP-First: this is an automerge
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 11d6a577 9ebf6999
Loading
Loading
Loading
Loading
+18 −9
Original line number Diff line number Diff line
@@ -181,10 +181,12 @@ public class AppearAnimationUtils implements AppearAnimationCreator<View> {
    public void createAnimation(final View view, long delay, long duration, float translationY,
            boolean appearing, Interpolator interpolator, final Runnable endRunnable) {
        if (view != null) {
            view.setAlpha(appearing ? 0f : 1.0f);
            view.setTranslationY(appearing ? translationY : 0);
            Animator alphaAnim;
            float targetAlpha = appearing ? 1f : 0f;
            float targetTranslationY = appearing ? 0 : translationY;
            view.setAlpha(1.0f - targetAlpha);
            view.setTranslationY(translationY - targetTranslationY);
            Animator alphaAnim;

            if (view.isHardwareAccelerated()) {
                RenderNodeAnimator alphaAnimRt = new RenderNodeAnimator(RenderNodeAnimator.ALPHA,
                        targetAlpha);
@@ -205,14 +207,21 @@ public class AppearAnimationUtils implements AppearAnimationCreator<View> {
                    }
                });
            }
            if (endRunnable != null) {
            alphaAnim.addListener(new AnimatorListenerAdapter() {
                @Override
                public void onAnimationCancel(Animator animation) {
                    // If Animation is canceled, we want to ensure UI is reset.
                    view.setAlpha(targetAlpha);
                    view.setTranslationY(targetTranslationY);
                }

                @Override
                public void onAnimationEnd(Animator animation) {
                    if (endRunnable != null) {
                        endRunnable.run();
                    }
                });
                }
            });
            alphaAnim.start();
            startTranslationYAnimation(view, delay, duration, appearing ? 0 : translationY,
                    interpolator);