Commit Graph

13345 Commits

Author SHA1 Message Date
Gustav Sennton
826cbf9c81 Merge "Pass empty bundle instead of null to startLaunchIntentTransition()" into main 2025-01-22 01:03:11 -08:00
Treehugger Robot
e3220bec92 Merge "Fix failing tests that are blocking OOM investigation" into main 2025-01-21 23:19:37 -08:00
Treehugger Robot
bd3228ef8e Merge "Update usages of icon shapes in Launcher" into main 2025-01-21 20:51:35 -08:00
Federico Baron
0a9a5dc466 Fix failing tests that are blocking OOM investigation
Flag: TEST_ONLY
Bug: 388258969
Test: InstallSessionTrackerTest InstallSessionHelperTest
Change-Id: I539c51c6a253ff0b64113e73764979c5e188bbbb
2025-01-21 19:44:50 -08:00
Charlie Anderson
ad8b2ec13b Update usages of icon shapes in Launcher
Bug: 387546051
Test: manual
Flag: com.android.launcher3.enable_launcher_icon_shapes
Change-Id: I33725259b3480f6e3a2976c227ccdffcfd7d6f83
2025-01-22 02:37:08 +00:00
Treehugger Robot
bfd58c8c00 Merge "Remove some usages of GroupTask.task1" into main 2025-01-21 17:04:01 -08:00
Treehugger Robot
e166210d7a Merge "Update translationX calculation of the AddDesktopButton" into main 2025-01-21 16:29:22 -08:00
minch
51ae37fd6a Update translationX calculation of the AddDesktopButton
Shift the `mAddDesktopButton` by the `largeTaskWidthAndSpacing`
if the focused task is inserted between the first TaskView
and the `mAddDesktopButton`.

Flag: com.android.window.flags.enable_multiple_desktops_frontend
      com.android.window.flags.enable_multiple_desktops_backend
Fix: 389209772
Test: Manual
Change-Id: Ideafe28496ccb85e1c682606be94c5ef5c4eafdb
2025-01-21 13:54:05 -08:00
Vinit Nayak
e7753eb796 Merge "Remove and cleanup AppPairs flag" into main 2025-01-21 12:20:55 -08:00
Gustav Sennton
4b0a5bf3e2 Pass empty bundle instead of null to startLaunchIntentTransition()
Bug: 391309665
Test: manual; launch app from AllApps tray when in Desktop Mode
Flag: com.android.window.flags.enable_desktop_windowing_mode
Change-Id: Ic31ed43f6f2de630b2d235028ebd9643a8a8cf49
2025-01-21 17:23:39 +00:00
Treehugger Robot
399ca5a6f4 Merge "Add kill switch for ViewPool.initPool." into main 2025-01-21 02:22:21 -08:00
Treehugger Robot
fd726c7ce8 Merge "Add logging for RDeps lifecycle and ViewPool.initPool to help debugging." into main 2025-01-21 02:20:38 -08:00
Uwais Ashraf
6322c00b70 Add kill switch for ViewPool.initPool.
This fixes an issue where, in fast E2E tests, the test can complete before initPool is completed. This results in the ViewPool continuing to create TaskViews and therefore TaskThumbnailViews after RecentsDeps is destroyed. Doing this causes a crash.

Stopping the ViewPool.initPool thread before destroying RecentsDeps fixes this.

Bug: 390156722
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: fast E2E tests in presubmit e.g. AllAppsImageTest
Change-Id: I0f8801ca75cda383df8ed96077cf1b7178771cb6
2025-01-21 08:06:23 +00:00
Uwais Ashraf
e545182223 Add logging for RDeps lifecycle and ViewPool.initPool to help debugging.
Bug: 390156722
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: none - logging only change
Change-Id: I657194e79023598c17ca8b1885f98457f3d773a9
2025-01-21 08:03:54 +00:00
Schneider Victor-Tulias
f8fa42be84 Fix test Dagger initialization deadlock in RecentsDisplayModel
WallpaperColorHints is a MainThreadInitializedObject that was causing a deadlock in RecentsDisplayModel initialization. Converting WallpaperColorHints to a dagger singleton.

