Ensure we always clear the consumer, which has strong ref to RecentsView and launcher activity, once gesture is ended
Fix: 407823225
Test: presubmit
Flag: NONE - released code
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:222fb581bda7f16b8f44c41aae489a025507ef51)
Merged-In: I90f2212247965697a4077890404bb577943efa37
Change-Id: I90f2212247965697a4077890404bb577943efa37
If launcher is destroyed while the recents animation start is pending, then the taskanimationmanager and absswipeuphandler states are not properly cleaned up. Adding a new cleanup flow to handle this case.
Flag: EXEMPT bug fix
Fixes: 405642423
Test: adb shell cmd uimode night yes/no while TaskAnimationManager.mRecentsAnimationStartPending == true
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:8d72503263e8108aa78a527dde1487eb60c867f6)
Merged-In: I7bf1fc4fc07859f92d7aec6cd78deafa1214dd17
Change-Id: I7bf1fc4fc07859f92d7aec6cd78deafa1214dd17
This CL just introduces an API inside TopTaskTracker to return
a GroupedTaskInfo, no existing logic being migrated to it yet.
It will be used to replace `getPlaceholderTasks` and
`getSplitPlaceholderTasks` in the follow-up cls.
Bug: 401582344
Flag: EXEMPT, introduce a new API without usage
Test: m
Change-Id: Ic12003833605582d191c4abfd4a0878c266dd30f
1. Introduces "central task" - the task relating to the actions view
2. Decouple the overlay and actions view
3. Undo filter of taskViewType == SINGLE for overlay as it can be enabled for split tasks as well
Bug: 402351284
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: OverviewImageTest (attached abtd run)
Test: OverviewMenuImageTest (attached abtd run)
Change-Id: Id7bc5c9c6620183d91e99d9dc5d2980eb8e3ec36
This test is the leading cause of flakiness for the entire suite.
Bug: 404773413
Flag: EXEMPT test-only
Test: BubbleBarViewAnimatorTest
Change-Id: I7c5658ad55aa0e959e068e5979325d1c41d18310
This means we are now testing real objects instead of mocks
Test: TaskbarHoverToolTipControllerTest
Fixes: 346394827
Flag: EXEMPT bugfix
Change-Id: Ib2e7f859432e84eb18c985dd71adaaaf9a513620
It is now injected via a factory so a new instance is used each time.
Bug: 399641570
Flag: EXEMPT BUGFIX
Test: Unit test
Change-Id: Iee703f0c954c95599c07ceb788edabb0d808abb2
1. Trigger `notifyIsInDesktopModeChanged` on
`visibleDesktopTasksCount` changes only when the multi-desks
flags are disabled.
2. Make `DesktopVisibilityController.isInDesktopMode` variable
private and legacy, which should only be used when the multi-desks
feature is disabled. All the call sites should go to check
`DesktopVisibilityController.isInDesktopMode(displayId)`, which
works both with and without the multi-desks feature enabled.
Bug: 402222877
Test: m
Flag: com.android.window.flags.enable_multiple_desktops_frontend
Flag: com.android.window.flags.enable_multiple_desktops_backend
Change-Id: I291e2be6d99e81b0c918ae7f39c17a8cd4ea0918
This CL changes how the layoutDirection of the App Chip is handled and update translations in the PagedViewHandler for the app chip for fake orientation.
- The App Chip was updated to use the device layoutDirection instead of the same of RecentsView. This prevents the app chip being displayed in RTL when the device is LTR and vice-versa.
- It also applies the correct layout direction to `IconAppChipView` and its related views to ensure proper RTL behavior.
- RecentsView now updates layoutDirection for its children when updateChildTaskOrientation is called. This will make sure its children have the the latest and the correct layoutDirection.. Before it was only applied when adding a view (addView).
- In `SeascapePagedViewHandler`, it adjust the gravity for app chip be aligned correctly in Seascape.
- In `GroupedTaskView`, it checks if the device is in RTL to align the app chip correctly for split tasks.
- Multiple test combinations were done to validate this fix, please see table in b/326377497#comment7.
Fix: 326377497
Bug: 403284758
Flag: com.android.launcher3.enable_overview_icon_menu
Test: Manual, please check b/326377497#comment7.
Test: OverviewImageTest
Test: OverviewSplitTaskImageTest
Change-Id: I8e8050ccf58c3f90718a48773ee7e32ddbc00f13
Bug: 401011627
Flag: com.android.window.flags.enable_multiple_desktops_frontend
Flag: com.android.window.flags.enable_multiple_desktops_backend
Test: Added a test in RecentTasksListTest
Change-Id: I21164de812d57b79cd84370bbf0426268c4b645d
Move feature flag logic to the state mapper
Fix: 401469907
Flag: com.android.launcher3.enable_desktop_exploded_view
Test: TaskUiStateMapperTest & TaskContentViewScreenshotTest
Change-Id: Ic6ee5bef438ae2782816f526b003e1fb91992065
This CL propagates desk changes events to `RecentTasksList` and
`RecentsView`.
Bug: 395908683
Test: m
Flag: com.android.window.flags.enable_multiple_desktops_frontend
Flag: com.android.window.flags.enable_multiple_desktops_backend
Change-Id: I77457d5e2e66166dd8c7d6505317d9add5b886a2
- Fix some mockito issue by using a fake implementation rather
than a mock.
- Return early in the bubble bar animation if there's no animating
bubble. The issue here is that the scaleY property of the bubble
bar is set to 1 when the animation is interrupted. However, in
the test environment, the cancellation of the animator is posted
to a different thread, and another animation frame is running
after the scaleY was already reset to 1.
Flag: EXEMPT test only
Test: atest BubbleBarViewAnimatorTest
Bug: 399934422
Bug: 399720438
Change-Id: I271f670c50168237aeaf867c8171ae3023ee09ff
loadTasksInBackground_freeformTask_createsDesktopTaskPerDisplay assumes
that when FLAG_ENABLE_SEPARATE_EXTERNAL_DISPLAY_TASKS is enabled, all
desktop tasks (regardless of the GroupedTaskInfo.deskId) will be grouped
into one GroupTask per display.
However, if multi-desks is enabled, this logic does not apply, and
GroupTasks are created for each desk. Given that this test uses deskId=0
with the expectation that it is an unused/invalid field when testing
FLAG_ENABLE_SEPARATE_EXTERNAL_DISPLAY_TASKS, this CL disables
FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND to match that expectation.
Flag: com.android.window.flags.enable_multiple_desktops_backend
Flag: com.android.launcher3.enable_separate_external_display_tasks
Bug: 362720497
Test: atest NexusLauncherTests:com.android.quickstep.RecentTasksListTest
Change-Id: I88cceaa37582fdcf1a3ad4f59712abbfa7e428a8