Commit Graph

1897 Commits

Author SHA1 Message Date
Treehugger Robot bac3844525 Merge "Adds tests for popup menu" into main 2025-03-07 17:40:46 -08:00
Dave Mankoff 7c06fbd2fe Merge "Nullability fixes for Kotlin 2.1" into main 2025-03-07 13:31:39 -08:00
Treehugger Robot b1489ad9f3 Merge "Revert "Add screenrecord for testLaunchShortcut_fromTaskbarAllApps"" into main 2025-03-07 11:03:38 -08:00
Jorge Gil cf40e5607a Merge "Disable multi-desks in createDesktopTaskPerDisplay test" into main 2025-03-07 08:26:28 -08:00
Dave Mankoff 9768fba0b0 Nullability fixes for Kotlin 2.1
Bug: 399463072
Flag: EXEMPT minor refactor
Tests: presubmits
Change-Id: I758a7ba2d62d2f096f1ceb775ee3f23275dd1c53
2025-03-07 15:28:37 +00:00
Jorge Gil 5d3f714944 Disable multi-desks in createDesktopTaskPerDisplay test
loadTasksInBackground_freeformTask_createsDesktopTaskPerDisplay assumes
that when FLAG_ENABLE_SEPARATE_EXTERNAL_DISPLAY_TASKS is enabled, all
desktop tasks (regardless of the GroupedTaskInfo.deskId) will be grouped
into one GroupTask per display.

However, if multi-desks is enabled, this logic does not apply, and
GroupTasks are created for each desk. Given that this test uses deskId=0
with the expectation that it is an unused/invalid field when testing
FLAG_ENABLE_SEPARATE_EXTERNAL_DISPLAY_TASKS, this CL disables
FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND to match that expectation.

Flag: com.android.window.flags.enable_multiple_desktops_backend
Flag: com.android.launcher3.enable_separate_external_display_tasks
Bug: 362720497
Test: atest NexusLauncherTests:com.android.quickstep.RecentTasksListTest
Change-Id: I88cceaa37582fdcf1a3ad4f59712abbfa7e428a8
2025-03-07 01:05:30 +00:00
Federico Baron 0fe4d89821 Revert "Add screenrecord for testLaunchShortcut_fromTaskbarAllApps"
This reverts commit 486016efd6.

Reason for revert: issue no longer happening 

Change-Id: If1128f59808162f26cc5c32c017eda758126ea27
2025-03-06 16:36:39 -08:00
Shamali P 992facdff3 Unregister widget prediction callback on clear
Noticed that predictor holds the registered callback and caused leak.
Using named listener classes for better stacks and also unregisters them

Bug: N/A
Flag: EXEMPT BUGFIX
Test: WidgetPredictionsRequesterTest
Change-Id: I94211ddbc77077c98b804827bb1cecdefe57703b
2025-03-06 14:25:13 -08:00
Treehugger Robot e3d58f1ecb Merge "Fix NPE in TaplTestsQuickstep.tearDown" into main 2025-03-06 10:13:36 -08:00
Schneider Victor-Tulias 07dd9944f3 Fix NPE in TaplTestsQuickstep.tearDown
Fixing NPW caused by ag/31415696. The recents view container can be null in tearDown

Flag: EXEMPT test fix
Fixes: 399657343
Test: TaplTestsQuickstep
Change-Id: I3665fc4bc131b90b22f43282f0c4e9e1188d0eb4
2025-03-06 11:07:07 -05:00
Treehugger Robot 872ef49247 Merge "Add TaskContentView parent to TaskThumbnailViewHeader and TTV" into main 2025-03-06 03:37:25 -08:00
Sergey Pinkevich f3ea2ed42c Merge "Change launch change requirement within DesktopAppLaunchAnimatorHelper" into main 2025-03-05 23:55:30 -08:00
Wen-Chien Wang 3c74827da7 Adds tests for popup menu
This cl creates some basic tests for popup menu on hotseat items
and recent tasks.

