Merge changes from topics "presubmit-am-0ed6d9a2502540239b46d7d3573bd44e", "presubmit-am-7a77b5bffdb04bf38bcec9ec17d4d6ee" into tm-qpr-dev

* changes:
  Revert "Allow user gesture to take priority over taskbar translation reset animnatiuon."
  Revert "Fix bug where taskbar is translated during hotseat handoff."
This commit is contained in:
Jon Miranda
2023-04-13 19:01:21 +00:00
committed by Android (Google) Code Review
2 changed files with 7 additions and 24 deletions

View File

@@ -642,14 +642,8 @@ public class TaskbarLauncherStateController {
long resetDuration = mControllers.taskbarStashController.isInApp()
? duration
: duration / 2;
boolean shouldReset =
mControllers.taskbarTranslationController.shouldResetBackToZero(resetDuration);
boolean goingToLauncher = isAnimatingToLauncher();
boolean isNormalState = mLauncherState == LauncherState.NORMAL;
// Taskbar should always reset when animating to launcher in normal state to ensure there
// is no jump during the handoff to the hotseat.
if ((goingToLauncher && isNormalState)
|| (shouldReset && (goingToLauncher || isNormalState))) {
if (!mControllers.taskbarTranslationController.willAnimateToZeroBefore(resetDuration)
&& (isAnimatingToLauncher() || mLauncherState == LauncherState.NORMAL)) {
animatorSet.play(mControllers.taskbarTranslationController
.createAnimToResetTranslation(resetDuration));
}

View File

@@ -54,7 +54,6 @@ public class TaskbarTranslationController implements TaskbarControllers.Loggable
private boolean mHasSprungOnceThisGesture;
private @Nullable ValueAnimator mSpringBounce;
private boolean mGestureEnded;
private boolean mGestureInProgress;
private boolean mAnimationToHomeRunning;
private final boolean mIsTransientTaskbar;
@@ -124,7 +123,6 @@ public class TaskbarTranslationController implements TaskbarControllers.Loggable
private void reset() {
mGestureEnded = false;
mGestureInProgress = false;
mHasSprungOnceThisGesture = false;
}
@@ -136,24 +134,18 @@ public class TaskbarTranslationController implements TaskbarControllers.Loggable
}
/**
* Returns {@code true} if we should reset the animation back to zero.
*
* Returns {@code false} if there is a gesture in progress, or if we are already animating
* to 0 within the specified duration.
* Returns true if we will animate to zero before the input duration.
*/
public boolean shouldResetBackToZero(long duration) {
if (mGestureInProgress) {
return false;
}
public boolean willAnimateToZeroBefore(long duration) {
if (mSpringBounce != null && mSpringBounce.isRunning()) {
long springDuration = mSpringBounce.getDuration();
long current = mSpringBounce.getCurrentPlayTime();
return (springDuration - current >= duration);
return (springDuration - current < duration);
}
if (mTranslationYForSwipe.isAnimatingToValue(0)) {
return mTranslationYForSwipe.getRemainingTime() >= duration;
return mTranslationYForSwipe.getRemainingTime() < duration;
}
return true;
return false;
}
/**
@@ -196,7 +188,6 @@ public class TaskbarTranslationController implements TaskbarControllers.Loggable
mAnimationToHomeRunning = false;
cancelSpringIfExists();
reset();
mGestureInProgress = true;
}
/**
* Called when there is movement to move the taskbar.
@@ -220,7 +211,6 @@ public class TaskbarTranslationController implements TaskbarControllers.Loggable
mGestureEnded = true;
startSpring();
}
mGestureInProgress = false;
}
}
@@ -232,7 +222,6 @@ public class TaskbarTranslationController implements TaskbarControllers.Loggable
pw.println(prefix + "\tmHasSprungOnceThisGesture=" + mHasSprungOnceThisGesture);
pw.println(prefix + "\tmAnimationToHomeRunning=" + mAnimationToHomeRunning);
pw.println(prefix + "\tmGestureEnded=" + mGestureEnded);
pw.println(prefix + "\tmGestureInProgress=" + mGestureInProgress);
pw.println(prefix + "\tmSpringBounce is running=" + (mSpringBounce != null
&& mSpringBounce.isRunning()));
}