Commit Graph

6405 Commits

Author SHA1 Message Date
Jeremy Sim
96da8fc3ec Merge "Refactor SplitBounds to always use creation-time measurements" into main 2025-02-21 15:26:02 -08:00
Sunny Goyal
7629bc4dcd Merge "Converting LauncherAppState to Dagger" into main 2025-02-21 10:06:01 -08:00
Daniel Andersson
050e6eebb0 Merge "desktop-exploded-view: Explode desktops when swiping up from home" into main 2025-02-21 09:50:39 -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
Saumya Prakash
4e0e72e013 Merge "Add developer option to launch gesture nav tutorial" into main 2025-02-20 18:42:36 -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
48fe315833 Merge "Update usage of flags to dev options." into main 2025-02-20 17:29:38 -08:00
Treehugger Robot
ca88e0cc04 Merge "Log minimize CUJ in MinimizeAnimator" into main 2025-02-20 14:52:48 -08:00
Daniel Andersson
1422e89e92 desktop-exploded-view: Explode desktops when swiping up from home
This change makes it so that the explode animation only happens when
swiping up from the desk. In other cases, the desk is immediately set
to its exploded state.

The desk explode progress is now exposed as a FloatProperty in
RecentsViewUtils.

Flag: com.android.launcher3.enable_desktop_exploded_view
Test: Manual
Bug: 367353392
Change-Id: I5adec7db1fdc933860dce7fcca0a47cec0672ee7
2025-02-20 14:30:47 -08: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
Saumya Prakash
57794d1025 Add developer option to launch gesture nav tutorial
This change allows you to start the full, continuous gesture navigation
tutorial by tapping the "Launch Full Gesture Tutorial" option in
launcher developer settings.

Fix: 398018882
Test: Go to developer settings and launch tutorial. It should be
continuous and automatically move on to each gesture.
Flag: EXEMPT bugfix

Change-Id: I5da176e13b4403e1748b9ccba74b24145dafed2c
2025-02-20 21:54:25 +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
Vania Desmonda
b8db0313bc Update usage of flags to dev options.
Bug: 361366053
Bug: 345296916
Bug: 381866902
Flag: EXEMPT refactoring flag
Test: presubmits
Change-Id: I7653ca4e7a2476402cfccbbc72194b14b10cb93f
2025-02-20 18:27:43 +00:00
Sergey Pinkevich
e97f4932fd Merge "Add logs for DesktopAppLaunchTransition when animation starts/no launch change" into main 2025-02-20 02:20:28 -08:00
Gustav Sennton
f275bd9bcc Log minimize CUJ in MinimizeAnimator
Flag: NONE refactor
Test: manual
Bug: 374206096

Change-Id: Id8ab050e5f2f519cccc460b690c2e8edd7c20561
2025-02-20 08:30:44 +00:00
Treehugger Robot
233e7e2a6f Merge "[Memory Leak] Attempt to fix leak caused by onEndCallback created for open app animation not running" into main 2025-02-20 00:04:03 -08:00
Treehugger Robot
cad0c7f8c6 Merge "Make can create new desks a global state" into main 2025-02-19 18:13:42 -08:00
Fengjiang Li
c926dd5be2 [Memory Leak] Attempt to fix leak caused by onEndCallback created for open app animation not running
Fix: 397690719
Flag: NONE - release code
Test: presubmit
Change-Id: Icf36b744f21f50b7182c81437ef29b5886c2d43d
2025-02-19 18:00:41 -08:00
Treehugger Robot
1444e05a5f Merge "Fix performance regressions with handheld apps panel." into main 2025-02-19 17:32:20 -08:00
Eric Lok
8504c427c7 Merge "Mark tasks on launcher as perceptible" into main 2025-02-19 15:55:22 -08:00
Cosmin Băieș
4af51a46f6 Merge "Use FLAG_ALT_FOCUSABLE_IM in taskbar when needed" into main 2025-02-19 15:08:48 -08:00
Treehugger Robot
f0dd54fb83 Merge "Exclude dynamic shortcuts from being force themed" into main 2025-02-19 14:46:39 -08:00
Treehugger Robot
af35666c20 Merge "[CD Taskbar] Create new taskbars only when we have system decor" into main 2025-02-19 14:39:03 -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
Sukesh Ram
1b4d00e250 [CD Taskbar] Create new taskbars only when we have system decor
Only allow for new taskbars  when wm.shouldShowSystemDecors=true.

