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

Commit e3876e8d authored by Hyunyoung Song's avatar Hyunyoung Song
Browse files

Change default animation duration for all apps open and close.

> Also set different interpolator for all apps opening clicking the caret

Change-Id: I7f9b764a8bf8bb7c38d94acbd964e912f22d6941
parent 0dc7e91d
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@
    <!-- Fade/zoom in/out duration & scale in a Launcher overlay transition.
         Note: This should be less than the config_overlayTransitionTime as they happen together. -->
    <integer name="config_overlayRevealTime">220</integer>
    <integer name="config_overlaySlideRevealTime">320</integer>
    <integer name="config_overlayTransitionTime">300</integer>
    <integer name="config_overlayItemsAlphaStagger">60</integer>

+5 −2
Original line number Diff line number Diff line
@@ -237,6 +237,8 @@ public class LauncherStateTransitionAnimation {
        final Resources res = mLauncher.getResources();
        final boolean material = Utilities.ATLEAST_LOLLIPOP;
        final int revealDuration = res.getInteger(R.integer.config_overlayRevealTime);
        final int revealDurationSlide = res.getInteger(R.integer.config_overlaySlideRevealTime);

        final int itemsAlphaStagger = res.getInteger(R.integer.config_overlayItemsAlphaStagger);

        final View fromView = mLauncher.getWorkspace();
@@ -435,7 +437,7 @@ public class LauncherStateTransitionAnimation {
                      pCb.onTransitionComplete();
                  }
            });
            mAllAppsController.animateToAllApps(animation, revealDuration);
            mAllAppsController.animateToAllApps(animation, revealDurationSlide);

            dispatchOnLauncherTransitionPrepare(fromView, animated, false);
            dispatchOnLauncherTransitionPrepare(toView, animated, false);
@@ -680,6 +682,7 @@ public class LauncherStateTransitionAnimation {
        final Resources res = mLauncher.getResources();
        final boolean material = Utilities.ATLEAST_LOLLIPOP;
        final int revealDuration = res.getInteger(R.integer.config_overlayRevealTime);
        final int revealDurationSlide = res.getInteger(R.integer.config_overlaySlideRevealTime);
        final int itemsAlphaStagger =
                res.getInteger(R.integer.config_overlayItemsAlphaStagger);

@@ -918,7 +921,7 @@ public class LauncherStateTransitionAnimation {
                }

            });
            mAllAppsController.animateToWorkspace(animation, revealDuration);
            mAllAppsController.animateToWorkspace(animation, revealDurationSlide);

            // Dispatch the prepare transition signal
            dispatchOnLauncherTransitionPrepare(fromView, animated, multiplePagesVisible);
+14 −3
Original line number Diff line number Diff line
@@ -6,6 +6,7 @@ import android.animation.AnimatorListenerAdapter;
import android.animation.AnimatorSet;
import android.animation.ArgbEvaluator;
import android.animation.ObjectAnimator;
import android.support.v4.view.animation.FastOutSlowInInterpolator;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
@@ -43,7 +44,8 @@ public class AllAppsTransitionController implements TouchController, VerticalPul
    private static final boolean DBG = false;

    private final Interpolator mAccelInterpolator = new AccelerateInterpolator(2f);
    private final Interpolator mDecelInterpolator = new DecelerateInterpolator(1f);
    private final Interpolator mFastOutSlowInInterpolator = new FastOutSlowInInterpolator();
    private final Interpolator mScrollInterpolator = new PagedView.ScrollInterpolator();

    private static final float ANIMATION_DURATION = 1200;

@@ -249,6 +251,7 @@ public class AllAppsTransitionController implements TouchController, VerticalPul
    public boolean isTransitioning() {
        return mDetector.isDraggingOrSettling();
    }

    /**
     * @param start {@code true} if start of new drag.
     */
@@ -345,6 +348,7 @@ public class AllAppsTransitionController implements TouchController, VerticalPul
    }

    public void animateToAllApps(AnimatorSet animationOut, long duration) {
        Interpolator interpolator;
        if (animationOut == null) {
            return;
        }
@@ -352,12 +356,15 @@ public class AllAppsTransitionController implements TouchController, VerticalPul
            preparePull(true);
            mAnimationDuration = duration;
            mShiftStart = mAppsView.getTranslationY();
            interpolator = mFastOutSlowInInterpolator;
        } else {
            interpolator = mScrollInterpolator;
        }
        final float fromAllAppsTop = mAppsView.getTranslationY();
        ObjectAnimator driftAndAlpha = ObjectAnimator.ofFloat(this, "progress",
                fromAllAppsTop / mShiftRange, 0f);
        driftAndAlpha.setDuration(mAnimationDuration);
        driftAndAlpha.setInterpolator(new PagedView.ScrollInterpolator());
        driftAndAlpha.setInterpolator(interpolator);
        animationOut.play(driftAndAlpha);

        animationOut.addListener(new AnimatorListenerAdapter() {
@@ -416,17 +423,21 @@ public class AllAppsTransitionController implements TouchController, VerticalPul
        if (animationOut == null) {
            return;
        }
        Interpolator interpolator;
        if (mDetector.isIdleState()) {
            preparePull(true);
            mAnimationDuration = duration;
            mShiftStart = mAppsView.getTranslationY();
            interpolator = mFastOutSlowInInterpolator;
        } else {
            interpolator = mScrollInterpolator;
        }
        final float fromAllAppsTop = mAppsView.getTranslationY();

        ObjectAnimator driftAndAlpha = ObjectAnimator.ofFloat(this, "progress",
                fromAllAppsTop / mShiftRange, 1f);
        driftAndAlpha.setDuration(mAnimationDuration);
        driftAndAlpha.setInterpolator(new PagedView.ScrollInterpolator());
        driftAndAlpha.setInterpolator(interpolator);
        animationOut.play(driftAndAlpha);

        animationOut.addListener(new AnimatorListenerAdapter() {