Commit Graph

4694 Commits

Author SHA1 Message Date
Alex Chau b7dd7bf1e0 Merge "Recreate Launcher activity when blur enabled changes" into main 2025-05-15 06:07:58 -07:00
Treehugger Robot 42aaacc11f Merge "Do not expect a desktop task has action views" into main 2025-05-14 19:11:34 -07:00
Brian Isganitis 70e62fce31 Merge changes from topic "taskbar-wmproxy-module" into main
* changes:
  Filter out DEFAULT_DISPLAY from Taskbar unit tests.
  Refactor test dagger graph to stub PerDisplayRepository instances.
  Only use mockito-kotlin in SandboxApplication.
2025-05-14 14:17:21 -07:00
Alex Chau a6fa3db580 Recreate Launcher activity when blur enabled changes
- When battery saver changes, WallpaperThemeManager always recreate activity to reapply theme base on wallpaper color hint changes
- Battery saver change can also result in light/dark theme changes, for which WallpaperThemeManager also recreate activity to apply theme changes
- As a result, it'll be much simpler to recreate activity whenever isBlurEnabled changes
- Exposed recreateToUpdateTheme API from WallpaperThemeManager to achieved this
- Greatly simplified Overview styling to read from styles

Bug: 414789280
Test: manually toggling battery saver and light/dark theme and WallpaperThemeManagerTest
Flag: com.android.launcher3.enable_overview_background_wallpaper_blur
Change-Id: I90ad724867283fe3c62a9073a6e072491533f774
2025-05-14 17:45:04 +01:00
Sebastián Franco 2175b3fc2e Merge "Remove flags from aconfig where the code was already cleaned" into main 2025-05-14 09:16:56 -07:00
Sebastian Franco c6f6cb8cba Remove flags from aconfig where the code was already cleaned
Fix: 409610210
Test: BackupAndRestoreDBSelectionTest
Flag: EXEMPT refacotr
Change-Id: Ic0910c7a5c3124a47128b8b70bd2600374d9c157
2025-05-13 16:25:15 -06:00
Treehugger Robot 5b77862850 Merge "Only show the Desktop shortcut when appropriate" into main 2025-05-13 09:15:04 -07:00
Pierre Barbier de Reuille 8ac46d7e37 Only show the Desktop shortcut when appropriate
The Desktop shortcut should only be shown if the task is on a display
that can host a desktop.

Bug: 405181230
Test: atest DesktopSystemShortcutTest
Test: Manual
Flag: EXEMPT (bug fix)
Change-Id: I4639aade4c3640a3c60b85e08981cbe46974df38
2025-05-13 14:41:13 +01:00
Toshiki Kikuchi 67a58b0dbf Do not expect a desktop task has action views
This CL changes TAPL not to expect having action views for a desktop
task.

Flag: EXEMPT - fix test
Bug: 416355555
Test: atest WMShellSmokeTestsDesktopMode
Change-Id: I9218415a5ff0b5a43758adb8cb6d3f3ea6cfcc6b
2025-05-13 20:33:52 +09:00
Sunny Goyal fabe5b213d Merge "Adding support for diff in WorkspaceData, so that UI can apply incremental updates" into main 2025-05-12 18:27:05 -07:00
Brian Isganitis bcf2a81aa3 Only use mockito-kotlin in SandboxApplication.
Flag: TEST_ONLY
Bug: 415826632
Test: Related tests
Change-Id: I8a2704a8b55a0fd785577d6641665a34c1c9b650
2025-05-12 15:51:52 -04:00
Treehugger Robot 70e3cd4b67 Merge "Simplifying startup latency logger by moving everything to a single class" into main 2025-05-12 12:41:47 -07:00
Treehugger Robot de378a054f Merge "Fix FallbackRecentsTest with recents in window enabled" into main 2025-05-12 11:09:45 -07:00
Sunny Goyal e40896639b Simplifying startup latency logger by moving everything to a single class
> Moving some latency logic out of Launcher and into logger
> This makes it easier to move the logger completely out of Launcher