Flag: com.android.launcher3.enable_fallback_overview_in_window
Bug: 377678992
Test: pre/post submit
Change-Id: Ib5b4eab27b4e28baf1208915fa7cf6dbd36bc1f5
2025-01-20 08:08:40 -08:00
Treehugger Robot
92a6a89f49 Merge "Provide reason for moving task to front." into main 2025-01-20 01:50:50 -08:00
Sergey Pinkevich
9b28d10a44 Merge "Add tracing for opening/unminimizing app in Desktop Windowing" into main 2025-01-20 01:08:59 -08:00
Winson Chung
8bcdfe2fe0 Merge "6b/ Group visible tasks into a single mixed grouped task" into main 2025-01-19 14:32:44 -08:00
Sihua Ma
009c0971c4 Merge "Invalidate after changing ring path translation" into main 2025-01-17 19:55:27 -08:00
Winson Chung
c166a6d95a 6b/ Group visible tasks into a single mixed grouped task
- Update to use mixed grouped tasks for visible tasks (if there are more
  than one).  This allows us to remove/reframe some existing assumptions
  about which task in the visible list is what the user is considering
  the base task in Overview

Bug: 346588978
Flag: com.android.wm.shell.enable_shell_top_task_tracking
Test: atest WMShellUnitTests
Change-Id: I283a342e623e7f7a4c5a4440c97867cbeec47f18
2025-01-17 15:44:10 -08:00
Jagrut Desai
6971afcd0b Merge "Fix Taskbar icon Accessibilty Focus on hovering" into main 2025-01-17 13:17:41 -08:00
Sihua Ma
d8f421098c Invalidate after changing ring path translation
Additionally set ring path translation only when there is a change in
the icon size.
Also adding logs to print measured width and normalized icon size.

Test: Manual
Bug: 387844520
Flag: EXEMPT bug fix
Change-Id: I9fee51f4dc096d8c03076bd0787ec25b5e358edc
2025-01-17 21:01:59 +00:00
Liran Binyamin
e96bd71f50 Merge "Pass the user id for intent app bubbles" into main 2025-01-17 12:29:50 -08:00
Treehugger Robot
6b6020da2d Merge "Add TaskViewModel to fetch and map Tasks data" into main 2025-01-17 11:00:32 -08:00
Jagrut Desai
625b78ae13 Fix Taskbar icon Accessibilty Focus on hovering
The problem: ArrowTipView was TypeAccessible hence taking a focus away from taksbar icon. The hover event was getting consumer by onHover of the listener and not getting passed to view. Upon passing the hover event we see icon scale up. We don't want both icon to scale up and show
tootip when hovering.

The Solution: pass motion event to onHoverEvent for icon view and mark ArrowTipView to be not included as Accessible View. For disabling hove
ring for taskbar icon we introduced new field to track if hovering is enabled for display type for that icon.

Test: Manual, Presubmit
Bug: 284081291
Flag: EXEMPT bugfix
Change-Id: Ie02d17856b26f82887fd178ccf0a7351416cc43e
2025-01-17 09:57:38 -08:00
Ahmed Fakhry
26a43abbe2 Remove some usages of GroupTask.task1
See go/refactor-group-task for details. This is another incremental
change towards deprecating `GroupTask.task1`.

Bug: 388593902
Test: m
Flag: EXEMPT pure refactor with no behavior change.
Change-Id: Ib9b38268374277f485c6856a012b5b7f02e37055
2025-01-17 17:47:26 +00:00
Jordan Silva
be4ceb26c9 Add TaskViewModel to fetch and map Tasks data
This commit introduces a new `TaskViewModel` which retrieves task data using `GetTaskUseCase` and maps them to `TaskTileUiState`.
It also adds new files `TaskTileUiState` and `GetTaskUseCase` with their corresponding models.
- `TaskTileUiState` is used to represent the UI state of a single overview tile.
- Introduced `TaskData` sealed interface to encapsulate different states of a task.
- `GetTaskUseCase` is used to fetch a single task given an id from the repository.
- `TaskViewModel` fetches and maps tasks to `TaskUiState`.
- Added unit tests for `TaskViewModel` to ensure the correct data is being emitted.
- Added unit tests for `GetTaskUseCaseTest` for testing task retrieval logic.
- `TaskModel` is the new data model representing the data fetched by the repository.

