Commit Graph

1035 Commits

Author SHA1 Message Date
Shamali Patwa 2fc32dc2d8 Enforce system radius instead of separate value for widgets in launcher
The change is behind a flag. This is to get to the stage of having
consistent corner radius across rectangular widgets.

Bug: 373351337
Test: Unit test and manual
Flag: com.android.launcher3.enforce_system_radius_for_app_widgets
Change-Id: I23d8d3bb2561b4fc3f780fc4ddce62e8b9293192
2024-10-22 18:03:07 +00:00
Sunny Goyal 0b7f4cf1e2 Fixing deadlock in dagger singletons
Bug: 373557167
Flag: EXEMPT dagger
Test: atest DaggerSingletonDeadlockTest

Change-Id: I2304237bfd818c99b82bbfceea8a81ddb136b5a1
2024-10-21 18:09:37 +00:00
Sunny Goyal 9cd3154952 Moving PluginManager to dagger
Multiple singletons depend on Plugin which can cause deadlock
if PluginManager is initialized on main thread

Test: presubmit
Bug: 361850561
Bug: 373557167
Flag: EXEMPT dagger
Change-Id: I79f17ac6b78a2ce60df2d27a6e794b9e4eba1b51
2024-10-17 11:48:38 -07:00
Treehugger Robot 8915d3c3b8 Merge "[Dagger] Make CustomWidgetManager provided by DaggerSingletonObject" into main 2024-10-15 19:19:36 +00:00
Sunny Goyal e4ce5ebc5e Fixing leak in LauncherAppWidgetProviderInfo
Bug: 372998377
Test: Presubmit
Flag: EXEMPT bugfix
Change-Id: Ibf7c66f2aba510f86d23825816639bc3197884aa
2024-10-14 16:22:52 -07:00
Sihua Ma 58fc65dedf [Dagger] Make CustomWidgetManager provided by DaggerSingletonObject
Test: presubmit
Bug: 361850561
Flag: NONE Dagger change
Change-Id: I9c2a9cc12aa2a409e8f9053a059426843f72deed
2024-10-14 22:35:59 +00:00
Treehugger Robot 99f6d447ea Merge "Cleaning up temporary interfaces which were created for refactoring" into main 2024-10-11 23:02:52 +00:00
Sunny Goyal 43b01b9900 Cleaning up temporary interfaces which were created for refactoring
Bug: 366237794
Test: Presubmit
Flag: EXEMPT refactor
Change-Id: Ic2c69bcdde1429c787903c24f0e19ea26b91d314
2024-10-11 11:03:47 -07:00
Fengjiang Li a49a2a32be Merge "[Dagger] Make SettingsCache provided by DaggerSingletonObject" into main 2024-10-08 17:13:20 +00:00
Fengjiang Li 4d819d9dea [Dagger] Make SettingsCache provided by DaggerSingletonObject
Test: presubmit
Bug: 361850561
Flag: NONE - dagger
Change-Id: Id709a6e1d14446b8361cf292d5f5422f2ea3524c
2024-10-07 23:10:53 -07:00
Catherine Liang 53683d4ca4 Merge "Handle messages to update Launcher preview color" into main 2024-10-07 19:00:14 +00:00
Catherine Liang b5fdc80bb2 Handle messages to update Launcher preview color
Receive color update messages with a list of color resource ids and a
corresponding list of color overrides, and adjust the preview
accordingly.

Flag: com.android.systemui.shared.new_customization_picker_ui
Test: manually verified that the selected colors are previewed
Bug: 350718581
Change-Id: Ibcde0575416df00b76627ac1004f21f5f9af1196
2024-10-04 19:33:45 +00:00
Treehugger Robot 49e27e5257 Merge "Make widget sheet layout container not focusable" into main 2024-09-30 22:44:28 +00:00
Sunny Goyal f7c32a29fd Requesting ApplicationInfo in cached object
Bug: 363324203
Test: Presubmit
Flag: EXEMPT refactor
Change-Id: I92f3d3ed8c267b895dc439ba1f01eb67d7f63965
2024-09-27 14:04:16 -07:00
Sunny Goyal a1cebfa0c0 Updating IconProvider API to use a single API to load icons
Bug: 366237794
Test: atest IconProviderTest
Flag: EXEMPT refactor, changes in underlying API

