Fix KQS first task focux when there is only one recent task
Flag: LEGACY ENABLE_KEYBOARD_QUICK_SWITCH ENABLED
Fixes: 335257398
Test: TaplTestsKeyboardQuickSwitch#testLaunchSingleRecentTask
Change-Id: Ibf1514394c29c33ea1dde9e3704af231e2d039f2
diff --git a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchView.java b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchView.java
index 2d9e236..a5383f5 100644
--- a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchView.java
+++ b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchView.java
@@ -362,8 +362,9 @@
OPEN_OUTLINE_INTERPOLATOR));
}
});
- animateFocusMove(-1, currentFocusIndexOverride == -1
- ? Math.min(mContent.getChildCount(), 1) : currentFocusIndexOverride);
+ animateFocusMove(-1, Math.min(
+ mContent.getChildCount() - 1,
+ currentFocusIndexOverride == -1 ? 1 : currentFocusIndexOverride));
displayedContent.setVisibility(VISIBLE);
setVisibility(VISIBLE);
requestFocus();
diff --git a/quickstep/tests/src/com/android/quickstep/TaplTestsKeyboardQuickSwitch.java b/quickstep/tests/src/com/android/quickstep/TaplTestsKeyboardQuickSwitch.java
index 7c2d41d..43ebb17 100644
--- a/quickstep/tests/src/com/android/quickstep/TaplTestsKeyboardQuickSwitch.java
+++ b/quickstep/tests/src/com/android/quickstep/TaplTestsKeyboardQuickSwitch.java
@@ -149,6 +149,13 @@
runTest(TestSurface.WIDGETS, TestCase.LAUNCH_OVERVIEW);
}
+ @Test
+ public void testLaunchSingleRecentTask() {
+ mLauncher.getLaunchedAppState().switchToOverview().dismissAllTasks();
+ startAppFast(CALCULATOR_APP_PACKAGE);
+ mLauncher.goHome().showQuickSwitchView().launchFocusedAppTask(CALCULATOR_APP_PACKAGE);
+ }
+
private void runTest(@NonNull TestSurface testSurface, @NonNull TestCase testCase) {
for (int i = 0; i < testCase.mNumAdditionalRunningTasks; i++) {
startTestActivity(3 + i);