Commit Graph

19494 Commits

Author SHA1 Message Date
Sunny Goyal e9355c622d Removing unnecessary ActivityContextDelegate
Bug: 393703968
Flag: EXEMPT refactor
Test: Presubmit
Change-Id: Ib95b26de000a2fe8204fdbc46c8a9da4f65c7eab
2025-02-26 10:52:10 -08:00
Will Osborn 8bc3268ec4 Merge "DisplayController refactoring for multiple displays" into main 2025-02-25 08:16:52 -08:00
Alex Chau 45c1192fdf Merge "Handle AddDesktopButton's visibility in different launcher states" into main 2025-02-25 03:39:39 -08:00
Will Osborn c47d03f1f9 DisplayController refactoring for multiple displays
Test: locally tested on Tangor
Flag: com.android.launcher3.enable_overview_on_connected_displays
Bug: 392858637
Change-Id: I18c196c977b3731aa09d2cc93ab6341b8f1636c6
2025-02-25 11:29:02 +00:00
Sukesh Ram 3242782931 Merge "[CD Taskbar] Remove legacy all apps button (secondary display)" into main 2025-02-24 23:38:34 -08:00
Treehugger Robot 1799b85186 Merge "Fix grid previewing so it matches the applied layout" into main 2025-02-24 17:00:15 -08:00
Jagrut Desai 269fb15e97 Merge "Desktop Mode Taskbar Recreate Animation" into main 2025-02-24 16:00:48 -08:00
Sukesh Ram dc0a634362 [CD Taskbar] Remove legacy all apps button (secondary display)
Remove legacy all apps UI from secondary display. This is a quick temporary fix just to remove the legacy all apps button for aesthetic purposes without breaking secondary display launcher. The button will appear invisible. A more robust removal will be done when secondary launcher is eradicated completely.

Bug: 398196983
Test: m
Flag: com.android.window.flags.enable_taskbar_connected_displays
Change-Id: Ic5bc44efd479f7298e346d9d45fbb6f24dfad5d3
2025-02-24 15:26:56 -08:00
minch b10cedd21c Handle AddDesktopButton's visibility in different launcher states
Introduce [ADD_DESK_BUTTON] in LauncherState and change the button's
visibility across different launcher states. E.g., the button
shouldn't be visible in the quick switch.

Bug: 389209338
Flag: com.android.window.flags.enable_multiple_desktops_frontend
Flag: com.android.window.flags.enable_multiple_desktops_backend
Test: 1. Swipe up from home, the button shown util in overview.
      2. Swipe up from the fullscreen app, the button is invisible
         util release the finger.
      3. The button is invisible in quick switch.
      4. All the above tested with NexusLauncher and Nova launcher,
         which is a 3rd launcher.
      5. Tested with gesture and 3-finger swipe on the touchpad.
      6. Both the ClearAllButton and AddDesktopButton are not
         visibile when in select mode.
Change-Id: I54e11d4d03401be68b5b67a6f591edd737c9ea30
2025-02-24 21:33:36 +00:00
Jagrut Desai cf05d3ec0e Merge "Fix Taskbar Edu accessibility anmimation" into main 2025-02-24 13:27:53 -08:00
Jagrut Desai 8b2e5eff9b Desktop Mode Taskbar Recreate Animation
This Cl includes
       - addition of entry/exit callback methods in DesktopVisibilityController.
       - taskbar manager now listens to desktop mode changes.
       - TaskbarBackrgroundRedererer can now individually animation backgrounds for transient and persistent taskbars
       - new channel for taskbar icon alpha added to TaskbarViewController
       - new animated float to handle background alpha while we are recreating taskbar with animation.

Solution:

we use the callabck we get from DekstopVisibilty for entry/exit to first change logic of when we are considered inDesktopMode. Upon entry/exit we notify display controller for info change.
we also at notify taskbar manager who is now a listener to the desktop mode change and start the recreate process. TaskbarManager first animates existing taskbar out of user view and then follows the original recreate flow.

Test: Presubmit
Bug: 343882478
Flag: com.android.window.flags.enable_desktop_windowing_mode
Change-Id: Ib827564cacd194f499e7d9b1965e2bb13e3548ab
2025-02-24 11:59:53 -08:00
Federico Baron 45fe4733fb Fix grid previewing so it matches the applied layout
Bug: 392019771
Flag: com.android.systemui.shared.new_customization_picker_ui
Test: tested manually
Change-Id: If0fdd130d4278222b0b6ec2787aa7d6d56fc4b2f
2025-02-24 11:54:26 -08:00
Sunny Goyal b1fab90e26 Enforcing grid customization permission in manifest instead of code
Bug: 389173244
Test: Updated tests
Flag: EXEMPT manifest change
Change-Id: I0fee57f935156da6b2b5a612259db2c4b3605846
2025-02-24 10:40:43 -08:00
Charlie Anderson d4d526c3b5 Merge "Simplify some package update logic around restoring archived/unarchived shortcuts" into main 2025-02-24 09:58:35 -08:00
Treehugger Robot 332c329276 Merge "Fixing model thread priority getting set to background while loading" into main 2025-02-24 09:40:53 -08:00
Jagrut Desai e49214080f Fix Taskbar Edu accessibility anmimation
This cl include: Allows user to click on lottie animation views to play and pause animations. If user have choosen to remove animations we will honor it and not play the animation from begaining.

