Commit Graph

4480 Commits

Author SHA1 Message Date
Charlie Anderson
0e18dee91d Fix WorkspaceItemProcessorTest for HSUM
Bug: 395684478
Test: WorkspaceItemProcessorTest
Flag: EXEMPT test fix
Change-Id: Ib884af01fd225a01a7ba5408bcb38991b7b4c2c4
2025-02-18 13:43:47 -05:00
Sunny Goyal
29f9c3d231 Merging IconShape with ThemeManager
The order of initialization for IconShape is closely tied to ThemeManager
which makes it difficult for change listeners to work. Merging these keeps
all the theming information at one place

Bug: 381897614
Test: Updated tests
Flag: EXEMPT refactor
Change-Id: Ie29efa20c3308a24be3e284c1c93ed7444b68d58
2025-02-13 22:38:01 -08:00
Charlie Anderson
527be0c133 Temporarily disable shapes flag for tests that it breaks.
- when done with breaking changes will update tests as part of b/396211437

Bug: 395952745
Bug: 396211437
Flag: com.android.launcher3.enable_launcher_icon_shapes
Test: Presubmit

Change-Id: I461f6834932a710efa439a112bce23359aee13de
2025-02-13 09:32:52 -08:00
Treehugger Robot
6191d06684 Merge "launcher3: Improve SimpleBroadcastReceiver." into main 2025-02-12 18:19:35 -08:00
Treehugger Robot
6a039c4465 Merge "Implement isInDesktopMode*()" into main 2025-02-12 15:31:53 -08:00
Adnan Begovic
1b26bb4a74 launcher3: Improve SimpleBroadcastReceiver.
Unless explicitly annotated, parameters in java are by
  default nullable. There are a few cases where a null context
  may be passed to the unregisterReceiverSafely function
  of SimpleBroadcastReceiver.

  To mitigate misuses or incorrect contexts being passed for
  register vs unregister, keep the context as a strong reference
  in the constructor.

  Also added NonNull annotations for any public callsites to
  enforce behavior.

Bug: 395019017, 395966395
Flag: NONE - bug fixed
Test: manual - presubmit
Change-Id: Ie371fa45cadceaf51cf184b446df9123ef27c337
2025-02-12 13:43:34 -08:00
Ahmed Fakhry
ad6fee6111 Implement isInDesktopMode*()
This CL does the following:
- Adds new methods `isInDesktopMode()` and
  `isInDesktopModeAndNotInOverview()` to `DesktopVisibilityController`.
- These two methods rely on the new multi-desks impl when the flags are
  enabled.
- Makes the existing `areDesktopTasksVisible()` and
  `areDesktopTasksVisibleAndNotInOverview()` private, and migrates all
  the usages to the new methods.
- The new methods uses the old methods if the flags are disabled.

A companion NexusLauncher CL is at ag/31601363.

Bug: 394182435
Test: m
Flag: com.android.window.flags.enable_multiple_desktops_frontend
Flag: com.android.window.flags.enable_multiple_desktops_backend
Change-Id: I29ff38f984bfe2f68a120f84e1a75fa36b739258
2025-02-12 21:18:51 +00:00
Sunny Goyal
5bca45a739 Moving InvariantDeviceProfile to Dagger
Bug: 361850561
Test: Presubmit
Flag: EXEMPT dagger
Change-Id: Ia99ee031e96c5e6069a56fe90a262a533dd8665a
2025-02-11 15:22:18 -08:00
Treehugger Robot
7456651ed7 Merge "Updating ThemeManager to be extendible" into main 2025-02-10 17:20:26 -08:00
Pat Manning
a82868d7df Add spring animations for neighboring tasks on dismiss cancel
Fix: 389083088
Test: TaplTestsQuickstep#testDismissCancel
Test: TaskGridNavHelperTest
Flag: com.android.launcher3.enable_expressive_dismiss_task_motion
Change-Id: I1240519eea499b5839d64e537588bde3cb0a424b
2025-02-10 13:24:19 -08:00
Sunny Goyal
835461a148 Updating ThemeManager to be extendible
Moving the themeController inside the iconState object

