Also unregister it if the feature becomes disabled (currently
this is only done in tests but in the future there will be a
user setting as well).
Added tests to verify getTasks() is not called while both
canShowRunningApps and canShowRecentApps are false.
Bug: 354087794
Test: TaskbarRecentAppsControllerTest
Flag: com.android.launcher3.enable_recents_in_taskbar
Flag: com.android.window.flags.enable_desktop_windowing_taskbar_running_apps
Change-Id: I3123501e7584ad7f877e13294454556501d2dbc8
To revert the preference change on PreviewItemManagerTest for on-device
test.
Bug: 354157494
Test: Unit tests
Flag: EXEMPT bugfix
Change-Id: I966cbd7bf85b0336e131c6e9e4bb306b3700a928
Added common BubbleStashController interface and implementation for the
PersistentTaskBarStashController. Added tests for the implementation.
Bug: 346391377
Flag: com.android.wm.shell.enable_bubble_bar
Test: PersistentTaskBarStashControllerTest
Change-Id: I353e5a2cfa2d39e83b0e94980938aee8a1002fd9
Add a talkback announcement that tells the user when bubble bar expands
or collapses. The announcement includes the bubble name.
Bug: 344670486
Flag: com.android.wm.shell.enable_bubble_bar
Test: expand bubble bar by tapping on it, hear the announcement
Test: collapse bubble bar by tapping on it, hear the announcement
Test: expand/collapse bubble bar from action menu, hear the announcement
Test: use action menu to move expanded bubble bar from one side to the
other, make sure there is no announcement
Change-Id: I3908bda3eb9e3eb201067fb2c465c3a883ce73d4
flag to use DesktopModeFlags
Test: Current tests pass
Bug: 348193756
Flag: com.android.window.flags.show_desktop_windowing_dev_option
Change-Id: Ib1b1b01f6a94b4d9c49019a31d0e2269246c301b
Tests LPNH for the standard conditions (no flags or AGA configs).
Specifically tests:
- Delegate stealing focus
- Long press triggers with steady hold or slight slop
- Up, cancel, or excessive slop cancels the long press
- Touch ignored if outside the nav handle (not centered)
Things behind flags / AGA config which are not yet tested:
- 2 stage detection (double timeout after small slop)
- Deep press
- Custom timeout from AGA
Fix: 353613291
Test: NavHandleLongPressInputConsumerTest
Flag: TEST_ONLY
Change-Id: I5ada3a07ccec9062ac22fa21b00d5a030f6d134a
A11y that supports the following actions:
- collapse
- dismiss
- move bar to the left or right (depending on current location)
Bug: 347028716
Test: select bubble in expanded bubble bar, open action menu
Test: use action menu to:
- collapse bubble bar
- dismiss a bubble, ensure only selected bubble is dismissed
- move bubble bar to other side
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I70d90877e045abadb1fca4665ce315476d33c713
* Extract out common bits from SplitInstructionsView as well
Fixes: 321863575
Test: Dismissed split from overview, swipe to home, cancel button,
tapping on scrim. No thumbnail flashes
Flag: EXEMPT bugfix
Change-Id: I83d54c9b8309bdec64af12bbc8ed397c045e847d
Fix: 342594235
Test: Manual. Check IconView in Overview works
Flag: EXEMPT converting java class to Kotlin
Change-Id: Icef4c5ebe7c4ce05fb844448679d032b171ad1bb
The animation is added and the linked bug is fixed.
Removing obsolete TODO.
Bug: 280605790
Change-Id: I54ab56f93794afb7f7c23de4df1a348d30cbbf42
Test: NA
Flag: DOCS_ONLY
Bug: 344670180
Test: open accessibility action menu on bubble bar. use menu to
- expand bubble bar
- dismiss bubble bar
Test: when bubble bar is on the right, the action menu has an option to
move bubble bar to the left only, use menu to move bar to the left
Test: when bubble bar is on the left, the action menu has an option to
move bubble bar to the right only, use menu to move bar to the right
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: Id875a43927bc3410a83d1342b9456330c9521085
This is an effort to align/unify color usage across all launcher projects and the system itself.
This fix recreates all dynamic color attributes present in the OS since many launcher areas cannot access private attributes.
It is recomemnded to use these new local attributes in all launcher areas and avoid creating new color resources when these can be used directly.
Bug: 352690172
Test: Presubmits
Flag: EXEMPT bugfix
Change-Id: Ic36b8bf70ee37f2fdd32e459e66f0e2d001d6ba2
This CL adds the RecentsDependencyContainer to maintain singletons and dependencies related to RecentsView. RecentsDependencies is a singleton that requires the application context to be initialized. Unlike regular singletons, this class has an initialize function where it gets initialized and can be retrieved with getInstance without providing the appContext each time.
- We've updated the refactored classes behind the -enable_refactor_task_thumbnail flag to use this DI solution rather than relying on .parent or recreating dependencies.
- To inject dependencies, you can use RecentsDependencies.inject for lazy initialization or RecentsDependencies.get for eager initialization.
- At the moment, we don't have a singleton or factory definition. All dependencies created by RecentsDependencies will be stored in a specific scope, making the instance a singleton within that scope.
- You can create or retrieve a dependency in a particular scope by calling RecentsDependencies.inject(scopeId).
- If you don't need the dependency to be stored in RecentsDependencies, you can create it manually in your code and inject the necessary parameters from RecentsDependencies (see the viewModel in TaskOverlayHelper).
- Handling the cleaning/resetting of dependencies will be addressed in b/353917593. RecentsView lifecycle is more complex and doesn't get recreated every time. We need to determine which dependencies or scopes can be destroyed and recreated.
Fix: 349055024
Test: NONE
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Change-Id: I27b92e3038f1cce0fd53b637dba5054c05b40283
- The reason Recents is empty after a force-stop is when RecentsTasksList.getTasks is called first time after restart, the result is always invalid but we cached the invalid result with a chagneId(=1). The next time we call getTasks again, we think the cached result is valid, and returend an empty list.
- The fix is to mark such result as invalid to avoid caching the wrong result
Fix: 353926204
Test: RecentTasksListTest
Flag: EXEMPT bugfix
Change-Id: If15ab8fd7454db8a08c22b17eaac73f0c78aa75f
Introduce FLAG_IGNORE_IN_APP to prevent taskbar from stashing prematurely
due to HomeTransitionListener signal.
Bug: 345768019
Fixes: 319162553
Test: Launch an app, note the two animations are synced
Verified by locally introducing a startDelay (since otherwise it is hard to tell)
Flag: com.android.launcher3.enable_scaling_reveal_home_animation
Change-Id: Ibb64e0321f33cf81e337fc7c1b2c3edfb23e6ba4
* The WidgetsBaseEntry and related types are specific to picker UI.
So, moved them to a entry builder class.
Bug: 353347512
Flag: EXEMPT BUGFIX
Test: Unit test
Change-Id: I42b3083b42ee03dc8d548e7464689ea270a36f22