Bug: 3446576299
Test: The cl itself is for tests
Flag: EXEMPT adding test
Change-Id: I872078969d9c3d20b5bf47a43cd8e3c940dd4d8f
2025-03-05 10:03:47 -08:00
Sergey Pinkevich fe17dd475b Change launch change requirement within DesktopAppLaunchAnimatorHelper
Add freeform check and update logs

Return early instead of crashing if a launch change is not available

Bug: 395495925
Flag: NONE only adding logs, not change of actual code
Test: DesktopAppLaunchAnimatorHelperTest

Change-Id: I0d51c563a26e7d6020222cb84757e0ea8d561d69
2025-03-05 16:23:18 +00:00
Will Osborn 19bdf47a31 Merge "Make separate dependency scopes and graphs for different RecentsViews" into main 2025-03-05 07:29:04 -08:00
Will Osborn 074a605827 Make separate dependency scopes and graphs for different RecentsViews
Test: locally tested on Tangor
Flag: EXEMPT - bugfix
Bug: 399364544

Change-Id: I788c5644f198ead206bb7512ec96eab838e51cdb
2025-03-05 10:56:25 +00:00
Treehugger Robot 9b775dfdac Merge "Check horizontal touch slop for non-vertical flings" into main 2025-03-04 17:29:35 -08:00
Brian Isganitis 14a7b56b5e Merge changes I34983821,I175e4282 into main
* changes:
  Initial overflow compatibility with layout transition.
  Migrate layout transition flag to DesktopModeFlag version.
2025-03-04 12:06:18 -08:00
Brian Isganitis 75d443ffdb Initial overflow compatibility with layout transition.
Also implements RTL support for overflow.

Flag: com.android.window.flags.enable_taskbar_recents_layout_transition
Bug: 343521765
Test: go/testedequals
Change-Id: I34983821a2a1a80793dc6d811d42cfeafe274ef4
2025-03-04 12:05:58 -08:00
Sunny Goyal 372c483eda Merge "Moving widgetFilter to dagger" into main 2025-03-04 09:03:10 -08:00
Brian Isganitis 42c58e39fd Migrate layout transition flag to DesktopModeFlag version.
Flag: com.android.window.flags.enable_taskbar_recents_layout_transition
Bug: 343521765
Test: go/testedequals
Change-Id: I175e428240bc52689efe0f6e4457620ac2efdbb5
2025-03-04 11:30:23 -05:00
Schneider Victor-Tulias fad57be97f Check horizontal touch slop for non-vertical flings
Flag: com.android.launcher3.enable_gesture_nav_horizontal_touch_slop
Fixes: 394364217
Test: Tested overview gesture with slight horizontal fling at the end
Change-Id: Ifb716b58486dd0bfadee467978b85150525af333
2025-03-04 07:42:08 -08:00
Brian Isganitis 06d2e58105 Merge "Exclude All Apps divider in desktop mode." into main 2025-03-03 15:58:41 -08:00
Treehugger Robot 5fcd02dff6 Merge "Fix NPE from navbar touch cancel without down." into main 2025-03-03 13:05:39 -08:00
Treehugger Robot 19e93afd91 Merge "Test all apps -> workspace drag for taskbar on home" into main 2025-03-03 11:59:21 -08:00
Brian Isganitis 8127148e02 Exclude All Apps divider in desktop mode.
Flag: com.android.launcher3.taskbar_recents_layout_transition
Bug: 315354060
Test: go/testedequals
Change-Id: Ic9cf42ad9a81357fe7452ed576663bedb54fbcf7
2025-03-03 14:42:16 -05:00
Sunny Goyal 5025b9ab04 Moving widgetFilter to dagger
Moving widget filtering to UI layer as it changes with surface

Bug: 361850561
Test: Presubmit
Flag: EXEMPT dagger
Change-Id: I9d9377540ca36873659cea4ecc91fb162d82cd44
2025-03-03 10:27:14 -08:00
Alex Chau 00677dffa7 Merge "Remove commented block in testOverviewForTablet" into main 2025-03-03 03:52:51 -08:00
Treehugger Robot 6e8347912c Merge changes I6846a3dd,I45356fd7 into main
* changes:
  Update ActiveGestureLogs to print gestures' display IDs
  Update TIS to use one input monitor per display
