Commit Graph

17875 Commits

Author SHA1 Message Date
Vinit Nayak 56392d2f65 Merge "Move updating layoutParams outside of dispatchDraw()" into main 2024-02-22 19:02:32 +00:00
Jagrut Desai 08a4e68bae Merge "Handle SystemGestureRegion in TaskbarDragLayer" into main 2024-02-22 17:55:28 +00:00
Rohit Goyal de66327e47 Merge "Bugfix: Ensure archived app icons persist when app main activity name changes post unarchival." into main 2024-02-22 17:52:02 +00:00
Treehugger Robot a5e8751f0d Merge "Merging multiple implementations of CancellableTask" into main 2024-02-22 02:54:30 +00:00
Vinit Nayak 3a8d4f518d Move updating layoutParams outside of dispatchDraw()
* LayoutParams are more single states and don't need to
be updated on each cycle of drawing
* Curious if this might also fix b/323128163

Fixes: 323128163
Test: Used logging, no more infinite calls to dispatchDraw()
Flag: None
Change-Id: Ic7211b26a7365e3fbbeef3768e4d6d9254e14ee7
2024-02-21 17:01:28 -08:00
Sebastián Franco 1c6c7346db Merge "Make sure to make WidgetResizeFrame is not accessible" into main 2024-02-21 21:03:02 +00:00
Andrew Cole ee8d92a943 Merge "Folder Previews Show Grey Pending Icon" into main 2024-02-21 20:37:17 +00:00
Jagrut Desai c8a5176bfc Handle SystemGestureRegion in TaskbarDragLayer
- Currently user can tap on taskbar icons when in persitent mode when a popup is visible on screen.
we are making it so that touch event is not performed at view level and get dismissed before at drag layer.

Test: Presubmit, Manual
Bug: 320229858
Flag: NONE
Change-Id: I9a76faa0e282317d808ba0f55b49741dc7b750a3
2024-02-21 11:35:29 -08:00
Brandon Dayauon 0fa9113028 Merge "Add home settings toggle featureflag for enablingTwoLineText" into main 2024-02-21 18:14:21 +00:00
Rohit Goyal b6b27a497e Bugfix: Ensure archived app icons persist when app main activity name changes post unarchival.
* In case app main activity changes, archived app icon should not disappear.
* We need to make sure the corresponding new intent is applied correctly to the app icon on activity name change.

Test: verified bugfix locally.
Bug: 324545643
Bug: 325458020
Flag: ACONFIG com.android.launcher3.enable_support_for_archiving DEVELOPMENT
Change-Id: I0134e57e3536d05fc96c8cfcf5f57fd8f4df5f1f
2024-02-21 13:12:02 +00:00
Shamali P ef4b102a08 Pause page scrolls while new recommendation are being applied
http://screencast/cast/NDg4NzU2MjI3NDQ3MTkzNnw5MTU1NTc4Yy1lYw
http://screencast/cast/NDk5Nzg4MzQ5MjMwMjg0OHxmZGM0MGZlYS0wMg

This cl is NO-OP for anything else using it already. Just renamed it.

Bug: 318410881
Test: Manual (see screencast)
Flag: ACONFIG com.android.launcher3.enable_categorized_widget_recommendations DEVELOPMENT
Change-Id: I55d599437b2554f58d635d11f2b603516b030f30
2024-02-21 04:15:46 +00:00
Sebastian Franco 8397965d69 Make sure to make WidgetResizeFrame is not accessible
Fix: 317170537
Test: manual testing, making sure to test the widget picker flow
and testing the reorder accessible flow.
Flag: NA

Change-Id: I94be43b8ef5c8cd8574178eec563324fc0dc08ad
2024-02-20 16:59:10 -08:00
Vinit Nayak 2b031727f0 Merge "Log split metrics through individual sessions" into main 2024-02-21 00:20:44 +00:00
Andrew Cole d462190ef2 Folder Previews Show Grey Pending Icon
When downloading an app previously the pending icon would show the full color icon when it was in a folder preview. To fix, we consolidated the logic for pending icons in PreloadIconDrawable and moved the logic of the pending state to the ItemInfoWithIcon model to represent the state of a pending application inside the model instead of in views.