Bug: 397250946
Change-Id: I29577224e763ca44a2b1878691dce3e3aa1534ff
Test: m
Flag: com.android.window.flags.enable_taskbar_connected_displays
2025-02-19 11:25:27 -08: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
Lingyu Feng
f9ceda3e3b Merge "Remove taskbar when display mirroring starts" into main 2025-02-19 05:31:51 -08:00
Lingyu Feng
0392cb8a7d Remove taskbar when display mirroring starts
Bug: 397095099
Change-Id: I0d21650af45aec084c0b48b50e22e8072d3f9192
Test: adb shell settings put secure mirror_built_in_display 1
Flag: com.android.server.display.feature.flags.enable_display_content_mode_management
2025-02-18 22:37:44 -08:00
Treehugger Robot
f1397811e0 Merge "Do not crash DesktopVisibilityController on unknown displays" into main 2025-02-18 17:02:00 -08:00
Mykola Podolian
a593d2a7da Merge changes I6fe1139e,I581dddf2 into main
* changes:
  Handle new bubble notification while drag is in progress.
  Made the bubble bar react to drag events from the Shell.
2025-02-18 14:03:17 -08:00
Ahmed Fakhry
41111bd8f6 Do not crash DesktopVisibilityController on unknown displays
Instead of requiring that a valid display ID is given to
the APIs in `DesktopVisibilityController` and crashing the Launcher,
this CL lets the code handle invalid IDs gracefully, and adds a test
that fails without the fix.

Bug: 392986431
Test: atest NexusLauncherTests:com.android.launcher3.statehandlers.DesktopVisibilityControllerTest
Flag: com.android.window.flags.enable_multiple_desktops_frontend
Flag: com.android.window.flags.enable_multiple_desktops_backend
Change-Id: Id1bc7876ce654b96191c85089557b9279963acd8
2025-02-18 20:54:19 +00:00
mpodolian
39c4bf2448 Handle new bubble notification while drag is in progress.
Handle new bubble notification while drag is in progress. Updated logic
to react to new bubble notifications arriving during drag operations
before a drop occurs.

Bug: 388894910
Flag: com.android.wm.shell.enable_create_any_bubble
Test: BubbleBarViewAnimatorTest
Test: Manual. Go to some application and have no bubbles. Start
dragging the taskbar icon over the bubble bar drop zone. Trigger new
bubble with the bubbles test application. Observe drop target is
hidden and new bubble is animated in, followed by flyout. When flyout
disappears, bubble bar remains on the screen. Release icon over the
bubble bar. Observe newly added application bubble is expanded. Repeat
same test, but drag the taskbar icon to the opposite side.
Test: Manual. Go to some application, but have bubbles. Start
dragging the taskbar icon over the bubble bar drop zone. Trigger new
bubble with the bubbles test application. Observe new bubble is added
and the flyout is shown. When flyout disappears, bubble bar remains on
the screen. Release icon over the bubble bar. Observe newly added
application bubble is expanded. Repeat same test, but drag the taskbar
icon to the opposite side.

Change-Id: I6fe1139ef56f4ad40d36a804016d23a9b34abf5f
2025-02-18 10:45:20 -08:00
Saumya Prakash
7286e3b053 Merge "Update Taskbar edu with new font style" into main 2025-02-18 10:40:44 -08:00
Mady Mellor
21fde7581c Merge "Allow bubble bar to show on phones if the flag is enabled" into main 2025-02-18 09:34:44 -08:00
Sergey Pinkevich
668f630d92 Add logs for DesktopAppLaunchTransition when animation starts/no launch change
Bug: 395495925
Flag: NONE only adding logs, not change of actual code
Test: manually

Change-Id: I02d436b6a7bd2210f7917211648124b11d7bb972
2025-02-18 12:20:14 +00:00
Cosmin Băieș
28d8275737 Use FLAG_ALT_FOCUSABLE_IM in taskbar when needed
Previously taskbar would only set/remove the FLAG_NOT_FOCUSABLE, which
also made it IME focusable. This was toggled when a tasbkar folder was
opened/closed, as well as opening the popup by long pressing an app in
the taskbar. Folders do require IME focusability, as the folder name can
be edited. However, the popup does not require IME focusability, and
this lead to the IME suddenly disappearing when the popup is shown.

This fixes the issue by also setting FLAG_ALT_FOCUSABLE_IM as needed,
only when the taskbar is also focusable. This follows the same logic
as in NotificationShadeWindowControllerImpl.

Flag: EXEMPT bugfix
Test: switch to gesture nav, show IME in app, show popup and verify
  IME is still visible
  open folder in either taskbar or launcher and verify IME can be shown
Bug: 361046041
Change-Id: Idb9b4503d5622222e99735f0f6981a17add12360
2025-02-18 12:12:40 +01:00
mpodolian
c7106806f1 Made the bubble bar react to drag events from the Shell.
Added logic to show and hide the bubble bar drop target on Shell
drag-and-drop events.