Change-Id: If8c6a4f13de7e7d262ee0b6d0c6897981f75e639
2024-09-26 22:13:11 -07:00
Sunny Goyal 28d6bbd6b4 Moving various application into related methods to a separate class
> This avoids duplicate RPCs when trying to get multiple properties
  from AppInfo
> This would be used in a followup cl when AppInfo is added to caching
  logic in IconCache

Bug: 366237794
Test: atest ApplicationInfoWrapperTest
Flag: EXEMPT refactor
Change-Id: I55b964d4f8cfa1ff1770e310ac278719495e285d
2024-09-23 22:09:24 -07:00
Sunny Goyal 621918feda Changing min-sdk version of Launcher to 31
Bug: 368071216
Flag: EXEMPT refactor -> dead code removal
Test: Presubmit
Change-Id: I1f0113c56de56f12f3a174eb31c3f8e8a09407e6
2024-09-20 06:00:10 +00:00
Sunny Goyal 5ee3d98641 Cleaning up some enabled features
Flag: EXEMPT LEGACY
		CONTINUOUS_VIEW_TREE_CAPTURE
		ALL_APPS_GONE_VISIBILITY
		ENABLE_BACK_SWIPE_HOME_ANIMATION
		ENABLE_DYNAMIC_TASKBAR_THRESHOLDS
		PREEMPTIVE_UNFOLD_ANIMATION_START
		ENABLE_NEW_GESTURE_NAV_TUTORIAL
		ENABLE_ENFORCED_ROUNDED_CORNERS
		ENABLE_TRACKPAD_GESTURE
		ENABLE_KEYBOARD_QUICK_SWITCH
		ENABLE_KEYBOARD_TASKBAR_TOGGLE
		ENABLE_ALL_APPS_RV_PREINFLATION
Test: Presubmit
Bug: 270395171, 291651514, 270393426, 294252473,
     270397209, 270396257, 270393258, 271010401,
     270396844, 281726846, 288161355

Change-Id: I6ef1e12dfc2203a4cca8e91aa291485f1ff24c42
2024-09-12 15:12:08 -07:00
Toni Barzic 667fe050ff Make widget sheet layout container not focusable
SpringRelativeLayout views in widgets sheets UI are non-actionable
containers, and as such they would ideally not receive focus. They were
made focusable as a workaround for an issue where back action was no-op
when widget search text box was focused, and there were no other
focusable elements in the UI b/197129170.
WidgetSearchBarController handles back action by clearing
focus, which ends up refocusing the search text box. This CL, removes
this back action override, and let's back action through - it will end
up being handled by `WidgetsFullSheet.onBackInvoked` which resets the
search.

Bug: 365120544
Test: Manual - verified back action with widget search active (and in
      case with no results) in emulator
Flag: EXEMPT bugfix

Change-Id: I1fed37372521947b7d4644047807dc451b0119a4
2024-09-11 18:50:56 +00:00
Sunny Goyal 46d2cc6edf Fixing UI leaks when using inline-subclass
Bug: 364363493
Flag: EXEMPT bug fix
Test: Presubmit
Change-Id: I8881569b021ab3737130d6d07ff3383dfab8df35
2024-09-04 20:47:14 +00:00
Brandon Dayauon 412821fadf Merge "Create an alpha letter scroller" into main 2024-08-26 20:21:17 +00:00
Brandon Dayauon 1f8f88696b Create an alpha letter scroller
- The function used is a raised cosine function to determine the sections to animate.

Tested flag: adb shell device_config put launcher com.android.launcher3.letter_fast_scroller true
Based on recent figmaspec, size of selected letter is 28dp and regular is 20dp. That means scaling should be 28/20.
Colors are:
onSurface for letter
surfaceContainer for background.
Figma shows selected colors are materialColorOnSecondary

bug:358673724
Test manually: https://drive.google.com/file/d/1gvJd5KoK8X_Sv8jXg1cZ65R4AuqHuvcd/view?usp=sharing
Flag: com.android.launcher3.letter_fast_scroller

