Merge cherrypicks of ['googleplex-android-review.googlesource.com/29738756'] into 24Q4-release.
Change-Id: Id1d607c26e2f72ff2e6dcfdb0bbafd8adb1c4e1c
This commit is contained in:
@@ -17,6 +17,8 @@ package com.android.launcher3.taskbar;
|
||||
|
||||
import static android.window.flags.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY;
|
||||
|
||||
import static com.android.launcher3.QuickstepTransitionManager.TASKBAR_TO_APP_DURATION;
|
||||
import static com.android.launcher3.QuickstepTransitionManager.getTaskbarToHomeDuration;
|
||||
import static com.android.launcher3.QuickstepTransitionManager.TRANSIENT_TASKBAR_TRANSITION_DURATION;
|
||||
import static com.android.launcher3.statemanager.BaseState.FLAG_NON_INTERACTIVE;
|
||||
import static com.android.launcher3.taskbar.TaskbarEduTooltipControllerKt.TOOLTIP_STEP_FEATURES;
|
||||
@@ -32,7 +34,6 @@ import androidx.annotation.Nullable;
|
||||
import com.android.launcher3.DeviceProfile;
|
||||
import com.android.launcher3.Flags;
|
||||
import com.android.launcher3.LauncherState;
|
||||
import com.android.launcher3.QuickstepTransitionManager;
|
||||
import com.android.launcher3.Utilities;
|
||||
import com.android.launcher3.anim.AnimatedFloat;
|
||||
import com.android.launcher3.logging.InstanceId;
|
||||
@@ -204,11 +205,17 @@ public class LauncherTaskbarUIController extends TaskbarUIController {
|
||||
isVisible,
|
||||
fromInitOrDestroy,
|
||||
/* startAnimation= */ true,
|
||||
DisplayController.isTransientTaskbar(mLauncher)
|
||||
? TRANSIENT_TASKBAR_TRANSITION_DURATION
|
||||
: (!isVisible
|
||||
? QuickstepTransitionManager.TASKBAR_TO_APP_DURATION
|
||||
: QuickstepTransitionManager.getTaskbarToHomeDuration()));
|
||||
getTaskbarAnimationDuration(isVisible));
|
||||
}
|
||||
|
||||
private int getTaskbarAnimationDuration(boolean isVisible) {
|
||||
if (isVisible && !mLauncher.getPredictiveBackToHomeInProgress()) {
|
||||
return getTaskbarToHomeDuration();
|
||||
} else {
|
||||
return DisplayController.isTransientTaskbar(mLauncher)
|
||||
? TRANSIENT_TASKBAR_TRANSITION_DURATION
|
||||
: TASKBAR_TO_APP_DURATION;
|
||||
}
|
||||
}
|
||||
|
||||
@Nullable
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
package com.android.launcher3.taskbar;
|
||||
|
||||
import static com.android.app.animation.Interpolators.EMPHASIZED;
|
||||
import static com.android.launcher3.Flags.enableScalingRevealHomeAnimation;
|
||||
import static com.android.launcher3.Hotseat.ALPHA_CHANNEL_TASKBAR_ALIGNMENT;
|
||||
import static com.android.launcher3.Hotseat.ALPHA_CHANNEL_TASKBAR_STASH;
|
||||
import static com.android.launcher3.LauncherState.HOTSEAT_ICONS;
|
||||
@@ -39,6 +40,7 @@ import android.animation.AnimatorSet;
|
||||
import android.animation.ObjectAnimator;
|
||||
import android.os.SystemClock;
|
||||
import android.util.Log;
|
||||
import android.view.animation.Interpolator;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
@@ -58,6 +60,7 @@ import com.android.launcher3.util.DisplayController;
|
||||
import com.android.launcher3.util.MultiPropertyFactory.MultiProperty;
|
||||
import com.android.quickstep.RecentsAnimationCallbacks;
|
||||
import com.android.quickstep.RecentsAnimationController;
|
||||
import com.android.quickstep.util.ScalingWorkspaceRevealAnim;
|
||||
import com.android.quickstep.util.SystemUiFlagUtils;
|
||||
import com.android.quickstep.views.RecentsView;
|
||||
import com.android.systemui.animation.ViewRootSync;
|
||||
@@ -666,7 +669,9 @@ public class TaskbarLauncherStateController {
|
||||
animatorSet.play(iconAlignAnim);
|
||||
}
|
||||
|
||||
animatorSet.setInterpolator(EMPHASIZED);
|
||||
Interpolator interpolator = enableScalingRevealHomeAnimation()
|
||||
? ScalingWorkspaceRevealAnim.SCALE_INTERPOLATOR : EMPHASIZED;
|
||||
animatorSet.setInterpolator(interpolator);
|
||||
|
||||
if (start) {
|
||||
animatorSet.start();
|
||||
|
||||
@@ -1300,6 +1300,10 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer,
|
||||
mTISBindHelper.setPredictiveBackToHomeInProgress(isInProgress);
|
||||
}
|
||||
|
||||
public boolean getPredictiveBackToHomeInProgress() {
|
||||
return mIsPredictiveBackToHomeInProgress;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean areDesktopTasksVisible() {
|
||||
DesktopVisibilityController desktopVisibilityController = getDesktopVisibilityController();
|
||||
|
||||
@@ -60,7 +60,8 @@ class ScalingWorkspaceRevealAnim(
|
||||
* Custom interpolator for both the home and wallpaper scaling. Necessary because EMPHASIZED
|
||||
* is too aggressive, but EMPHASIZED_DECELERATE is too soft.
|
||||
*/
|
||||
private val SCALE_INTERPOLATOR =
|
||||
@JvmField
|
||||
val SCALE_INTERPOLATOR =
|
||||
PathInterpolator(
|
||||
Path().apply {
|
||||
moveTo(0f, 0f)
|
||||
|
||||
Reference in New Issue
Block a user