Bug: b/324629535
Test: ItemInfoWithIconTest.kt
Flag: None
Change-Id: I4ffab44ddead046adcc84911039c87ea7c304e63
2024-02-20 21:15:21 +00:00
Shamali Patwa b7483c1d37 Merge changes from topic "categories" into main
* changes:
  Initial UI changes for displaying categorized suggestions.
  Use full-width two picker in both orientations in tablets
  Use derived padding instead of static 300dp for large portrait displays
  Align items in the center within each table row within suggestions.
2024-02-20 17:42:31 +00:00
Brandon Dayauon c2173aac34 Merge "Collapse private space container and animate header." into main 2024-02-19 04:21:56 +00:00
Himanshu Gupta b2ea96303c Merge "Preventing installed PS apps from moving to home screen" into main 2024-02-17 12:55:33 +00:00
Brandon Dayauon 08b06523a5 Collapse private space container and animate header.
- Just opposite of how it will expand.
- RecyclerView.SmoothScroller is needed to scroll the container.

- Need to separate the lock button because this way I can use animateLayout changes and it itself was its own drawable. Separated into icon and textView in a viewGroup.
- Give the background the 10padding on the left and right so that when in animation, the icon can adjust the padding/margins there.
- Using propertySetter to set animation
- Animates the alpha of the settings alpha

- updated test to account for the nested child views the test needs to inspect

bug: 299294792
test: manual:
Expand + Collapse Video: https://drive.google.com/file/d/1Og66eqmXv3THn0wO4_x6Tfp2AbwFWUwZ/view?usp=sharing
Flag: ACONFIG com.android.launcher3.Flags.private_space_animation TEAMFOOD

Change-Id: I96f1d172a481522d23b4cee996ddec65961fce78
2024-02-16 21:23:51 -08:00
Fengjiang Li 73ece207a2 Merge "Avoid flicker to drop a widget that needs a config activity." into main 2024-02-17 03:16:40 +00:00
Fengjiang Li 8bd66ee82d Avoid flicker to drop a widget that needs a config activity.
When dropping a widget that requires an config activity, drop a
PendingAppWidgetHostView to workspace

Adb command to try the feature:

adb shell device_config put launcher com.android.launcher3.enable_add_app_widget_via_config_activity_v2 true

Fix: 284236964
Test: manual
Flag: aconfig launcher.enable_add_app_widget_via_config_activity_v2 DISABLED
Change-Id: Ifd0be5c607a388cf8a8f6d77b46c03112e3e599f
2024-02-16 17:05:40 -08:00
Anushree Ganjam 9ea1724245 Merge "Add InteractionJankMonitor for backpress from allapps CUJ_LAUNCHER_CLOSE_ALL_APPS_BACK." into main 2024-02-17 00:23:11 +00:00
Anushree Ganjam 06c98fd685 Add InteractionJankMonitor for backpress from allapps CUJ_LAUNCHER_CLOSE_ALL_APPS_BACK.
Jank CUJ's cannot be added in LauncherState since it's aosp code.
Introduced `onBackPressComplete` method so the LauncherState subclasses can override this method to get back press complete call after back press animation is successful. Here we can add necessary jank CUJ's.

Perfetto trace : https://ui.perfetto.dev/#!/?s=3fc6eed848bdd692949ddb3afbdcdf04a7ef0d99cb9a83804ce9e1840492ed66

Test: Perfetto trace. https://screenshot.googleplex.com/5yviY5LxKusnKvF.png
Bug: 319132905
Flag: NA. Adding jank CUJ.

Change-Id: Ia418f06cb76fe4e14c2032c62c2250e9143442f2
2024-02-16 14:35:20 -08:00
Himanshu Gupta 4499fa60f9 Preventing installed PS apps from moving to home screen
During app install in PS, promise app icons and the
installed app icons are added automatically on home screen.
In this change we restrict the same.
Also, checked that enabling `PROMISE_APP_IN_ALL_APPS` still
works for PS apps after this change.

Bug: 325057835
Test: Launcher3 tests
Flag: ACONFIG com.android.launcher3.Flags.private_space_restrict_item_drag TEAMFOOD
Change-Id: Iecff850bcc1cd17a123553a4258943da1ee61fcc
2024-02-16 19:28:58 +00:00
Shamali P b3a4d65bb7 Initial UI changes for displaying categorized suggestions.
Ordering changes and some more UI changes in follow-up.

