Commit Graph

14653 Commits

Author SHA1 Message Date
Merissa Mitchell bea2e7ca6c [Pip2] Use PipFlags#isPip2ExperimentEnabled in Launcher
instead of checking Flags#enablePip2 directly

Bug: 409622499
Test: m
Flag: com.android.wm.shell.enable_pip2
Change-Id: I4892d6590403202737e40d21c6d215c1adc7b47e
2025-05-06 15:42:12 -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
Treehugger Robot f4b64aaebf Merge "Revert^2 "Store bubble bar state in sysui proxy"" into main 2025-04-29 18:11:26 -07:00
Ats Jenk ac16eb2d73 Revert^2 "Store bubble bar state in sysui proxy"
This reverts commit fbfec0d3e1.

Reason for revert: Per the comment in the bug, this test was still failing after the rollback: https://b.corp.google.com/issues/413593389#comment7. The real culprit was a flag which was rolled back here: https://b.corp.google.com/issues/413593389#comment10.

Change-Id: Idd516b7c8576a3668f6248d8440da89867823df2
2025-04-29 15:38:05 -07:00
mpodolian 9764250b60 Launcher TAPL test for dragging task bar icon to the bubble bar.
Added a test and TAPL objects to check dragging taskbar icons to the
bubble bar.

Fixes: 388910897
Test: TaplTestTaskBarIconDrag
Flag: EXEMPT test
Change-Id: I8a3e64a83c72a9f6b89b2f8a875ca6565d501701
2025-04-29 15:32:41 -07:00
Pierre Barbier de Reuille 9f23a4cb06 Merge "Enable DesktopExperienceFlags in developer option for features in teamfood" into main 2025-04-29 15:21:14 -07:00
Ats Jenk 861f887dfe Merge changes I91a3b558,Ifc9c391a,I3da2bc22,Ied187c63,I859b7359 into main
* changes:
  Store bubble bar stashed state during rotation [6/N]
  Restore bubbles without affecting bar state [5/N]
  Do not animate bubbles from initial update [4/N]
  Store and restore selected bubble and expanded state [3/N]
  Do not animate bubble bar for initial state [2/N]
2025-04-29 13:17:42 -07:00
Treehugger Robot 589dfc9672 Merge "No recents-in-window on default display if enableOverviewOnConnectedDisplays is true" into main 2025-04-29 10:39:08 -07:00
Treehugger Robot e2a5c2c10c Merge "Handle addDesktopButton visibility wrt desk num limits" into main 2025-04-29 08:14:18 -07:00
Will Osborn 51943297be No recents-in-window on default display if enableOverviewOnConnectedDisplays is true
Bug: 413257766
Flag: com.android.launcher3.enable_overview_on_connected_displays
Test: local + presubmit
Change-Id: I0ae36d4bec4cf962e4c71304c82838dbf2bf518f
2025-04-29 15:11:27 +00:00
Treehugger Robot 516a457dbe Merge "Move enableGestureNavOnConnectedDisplays to using DesktopExperienceFlags" into main 2025-04-29 07:25:41 -07:00
Treehugger Robot 7103e478b3 Merge "Register KEY_GESTURE_TYPE_RECENT_APPS[_SWITCHER] in the quickstep" into main 2025-04-29 04:53:12 -07:00
Treehugger Robot dcc634e0bb Merge "Notify StateManager of predictive back animation." into main 2025-04-29 03:52:30 -07:00
Will Osborn 43bc12baf2 Merge "Refactor OverviewOnConnectedDisplays flag" into main 2025-04-29 02:01:47 -07:00
Ats Jenk 1133492a3e Store bubble bar stashed state during rotation [6/N]
Store and restore bubble bar stashed state.
When bubble bar is restored from saved state, restore the bar state to
stashed, collapsed or expanded.
This ensures correct positioning of the bar on screen, before we receive
an update from shell.

Bug: 357115534
Test: bubble bar collapsed on home screen, rotate device and check
    bubble bar remains in correct position and collapsed
Test: bubble bar stashed in app, rotate device and check bubble bar
    remains stashed
Test: bubble bar and taskbar shown while in app, rotate device,
    bubble bar remains shown after rotation, not expanded or stashed
Test: bubble bar is expanded on home screen, rotate device and
    check bubble bar remains expanded