2025-03-02 18:07:04 -08:00
Schneider Victor-Tulias 841c6a98d2 Update ActiveGestureLogs to print gestures' display IDs
Flag: com.android.launcher3.enable_gesture_nav_on_connected_displays
Bug: 382130680
Test: connected an external display and checked logs
Change-Id: I6846a3dda77fc4afbbd83855aacca726eeb8eace
2025-03-02 16:03:32 -08:00
Schneider Victor-Tulias 21dba415e9 Update TIS to use one input monitor per display
Flag: com.android.launcher3.enable_gesture_nav_on_connected_displays
Bug: 382130680
Bug: 398881237
Test: connected an external display and attempted touch gestures. checked logs to ensure motion events are separated by display id
Change-Id: I45356fd7f1926685093833990d39c85a4a074c58
2025-03-02 16:03:08 -08:00
Treehugger Robot eb808032f1 Merge "Propagate the display id with SysUIState changes to launcher" into main 2025-02-28 22:14:13 -08:00
Toni Barzic a5c5536d7d Test all apps -> workspace drag for taskbar on home
Adds TAPL test that verifies users are able to drag app items from all
apps to workspace when all apps is opened on from a pinned taskbar shown
on the home screen, as may be the case when a desktop mode taskbar is
shown on home screen.

Adapts LauncherInstrumentation to handle the case where taskbar is shown
on home - when verifying launcher states, it sets taskbar visibility
expectations to account for a posibility that taskbar is visible in
home, or workspace states. Adds a request to the test protocol to
determine whether taskbar should be visible on home.

Bug: 392118517
Flag: com.android.window.flags.enter_desktop_by_default_on_freeform_displays
Test: Ran TaplTestLockedTaskbar tests
Change-Id: I40b06da70aaa49b0a3e0673797e6c18773a72238
2025-03-01 00:31:46 +00:00
Sam Cackett e0cc96df62 Add TaskContentView parent to TaskThumbnailViewHeader and TTV
- Add TaskContentView parent view
- Extract TaskThumbnailViewHeader logic and any related state out of
TaskThumbnailView and move to TaskContentView
- Use vertical LinearLayoutManager to hold the TaskThumbnailViewHeader
and TaskThumbnailView
- Rename TaskThumbnailViewHeader to TaskHeaderView. Rename xml and state
 similarly

Bug: 397889146
Flag: EXEMPT. Refactor
Test: Refactoring CL. Existing unit tests still pass.

Change-Id: Ie31f35c6617aab272f984a6beb3e4cb8f58e3ce9
2025-02-28 12:19:26 +00:00
Nicolo' Mazzucato 6bccfb49c2 Propagate the display id with SysUIState changes to launcher
This changes the ILauncherProxy.aidl interface to also allow propagating the display id from SysUI to launcher for each SysUIState update.

The SysUI part of filling SysUI state correctly has not been implemented yet. But for now, only default display flags are propagated anyway.

On the launcher side, the sysui state is propagated correctly to each taskbar instance (there is one for each display)

Bug: 362719719
Bug: 398011576
Bug: 399371607
Test: LauncherProxyServiceTest
Flag: com.android.systemui.shade_window_goes_around
Change-Id: Ic9fa55ca82e4fe395a915c4d611afc8835c5d65d
2025-02-28 10:34:55 +00:00
Andy Wickham 8cbe719df7 Fix NPE from navbar touch cancel without down.
TouchInteractionService sends a touch cancel when the screen turns
off, for example. So we shouldn't assume there was a touch down.