Test: Manual. Drag a shortcut or an application icon from the taskbar to
the bubble bar drop zone. Observe that if the bubble bar is showing
bubbles, the background stroke color becomes non-transparent; if there
are no bubbles, the drop zone appears. Drag the app icon to the opposite
side and observe that the bubble bar location is animated or the drop
zone appears on the dragged side. Drop the application icon or shortcut
on any side and observe that a new bubble is added and immediately
expanded. Additionally, the bubble bar remains at the drop location.
expanded.
Bug: 388894910
Flag: com.android.wm.shell.enable_create_any_bubble

Change-Id: I581dddf2c76ac982a5c78bc32d94b79bf63fd2b9
2025-02-17 16:50:46 -08:00
David Stevens
1189ee33c6 Mark tasks on launcher as perceptible
Mark all tasks on launcher as perceptible tasks.
Flag enablement is for desktop devices only.

Bug: 370890207
Test: Manual
Flag: com.android.server.am.perceptible_tasks
Change-Id: Ic9022dcb07f2fc2d1bd1277bc1a83233ebc5626e
2025-02-17 01:06:13 +00:00
Saumya Prakash
e6036ab358 Update Taskbar edu with new font style
This change applies the new expressive font style if the expressive
theme is enabled. Screenshots are available in the bug

Fix: 393610004
Test: Check that the fonts change when the expresssive theme is enabled
Flag: com.android.launcher3.expressive_theme_in_taskbar_and_navigation
Change-Id: I5fa34ab08486c7fdeb37ccd9afeda77b577a9404
2025-02-14 23:32:36 +00:00
Sergey Pinkevich
6880093100 Merge "Open and close animation for trampoline task" into main 2025-02-14 15:22:20 -08:00
Sukesh Ram
f601711707 Merge "[CD Taskbar] Fix - Make Taskbar Icons Launch" into main 2025-02-14 14:45:33 -08:00
Andy Wickham
62f205b9e4 Fix performance regressions with handheld apps panel.
Theory: We are now rendering the wallpaper and workspace while All
Apps is open. This is causing additional rendering to be done,
leading to dropped frames and other regressions.

Here I remove workspace/hotseat on phones where the panel will
fully cover them anyway. I also remove the depth controller
during the all apps transition.

Using the "debug overdraw" developer setting, I verified that
Workspace and Hotseat are not drawn below the All Apps panel on
handheld.

I ran ABTD on this change and verified the p95 dropped frames
went back to 0.

Bug: 393188362
Bug: 393088056
Test: abtd commands in the bug
Flag: com.android.launcher3.all_apps_sheet_for_handheld
Change-Id: I47287f3356d401a3bd4202e61fd44199855a4a3c
2025-02-14 22:44:13 +00:00
Mady Mellor
768019357f Allow bubble bar to show on phones if the flag is enabled
* Check for bubble bar on phone being enabled in most places
  tiny taskbar was checking
* Forces taskbar to always be stashed when bubble bar is enabled
* There are a couple of visual issues with the flag enabled:
  - extra space in overview
  - the hotseat is a lil squished on home when bubbles are there

Flag: com.android.wm.shell.enable_bubble_bar_on_phones
Test: manual - enable bubble bar on phones observe that bubble bar
               is enabled and kind of works
Bug: 394869612
Change-Id: I56d3045c78c6c31dcacf16744033b34c9aa5f6e0
2025-02-14 13:09:46 -08:00
Sukesh Ram
00cccdca4c [CD Taskbar] Fix - Make Taskbar Icons Launch
The base TaskbarUIController returns null for recents view.This makes icons on external display's taskbar unable to launch on external displays.

Test: m
Bug: 395954042
Flag: com.android.window.flags.enable_taskbar_connected_displays
Change-Id: I389a0fa102f63ab93b8a29de722cce0a446a2ea1
2025-02-14 12:46:28 -08:00
Treehugger Robot
059bba075b Merge "Update dismiss length for tasks to bring them off screen." into main 2025-02-14 12:30:46 -08:00
Treehugger Robot
2ab63042b8 Merge "[CD Taskbar] Staging - Add/Remove Taskbars" into main 2025-02-14 11:36:58 -08:00
Treehugger Robot
5ac353c697 Merge "Scale recents on drag of tasks during dismiss." into main 2025-02-14 11:05:12 -08:00
Pat Manning
8bda4f6b5f Update dismiss length for tasks to bring them off screen.
Fix: 393553524
Test: TaplTestsQuickstep#testDismissBottomRow
Flag: com.android.launcher3.enable_expressive_dismiss_task_motion
Change-Id: I959bcc86ad986abfe4546add62146e99f3707cc4
2025-02-14 18:32:00 +00:00
Treehugger Robot
bbc199826f Merge "Update KQS text font family to match new specs" into main 2025-02-14 10:07:00 -08:00