Merge "Only animate to hotseat when launcher is on home screen" into tm-qpr-dev am: eaaf065b73

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/19775938

Change-Id: Ibb18c2fc6551a46f892616aebcf3da725ec5fc73
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Evan Rosky
2022-09-01 21:36:53 +00:00
committed by Automerger Merge Worker
2 changed files with 15 additions and 0 deletions
@@ -16,6 +16,7 @@
package com.android.launcher3.taskbar;
import static com.android.launcher3.taskbar.TaskbarLauncherStateController.FLAG_RESUMED;
import static com.android.quickstep.TaskAnimationManager.ENABLE_SHELL_TRANSITIONS;
import static com.android.systemui.shared.system.WindowManagerWrapper.ITYPE_EXTRA_NAVIGATION_BAR;
import android.animation.Animator;
@@ -169,6 +170,13 @@ public class LauncherTaskbarUIController extends TaskbarUIController {
}
}
if (ENABLE_SHELL_TRANSITIONS
&& !mLauncher.getStateManager().getState().isTaskbarAlignedWithHotseat(mLauncher)) {
// Launcher is resumed, but in a state where taskbar is still independent, so
// ignore the state change.
return null;
}
mTaskbarLauncherStateController.updateStateForFlag(FLAG_RESUMED, isResumed);
return mTaskbarLauncherStateController.applyState(fromInit ? 0 : duration, startAnimation);
}
@@ -16,6 +16,7 @@
package com.android.launcher3.uioverrides.states;
import static com.android.launcher3.logging.StatsLogManager.LAUNCHER_STATE_BACKGROUND;
import static com.android.quickstep.TaskAnimationManager.ENABLE_SHELL_TRANSITIONS;
import android.content.Context;
import android.graphics.Color;
@@ -101,6 +102,12 @@ public class BackgroundAppState extends OverviewState {
return Color.TRANSPARENT;
}
@Override
public boolean isTaskbarAlignedWithHotseat(Launcher launcher) {
if (ENABLE_SHELL_TRANSITIONS) return false;
return super.isTaskbarAlignedWithHotseat(launcher);
}
public static float[] getOverviewScaleAndOffsetForBackgroundState(
BaseDraggingActivity activity) {
return new float[] {