Revert to passing mIsStashed to StashedHandleViewController again
- Fixes case where handle is initially invisible but will be stashed
and visible, e.g. when launching an app from home screen
- To fix the original issue of sampling happening unnecessarily for
three button nav, also check supportsVisualStashing()
Fixes: 321257120
Flag: None
Test: Launch an app from home in gesture nav mode
Test: testThreeButtonsTaskbarBoundsAfterConfigChangeDuringIme
Change-Id: I1f26436de3081fd00f75a5921010e361e9a9f34e
diff --git a/quickstep/src/com/android/launcher3/taskbar/StashedHandleViewController.java b/quickstep/src/com/android/launcher3/taskbar/StashedHandleViewController.java
index fd0d655..f258b47 100644
--- a/quickstep/src/com/android/launcher3/taskbar/StashedHandleViewController.java
+++ b/quickstep/src/com/android/launcher3/taskbar/StashedHandleViewController.java
@@ -155,7 +155,7 @@
});
initRegionSampler();
if (mActivity.isPhoneGestureNavMode()) {
- onIsStashedChanged();
+ onIsStashedChanged(true);
}
}
@@ -238,8 +238,8 @@
}
/** Called when taskbar is stashed or unstashed. */
- public void onIsStashedChanged() {
- mIsStashed = isStashedHandleVisible();
+ public void onIsStashedChanged(boolean isStashed) {
+ mIsStashed = isStashed;
updateSamplingState();
}
diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java
index eced202..c883759 100644
--- a/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java
+++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java
@@ -590,7 +590,7 @@
mAnimator.addListener(AnimatorListeners.forEndCallback(() -> {
mAnimator = null;
mIsStashed = isStashed;
- onIsStashedChanged();
+ onIsStashedChanged(mIsStashed);
}));
return;
}
@@ -605,7 +605,7 @@
@Override
public void onAnimationStart(Animator animation) {
mIsStashed = isStashed;
- onIsStashedChanged();
+ onIsStashedChanged(mIsStashed);
cancelTimeoutIfExists();
}
@@ -830,9 +830,10 @@
.setDuration(TASKBAR_HINT_STASH_DURATION).start();
}
- private void onIsStashedChanged() {
+ private void onIsStashedChanged(boolean isStashed) {
mControllers.runAfterInit(() -> {
- mControllers.stashedHandleViewController.onIsStashedChanged();
+ mControllers.stashedHandleViewController.onIsStashedChanged(
+ isStashed && supportsVisualStashing());
mControllers.taskbarInsetsController.onTaskbarOrBubblebarWindowHeightOrInsetsChanged();
});
}