Merge "Show taskbar when external keyboard is attached, in 3 button nav mode and desktop windowing mode" into main

This commit is contained in:
Helen Cheuk
2024-02-07 14:30:12 +00:00
committed by Android (Google) Code Review
@@ -60,8 +60,10 @@ import com.android.launcher3.DeviceProfile;
import com.android.launcher3.R;
import com.android.launcher3.anim.AnimatedFloat;
import com.android.launcher3.anim.AnimatorListeners;
import com.android.launcher3.statehandlers.DesktopVisibilityController;
import com.android.launcher3.util.DisplayController;
import com.android.launcher3.util.MultiPropertyFactory.MultiProperty;
import com.android.quickstep.LauncherActivityInterface;
import com.android.quickstep.SystemUiProxy;
import java.io.PrintWriter;
@@ -951,6 +953,15 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba
if (mActivity.isHardwareKeyboard() && DisplayController.isPinnedTaskbar(mActivity)) {
return false;
}
// Do not stash if hardware keyboard is attached, in 3 button nav and desktop windowing mode
DesktopVisibilityController visibilityController =
LauncherActivityInterface.INSTANCE.getDesktopVisibilityController();
if (visibilityController != null && mActivity.isHardwareKeyboard()
&& mActivity.isThreeButtonNav() && visibilityController.areFreeformTasksVisible()) {
return false;
}
return mIsImeShowing || mIsImeSwitcherShowing;
}