Change-Id: Ia86eb0e8c41bc043fda3c44aeaf59e204429f337
2024-08-26 11:21:26 -07:00
Shamali P b3153f0bee Fix issue that personal list shows on unfold while on work tab (paused)
Bug: 358041878
Flag: EXEMPT bugfix
Test: on fold device with test dpc
Change-Id: I4b6d758cd4d98af941e2222db21a0307e1088867
2024-08-22 19:17:32 +00:00
Shamali P 64b0ad623a Focus on first item to match the behavior with widgets list
On opening suggestions, was focusing on entire right pane, instead,
focusing now on first item to match with the widget apps list below.

Bug: 359795405
Test: Talkback
Flag: EXEMPT bugfix
Change-Id: I4aaefc7642910b544f56522ac0b3cb10454626c7
2024-08-20 00:12:29 +00:00
Shamali P c7e1b5c975 Update the scale on corner radii on scaled image drawable.
The RoundedDrawableWrapper applies rounded corners on each draw, so,
on scaling, the corners look odd for small widgets.

This change, applies the same scale to corner radius as well.
There are some widgets whose preview images have embedded transparency,
but we don't do much for such previews.

Bug: 359860747
Test: Manual
Flag: EXEMPT bugfix
Change-Id: I5e58e29765503454f286d99050b13b497531d306
2024-08-15 02:54:17 +00:00
Sihua Ma 7eaf24840d Merge "Add unit test for LauncherAppWidgetHost" into main 2024-08-01 20:26:40 +00:00
Shamali P 5a1b372536 Update references that read popup data provider to use picker provider
Covers the UI references related to widget picker or its shortcut.

Test: Existing tests
Flag: EXEMPT minor refactoring
Bug: 353347512
Change-Id: Ifed1b7600ca9836df147949f3740ca1e89acd04a
2024-07-23 20:16:50 +00:00
Shamali P 00d4e05072 Move widget related listeners to widget picker data provider
The change listener on popup provider was for listening to widget
updates. With the widget now updated in widgets picker data provider,
 this moves over the listeners to it.

Test: Existing tests
Flag: EXEMPT minor refactoring
Bug: 353347512
Change-Id: I163529d207ea65044f8e3d6e77e87e0e674b82be
2024-07-22 23:58:04 +00:00
Shamali P 9e7d288f67 Create a separate class for widget related methods from popup provider
Child cl removes those methods from popup provider and updates its
references

Bug: 353347512
Flag: EXEMPT BUGFIX
Test: Unit test
Change-Id: Id559e8c8d32a40adab961e7c710ec835d5a92184
2024-07-22 23:58:04 +00:00
Sihua Ma f2abd671d1 Merge "Add unit test for RoundedCornerEnforcement" into main 2024-07-19 17:13:08 +00:00
Shamali Patwa 6babde40e3 Merge "Move out picker related methods from widgets model" into main 2024-07-19 15:46:00 +00:00
Sihua Ma 045165a4ba Add unit test for LauncherAppWidgetHost
Number of methods covered: 3

Test: SysUI studio
Flag: TEST_ONLY
Bug: 353303621
Change-Id: I8fa9ed7b496baa18dac1a721c72a32814d89dd6f
2024-07-19 00:38:32 +00:00
Sihua Ma cda4805e62 Add unit test for RoundedCornerEnforcement
Number of methods covered: 4

Test: atest NexusLauncherRoboTests:RoundedCornerEnforcementTest
Test: SysUI studio
Flag: TEST_ONLY
Bug: 353303621
Change-Id: I488ce4a6617b96d4937a7030cd25831bcefadca1
2024-07-18 23:57:09 +00:00
Shamali P 54bd36ef81 Move out picker related methods from widgets model
* The WidgetsBaseEntry and related types are specific to picker UI.
So, moved them to a entry builder class.

Bug: 353347512
Flag: EXEMPT BUGFIX
Test: Unit test
Change-Id: I42b3083b42ee03dc8d548e7464689ea270a36f22
2024-07-18 18:35:19 +00:00
Sihua Ma e2dde4e468 Merge "Add unit test for CustomAppWidgetProviderInfo" into main 2024-07-18 15:47:32 +00:00
Sihua Ma b648a0f386 Merge "Add unit test for CustomWidgetManager" into main 2024-07-18 15:47:15 +00:00
Sihua Ma 1f3f951b70 Add unit test for CustomAppWidgetProviderInfo
Number of methods covered: 2