Test: Manual, Presubmit
Bug: 378980835
Flag: EXEMPT bugfix
Change-Id: Ieaaf771bc307837f042f6e59d8f02fefb2e8286a
2025-02-24 09:36:22 -08:00
Treehugger Robot 467ab548d9 Merge "Initialize shape with PreviewContext init and remove nullability" into main 2025-02-21 17:17:26 -08:00
Sunny Goyal 362fa9e96a Fixing model thread priority getting set to background while loading
Bug: 396250724
Flag: EXEMPT bugfix
Test: Manual
Change-Id: I587d6c64f75a4fd2b68c4e98c3b1cab30864879c
2025-02-21 16:02:03 -08:00
Jeremy Sim 96da8fc3ec Merge "Refactor SplitBounds to always use creation-time measurements" into main 2025-02-21 15:26:02 -08:00
Charlie Anderson 9e50a01e92 Simplify some package update logic around restoring archived/unarchived shortcuts
- also avoids race condition where unarchived shortcut is not pinned in shortcut service after restore, and then marked as broken

Bug: 375414891
Test: Launcher B&R w/ archiving
Flag: com.android.launcher3.restore_archived_shortcuts
Change-Id: I2b5331117be93d66e4acbded49b65cd5ce9f8f83
2025-02-21 17:04:12 -05:00
Sunny Goyal 7a38a45ca3 Merge "Moving LooperExecutor to kotlin" into main 2025-02-21 14:02:16 -08:00
Stefan Andonian e14ca0d14c Merge "[Memory Leak] Fix leak of LauncherAppWidgetHostView via StateManager.StateListener" into main 2025-02-21 13:02:08 -08:00
Charlie Anderson de15672e6f Initialize shape with PreviewContext init and remove nullability
Bug: 372887760
Bug: 348664593
Flag: com.android.launcher3.enable_launcher_icon_shapes
Test: previewing shapes with flag on/off
Change-Id: I4d7278c54a0d69e38142d31dd7a9605a74db3348
2025-02-21 20:23:49 +00:00
Charlie Anderson aa0f606b9c Merge "Add more checks around archived shortcut restore" into main 2025-02-21 10:46:57 -08:00
Sunny Goyal 7629bc4dcd Merge "Converting LauncherAppState to Dagger" into main 2025-02-21 10:06:01 -08:00
Fengjiang Li e0553d7da3 [Memory Leak] Fix leak of LauncherAppWidgetHostView via StateManager.StateListener
Rather than register a StateListener for each LauncherAppWidgetHostView, just register one StateListener which, upon launcher state is changed to NORMAL, iterate over all child views under Workspace and perform a11y action if view tag is set.

Fix: 397978703
Test: presubmit
Flag: EXEMPT bug fix
Change-Id: I044d012b74eaa5356196c5503318fa8ab389ec46
2025-02-20 22:05:02 -08:00
Sunny Goyal c9f697aeb5 Converting LauncherAppState to Dagger
Bug: 361850561
Test: Presubmit
Flag: EXEMPT dagger

Change-Id: I336a233d2703c23a7e9065474bde471786886144
2025-02-20 19:13:49 -08:00
Sunny Goyal 4742d62285 Moving LooperExecutor to kotlin
> Will improve priority changes in a followup cl

Bug: 396250724
Flag: EXEMPT refactor
Test: Presubmit
Change-Id: Ic9646e9b1b8faf80996f6e63159e8abbf00fc0b7
2025-02-20 18:58:33 -08:00
Shamali Patwa e532fc86b4 Merge "Update widgetsModel to return pickable vs all widgets separately." into main 2025-02-20 17:42:32 -08:00
Treehugger Robot aea16bd093 Merge "Expose icon scale to properly shape themed icons" into main 2025-02-20 17:30:46 -08:00
Treehugger Robot 6787617f73 Merge "Log LPNH abandon times at least 200ms." into main 2025-02-20 17:16:15 -08:00
Charlie Anderson cf37c5ba7e Add more checks around archived shortcut restore
Bug: 375414891
Test: Launcher B&R and WorkspaceItemProcessorTest
Flag: com.android.launcher3.restore_archived_shortcuts

Change-Id: I58332dcee9563bb6c87aeff7255c8a9e2a8ca2c7
2025-02-20 19:15:41 -05:00
Andy Wickham 8fabc6d111 Log LPNH abandon times at least 200ms.
Restricting to 200ms+ to reduce the spamminess of these logs.

The idea is to log the latency of LPNH abandons to see the effect
of prewarming at x ms.