Test: bubble bar is expanded in app, rotate device and check bubble bar
    remains expanded
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I91a3b5582a4af753e9e54156358b2ce9adb841c7
2025-04-28 18:45:01 -07:00
Ats Jenk 8ed27029d4 Restore bubbles without affecting bar state [5/N]
When we restore bubbles after taskbar is recreated, we should not modify
the bubble bar state as part of restoring the bubble views. Bubble bar
state is restored separately.
Create new helper method to restore bubbles without affecting bubble bar
state.

Bug: 357115534
Test: have bubble bar expanded on top of an app, rotate device multiple
  times back and forth, check that bubble bar remains expanded
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: Ifc9c391a1a367535daa3b83283fe145824294bcc
2025-04-28 18:44:28 -07:00
Ats Jenk 6c7cb1a5f0 Do not animate bubbles from initial update [4/N]
Bubbles that are restored with initial update should not be animated in.
If we restore the bubble bar after rotation, we need to show it
immediately. Attempting to animate the bubbles from initial update
causes the UI to flicker.

Bug: 357115534
Test: on home screen, have bubble bar expanded, rotate device, check
  bubble bar bubbles do not flicker after rotation
Test: have no bubbles in bubble bar, trigger a bubble, check it is
  animated
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I3da2bc22588c0f5d2dd9c7a3adfcd2c19c339809
2025-04-28 18:44:26 -07:00
Ats Jenk 14474695a2 Store and restore selected bubble and expanded state [3/N]
When bubble bar gets recreated, store the expanded state and selected
bubble.
Allows us to show the bubble bar in previous state after rotation,
before shell has been able to send us an update.

Bug: 357115534
Test: on home screen, have bubble bar expanded, rotate device, check
  bubble bar remains expanded
Test: in app, have bubble bar expanded, rotate device, check bubble bar
  remains expanded
Test: have bubble bar collapsed, rotate device, check it is not expanded
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: Ied187c638287599297e15db77efdf44bd701d559
2025-04-28 18:44:23 -07:00
Andy Wickham ae48c582e9 Notify StateManager of predictive back animation.
This way if you go to a different state like All Apps, that
existing animation can be cancelled.

This is essentially the same as b/405836159, but for exiting an app
via predictive back rather than standard home gesture.

Demo: https://drive.google.com/file/d/1x66LHDMQLArZX7sO3RBcI-M-vWW_icRg/view?usp=drive_link&resourcekey=0-_0FYAfonv7YC9u8mCmm07Q

Fix: 412562139
Flag: com.android.launcher3.all_apps_blur
Test: Open app from homescreen, go back, swipe to All Apps quickly.
Change-Id: I83973df5702b271853149dbea5baa1781358c207
2025-04-29 01:14:28 +00:00
Li Lin 6e718cffb1 Merge "Show Growth Framework nudge driven by nudge payload." into main 2025-04-28 17:01:20 -07:00
Min Chen 31f5e79ffd Merge "Fix integration tests with multi-desks on" into main 2025-04-28 16:44:30 -07:00
Pierre Barbier de Reuille 76757afa3f Enable DesktopExperienceFlags in developer option for features in teamfood
Bug: 407954908
Test: Manual
Flag: EXEMPT (flag infra)
Change-Id: I354906d0d5b20eff2ef981da3a021290f22afe43
2025-04-28 16:03:52 -07:00
Pierre Barbier de Reuille bb3afc1457 Move enableGestureNavOnConnectedDisplays to using DesktopExperienceFlags
Also enable it by default, as this is now in teamfood.

Flag: EXEMPT (flag infra)
Test: Build and run
Fix: 414440345
Change-Id: I3389bc2ad16b65761eaaccceef91a1a80f6dc3f0
2025-04-28 15:19:15 -07:00
Li Lin 0f82810cdb Show Growth Framework nudge driven by nudge payload.
Current implementation of the nudge will show at default position
(bottom left corner) and may extended to other position in the future.
More detail at: go/al-growth-framework-nudge