Bug: 390572144
Test: atest StartupLatencyLoggerTest
Flag: EXEMPT refactor

Change-Id: I6f6d99e7ed6c77610534c64461ec34200780225f
2025-05-12 09:39:06 -07:00
Schneider Victor-Tulias 82050b85fa Fix FallbackRecentsTest with recents in window enabled
- Added a workaround to listen to onNewIntent without RecentsActivity in TouchInteractionService, allowing us to clean up the recents window appropriately
- Updated LauncherInstrumentation.executeAndWaitForLauncherStop to expect a state change instead of activity stop in 3P + recents window

Flag: com.android.launcher3.enable_fallback_overview_in_window
Bug: 377678992
Test: pre/postsubmit
Change-Id: I3756e268626d778a13be1f2c68f9d3157602534e
2025-05-12 10:27:41 -04:00
Treehugger Robot 950b841d3d Merge "Specify display ID for taskbar availability checks" into main 2025-05-11 18:45:29 -07:00
Sunny Goyal 473bc9a06a Adding support for diff in WorkspaceData, so that UI can apply incremental updates
Bug: 390572144
Flag: com.android.launcher3.model_repository
Test: atest WorkspaceDataTest

Change-Id: I5fead4fdedfa2f6ac03ca106f7f0a5900af3760e
2025-05-09 15:26:09 -07:00
Alex Chau d95285cf7a Merge "Revert "Make Tapl check if actions view is enabled on overview"" into main 2025-05-09 13:06:15 -07:00
Coco Duan b97962a927 Merge "Show all default widgets in glanceable hub widget picker" into main 2025-05-09 11:48:32 -07:00
Vinay Joglekar 73abff782b Revert "Make Tapl check if actions view is enabled on overview"
This reverts commit e8628ac605.

Reason for revert: https://b.corp.google.com/issues/416645195

Bug: 391276638
Change-Id: I7b8f1829c752d958e9b640cd5db0f9aeb9bfa2f0
2025-05-09 10:20:10 -07:00
Uwais Ashraf 1ae9814920 Merge "Create separate worker threads for IO work and lighter BG work" into main 2025-05-09 09:45:40 -07:00
Treehugger Robot 0dddfe6aae Merge "Account for magnetic detach when dismissing tasks in TAPL tests." into main 2025-05-09 08:12:58 -07:00
Coco Duan cc55afe1fd Show all default widgets in glanceable hub widget picker
Update the predicate condition to correctly use the host's specified
filter for default widgets.

Fixes: b/415899961
Test: verify in hub widget picker on tablet
Test: atest WidgetPickerDataProviderTest
Flag: EXEMPT bugfix
Change-Id: I5a68d49dfda08059de880bca6964ac1620ffff36
2025-05-09 07:18:36 +00:00
Uwais Ashraf c1102750dd Create separate worker threads for IO work and lighter BG work
Documentation largely pulled from Kotlin coroutines docs.

Flag: com.android.launcher3.enable_coroutine_threading_improvements
Bug: 416206104
Test: Presubmits
Change-Id: I89b7222e31680619e311fa9e9986da5c12d80ed4
2025-05-09 06:49:48 +00:00
Fengjiang Li 85958d3cc7 Merge "[Memory Leak Test] Support toggle theme from LauncherInstrumentation" into main 2025-05-08 08:39:17 -07:00
Pat Manning 015f0005b9 Account for magnetic detach when dismissing tasks in TAPL tests.
When the dismiss length is short, like in fixed landscape, we must account for a minimum distance to ensure dismissal

Fix: 415773066
Test: TaplTestsQuickstep#testOverview
Flag: EXEMPT Bugfix.
Change-Id: I31a1a9e0bbd23145455df35937cf85ce8ac2c20f
2025-05-08 16:15:29 +01:00
Sunny Goyal 57a195b790 Making workspaceData immutable
BgDataModel holds a mutable handle of the data, which ensures that all edits go through this class and there is a single place to keep the repository updated