Bug: 381897614
Test: atest ThemeManagerTest
Flag: EXEMPT refactor
Change-Id: I190be0af3202e97808f5dbda30ad0ca811581881
2025-02-10 11:49:32 -08:00
Charlie Anderson
9a791b8f1a Merge "Revert^2 "Restore Archived Pinned Shortcuts instead of removing them."" into main 2025-02-10 08:57:11 -08:00
Vadim Tryshev
a750726198 Remove stale TODO.
The TODO was added by an external contributor from the test org. The contributor is not available for the proper fix, so leaving the workaround as is.

Bug: 225505986
Change-Id: I4d94214f36a4d927546d87f01c924db82fbbe898
Test: presubmit
Flag: NA test code
2025-02-07 14:27:59 -08:00
Charlie Anderson
ceb401c3e7 Revert^2 "Restore Archived Pinned Shortcuts instead of removing them."
This reverts commit f5cb1b664b.

Reason for revert: adding test fix and reverting

Change-Id: I2fc8dc83259b2ee7992ac2291df6ee4246a2e9d5
2025-02-07 12:14:55 -08:00
Treehugger Robot
026930cd14 Merge "Use pinned taskbar with desktop tasks on freeform displays" into main 2025-02-06 19:37:47 -08:00
Treehugger Robot
d026b7be7e Merge "Fixing ProxyPrefs not removing values correctly" into main 2025-02-05 20:49:02 -08:00
Sunny Goyal
c9d9e335a4 Fixing ProxyPrefs not removing values correctly
Bug: 394600803
Flag: EXEMPT bugfix
Test: atest ProxyPrefsTest
Change-Id: Icb116df1826e9538c929a08f4e8afc32d1b1f183
2025-02-05 18:49:54 -08:00
Treehugger Robot
9f0838cc74 Merge "Fix attempt for testDragToFolder" into main 2025-02-05 10:07:09 -08:00
Harry Cutts
6f4d044e63 Merge "Fix button state consistency issues in TAPL event streams" into main 2025-02-05 08:59:41 -08:00
Federico Baron
949981afb6 Fix attempt for testDragToFolder
The reason the test fails is that since the tap targets are smaller, the
drag is too fast and the hover over icon to create folder time doesn't
elapse

Bug: 383917141
Test: TaplDragTest#testDragToFolder
Flag: TEST_ONLY
Change-Id: Iadf0587c3c1c9b5aa50b508a35321bb398d36e5c
2025-02-04 19:07:22 -08:00
Liana Kazanova (xWF)
f5cb1b664b Revert "Restore Archived Pinned Shortcuts instead of removing them."
This reverts commit abbb991d8f.

Reason for revert: DroidMonitor: Potential culprit for Bug X - verifying through ABTD before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted.

Change-Id: Ifa241a631a1a4361623cfe0e81e31ca6b44e9d73
2025-02-04 15:37:46 -08:00
Toni Barzic
860c4ee680 Use pinned taskbar with desktop tasks on freeform displays
Bug: 390665752
Flag: com.android.window.flags.enable_desktop_taskbar_on_freeform_displays
Test: manual on desktop device. verify correct taskbar is shown
      on home screen, in overview, in desktop mode, with fullscreen
      app shown. Verify opening/launching apps from taskbar works
      as expected.

Change-Id: I5c1e21799609c28ec44cc190bfc681934907199f
2025-02-04 13:00:37 -08:00
Charlie Anderson
abbb991d8f Restore Archived Pinned Shortcuts instead of removing them.
Bug: 375414891
Test: ShortcutsChangedTaskTest, WorkspaceItemProcessor test and manually backing up + restoring.
Flag: com.android.launcher3.restore_archived_shortcuts

Change-Id: I798d56bc1ffef9a454e3899e4155d63f7edf39f2
2025-02-04 11:29:29 -08:00
Treehugger Robot
d3b31eb20d Merge "Removing BaseDraggingActivity > Merging come methods to BaseActivtiy > Separating wallpaper theme implementation to an independent class" into main 2025-02-04 09:29:46 -08:00
Treehugger Robot
f86a05eee2 Merge "Fix attempt for testAddAndDeletePageAndFling" into main 2025-02-03 20:46:21 -08:00
Sunny Goyal
edc1453cf1 Removing BaseDraggingActivity
> Merging come methods to BaseActivtiy
> Separating wallpaper theme implementation to an independent class