Test: atest NexusLauncherRoboTests:CustomAppWidgetProviderInfoTest
Test: SysUI studio
Flag: TEST_ONLY
Bug: 353303621
Change-Id: I4235569878a9f1c1b2ec040b26190f97d9734679
2024-07-17 23:38:33 +00:00
Shamali P 6211e86009 Consider the widget option menu choice in search results
Makes the search related code separate from popup provider.

Bug: 347288851
Flag: EXEMPT flag in sysui
Test: Unit tests
Change-Id: I4534d5f70876ec0cf4e2d78030864f78a8bfabb9
2024-07-17 22:56:58 +00:00
Shamali P 9aabb9a9cb Show only filtered / default widgets in standalone activity by default
Bug: 347288851
Flag: EXEMPT flag in sysui
Test: b/339716822 to set it up
Change-Id: I71baac8897ce600f3c588eb3d48b9677e507145b
2024-07-17 22:56:49 +00:00
Sihua Ma 71a48d9ac5 Add unit test for CustomWidgetManager
Number of methods covered: 5

Test: atest NexusLauncherRoboTests:CustomWidgetManagerTest
Test: SysUI studio
Flag: TEST_ONLY
Bug: 353303621
Change-Id: I69c9567391d3a874c7b2abcd473887194ec2dcfc
2024-07-17 22:21:40 +00:00
Stefan Andonian f50dca1138 Merge "[Test Week] Unit test for WidgetManagerHelperTest." into main 2024-07-16 23:07:40 +00:00
Stefan Andonian 19c5f7ae71 [Test Week] Unit test for WidgetManagerHelperTest.
6 public methods covered.

Bug: 353303621
Test: Unit Test
Flag: EXEMPT unit test
Change-Id: I549d97f5b57f0e6e9af44bd1695d94ebfa0538f2
2024-07-16 20:58:11 +00:00
Stefan Andonian 9fb11f4d95 Merge "[Test Week] Move ListenableHostView into it's own class for ease of unit testing." into main 2024-07-16 18:51:55 +00:00
Stefan Andonian 487a21726d [Test Week] Move ListenableHostView into it's own class for ease of unit testing.
Bug: 353303621
Test: Verified with follow-up unit test CL.
Flag: EXEMPT unit test
Change-Id: Idfdaca0bee7f162f6e6ac60b1ddb53458603c227
2024-07-16 16:50:43 +00:00
Sihua Ma 7098ba260f Add test for LauncherWidgetHolder
Number of new tested methods: 8

Test: atest NexusLauncherRoboTests:LauncherWidgetHolderTest
Test: SysUI studio
Flag: TEST_ONLY
Bug: 353303621
Change-Id: I8751c8de8d719e567775368d988794b2d7abc37e
2024-07-15 22:51:04 +00:00
Shamali P 81fc278760 Show full page view if categorized view is low density in large screen
UX prefers full page view over low density categorized view in tablets.

Bug: 347288847
Test: Screenshot (see the tablet screenshots vs foldable)
Flag: EXEMPT BUGFIX
Change-Id: I6c8ad36dc6169c65aea4e655af0542958e555669
2024-07-09 18:27:21 +00:00
Shamali P 96ebf67b9f Update the title and description provided by intent params.
Bug: 347288851
Flag: EXEMPT flagged in sys ui
Test: Manual (automated covered in b/339716822)
Change-Id: I71f21bc48fd03dbbe2b3804b7fcade5940606917
2024-07-03 15:49:32 +00:00
Shamali P 3f571468db Fix issue that ACTION_CLICK a11y action was removed from widget cell
In the past, tap didn't do anything, but now that we reveal add button
it should be kept.

Bug: 335029809
Flag: EXEMPT BUGFIX
Test: With switch access (see video)
Change-Id: I2ca9086f0dd4b0c9ac8167ab32aa278d4e2d1211
2024-07-02 20:33:43 +00:00
Shamali Patwa b8f4e16fa7 Merge changes from topic "standalone-fix" into main
* changes:
  [part 2] Update standalone picker to align widget loading and animations
  [part-1] Perform doMeasure only once in WidgetsFullSheet
2024-06-26 14:39:49 +00:00
Treehugger Robot 06020c29f0 Merge "Focus on the right pane when choosing an app on left" into main 2024-06-26 00:45:13 +00:00