Bug: 390572144
Test: Updated existing model tests
Flag: EXEMPT refactor
Change-Id: I991b707dd21801d1abd00510f676549947285012
2025-05-07 13:21:21 -07:00
Shamali Patwa fce9328959 Merge "Log when a required attribute is missing in the AutoInstall layout." into main 2025-05-07 06:21:12 -07:00
Fengjiang Li 05f7f5596f [Memory Leak Test] Support toggle theme from LauncherInstrumentation
Bug: 394613048
Flag: NONE - test code
Test: NONE - this CL is infra for follow up test
Change-Id: Idfdcee20c14159509b2a9be005485b24a17dd372
2025-05-06 21:36:31 +00:00
Treehugger Robot 0b0dd2683a Merge "Reparse all grids for secondary displays for DP" into main 2025-05-06 13:03:00 -07:00
Sunny Goyal 53cc9a7806 Merge "Moving predicted items to ItemIdMap instead of extraItems" into main 2025-05-06 10:29:39 -07:00
Sebastián Franco 73dd3d3723 Merge "Making the Launcher Customizar available to Launcher3 and not only Nexus" into main 2025-05-06 08:56:51 -07:00
Ajinkya Chalke bb3571806e Reparse all grids for secondary displays for DP
- This is required to show a half width all apps sheet on external
  monitor connected to the phone. Without this the apps sheet covers the
  full width of the external monitor in projected mode.
- Create a new class to hold all the properties that need to be
  overridden. Set this class as part of DP buider.
- Override all props that are overridden for isTwoPanels.
- Update isTwoPanels to override using the new class in DP constructor.

Flag: com.android.window.flags.enable_taskbar_connected_displays
Bug: 414342881
Test: m
Change-Id: Ia035620c96c5a8912b99314014d4b19a125c7c5c
2025-05-06 12:32:53 +00:00
Sebastian Franco 3fd034c932 Making the Launcher Customizar available to Launcher3 and not only Nexus
Bug: 390496167
Bug: 411322054
Test: All Image tests
Flag: EXEMPT test only
Change-Id: I5e6cd806036bbc548ba9526efd619eec7ab9facd
2025-05-05 22:56:38 +00:00
Sunny Goyal aef6c7932e Moving predicted items to ItemIdMap instead of extraItems
> This allows the whole workspace model to be contained in itemIdMap instead of spread across multiple data containers
> Deprecating extraItems, all non-workspace data should use separate repositories
> Design: http://go/launchermodel-re-arch?#heading=h.5y8n4r164d5s

Bug: 390572144
Test: atest PredictionUpdateTaskTest
Flag: EXEMPT refactor
Change-Id: I886d0a8d5bbbf9f5c2054d4a2442bf03f9c4eab5
2025-05-05 15:52:37 -07:00
Sebastián Franco 24a321d835 Merge "Creating NexusLauncherE2ETests test suite, this cl only adds the Launcher3 part" into main 2025-05-05 14:30:04 -07:00
Shamali Patwa b7ee8bc7a0 Log when a required attribute is missing in the AutoInstall layout.
Current implementation fails but doesn't give error message on what caused failed.


Bug: 413665268
Test: Unit test
Flag: EXEMPT BUGFIX
Change-Id: Iedbd18bb37c0e4d1ac8b86d426d469ddc5fe163f
2025-05-05 12:39:38 -07:00
Sebastian Franco fc8537d5de Creating NexusLauncherE2ETests test suite, this cl only adds the Launcher3 part
The test don't run yet in presubmit, first I will have the NexusLauncherE2ETests
target ready and then I will add it to the presubmit.