Fix: 390578940
Fix: 390578937
Bug: 388486032
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: GetTaskUseCaseTest
Test: TaskViewModelTest
Change-Id: Ibf728eccc31270c0d0d8668a503e26d6d0e88f59
2025-01-17 16:44:56 +00:00
Gustav Sennton
5813304d96 Provide reason for moving task to front.
In WM Shell we want to be able to log the reason a task was unminimized,
with this CL we pass a reason from Launcher to WM Shell when bringing
the task to front.

Test: manual
Bug: 357985747
Flag: com.android.window.flags.enable_desktop_windowing_mode
Change-Id: I4a68f4d0d7eddb483a1473843b4cd91bd783d92f
2025-01-17 15:20:10 +00:00
Merissa Mitchell
90125d0f3b Merge "Pass displayId to startSwipePipToHome" into main 2025-01-16 14:32:02 -08:00
Mady Mellor
f7f4c3c7ac Merge "Update code guarded by bubble anything flag to use the helper method" into main 2025-01-16 13:36:38 -08:00
Merissa Mitchell
ac97f98e7c Pass displayId to startSwipePipToHome
so that PiP can calculate bounds for the correct display in multidisplay
case.

Bug: 390042201
Test: Manual and Presubmits
Flag: com.android.window.flags.enable_connected_displays_pip
Change-Id: I1dbecc36d287a9b64e614cf9c4621aef3c57b284
2025-01-16 11:37:48 -08:00
Vinit Nayak
3456fcbe03 Remove and cleanup AppPairs flag
Test: Launcher compiles and runs
Bug: 274835596
Flag: EXEMPT cleanup
Change-Id: Iab8f17d444753df303ed1a09d6547917545e66f5
2025-01-16 14:02:55 -05:00
Treehugger Robot
31522e8797 Merge "Add logging for TasksRepository to help with debugging." into main 2025-01-16 10:57:03 -08:00
Sukesh Ram
7ad500b716 Merge "[CD Taskbar] Refactor to Listen to Display Ready/Removed Signals" into main 2025-01-16 10:03:34 -08:00
Uwais Ashraf
477275ff97 Add logging for TasksRepository to help with debugging.
Bug: 390325294
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: none - logging
Change-Id: I8f771e06851261e027caf178a08e6d47b5af7cba
2025-01-16 16:56:40 +00:00
Sergey Pinkevich
00fe697e92 Add tracing for opening/unminimizing app in Desktop Windowing
Bug: 370682144, 351763156, 339582783
Test: record perfetto trace while performing opening apps
Flag: NONE new perfetto instrumentation

Change-Id: I06e7bff21cf5dfb5b6601aded07bbb7d6f90225f
2025-01-16 14:11:47 +00:00
Treehugger Robot
94ebc5400d Merge "Add SysUiProxy method to start transition on desktop task launch." into main 2025-01-16 01:06:22 -08:00
Vania Desmonda
5d50fbb6c9 Add SysUiProxy method to start transition on desktop task launch.
This forces the task to correctly start the TRANSIT_OPEN transiiton in
Desktop mode when launching an intent from the taskbar and prevent it
from opening in full screen.

Fixes: 361366053
Test: manual test
Flag: EXEMPT bugfix
Change-Id: I6d59705aa55745c3425266dacbb012dd4e2b1b03
2025-01-15 18:54:04 -08:00
Liran Binyamin
96dc022401 Pass the user id for intent app bubbles
When creating a new app bubble by long pressing on launcher icons,
pass the user id to wm shell so the bubble is created for the correct
user context.