Bug: 398033012
Test: NudgeControllerTest.*
Flag: com.android.launcher3.enable_growth_nudge
Change-Id: Idff9d62a5b1b26aa1cfbef5817f5425f8e94b7c9
2025-04-28 13:59:30 -07:00
Treehugger Robot 51ebe952be Merge "Enable enableAltTabKqsOnConnectedDisplays in Desktop Experience developer option" into main 2025-04-28 13:57:54 -07:00
Treehugger Robot 3bde3a8331 Merge "Update blur style for more things." into main 2025-04-28 13:51:25 -07:00
Treehugger Robot 075869da85 Merge "Renaming CONTAINER_PREDICTION to CONTAINER_ALL_APPS_PREDICTION" into main 2025-04-28 12:52:27 -07:00
Priyanka Advani (xWF) 9d5903bb10 Merge "Revert "Restrict nav mode UI checks within primary display"" into main 2025-04-28 12:18:34 -07:00
Ats Jenk f1f507e8c3 Do not animate bubble bar for initial state [2/N]
Initial state for bubble bar does not need to be animated.
Especially if it is sent after rotation. In that case we do not want it
to animate.
When launcher is rotated, taskbar is recreated. After getting recreated,
we receive the initial state from WMShell for the bubbles again. Part of
the initial state is whether bubble bar is expanded or not.

Bug: 357115534
Flag: com.android.wm.shell.enable_bubble_bar
Test: rotate device
Change-Id: I859b73597c8f286069f384dcdea0e3a5296e0073
2025-04-28 10:37:55 -07:00
Steven Ng 776e157934 Register KEY_GESTURE_TYPE_RECENT_APPS[_SWITCHER] in the quickstep
Before this change, the overview keyboard shortcut pipeline is as follow:
PhoneWindowManager (System server)
StatusBarManagerService (System server)
CommandQueue (SysUi)
Recent (SysUi)
OverviewProxyRecentsImpl (SysUi)
TISBinder (Quickstep launcher)
This cross-process communication chain through the system server, SysUI, and quick step launcher created significant challenges. Firstly, it complicated efforts to pass additional data to the key gesture handler. Secondly, it was less performant than the streamlined new approach. Lastly, the StatusBarManagerService's responsibilities were ambiguous because it also handled unrelated tasks, such as overview, wallet.

Flag: com.android.window.flags.enable_key_gesture_handler_for_recents
Test: atest NexusLauncherTests:com.android.quickstep.input.QuickstepKeyGestureEventsHandlerTest
Test: atest NexusLauncherTests:AllAppsActionManagerTest
Bug: 406452076
Change-Id: I2899e49c8c0a44c6ad58228db1c9eb587daf68c4
2025-04-28 17:19:35 +00:00
Fengjiang Li 14c9e2b464 Merge "[Memory Leak] Avoid adding duplicated OnScrollChangedListener to RecentsView" into main 2025-04-28 09:35:58 -07:00
Sunny Goyal 07cfe33533 Renaming CONTAINER_PREDICTION to CONTAINER_ALL_APPS_PREDICTION
This avoids confusion with CONTAINER_HOTSEAT_PREDICTION

Bug: 390572144
Flag: EXEMPT refactor
Test: Presubmit
Change-Id: I0e110e2884dd0566bd2e621e60e7458605b9bad7
2025-04-28 09:30:12 -07:00
Priyanka Advani (xWF) 9d7b814eec Revert "Restrict nav mode UI checks within primary display"
This reverts commit 3ccfdbf6c4.

Reason for revert: Droidmonitor created revert due to Jank regression b/413244466.

Change-Id: I09276810e3611b54526ed3d2af7a35949a412b0c
2025-04-28 09:13:46 -07:00
Matthew Mourgos 788c479e8b Merge "Check showHomeBehindDesktop to allow swiping up for overview gesture" into main 2025-04-28 09:07:47 -07:00
Pat Manning edaab56ed6 Merge "Cancel ongoing dismiss animation when Launcher state changes." into main 2025-04-28 05:14:24 -07:00
Jordan Silva af7016c3ef Merge "Make repeated recents button double tap return to previous task" into main 2025-04-28 04:36:13 -07:00
Pat Manning 9ee290e81f Cancel ongoing dismiss animation when Launcher state changes.
Fix: 410744889
Test: Manual
Flag: com.android.launcher3.enable_expressive_dismiss_task_motion
Change-Id: I5e81de6762e7d0ea47f8574599901aac1bb8bb77
2025-04-28 10:27:29 +01:00
Vinay Joglekar 077532a909 Merge "Fix background in quick switch when quick switch is started from home." into main 2025-04-28 01:34:10 -07:00
minch 4e3d48e998 Fix integration tests with multi-desks on
Bug: 362720309
Test: Presubmit
Flag: EXEMPT tests failure fix
Change-Id: I381b8751083a7fb235cf597fd35314ca6f2c0a9b
2025-04-26 15:59:18 +00:00
Will Osborn b28d1fc453 Merge "Fix stage split for connected display" into main 2025-04-26 02:29:57 -07:00
Andy Wickham 6610425a1d Update blur style for more things.
- Quick Launch highlight (focusHighlight)
 - Drag bar at top of All Apps
 - Divider inside Private Space