Fix: 398855863
Test: NavHandleLongPressInputConsumerTest#testTouchCancelWithoutTouchDown
Flag: EXEMPT bugfix
Change-Id: Ic1b6e981fe183864663bd44e1488d6f6749183bc
2025-02-28 00:51:42 +00:00
Treehugger Robot 9a5cd11da5 Merge "Move MainThreadInitializedObject to Launcher3 Go." into main 2025-02-27 13:03:12 -08:00
Alex Chau 9b1c812217 Remove commented block in testOverviewForTablet
- The block of code is no longer failing

Fix: 308841019
Test: testOverviewForTablet
Flag: EXEMPT TEST_ONLY
Change-Id: Ibf2bd7b5ff8c0814d803bc519814072fe1421540
2025-02-27 18:23:16 +00:00
Anushree Ganjam e6065f5a94 Move MainThreadInitializedObject to Launcher3 Go.
Move SandboxContext to a separate class.
Remove all MainThreadInitializedObject references in Launcher3 and tests.
Remove ObjectSandbox interface and make RoboApplication extend
SandboxContext

Bug: 361850561
Test: Presubmit
Flag: EXEMPT dagger
Change-Id: I1a8af5e6ae59df44d8ad6732b4d6e949ac402d6c
2025-02-26 16:49:08 -08:00
Treehugger Robot acadebfaa1 Merge "Let TaskView allow empty TaskContainers" into main 2025-02-26 12:54:24 -08:00
minch b8d4758d4e Let TaskView allow empty TaskContainers
Bug: 391918297
Flag: EXEMPT refactor
Test: m
Change-Id: Ia12c01746e6b31ac980c367f1c0144e69765f2a5
2025-02-26 12:50:04 -08:00
Treehugger Robot 006ea72afe Merge "More test for taskbar overflow" into main 2025-02-25 22:35:47 -08:00
Brian Isganitis fbd55aeda4 Merge "Have per-environment bindings for Taskbar multivalent tests." into main 2025-02-25 09:53:16 -08:00
Will Osborn 8bc3268ec4 Merge "DisplayController refactoring for multiple displays" into main 2025-02-25 08:16:52 -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 f1ec7a7699 [CD Taskbar] Refactor TaskbarManager - Add Debugging Support for Stability.
Refactor TaskbarManager & add Debugging Support for Stability. Centralize all existing logging behind existing logging methods.

Bug: 398878697
Bug: 382378283
Bug: 391653300
Test: m
Flag: EXEMPT not adding new behavior
Change-Id: I3f131b5e9ce720140c1d3eb46a53a4763926df83
2025-02-25 02:52:48 -08:00
Toni Barzic 501562f09a More test for taskbar overflow
Adds tests to TaskbarOverflowTests to verify that:
*   tapping overflow view toggles keyboard quick switch view
*   tasks associated with a hotseat item don't get added to
    recents taskbar section / overflow view
*   keyboard quick switch view shown from taskbar contains
    running tasks, excluding tasks associated with a hotseat item

Bug: 379774843
Flag: com.android.launcher3.taskbar_overflow
Test: atest TaskbarOverflowTest

Change-Id: Iee6316c33cef6322d567e853f9fa358b7af9e172
2025-02-25 04:39:23 +00:00
Jeremy Sim bc872b2ae4 Merge "Fix icon positioning for flexible split in Overview" into main 2025-02-24 17:03:09 -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
Jeremy Sim 633b94abf1 Fix icon positioning for flexible split in Overview
In flexible split ratios like 90:10 and 10:90, we hide the Overview icon of the smaller app completely. This resulted in a bug where the single remaining visible icon was positioned badly.

Fixed this by adding a check in updateIconPlacement() so that we can skip the two-icon positioning and center the visible icon alone. Also fixed the cases where split select is initiated on a split tile (from Taskbar). Now the correct icon should be shown and centered.

Fixes: 391865942
Flag: com.android.wm.shell.enable_flexible_two_app_split
Test: Single icon is positioned correctly in the middle. When split select is initiated, the right icon is shown and centered. When app chip menus are enabled, the (existing) correct behavior is not changed.
Change-Id: I79842222fc325a7661cbabbb54d277389a317504
2025-02-24 11:48:50 -08:00