Bug: 324261526
Flag: EXEMPT test only
Test: atest NexusLauncherE2ETests
Change-Id: I4daa204ec735456c481b0682ca518da381af7bb7
2025-05-05 18:53:08 +00:00
Treehugger Robot 21779a4192 Merge "Moving WorkspaceItemFactory to dagger as PredictedItemFactory so that it can be reused" into main 2025-05-02 11:46:48 -07:00
Jagrut Desai d95a630277 Merge "Tapl widget change" into main 2025-05-02 10:49:24 -07:00
Sunny Goyal 46b13eb184 Moving WorkspaceItemFactory to dagger as PredictedItemFactory so that it can be reused
Bug: 390572144
Flag: EXEMPTY refactor
Test: Presubmit
Change-Id: I41c5fea73452d7f4c1fd9980a89bcb7199eb19d7
2025-05-02 08:55:21 -07:00
Schneider Victor-tulias 9b468c5b24 Merge changes Id95b36da,I6a2225be into main
* changes:
  Fix recents window activity leak
  Update TAPL tests to dismiss all tasks safely
2025-05-02 07:38:30 -07:00
Toshiki Kikuchi d2c4d9322e Specify display ID for taskbar availability checks
This CL adds a display ID to the query to check the availability of
taskbar.
On an external display, we always show the taskbar regardless of the
launcher state, so the existing checks don't make sense on the external
display.

Flag: EXEMPT - test fix
Fix: 408631713
Fix: 414092022
Test: atest WMShellFlickerTestsDesktopMode:com.android.wm.shell.flicker.OpenAppWithExternalDisplayConnected
Change-Id: I0281a3cffd182e57ecf56e8fb5e4d28d6a4384c3
2025-05-02 20:48:59 +09:00
Jagrut Desai 4fde59e821 Tapl widget change
- scroll if the header is under gesture region and click in same scroll loop

Test: Local, Presubmit
Bug: 402828709
Flag: EXEMPT bugfix

Change-Id: I90a5cf2829591aafd18ef625244def2c4d9e3980
2025-05-01 16:15:25 -07:00
Schneider Victor-Tulias a56aa0d539 Update TAPL tests to dismiss all tasks safely
Flag: EXEMPT test refactor
Bug: 377678992
Test: pre/post-submit tests
Change-Id: I6a2225bea4f004bdc598e2c67ce26da9fd42f7a6
2025-05-01 16:04:32 -04:00
Schneider Victor-Tulias 42d6c08d41 Move ExtendedLongPressTimeoutRule implementation to shared sysui test library
Flag: EXEMPT test fix
Fixes: 396862825
Test: TaskbarExpandCollapse
Change-Id: I950ed4ede8db150234d843422982792f5b6bfd8e
2025-05-01 11:38:27 -07:00
Treehugger Robot 675282b181 Merge "Revert^2 "Restrict nav mode UI checks within primary display"" into main 2025-04-30 20:53:19 -07:00
Jagrut Desai f52ffc1232 Auto-Stashing Functionality for Pinned Taskbar
This cl includes :
- Refactor to remove unpinning/pinning in desktop mode with refactor of DisplayController, TaksbarPinningController, and its tests.
- Combined the auto stashing conditions under one method shouldAllowTaskbarToAutoStash() which takes in consideration isTransientTaskbar, isInDesktop, and Always Show Taskbar option is turned on/off in desktop mode.
- enabled taksbar divider popup support in desktop mode.
- Intorduced animation for pinned taksbar when autostadhing is enabled.
- Enable to onSwipeToUnstashTaskbar for TaskbarInputStashController for pinned taksbar in desktop mode.

Test: Presubmit, Unit, Manual
Bug: 381535785
Flag: com.android.window.flags.enable_desktop_windowing_mode
Change-Id: Ie5ecf3a3c72bf8dfadf2d0c908269305fe5bad0b
2025-04-30 10:39:58 -07:00
Mykola Podolian 5259038c6f Merge "Launcher TAPL test for dragging task bar icon to the bubble bar." into main 2025-04-30 09:29:47 -07:00
Toshiki Kikuchi d1a0e640cb Revert^2 "Restrict nav mode UI checks within primary display"
This reverts commit 9d7b814eec.

Reason for revert: Cache the taskbar primary display to reduce the number of binder calls and calm down Droidmonitor. Please check the difference between PS1 and PS2.

Bug: 414092022
Bug: 413244466
Bug: 408631713
Change-Id: I24138de2e2b9975fadcdf4a27402e06e212e4a19
2025-04-29 18:00:47 -07:00