Demo (enabling blur via adb in the middle):
https://drive.google.com/file/d/1MjYn1c1mz3m1llmJ-J6kLHUa1j3biv_H/view?usp=drive_link&resourcekey=0-6d1yf_4zDL0W9nTYe6HLNQ

Fix: 413143411
Test: Manual
Flag: com.android.launcher3.all_apps_blur
Change-Id: I37340759867aba1460fb038269d21c86e8b3c4f6
2025-04-26 01:25:05 +00:00
Treehugger Robot d50a7a1189 Merge "Not pausing hotseat predictions on app launch" into main 2025-04-25 18:06:15 -07:00
Fengjiang Li c4ae445ede [Memory Leak] Avoid adding duplicated OnScrollChangedListener to RecentsView
Use ArraySet to replace List to avoid duplication

Fix: 413449336
Test: presubmit
Flag: NONE - release code
Change-Id: I3bc21fe09ae8e6d5de4ad0389fbd1d723a620c2e
2025-04-25 16:05:22 -07:00
Pierre Barbier de Reuille fe1c342dda Enable enableAltTabKqsOnConnectedDisplays in Desktop Experience developer option
Bug: 407954908
Flag: EXEMPT (Flag infra)
Tests: Build and presubmit
Change-Id: I294be17012232f3132f100116665e0de184206b9
2025-04-25 15:24:43 -07:00
Suhua Lei 40477479a6 Handle addDesktopButton visibility wrt desk num limits
Bug: 389209338
Flag: com.android.window.flags.enable_multiple_desktops_frontend
Flag: com.android.window.flags.enable_multiple_desktops_backend
Test: create desks to limit, dismiss and recreate
Change-Id: I00cc3bff04d95f7c89fdeb67565497c029d8527e
2025-04-25 22:02:15 +00:00
Ats Jenk 963df5dca3 Merge "Rename method to set bubble bar expanded state [1/N]" into main 2025-04-25 14:21:49 -07:00
Treehugger Robot fe7225eace Merge "Move LauncherRestoreEventLogger to dagger" into main 2025-04-25 14:11:18 -07:00
Will Osborn c21905eb75 Refactor OverviewOnConnectedDisplays flag
and switch from DesktopModeFlags to DesktopExperienceFlags

Bug: 413609179
Flag: EXEMPT refactor
Test: local + presubmit
Change-Id: I3b57e501bbf62400a9977ddcd2503be73f835b5a
2025-04-25 20:13:28 +00:00
Sunny Goyal 834e9c3bbe Not pausing hotseat predictions on app launch
We do not pause updates on tablets anyway, maintaining a separate behavior on phone is unnecessary

Bug: 339700174
Flag: EXEMPT bugfix
Test: Manually verify that the predictions update
Change-Id: Ia835e3c73dc536e0ff5b4c1f5120628a48f7723f
2025-04-25 12:39:13 -07:00
Alex Chau abb2133bf1 Make repeated recents button double tap return to previous task
- With grid only Overivew, we can no longer rely on positioning in RecentsView to returning to previous task by using nextTaskView
- After a double tap, on the 2nd TOGGLE command, record the task Ids that this double tap comes from as ToggleInfo
- In the next double tap, if there is a ToggleInfo within last 5 second, return to the previous task
- Also make double tap from home picks up the first grid task instead of a Desktop task
- Simplified special handling when there is only large tile to always fallback to `previousTaskView` when there are no `nextTaskView`. This does not affect cases where there are no Desktop tasks (as previousTaskView will be null).

Fix: 411029836
Test: OverviewCommandHelperTest
Flag: com.android.launcher3.enable_grid_only_overview
Change-Id: I1caa6b3db1bfd2c6203d4f1c5bf3e50c1b3c53c3
2025-04-25 18:24:47 +01:00