Use correct interpolator for recents scale when quick scrubbing

Use same interpolator for scale and translationY so that they feel more
coordinated. (They were already the same in all cases except when
scrubbing when already in overview, which never had a scale component
before.)

Bug: 80139193
Change-Id: Id143b5cc9279d55aaa1b0444db5fe4b41ce92170
This commit is contained in:
Tony Wickham
2018-05-24 17:13:36 -07:00
parent 1ab656460b
commit 4ff7d8e7b3

View File

@@ -76,15 +76,16 @@ public class RecentsViewStateController implements StateHandler {
}
PropertySetter setter = config.getPropertySetter(builder);
float[] scaleTranslationYFactor = toState.getOverviewScaleAndTranslationYFactor(mLauncher);
Interpolator scaleInterpolator = builder.getInterpolator(ANIM_OVERVIEW_SCALE, LINEAR);
setter.setFloat(mRecentsView, SCALE_PROPERTY, scaleTranslationYFactor[0], scaleInterpolator);
Interpolator transYInterpolator = scaleInterpolator;
Interpolator scaleAndTransYInterpolator = builder.getInterpolator(
ANIM_OVERVIEW_SCALE, LINEAR);
if (mLauncher.getStateManager().getState() == OVERVIEW && toState == FAST_OVERVIEW) {
transYInterpolator = Interpolators.clampToProgress(QUICK_SCRUB_START_INTERPOLATOR, 0,
QUICK_SCRUB_TRANSLATION_Y_FACTOR);
scaleAndTransYInterpolator = Interpolators.clampToProgress(
QUICK_SCRUB_START_INTERPOLATOR, 0, QUICK_SCRUB_TRANSLATION_Y_FACTOR);
}
setter.setFloat(mRecentsView, SCALE_PROPERTY, scaleTranslationYFactor[0],
scaleAndTransYInterpolator);
setter.setFloat(mRecentsView, TRANSLATION_Y_FACTOR, scaleTranslationYFactor[1],
transYInterpolator);
scaleAndTransYInterpolator);
setter.setFloat(mRecentsViewContainer, CONTENT_ALPHA, toState.overviewUi ? 1 : 0,
builder.getInterpolator(ANIM_OVERVIEW_FADE, AGGRESSIVE_EASE_IN_OUT));