Bug: 397484410
Flag: EXEMPT logging
Test: Manual and updated NavHandleLongPressInputConsumerTest.
Change-Id: I93f94ed0757508b68fcb48d61bdd194564dcc573
2025-02-20 22:14:37 +00:00
Shamali P f6efa25a49 Update widgetsModel to return pickable vs all widgets separately.
Earlier wallpaper preview was reading widgets that were eligible for
displaying in picker, which means widgets that are marked as hidden in
picker wouldn't show up in wallpaper preview.

This fix updates widgets model to maintain map of all widgets (instead of just pickable widgets like before), so that the existing `getWidgetsByComponentKey` function used by wallpaper preview can see all widgets. And, updates picker specific methods to use separate functions (suffixed `forPicker` that filter out picker ineligible widgets when read by picker code).

Bug: 385695615
Test: WidgetsModelTest, WidgetsPredictionUpdateTaskTest and demo
Flag: EXEMPT BUGFIX
Change-Id: I59efe38be0ce1f8a956ba4be42fb6e8b48b5d323
2025-02-20 14:13:16 -08:00
Treehugger Robot 54a002db43 Merge "Moving grid customization provider to Dagger" into main 2025-02-20 13:07:33 -08:00
Charlie Anderson c0fda71c36 Expose icon scale to properly shape themed icons
Bug: 394902299
Test: tested with themed/forced-themed icons on and off
Flag: com.android.launcher3.enable_launcher_icon_shapes
Change-Id: I5b189b8dcfefe195e42b8cfad1bda9e18fd80a29
2025-02-20 21:06:28 +00:00
Jeremy Sim b392f61ced Refactor SplitBounds to always use creation-time measurements
In flexible split ratios like 90:10 and 10:90, we hide the Overview icon of the smaller app completely (ag/30949010). However, there was an unintentional side effect where one of the icons would disappear when rotating the display.

This happened (basically) because SplitBounds is not recalculated on device rotation, so fields like leftTaskPercent and topTaskPercent should not be used directly when the rotation state is not known. I added an API to SplitBounds that hopefully makes it harder to write bugs like this in the future.

Fixes: 395783367
Flag: com.android.wm.shell.enable_flexible_two_app_split
Test: Icons do not disappear on rotation. When app chip menus are enabled, the (existing) correct behavior is not changed.
Change-Id: I2c1b38f4bd9a76dfb127b7bbf230897d747d3c49
2025-02-20 12:45:33 -08:00
Sunny Goyal 3fd385c1cd Moving grid customization provider to Dagger
Bug: 361850561
Test: Presubmit
Flag: EXEMPT dagger

Change-Id: I0ebc2a614b9448e5de97d3dda43d98b951989689
2025-02-20 10:16:56 -08:00
Treehugger Robot ca902dc757 Merge "Don't modify invariant device profile" into main 2025-02-20 09:59:54 -08:00
Charlie Anderson b982bfede0 Merge "Removing Sunny shape option" into main 2025-02-20 06:40:12 -08:00
Treehugger Robot cad0c7f8c6 Merge "Make can create new desks a global state" into main 2025-02-19 18:13:42 -08:00
Treehugger Robot 1444e05a5f Merge "Fix performance regressions with handheld apps panel." into main 2025-02-19 17:32:20 -08:00
Treehugger Robot f0dd54fb83 Merge "Exclude dynamic shortcuts from being force themed" into main 2025-02-19 14:46:39 -08:00
minch 92cb978575 Make can create new desks a global state
Bug: 389209338
Test: m
Flag: EXEMPT new APIs update without impl yet.
Change-Id: Id7ebfbc1d03d823932515df42fa51e22f44f8116
2025-02-19 21:24:49 +00:00
Federico Baron c07bf539ee Don't modify invariant device profile
We flag guard the code that modifies IDP as that's not needed with one
grid, and we don't want to modify idp outside of it

Bug: 332974074
Flag: com.android.launcher3.one_grid_specs
Test: verified manually with b&r
Change-Id: Ica2ffa79638fa693cde421adb13feebb0d09cbc4
2025-02-19 19:20:03 +00:00
Sunny Goyal 91547eb4d2 Merge "Simplifying icon normalization for adaptive icons" into main 2025-02-19 10:36:30 -08:00
Sihua Ma 097efdc8ac Exclude dynamic shortcuts from being force themed
Test: Manual
Bug: 397501448
Flag: com.android.launcher3.force_monochrome_app_icons
Change-Id: Iff1010e268c99ce192e1445ec124229c84420b23
2025-02-19 18:16:10 +00:00
Charlie Anderson 96fa7a4c79 Removing Sunny shape option
Bug: 397683324
Test: selecting shapes, and presubmit
Flag: com.android.launcher3.enable_launcher_icon_shapes
Change-Id: I3d9ea0096674c07a860ba3d7dcc8074c4342a299
2025-02-19 17:46:27 +00:00
Charlie Anderson 69c7dc4348 Merge "Use selected shape during app launch animation" into main 2025-02-19 09:37:41 -08:00
Treehugger Robot 0436794339 Merge "Fix work badge theme issue when dropping icons" into main 2025-02-19 03:40:59 -08:00