Loading quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java +2 −2 Original line number Diff line number Diff line Loading @@ -1055,10 +1055,10 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba * * in small screen AND * * 3 button nav AND * * landscape (or seascape) * We do not stash if taskbar is transient * We do not stash if taskbar is transient or hardware keyboard is active. */ private boolean shouldStashForIme() { if (DisplayController.isTransientTaskbar(mActivity)) { if (DisplayController.isTransientTaskbar(mActivity) || mActivity.isHardwareKeyboard()) { return false; } return (mIsImeShowing || mIsImeSwitcherShowing) && Loading quickstep/tests/src/com/android/quickstep/TaplTestsQuickstep.java +11 −1 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ import static org.junit.Assume.assumeFalse; import static org.junit.Assume.assumeTrue; import android.content.Intent; import android.content.res.Configuration; import android.platform.test.annotations.PlatinumTest; import androidx.test.filters.LargeTest; Loading Loading @@ -305,7 +306,11 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { // Expect task bar invisible when the launched app was the IME activity. LaunchedAppState launchedAppState = getAndAssertLaunchedApp(); if (isHardwareKeyboard()) { launchedAppState.assertTaskbarVisible(); } else { launchedAppState.assertTaskbarHidden(); } // Quick-switch to the test app with swiping to right. quickSwitchToPreviousAppAndAssert(true /* toRight */); Loading @@ -317,6 +322,11 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { launchedAppState.assertTaskbarVisible(); } private boolean isHardwareKeyboard() { return Configuration.KEYBOARD_QWERTY == mTargetContext.getResources().getConfiguration().keyboard; } @Test @NavigationModeSwitch @PortraitLandscape Loading src/com/android/launcher3/views/ActivityContext.java +9 −0 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ import android.content.Context; import android.content.ContextWrapper; import android.content.Intent; import android.content.pm.LauncherApps; import android.content.res.Configuration; import android.graphics.Rect; import android.graphics.drawable.Drawable; import android.os.Bundle; Loading Loading @@ -305,6 +306,14 @@ public interface ActivityContext { } } /** * Returns if the connected keyboard is a hardware keyboard. */ default boolean isHardwareKeyboard() { return Configuration.KEYBOARD_QWERTY == ((Context) this).getResources().getConfiguration().keyboard; } /** * Sends a pending intent animating from a view. * Loading Loading
quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java +2 −2 Original line number Diff line number Diff line Loading @@ -1055,10 +1055,10 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba * * in small screen AND * * 3 button nav AND * * landscape (or seascape) * We do not stash if taskbar is transient * We do not stash if taskbar is transient or hardware keyboard is active. */ private boolean shouldStashForIme() { if (DisplayController.isTransientTaskbar(mActivity)) { if (DisplayController.isTransientTaskbar(mActivity) || mActivity.isHardwareKeyboard()) { return false; } return (mIsImeShowing || mIsImeSwitcherShowing) && Loading
quickstep/tests/src/com/android/quickstep/TaplTestsQuickstep.java +11 −1 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ import static org.junit.Assume.assumeFalse; import static org.junit.Assume.assumeTrue; import android.content.Intent; import android.content.res.Configuration; import android.platform.test.annotations.PlatinumTest; import androidx.test.filters.LargeTest; Loading Loading @@ -305,7 +306,11 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { // Expect task bar invisible when the launched app was the IME activity. LaunchedAppState launchedAppState = getAndAssertLaunchedApp(); if (isHardwareKeyboard()) { launchedAppState.assertTaskbarVisible(); } else { launchedAppState.assertTaskbarHidden(); } // Quick-switch to the test app with swiping to right. quickSwitchToPreviousAppAndAssert(true /* toRight */); Loading @@ -317,6 +322,11 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { launchedAppState.assertTaskbarVisible(); } private boolean isHardwareKeyboard() { return Configuration.KEYBOARD_QWERTY == mTargetContext.getResources().getConfiguration().keyboard; } @Test @NavigationModeSwitch @PortraitLandscape Loading
src/com/android/launcher3/views/ActivityContext.java +9 −0 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ import android.content.Context; import android.content.ContextWrapper; import android.content.Intent; import android.content.pm.LauncherApps; import android.content.res.Configuration; import android.graphics.Rect; import android.graphics.drawable.Drawable; import android.os.Bundle; Loading Loading @@ -305,6 +306,14 @@ public interface ActivityContext { } } /** * Returns if the connected keyboard is a hardware keyboard. */ default boolean isHardwareKeyboard() { return Configuration.KEYBOARD_QWERTY == ((Context) this).getResources().getConfiguration().keyboard; } /** * Sends a pending intent animating from a view. * Loading