Merge "Updates quickswitch animation from Launcher." into sc-dev
This commit is contained in:
@@ -35,7 +35,13 @@ public class QuickSwitchState extends BackgroundAppState {
|
||||
float shiftRange = launcher.getAllAppsController().getShiftRange();
|
||||
float shiftProgress = getVerticalProgress(launcher) - NORMAL.getVerticalProgress(launcher);
|
||||
float translationY = shiftProgress * shiftRange;
|
||||
return new ScaleAndTranslation(1, 0, translationY);
|
||||
return new ScaleAndTranslation(0.9f, 0, translationY);
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getVerticalProgress(Launcher launcher) {
|
||||
// Don't move all apps shelf while quick-switching (just let it fade).
|
||||
return 1f;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+7
-6
@@ -23,7 +23,7 @@ import static com.android.launcher3.LauncherState.OVERVIEW_ACTIONS;
|
||||
import static com.android.launcher3.LauncherState.QUICK_SWITCH;
|
||||
import static com.android.launcher3.anim.AlphaUpdateListener.ALPHA_CUTOFF_THRESHOLD;
|
||||
import static com.android.launcher3.anim.Interpolators.ACCEL_0_75;
|
||||
import static com.android.launcher3.anim.Interpolators.DEACCEL_5;
|
||||
import static com.android.launcher3.anim.Interpolators.DEACCEL_3;
|
||||
import static com.android.launcher3.anim.Interpolators.LINEAR;
|
||||
import static com.android.launcher3.anim.Interpolators.scrollInterpolatorForVelocity;
|
||||
import static com.android.launcher3.logging.StatsLogManager.LAUNCHER_STATE_HOME;
|
||||
@@ -31,9 +31,10 @@ import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCH
|
||||
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_UNKNOWN_SWIPEUP;
|
||||
import static com.android.launcher3.logging.StatsLogManager.getLauncherAtomEvent;
|
||||
import static com.android.launcher3.states.StateAnimationConfig.ANIM_ALL_APPS_FADE;
|
||||
import static com.android.launcher3.states.StateAnimationConfig.ANIM_DEPTH;
|
||||
import static com.android.launcher3.states.StateAnimationConfig.ANIM_VERTICAL_PROGRESS;
|
||||
import static com.android.launcher3.states.StateAnimationConfig.ANIM_WORKSPACE_FADE;
|
||||
import static com.android.launcher3.states.StateAnimationConfig.ANIM_WORKSPACE_TRANSLATE;
|
||||
import static com.android.launcher3.states.StateAnimationConfig.ANIM_WORKSPACE_SCALE;
|
||||
import static com.android.launcher3.states.StateAnimationConfig.SKIP_ALL_ANIMATIONS;
|
||||
import static com.android.launcher3.states.StateAnimationConfig.SKIP_OVERVIEW;
|
||||
import static com.android.launcher3.touch.BothAxesSwipeDetector.DIRECTION_RIGHT;
|
||||
@@ -80,9 +81,8 @@ import com.android.quickstep.views.LauncherRecentsView;
|
||||
public class NoButtonQuickSwitchTouchController implements TouchController,
|
||||
BothAxesSwipeDetector.Listener {
|
||||
|
||||
/** The minimum progress of the scale/translationY animation until drag end. */
|
||||
private static final float Y_ANIM_MIN_PROGRESS = 0.25f;
|
||||
private static final Interpolator FADE_OUT_INTERPOLATOR = DEACCEL_5;
|
||||
private static final Interpolator FADE_OUT_INTERPOLATOR = DEACCEL_3;
|
||||
private static final Interpolator TRANSLATE_OUT_INTERPOLATOR = ACCEL_0_75;
|
||||
private static final Interpolator SCALE_DOWN_INTERPOLATOR = LINEAR;
|
||||
private static final long ATOMIC_DURATION_FROM_PAUSED_TO_OVERVIEW = 300;
|
||||
@@ -187,7 +187,8 @@ public class NoButtonQuickSwitchTouchController implements TouchController,
|
||||
StateAnimationConfig nonOverviewBuilder = new StateAnimationConfig();
|
||||
nonOverviewBuilder.setInterpolator(ANIM_WORKSPACE_FADE, FADE_OUT_INTERPOLATOR);
|
||||
nonOverviewBuilder.setInterpolator(ANIM_ALL_APPS_FADE, FADE_OUT_INTERPOLATOR);
|
||||
nonOverviewBuilder.setInterpolator(ANIM_WORKSPACE_TRANSLATE, TRANSLATE_OUT_INTERPOLATOR);
|
||||
nonOverviewBuilder.setInterpolator(ANIM_WORKSPACE_SCALE, FADE_OUT_INTERPOLATOR);
|
||||
nonOverviewBuilder.setInterpolator(ANIM_DEPTH, FADE_OUT_INTERPOLATOR);
|
||||
nonOverviewBuilder.setInterpolator(ANIM_VERTICAL_PROGRESS, TRANSLATE_OUT_INTERPOLATOR);
|
||||
updateNonOverviewAnim(QUICK_SWITCH, nonOverviewBuilder);
|
||||
mNonOverviewAnim.dispatchOnStart();
|
||||
@@ -207,7 +208,7 @@ public class NoButtonQuickSwitchTouchController implements TouchController,
|
||||
/** Create state animation to control non-overview components. */
|
||||
private void updateNonOverviewAnim(LauncherState toState, StateAnimationConfig config) {
|
||||
config.duration = (long) (Math.max(mXRange, mYRange) * 2);
|
||||
config.animFlags = config.animFlags | SKIP_OVERVIEW;
|
||||
config.animFlags |= SKIP_OVERVIEW;
|
||||
mNonOverviewAnim = mLauncher.getStateManager()
|
||||
.createAnimationToNewWorkspace(toState, config);
|
||||
mNonOverviewAnim.getTarget().addListener(mClearStateOnCancelListener);
|
||||
|
||||
@@ -46,7 +46,6 @@ public class Interpolators {
|
||||
public static final Interpolator DEACCEL_2 = new DecelerateInterpolator(2);
|
||||
public static final Interpolator DEACCEL_2_5 = new DecelerateInterpolator(2.5f);
|
||||
public static final Interpolator DEACCEL_3 = new DecelerateInterpolator(3f);
|
||||
public static final Interpolator DEACCEL_5 = new DecelerateInterpolator(5f);
|
||||
|
||||
public static final Interpolator ACCEL_DEACCEL = new AccelerateDecelerateInterpolator();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user