Bug: 361173339
Flag: com.android.wm.shell.enable_bubble_anything
Test: atest BubbleAnythingTest
Test: manual
       - create work profile
       - long press on a work profile app icon -> Bubble
       - observe new bubble opens in the work profile context
Change-Id: Idb980bc6f74e85e85a9777f0d39e772b84feeb9c
2025-01-15 21:35:54 -05:00
Mady Mellor
7d97e96550 Update code guarded by bubble anything flag to use the helper method
Also adds a dependency on shared shell lib so launcher can use this.

Flag: com.android.wm.shell.enable_create_any_bubble
Test: manual - enable the create flag and check that bubble anything still
               works; same with bubble anything flag
Bug: 389737359
Change-Id: I18322512c9d9883ee5cf473b72df565adea85879
2025-01-15 17:04:10 -08:00
Treehugger Robot
508112dc94 Merge "[Leak] Clear all of TaskbarView's FolderIcons' listeners upon activity onDestroy" into main 2025-01-15 16:54:23 -08:00
Treehugger Robot
d255cbdfd7 Merge "Initial implementation of the AddDesktopButton" into main 2025-01-15 15:40:07 -08:00
Sukesh Ram
bd82d83358 [CD Taskbar] Refactor to Listen to Display Ready/Removed Signals
Allow for TaskbarManager to listen to the TaskbarDelegate signals for the addition and removal of displays in extended mode.

Flag: EXEMPT not adding new behavior
Bug: 382351718
Test: Manual
Change-Id: I1d78400966755ed462d3d92d9356e40fa61ada32
2025-01-15 23:28:10 +00:00
Fengjiang Li
90e83779f2 [Leak] Clear all of TaskbarView's FolderIcons' listeners upon activity onDestroy
Fix: 390200556
Test: manual
Flag: NONE - released code
Change-Id: I4f6fd2fb0b263169bd5e59e90b321cedfc22f4de
2025-01-15 14:58:14 -08:00
Saumya Prakash
26bceb527e Merge "Avoid per task app icons in Taskbar for desktop mode" into main 2025-01-15 14:18:38 -08:00
minch
fb2e514de8 Initial implementation of the AddDesktopButton
Add the AddDesktopButton to the view hierarchy behind the flags.

Flag: com.android.window.flags.enable_multiple_desktops_frontend
      com.android.window.flags.enable_multiple_desktops_backend
Bug: 382057498
Test: Manual
Change-Id: I5748d8c18d8f5204fa1fb0717c4a8098bfde1537
2025-01-15 18:42:18 +00:00
Pat Manning
caa9404aa0 Merge "Start collecting task dismiss CUJ on dismiss animation start." into main 2025-01-15 09:57:01 -08:00
Behnam Heydarshahi
2d4fff55a6 Merge "Add onUnbind from OverviewProxyService, and destroy taskbar" into main 2025-01-15 08:28:03 -08:00
Pat Manning
75769b7696 Start collecting task dismiss CUJ on dismiss animation start.
Bug: 385698952
Bug: 389653070
Test: OverviewTaskDismiss#dismissTask (Functional & microbenchmark test)
Flag: EXEMPT adding CUJ for existing recents
Change-Id: I8f68d05d2b701291e17ece5b38d2267adcbabae4
2025-01-15 13:30:53 +00:00
Gustav Sennton
777b5575b2 Reland "Override desktop tasks corner radius during recents tr..."
Set the corner radius of desktop task surfaces to 0 during recents
transitions so that corner radius doesn't interfere with the surface
bounds and corner radius applied to the RemoteAnimationTarget leashes.

The issue in b/388979758 (causing the original CL to be reverted) was fixed by changes to OtherActivityInputConsumer - in the original CL the callback `FinishImmediatelyHandler#onRecentsAnimationStart()` in that class was never called because it wasn't annotated `@Override` and its base method had a default implementation.

Bug: 378657004
Change-Id: I40444e7e9367a6833171a2e413b51d0d3f974318
Test: manual
Flag: com.android.window.flags.enable_desktop_recents_transitions_corners_bugfix
2025-01-15 04:35:38 -08:00