Bug: 393703968
Flag: EXEMPT refactor
Test: Presubmit
Change-Id: I8cdb6d1520beff3f8226b62c5b7eafd48b2c674f
2025-02-03 17:23:10 -08:00
Federico Baron
1c1b130a4b Fix attempt for testAddAndDeletePageAndFling
it looks like the issue is that the layout has a widget on the second
page leading the page count to be different than expected

Bug: 381918059
Test: TaplWorkspaceTest#testAddAndDeletePageAndFling
Flag: TEST_ONLY
Change-Id: I19e475450494a5580e8fd04d02692624c086807c
2025-02-03 23:05:51 +00:00
Treehugger Robot
0012e24fbc Merge "Use launcher db icon column to load pre-archived app icons on restore, similar to Promise Icons." into main 2025-01-31 19:10:15 -08:00
Charlie Anderson
0905744966 Use launcher db icon column to load pre-archived app icons on restore, similar to Promise Icons.
- includes loading icons for AllApps as archived apps show there as well

Bug: 391913214
Flag: com.android.launcher3.restore_archived_app_icons_from_db
Test: LoaderTaskTest, LoaderCursorTest and manually doing backup + restore
Change-Id: Icc9dc292551d4a3c6ac23de89aea4cb14856744c
2025-02-01 01:11:04 +00:00
Harry Cutts
496b908033 Fix button state consistency issues in TAPL event streams
Change I59b886bfb632f0f26ee58c40f82f447f5ea59b41 caused a number of
launcher and WM tests to fail because the TAPL code was producing motion
events with invalid button states, or just not sending BUTTON_PRESS and
BUTTON_RELEASE events at all. While this change does not address all
possible uses of LauncherInstrumentation#sendPointer (for example,
sending a MOVE during which a button should be held down), it fixes
consistency issues in all cases currently used by tests. A more
comprehensive fix is not worthwhile since this kind of input event
injection is deprecated and should be replaced with usage of uinput or
virtual devices anyway.

Test: $ atest \
      NexusLauncherOutOfProcTests:com.android.launcher3.appiconmenu.TaplAppIconMenuTest \
      NexusLauncherOutOfProcTests:com.android.launcher3.dragging.TaplDragTest \
      NexusLauncherOutOfProcTests:com.android.launcher3.dragging.TaplUninstallRemoveTest \
      NexusLauncherTests:com.android.quickstep.TaplTestsTransientTaskbar \
      'NexusLauncherTests:com.android.quickstep.TaplTestsTaskbar#testOpenMenuViaRightClick' \
      'WMShellFlickerServicePlatinumTests:com.android.wm.shell.EnterSplitScreenByDragFromShortcutGesturalNavLandscape#enterSplitScreenByDragFromShortcut'
Bug: 372571823
Bug: 392150793
Flag: TEST_ONLY
Change-Id: I5c259c13d433d3010d2cf9c6fe01e08ba5990ef7
2025-01-31 14:14:54 +00:00
Charlie Anderson
6009fa94b6 Merge "Add folder shapes for corresponding icon shapes" into main 2025-01-30 19:29:51 -08:00
Treehugger Robot
821572007d Merge "Revert^2 "Unifying various model update callbacks into one"" into main 2025-01-30 15:45:47 -08:00
Sunny Goyal
dfbbebc9e3 Revert^2 "Unifying various model update callbacks into one"
72f9943f64

Change-Id: I38901714947a2b7926723ea25df4a2b8216303e4
2025-01-30 13:19:32 -08:00
Priyanka Advani (xWF)
da2e19a821 Merge "Revert "Unifying various model update callbacks into one"" into main 2025-01-30 13:12:33 -08:00
Pechetty Sravani (xWF)
72f9943f64 Revert "Unifying various model update callbacks into one"
Revert submission 31445615-model-callbacks

Reason for revert: <Droidmonitor crested revert due to b/393222548. Will be verified through ABTD for stanadard investigation.>

Reverted changes: /q/submissionid:31445615-model-callbacks

