As the KQS view is not extending the floating view, we have to
explicitly register the back action to close the KQS view.
Bug: 379778483
Test: open KQS via alt-tab/overflow button and tap the back button
Flag: com.android.launcher3.taskbar_overflow
Change-Id: I140813d1792f0c17aee5f9f8dd9fa3ed8b40ba6c
The root cause was that there were other unaccounted code paths inside
`KeyboardQuickSwitchViewController` that were causing the KQS view
to be closed.
The fix introduces a new `onCloseStarted` callback that is called before
closing the KQS view. This allows to toggle the overflow button together
with the KQS closing animation (in case it closes with animation).
Bug: 379614917
Flag: com.android.launcher3.taskbar_overflow
Test: manual, following steps in the bug
Change-Id: I1868142c1cdba8111cb86c4c54e5b12b643732c5
Before this cl, the KQS view is closed and reopened when the
overflow button and alt-tab key are triggered one after the other.
This cl changes the behavior so that instead of reopening, the
list of task is updated and the KQS container layout is toggled
between "wrap content" and "match parent".
Bug: 368119679
Test: open KQS via taskbar and observe the layout change
Flag: com.android.launcher3.taskbar_overflow
Change-Id: I05ea4c66727daa206ff1d7906500dc8f9cc81982
- Provide both launch and minimize animations from
DesktopAppLaunchTransition
- Add support to TaskbarRecentAppsController to check whether an app is
visible vs. minimized vs. not showing at all in Desktop Mode
- Use DesktopAppLaunchTransition when clicking a Taskbar/AllApps app
icon (when in Desktop Mode and the app is not visible) to animate the
app launch
- The animation / transition is passed to Shell through ActivityOptions
Note: this CL does not add animations for launching managed/work
profile apps. That will be handled in b/376819104.
Test: launch apps in Desktop from Taskbar/AllApps
Bug: 327428659
Flag: com.android.window.flags.enable_desktop_app_launch_transitions
Change-Id: I44be96b9c53718b2082d2f630e1921356785fc4b
This cl adds additional bottom margins to the KQS view for the
transient taskbar. Also adds a behavior that when the KQS view is
showing, the transient taskbar won't be stashed.
Screenshots with the new layout after this cl is uploaded to the
buganizer.
Bug: 368119679
Test: open KQS via transient taskbar and observe the bounds change
Flag: com.android.launcher3.taskbar_overflow
Change-Id: Ie50e768f828a24f0111df4cdba474a6482a4e1c7
Tap down action in swipe up start zone may or may not be start of a
navigation gesture - for example, it may be start of a tab on an icon in
the task bar. If the user taps on the taskbar overflow button, closing
the KQS on tap down produces unintended behavior (KQS is closed on tap
down, and reopened on tap up). Additionally, this produces inconsistent
behavior in response to app icon taps depending on whether gesture
navigation is enabled or not.
Instead, close KQS as part of `hideOverlayWindow()`, which gets called
when a swipe gesture actually starts (note that KQS is added to the
overlay's drag layer).
Additionally, make sure that KeyboardQuickSwitchController state is
reset if KeyboardQuickSwitchView gets detached from UI due to the
taskbar overlay getting hidden (e.g. in response to home button).
Without this, in certain situations, KQS may get hidden with the
controller thinking the UI is still shown - in case the user releases
the Alt + Tab key combination in this state, the shortcut would end up
getting handled, and switch to the next task.
Bug: 368119679
Test: Press and hold Alt+Tab (while an app is open). After KQS is open,
Swipe up to transition to overflow, or home screen - KQS gets hidden.
Releasing Alt+Tab is no-op.
Test: Press and hold Alt+Tab (while an app is open) with three button
navigation enabled. Press home button. KQS gets hidden. Releasting
Alt+Tab is no-op.
Test: Press and hold Alt+Tab. After KQS is open, open an app from task
bar (either transient or persistent), or all apps list. KQS gets closed,
Releasing Alt+Tab is no-op.
Flag: EXEMPT bugfix
Change-Id: I8b561db3c6ec8a9c7de93e330faf8e3e4d3c8f4e
Updates the taskbar overflow button handler to toggle the KQS instead of
merely showing it. The toggle action will open KQS view if it's not
visible, or close it if it's visible and has been shown from the
taskbar. If the view is shown, but in response to Alt+Tab, the view will
be closed, and reshown above the task bar.
Requires CL:30016166 for tapping to work as expected, and CL:30074037
for tapping overflow button reopen KQS over shelf if KQS is already
active for Alt+Tab
Bug: 368119679
Test: Enter task bar overflow. Tap overflow button to show KQS, tap
overlow button to hide KQS. Press Alt+Tab, tap overflow button to
reshow KQS over taskbar, and with filtered set of tasks.
Flag: com.android.launcher3.taskbar_overflow
Change-Id: Id598f9cad649aa174aaf1c5802bf6b6837413d1e
Bug: 368119679
Test: open KQS via taskbar and observe the bounds change
Flag: com.android.launcher3.taskbar_overflow
Change-Id: I5060a339cf0cdf70a2a11b57a325767405772ef8
Create a remote transition supporting alt-tab app-launches (app launches
caused by a user using alt-tab to select a minimized app) and any
minimization caused by hitting the window limit during such an app
launch.
Test: manual, and WindowAnimatorTest
Bug: 349791584
Flag: com.android.window.flags.enable_desktop_app_launch_alttab_transitions
Change-Id: I6474fff351f3d7681ca25cd7331e4955e3d1c6e0
Bug: 368119679
Change-Id: I3f0b1cacb76077daa5879ad93c195018948497f9
Test: open KQS via taskbar affordance, tap outside the container,
observe KQS close
Flag: com.android.launcher3.taskbar_overflow
Bug: 368119679
Test: open KQS via taskbar, observe view at bottom of screen
open KQS via keyboard, observe view at top of screen
Flag: com.android.launcher3.taskbar_overflow
Change-Id: I3e6f0d2ba51ec15cf7cb1f41ddc2a4414dfd60d6
- Updated recent apps KQS task view
- Added a desktop mode KQS task view
- Did some code cleanup to support this more cleanly
Flag: EXEMPT ENABLE_KEYBOARD_QUICK_SWITCH
Fixes: 357512178
Test: Used KQS with and without desktop mode; opened recent apps and desktop mode
Change-Id: Ib47a8a7f41b56af1ba9d0cbec65ababf8aad7881
Revert submission 28049476-kqs-cuj-instrumentation
Reason for revert: Droidmonitor created revert due to b/352144322. Will be verifying through ABTD before submission.
Reverted changes: /q/submissionid:28049476-kqs-cuj-instrumentation
Change-Id: I8bfe7bfe4ce1bd816f138dbd4d5915f837ab97a0
- Move logic from KeyboardQuickSwitchViewController to handle
bringing desktop tasks to front, and still support recent
tasks for non-desktop mode.
Flag: com.android.launcher3.enable_recents_in_taskbar
Test: manually launch tasks from the Recents section in both
Desktop mode and full screen mode (running vs recent)
Bug: 315354060
Change-Id: I0520351b4d0095a3538c6165acd82a7b4c45a5e2
While we wait for a way to display a sreenshot of the desktop statically, using a placeholder solution.
Flag: LEGACY ENABLE_KEYBOARD_QUICK_SWITCH ENABLED
Fixes: 335632286
Test: TaplTestKeyboardQuickSwitch
Change-Id: I2525ab89eb3a5a902e7ab55367187d87aada1f10
...if the handler don't know how to process the transition.
So the Transitions can pass that transition to next handler.
Flag: NONE
Bug: 328619216
Test: manual, use alt+tab to relaunch a task where it's activity
is destroyed.
Change-Id: Idf3f78103a56e91806ec2f6e364c6e8e7f4e205c
KeyboardQuickSwitchView only ever has 2 direct children, and all of the task views we're actually concerned with are in a scrollview. removing the extra index handling as this is being handled properly downstream.
Flag: LEGACY ENABLE_KEYBOARD_QUICK_SWITCH ENABLED
Fixes: 328692760
Fixes: 304518513
Test: opened KQS and tapped all tasks (6 + overview)
Change-Id: I4e919cce7f1ab55822f93d34c1533062a71aa879
Updated KQS to allow launching tasks through OverviewCommandHelper to allow launching the overview task without it having focus.
Flag: LEGACY ENABLE_KEYBOARD_QUICK_SWITCH ENABLED
Fixes: 324888738
Fixes: 324904244
Test: used enter and tap to launch tasks in KQS
Change-Id: I6de38ceea22c362a52a420c8ba0165ba23e5c862
Updated the KQS to look exactly like the default app launch animation, in the opposite direction:
- animation interpolator
- task corner radius
- task margin
- animation duration
Flag: LEGACY ENABLE_KEYBOARD_QUICK_SWITCH ENABLED
Fixes: 313606549
Fixes: 313607264
Test: launched tasks from KQS from home and launched app
Change-Id: I3f49f9430b2148680816d904aced93d14f366123
Updated the KQS app launch animation to match the spec: translate the launching app from the left (right in RTL) and translate the closing app to the right (left in RTL)
Flag: LEGACY ENABLE_KEYBOARD_QUICK_SWITCH ENABLED
Fixes: 313606549
Fixes: 313607264
Test: launched tasks from KQS from home and launched app
Change-Id: I0e903c741e4f930b377607b7eaf42a87177c3eb6
- Added a res id to KeyboardQuickSwitchView for TAPL testing
- Updated KeyboardQuickSwitch focus and scroll initialization
- Logging KeyEvents for TAPL testing
- Updated scrolling logic to wait for initial layout
- Fixed activity leak in KeyboardQuickSwitchViewController
Flag: ENABLE_KEYBOARD_QUICK_SWITCH
Bug: 267520665
Test: TaplTestsKeyboardQuickSwitch
Change-Id: I1d45d948c0e185504d994f7ef1d34f173c2243a9
Updates keyboard quickswitch logic handle quickswitching while on
desktop. When on desktop, alt+tab moves only between desktop tasks.
Fullscreen tasks are shown in the overflow tile and can be accessed by
going to overview.
TODO:
- when not in desktop and using quickswitch, show the desktop tile as a
combined tile in the row, similar to what is shown in overview
Flag: persist.wm.debug.desktop_mode_2
Bug: 280468885
Test: open some apps on desktop and have some fullscreen apps opened in
the background, when on desktop, observe that alt+tab only switches
between desktop tasks
Test: same setup, but switch to a fullscreen app, observe that alt+tab
only switches between fullscreen tasks and desktop is accessible from
overview
Change-Id: Ib19f2eaa24363bbd0669c8c8c3d99ed9d9118a17
The border animator does not need the typed array anymore after initialization. recycling the object.
Flag: ENABLE_KEYBOARD_QUICK_SWITCH
Fixes: 282202504
Test: changed focus in quick switch view and overview
Change-Id: Iea9077e49e754894008899dfc9b90e3876b53051
- Added support for escape(backtick on some keyboards) keyboard keys
- Added support for d-pad left and right keyboard keys
- Fixed janky behaviour when quick switching too quickly.
- Removed unused code
Bug: 269618928
Test: Tried quick switch very quickly, tried escape, d-pad left and right keys in RTL and LTR modes
Change-Id: Ie03207cb349891e9c2de18502f3f65b7c8f9c018
Adding KeyboardQuickSwitchView and associated flows.
Test: Manually tested alt-tab and alt-shift-tab in and out of overview on a tablet and phone
Bug: 258854035
Change-Id: Ifb48b005067b3a9c66acfd5ecdbae144b359d3be