Bug: 318410881
Test: See screenshots
Flag: ACONFIG com.android.launcher3.enable_categorized_widget_recommendations DEVELOPMENT
Change-Id: I77e7f4dcdda32e2921ae56721cddbe261832f0d8
2024-02-16 18:43:20 +00:00
Tracy Zhou 0c801cbd20 Merge "Guard taskbar / navbar unification logic with whether the device is a phone on top of the flag" into main 2024-02-16 17:51:03 +00:00
Jakob Schneider 6ad28a568e Merge "Fix two flag usages that I missed the last time around when I refactored it into the utilities class." into main 2024-02-16 17:47:34 +00:00
Jakob Schneider f45d7f3450 Fix two flag usages that I missed the last time around when I refactored
it into the utilities class.

Test: N/A
Flag: NA
Change-Id: If2c0824d7dd076bda68ee7d9c4f48889f4c8f4e1
2024-02-16 13:03:59 +00:00
Tracy Zhou 89f72882ce Guard taskbar / navbar unification logic with whether the device is a phone on top of the flag
Test: Rerun the tapl tests
Bug: 325162802
Change-Id: Iffeeb0a60b634e66bc80e4ba45db816cdc8ba564
2024-02-15 22:06:33 -08:00
Sunny Goyal cc1dad0cae Merging multiple implementations of CancellableTask
Bug: 318539160
Flag: None
Test: Manual
Change-Id: Ie855427c2676e0ce76655e4dd67472c0b5e435d8
2024-02-15 13:01:10 -08:00
Vadim Tryshev 451eebd450 Adding logging for for the case whe Launcher activity is not resumed after Back
Bug: 322823209
Test: presubmit
Flag: N/A
Change-Id: I4e9b26ab142f4d69f906eeb6d5ab487babbcbca1
2024-02-15 12:39:27 -08:00
Shamali P 62339981db Use full-width two picker in both orientations in tablets
The change is really for enabling display of categorical suggestions,
so using the same flag.

Bug: 315055849
Bug: 318410881
Test: See screenshots
Flag: ACONFIG com.android.launcher3.enable_categorized_widget_recommendations DEVELOPMENT
Change-Id: Ia98fdd6b827f31a63264128617f6a16ee0716bcc
2024-02-15 18:32:21 +00:00
Shamali P 5fbb0cccad Use derived padding instead of static 300dp for large portrait displays
In tablet, portrait mode, a padding of 300dp was applied to make it
less elongated, but that doesn't scale well across different devices.

So, we use 1/6th of height as the additional padding. This fixes the
existing logic.

Bug: 318410881
Bug: 315055849
Flag: N/A
Test: Screenshot update in cl chain.
Change-Id: Ia9cfe481131f086b66f625069cbf9a7c0343c2c9
2024-02-15 18:32:21 +00:00
Shamali P 933a05a2be Align items in the center within each table row within suggestions.
When differently-sized widgets OR widgets of same size but not filling
space in previews are shown side by side, the top alignment looks odd.

Besides, in the updated UX, we want them to be center aligned.

Bug: 318410881
Bug: 319152349
Flag: N/A
Test: Screenshot update in cl chain.
Change-Id: I52cd7d6a1b5397a3c4c9dea8b072792b3211a8d3
2024-02-15 18:32:21 +00:00
Sunny Goyal 772e0127c3 Merge "Cleaning up some no-op calls during workspace binding" into main 2024-02-15 01:56:02 +00:00
Andy Wickham 1abc0a7f66 Merge "Extract TaskbarViewCallbacks to a separate class + factory." into main 2024-02-14 23:15:55 +00:00
Sunny Goyal e337a80ef2 Cleaning up some no-op calls during workspace binding
Bug: 318539160
Flag: None
Test: Manual
Change-Id: Ida21d849a06ed9c0ebf5671214dd9ee8525288d3
2024-02-14 15:10:54 -08:00
Alex Chau 76502e84f2 Merge "Refactored StateManager logs" into main 2024-02-14 17:40:08 +00:00
Sunny Goyal bbb26c51d6 Merge "Sending original motion events to launcher overlay along with inferred values" into main 2024-02-14 03:49:18 +00:00
Andy Wickham 0ae51bcdb9 Extract TaskbarViewCallbacks to a separate class + factory.
Also log long presses on the taskbar all apps button.

