In flexible split ratios like 90:10 and 10:90, we hide the Overview icon of the smaller app completely. This resulted in a bug where the single remaining visible icon was positioned badly.
Fixed this by adding a check in updateIconPlacement() so that we can skip the two-icon positioning and center the visible icon alone. Also fixed the cases where split select is initiated on a split tile (from Taskbar). Now the correct icon should be shown and centered.
Fixes: 391865942
Flag: com.android.wm.shell.enable_flexible_two_app_split
Test: Single icon is positioned correctly in the middle. When split select is initiated, the right icon is shown and centered. When app chip menus are enabled, the (existing) correct behavior is not changed.
Change-Id: I79842222fc325a7661cbabbb54d277389a317504
This CL deletes TaskThumbnailViewModel and refactored ThumbnailPosition
to be propagated from the TaskView into TaskContainer.
Fix: 396147816
Doc: go/launcher-overview-unified-taskviewmodel
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: OverviewImageTest
Test: TaskViewModelTest
Test: GetThumbnailPositionUseCaseTest
Test: GetThumbnailUseCaseTest
Change-Id: I9cc68a8007835f0dc4846b9bf71377c81d19b27b
Fix: 348643341
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: Manual - open freeform task and see thumbnail shown during launch. Videos in b/348643341.
Change-Id: I7c9d070e6b39391301a9701f33adef57819e631d
This CL does the following:
- Adds new methods `isInDesktopMode()` and
`isInDesktopModeAndNotInOverview()` to `DesktopVisibilityController`.
- These two methods rely on the new multi-desks impl when the flags are
enabled.
- Makes the existing `areDesktopTasksVisible()` and
`areDesktopTasksVisibleAndNotInOverview()` private, and migrates all
the usages to the new methods.
- The new methods uses the old methods if the flags are disabled.
A companion NexusLauncher CL is at ag/31601363.
Bug: 394182435
Test: m
Flag: com.android.window.flags.enable_multiple_desktops_frontend
Flag: com.android.window.flags.enable_multiple_desktops_backend
Change-Id: I29ff38f984bfe2f68a120f84e1a75fa36b739258
And make DisplayController display id aware
Test: locally tested on Tangor
Flag: EXEMPT refactor
Bug: 392858637
Change-Id: I805cd7323c48a2988c95b9fda7f6cfe4c153860c
This prevents unaccounted for destructions which can lead to a leak in tests after these.
Bug: 395214062
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: TaplStartLauncherViaGestureTests.testStressPressHome
Change-Id: I5cf9214ea9344f7e9d79b61e87269fd6e2c05753
This reverts commit ce9ad064d6.
Reason for revert: <Potential culprit for b/395855288 - verifying through ABTD before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted>
Change-Id: I12d1eb66ae03e2638a503c103d0b1fa8a863b6b5
> Using callback patter for various change events instead of routing it
via TIS
Bug: 386288280
Test: Presubmit
Flag: EXEMPT refactor
Change-Id: I95577d6a1c17103cb947ef1200c1c22b68fd1d9c
- This change will not render KQS on connected display (CD) even with the flag ON as taskbars are not yet created for connected displays.
Bug: 382762871
Change-Id: Id59fb23630aaf0e74c35818f2a4ca56e5ef2e7bb
Flag: com.android.launcher3.enable_alt_tab_kqs_on_connected_displays
Test: manually built and run the CUJ
This commit updates how splash alpha is propagated to `TaskThumbnailView`. These changes reduces the usage of flows to handle animations to improve the performance by avoiding inherent overhead for sending messages between threads (go/sysui-flow-overhead).
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: I467da1a90b653fb108eb32534bc0dd2a67d95083
Add the focus outline to the button as well.
Same color, ripple effect as the ClearAllButton is applied.
Flag: com.android.window.flags.enable_multiple_desktops_frontend
com.android.window.flags.enable_multiple_desktops_backend
Bug:391875235
Test: TaskGridNavHelperTest
Change-Id: If93f86a1dce4df8ee6b1c50dfc44092dad2eafab
When setting the corner radius constantly in TransformParams sometimes
we set the radius after the end of the recents transition, causing
Desktop tasks to have non-rounded corners at the end of recents
transitions.
Bug: 378657004
Test: manual + TransformParamsTest
Flag: com.android.window.flags.enable_desktop_recents_transitions_corners_bugfix
Change-Id: I2ae919424602d655d0995b4dc1951d96c7dfd3d8
Let `TaskView` have a non-null `itemInfo` even it has no
tasks (no corresponding TaskContainer). Thus, we can still
go forward to log the necessary info of the `TaskView`
without any tasks.
Flag: EXEMPT refactor
Fix: 391918297
Test: TaskViewItemInfoTest
Change-Id: Idd08eb9846b1cd2043dd0087bc3e0078bb0b8247
The newly added NOT_KEYGUARD category enables hosts that shows all
widgets to let widgets opt out from being displayed in keyguard like
surfaces.
Bug: 394047125
Test: Unit tests and support app
Flag: EXEMPT bugfix
Change-Id: Ibaab0c8a052700b77289cd571bca33e3d96fa09f
Make Window Contexts also follow map pattern.
Flag: EXEMPT not adding new behavior
Bug: 391706879
Test: Manual
Change-Id: Ib0672e653b9dbfcb3597210ca244f110515cd4dc
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
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