Merge "Allow transient taskbar to unstash over soft ime" into tm-qpr-dev
diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java
index b53e9c5..c339c70 100644
--- a/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java
+++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java
@@ -757,6 +757,11 @@
mIsImeShowing = hasAnyFlag(systemUiStateFlags, SYSUI_STATE_IME_SHOWING);
mIsImeSwitcherShowing = hasAnyFlag(systemUiStateFlags, SYSUI_STATE_IME_SWITCHER_SHOWING);
if (!mIsSystemGestureInProgress) {
+ if (mIsImeShowing || mIsImeSwitcherShowing) {
+ // Hide taskbar when IME is shown.
+ updateStateForFlag(FLAG_STASHED_IN_APP_AUTO, true);
+ }
+
updateStateForFlag(FLAG_STASHED_IN_APP_IME, shouldStashForIme());
animDuration = TASKBAR_STASH_DURATION_FOR_IME;
startDelay = getTaskbarStashStartDelayForIme();
@@ -770,8 +775,12 @@
* * in small screen AND
* * 3 button nav AND
* * landscape (or seascape)
+ * We do not stash if taskbar is transient
*/
private boolean shouldStashForIme() {
+ if (DisplayController.isTransientTaskbar(mActivity)) {
+ return false;
+ }
return (mIsImeShowing || mIsImeSwitcherShowing) &&
!(isPhoneMode() && mActivity.isThreeButtonNav()
&& mActivity.getDeviceProfile().isLandscape);