Test: Manual
Flag: NA
Change-Id: Id2bf194f09007bfccff9f83162e4bcfb6562580f
2024-02-13 18:51:48 -08:00
Vinit Nayak 5a9d4af170 Log split metrics through individual sessions
* Now we log the original source of the first selected app
as soon as the user selects it (previously we only did when user
selected second app)
* We log the item info for the second app to determine second
surface.
* Added new metrics to log after user has started a split session
and ended a split session
* We log different cancellation reasons (cancel button,
home gesture, general other app interruptions, etc).
* One KI/Bug: When the second app is selected via taskbar in
overview, the container will say hotseat because we are using
Launcher's logger and not Taskbar's. Taskbar's logger manually
overwrites the container in TaskbarActivityContext, we may be
able to make something hacky that can allow us to overwrite, but
that'll have to be a separate change

Bug: 322551862
Test: Logged metrics manually with event and itemInfo
Change-Id: I177623fd00ce62acf2d4ee983b58561d8c946d59
2024-02-13 17:55:08 -08:00
Brandon Dayauon c2ec07da51 Merge "Fix FastScroller jumping in recyclerView" into main 2024-02-14 00:32:26 +00:00
Sunny Goyal dc7cdd8b0c Sending original motion events to launcher overlay along with inferred values
Bug: 273828110
Flag: aconfig use_activity_overlay disabled
Test: Manual
Change-Id: I23cd72a964a647a0fd830befa096f3328e12ff8a
2024-02-13 16:26:37 -08:00
Andrew Cole 1f36803a6d Merge "Sort Apps During setApps" into main 2024-02-14 00:05:31 +00:00
Willie Koomson fda1b4b0d0 Merge "Use generated RemoteViews preview for widget picker if available" into main 2024-02-13 21:18:45 +00:00
Brandon Dayauon 6bebf0bb80 Fix FastScroller jumping in recyclerView
FastScrolling is jumping crazily when VerticalSnapPreference is set SNAP_TO_START, rather SNAP_TO_ANY may be better.

bug:321835976
Test manual video:
before: https://drive.google.com/file/d/1OOWESXjclndNgDklPq1BXR5HDehqJuPe/view?usp=sharing
after: https://drive.google.com/file/d/1O6wRx4H9R-Di-lPTOY7SwrsxrBPhXHo-/view?usp=sharing
Flag: n/a

Change-Id: I6974c842aa88f6bc7df1011c05eecfde7dad766c
2024-02-13 13:16:49 -08:00
Jakob Schneider 38e4471794 Merge "Version-2: Prioritize the session-provided icon & label for archived apps during unarchival in the iconCache." into main 2024-02-13 19:09:52 +00:00
Willie Koomson fedc18e9a8 Use generated RemoteViews preview for widget picker if available
WidgetCell will use the generated RemoteViews preview to display
previews in the widget picker. It will fallback to current preview
methods if not available.

Introduces WidgetManagerHelper.loadGeneratedPreviews as a utility
function. WidgetManagerHelper is passed into the constructor of
WidgetItem to avoid calling
context.getSystemService(AppWidgetManager.class) for each widget.

Bug: 308041327
Test: atest Launcher3Tests:GeneratedPreviewTest
Flag: ACONFIG com.android.launcher3.enable_generated_previews DEVELOPMENT
Change-Id: I37429057cda83a5321884ace2537038e050b9a58
2024-02-13 18:49:44 +00:00
Charlie Anderson e5b1215a2a Merge "Add additional unit tests for WorkspaceItemProcessor to cover shortcuts and folders. Also cleanup the test suite." into main 2024-02-13 16:51:45 +00:00
Alex Chau 4e6e1555c4 Refactored StateManager logs
- Make the log permanaent behind a DEBUG flag
- Logs are currently enabled with b/279059025 marked as the related bug

Bug: 279059025
Flag: None
Test: Manual
Change-Id: I60a75d73d40d00e7d42292f3d42cc9dd8c9b0825
2024-02-13 15:35:15 +00:00
Charlie Anderson 887f49e231 Add additional unit tests for WorkspaceItemProcessor to cover shortcuts and folders. Also cleanup the test suite.
Bug: 294386159
Test: unit tests and presubmit
Flag: N/A

Change-Id: I33370f2a060d1e07fc7dbd37cc9a883501344551
2024-02-13 10:05:32 -05:00