Change-Id: If6893a125756e5abfbb215af377576429bb1c91b
2025-01-29 22:46:55 -08:00
Charlie Anderson
722f6f3143 Refactor ShortcutsChangedTask to Kotlin
Bug: 375414891
Test: ShortcutsChangedTaskTest
Flag: EXEMPT no functionality change
Change-Id: If80b74a80abf9bed90f1572a9fee2494d39a6829
2025-01-29 16:41:29 -08:00
Treehugger Robot
473bd5c0a0 Merge "Unifying various model update callbacks into one" into main 2025-01-29 16:05:25 -08:00
Charlie Anderson
fcb3d2ec38 Add folder shapes for corresponding icon shapes
Bug: 372886883
Bug: 389329983
Test: Presubmit && IconShapesProviderTest
Flag: com.android.launcher3.enable_launcher_icon_shapes

Change-Id: I46b27b391fef5f379c65d81816353c93f56f2e1d
2025-01-29 14:16:56 -08:00
Sunny Goyal
8141a71281 Merge "Fixing icon shape not properly clipped" into main 2025-01-29 10:43:46 -08:00
Sebastián Franco
cf060a9871 Merge "Remove screen record annotation from passing test" into main 2025-01-29 09:42:33 -08:00
Sunny Goyal
4c261f7343 Fixing icon shape not properly clipped
> Using ShapeDelegate for icon clipping
> Creating ShapeDelegate based on the current icon shape
> Defining different shape delegates for icon and folder
> Updating preview rendering to use dagger graph
> Adding tests for all icon shapes

Bug: 392145015
Test: atest IconShapesProviderTest
Flag: com.android.launcher3.enable_launcher_icon_shapes

Change-Id: Ic9f287e2a6fef2aad18ba224404de58a64da0bb3
2025-01-29 16:24:38 +00:00
Sebastian Franco
057f613d5b Remove screen record annotation from passing test
Fix: 322823478
Fix: 331261431
Test: TaplTestsLauncher3Test
Flag: TEST_ONLY
Change-Id: I5d744b20701ae9a97c4422616f13a5faa55c6c76
2025-01-28 18:54:39 -08:00
Charlie Anderson
db9bb3c869 Merge "Convert UserCache to use Dagger" into main 2025-01-28 16:15:03 -08:00
Sunny Goyal
36c3112abf Unifying various model update callbacks into one
Making the BubbleTextView.applyItem stateless so that it does not depend on the order of events

Bug: 390572144
Flag: EXEMPT refactor
Test: atest LauncherBindableItemsContainerTest
      atest BubbleTextViewTest
Change-Id: Ib9c0ac6c330d6f4e08c3db5772d35787fa056b65
2025-01-28 16:03:01 -08:00
Treehugger Robot
e97c7b2a33 Merge "Update device profile tests to account for all apps panel." into main 2025-01-28 13:27:15 -08:00
Schneider Victor-tulias
c4aa8188e7 Merge changes I73042126,If7c21ab5 into main
* changes:
  Fix TaplTestsQuickstep test failures with recents window flag on
  Clean up the input stream on TAPL test failure
2025-01-28 13:20:58 -08:00
Treehugger Robot
de6fea5e00 Merge "Fix hotseat issue on grid migration where extra items get removed" into main 2025-01-28 12:40:17 -08:00
Charlie Anderson
e90282b317 Convert UserCache to use Dagger
Bug: 372012340
Test: Presubmit
Flag: EXEMPT Dagger Change
Change-Id: I36a0a3f56540c0515d99badc127c2ab8534e684e
2025-01-28 15:30:07 -05:00
Schneider Victor-Tulias
c4b8dacd49 Clean up the input stream on TAPL test failure
If a TAPL test fails after injecting a ACTION_DOWN event, but before it had a chance to send the associated ACTION_UP event, every following test that attempts to send a ACTION_DOWN will then fail. Adding a check and clean up for this.

Flag: EXEMPT adding test failure cleanup
Fixes: 392660264
Test: TAPL tests
Change-Id: If7c21ab58a75fbcec55437ca32b7c9cd0aa8d961
2025-01-28 13:54:48 -05:00
fbaron
a80aed9429 Fix hotseat issue on grid migration where extra items get removed
Flag: EXEMPT bugfix
Test: n/a
Fix: 333849747
Change-Id: I6bf3b291de33930764ca8e4fac82c59c328adbde
2025-01-28 17:07:47 +00:00