This CL chain adds the new multi-desks APIs in `IDesktopTaskListener`
and a stub implementation in
`DesktopVisibilityController.DesktopTaskListenerImpl`.
Follow-up CLs will add the real impls.
Bug: 392978600
Test: m
Flag: EXEMPT new APIs without impl yet.
Change-Id: I360ef179769df16dbcf12a01d19d57a88bc82262
See go/refactor-group-task for details. This is the final CL
in this refactor, where `task1` and `task2` are finally removed,
and `DesktopTask` is allowed to have empty tasks.
Bug: 388593902
Test: m
Flag: EXEMPT pure refactor with no behavior change.
Change-Id: I8af39b58138f11030981311efc2e95a77cef125b
See go/refactor-group-task for details. This CL removes `mSplitBounds`
from `GroupTask` and adds `splitBounds` to `SplitTask`. This makes its
usages more intentional.
Bug: 388593902
Test: m
Flag: EXEMPT pure refactor with no behavior change.
Change-Id: I9a3e8ee2e96d46f9eb79a58ffcf5efc257615aac
See go/refactor-group-task for details. This CL removes all the usages
of `task1` and `task2` from `GroupTask` in Launcher3. Follow-up CLs will
remove it from NexusLauncher and remove the fields altogether.
Bug: 388593902
Test: m
Flag: EXEMPT pure refactor with no behavior change.
Change-Id: I902c8135b3a0aae95acf25267b3bcbf286bd4e7d
Moves the sysUiStatusNavFlags from TaskContainer to TaskView to align it
with the new thumbnail architecture. This change allows for better
management and access of this information within the TaskView.
Bug: 390581380
Doc: go/launcher-overview-unified-taskviewmodel
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: GetSysUiStatusNavFlagsUseCaseTest
Test: GetTaskUseCaseTest
Test: TaskUiStateMapperTest
Test: TaskViewModelTest
Change-Id: Ic285e41620350dbd3e975b6223e6b7d4cd62d3c0
> Using ShapeDelegate for icon clipping
> Creating ShapeDelegate based on the current icon shape
> Defining different shape delegates for icon and folder
> Updating preview rendering to use dagger graph
> Adding tests for all icon shapes
Bug: 392145015
Test: atest IconShapesProviderTest
Flag: com.android.launcher3.enable_launcher_icon_shapes
Change-Id: Ic9f287e2a6fef2aad18ba224404de58a64da0bb3
Making the BubbleTextView.applyItem stateless so that it does not depend on the order of events
Bug: 390572144
Flag: EXEMPT refactor
Test: atest LauncherBindableItemsContainerTest
atest BubbleTextViewTest
Change-Id: Ib9c0ac6c330d6f4e08c3db5772d35787fa056b65
Move the CUJ to where the actual animation is taking place, so we can
target the correct surface/leash.
Bug: 374214290
Flag: NONE jank logging
Test: manual
Change-Id: Iccb30ff7ceee84b68428606575e1b8588eeb8aa9
This commit updates the mechanism for dimming task containers and thumbnails in the recents view. These changes simplify the dimming logic and improve the performance of the recents view. It reduces the usage of Flows to propagate progress and animation states through the views and view models.
The following changes were made:
- The `TaskThumbnailViewModel` no longer provides a dimming level.
- The `TaskViewModel` now provides a `tintAmount` flow that represents the dimming level for a task.
- The `TaskContainer` and `TaskThumbnailView` now use the `tintAmount` flow to update their dimming level.
- The `TaskContainer` now also updates the dimming level based on the menu open progress.
- The `TaskThumbnailView` now uses a `MultiPropertyFactory` to manage the dimming level, allowing it to be controlled by both the tint amount and the menu open progress.
Bug: 390581380
Doc: go/launcher-overview-unified-taskviewmodel
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: OverviewImageTest
Test: TaskViewModelTest
Test: TaskThumbnailViewModelImplTest
Test: TaskThumbnailViewScreenshotTest
Change-Id: I04d5dee534d56857b977d7f3ed6d4eda9f93be45
Add the `setOnClickListener` for the `mAddDesktopButton`,
it will call the `createDesktop` API inside SystemUiProxy
to create a new Desk inside the display that the button
resides in.
Flag: com.android.window.flags.enable_multiple_desktops_frontend
com.android.window.flags.enable_multiple_desktops_backend
Fix: 391917345
Test: Manual, make sure the callback function `createDesk` is called
after clicking the button. No real desk will be created
for now, as the backend hasn't been implemented yet.
Change-Id: I70417a1ce0963b9b3c109c3f3dffaab808212d23
- OverviewProxyService is a shared service to send information from SysUI to Launcher, only 1 method `onOverviewShown` is related to Overview, renaming this service to better reflect the nature to avoid bugs misrouted to Overview component.
Fix: 391563516
Test: presubmit
Flag: EXEMPT REFACTOR
Change-Id: I7104532daa1a4b6a7a39966f11063fbe9d15533e
- Sort external display tasks into front of Overview to create its own sections, all external display tasks are treated as large tile
- Fixed expected position of currentPage and runningTask respectively
- Fixed Desktop and fullscreen TaskView to launch with displayId from its first available task
Bug: 391311008
Flag: com.android.launcher3.enable_separate_external_display_tasks
Test: RecentTasksListTest
Change-Id: Ida0ccab00d3e4d74513812a11241dfc908bde991
The data returned from getAllTaskData can sometimes replace recently fetched thumbnail and icon data with a null value due to a race condition. This occurs when getAllTaskData results are returned after, or at the same time as, the thumbnail and icon data is fetched. Consequently, the information displayed to the user is incorrect and remains so until the user re-enters Overview or scrolls. To address this issue, we propose to re-request the task data for requests that have already been completed.
Change-Id: I99ee7f38abab3c283c9f82bce7b1d069575ddc6e
Fix: 392069389
Doc: go/launcher-overview-unified-taskviewmodel
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: OverviewImageTests
Test: TasksRepositoryTest