Merge "Only animate to hotseat when launcher is on home screen" into tm-qpr-dev
This commit is contained in:
@@ -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[] {
|
||||
|
||||
Reference in New Issue
Block a user