Commit Graph

17842 Commits

Author SHA1 Message Date
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
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
Alex Chau fba34d89e4 Merge "In bindAllApplications, only switch to NORMAL while in ALL_APPS" into main 2024-02-13 11:37:50 +00:00
Shamali Patwa 028482609c Merge "Set accessibility pane title for right pane on updating content." into main 2024-02-13 00:33:11 +00:00
fbaron 88b89d68fb Restore state of widget picker on fold/unfold
Specifically:
-keep selected tab (personal/work)
-keep search results

Fix: 323406345
Test: WidgetPickerImageTest
Flag: ACONFIG com.android.launcher3.enable_unfolded_two_pane_picker TRUNKFOOD
Change-Id: I919e59484f3af7a2b3b007f5c234055a0f7276b3
2024-02-12 21:13:46 +00:00
Shamali P 13c6727601 Set accessibility pane title for right pane on updating content.
This will let users know that content appeared on right when they
selected an option on left.

Note: This is announced _only_ when content changes.

Bug: 324073588
Test: Manual with talkback
Flag: N/A
Change-Id: Icec3242d8f250f6d19e082a39927165c7b8fc86a
2024-02-12 19:48:41 +00:00
Alex Chau 61d193821e In bindAllApplications, only switch to NORMAL while in ALL_APPS
- Otherwise, it can unexpectedly switch to NORMAL during a swipe up to Overview, causing issues with live tiles

Fix: 288557298
Test: Go to settings, change display size, immediately swipe up to Overview
Flag: None
Change-Id: I1eaf988d488c6662fd291f46a7cc0861664d8d38
2024-02-12 17:37:18 +00:00
Alex Chau 8cb873d8fb Merge "Use bigger task size in app to overview carousel" into main 2024-02-12 16:17:30 +00:00
Alex Chau beb3053f3b Use bigger task size in app to overview carousel
- Introduced carouselTaskSize that represent size of TaskView in app to overview carousel, that is bigger than size of TaskView in Overview state
- Use nonGridScale and translation to scale TaskView to the desired carousel size
- For current task, inroduced carouselScale and translation to apply similar transformation at the carousel. They will be reset in `onPrepareGestureEndAnimation` after gesture is released and form the grid. Carousel translation can be invalidated and aniamte to 0.
- Fixed current task left/right wiggle that is caused by task shrinks and translate in different direction. Pivot is now moved to top right (or top left for RTL), to align with movement of current task.
- To compensate for the pivot change, current task is translated back to the carousel position by taskTranslation, and again translated by carouselTranslation for carousel -> fullScreen scaling. A complex interpolator is introduced to make current task moves in a vertical straight line rather than a curve.
- Fixed a bug in AnimatorControllerWithResistance when scaleStartResist==scaleMaxResist that causes division by 0. For grid overview, resistance kicks in after reaching carousel size, and current task size won't reduce further
- Added PendingAnimation#addAnimatedFloat that uses animator provided by AnimatedFloat, so the animator can be canceled and reaniamte from AnimatedFloat side; AnimatedFloat now clears the property values during cancel so the canceled animator still referenced by PendingAnimation can no longer change the values

Fix: 318352235
Fix: 308643507
Flag: ACONFIG com.android.launcher3.enable_grid_only_overview TEAMFOOD
Test: presubmit
Change-Id: I2872d8b2204798fe5e05c10d08480a81e60bb498
2024-02-12 12:06:05 +00:00
Fengjiang Li 90ebc96e34 Merge "Override Launcher's window bottom inset to 0 on large screen (tablet + unfolded phone) if all display cutouts are at bottom left/right corners" into main 2024-02-11 08:48:58 +00:00
Fengjiang Li 1707575da3 Override Launcher's window bottom inset to 0 on large screen (tablet + unfolded phone) if all display cutouts are at bottom left/right corners
Bug: 321917681
Flag: NONE
Test: manual
Change-Id: I3c41d42e11413c73146c7ef59fc712971e96db19
2024-02-11 04:05:55 +00:00
Sebastián Franco dbd214225d Merge "Removing the Hotseat from the dragNdrop accessibility targets if the dragObject is a widget" into main 2024-02-09 21:25:20 +00:00
Sebastian Franco 01a134349f Removing the Hotseat from the dragNdrop accessibility targets if the dragObject is a widget
Fix: 319036474
Test: manual
Flag: NA
Change-Id: I7404c02f8ef3c0eee41694729b4d174bcea7c7d4
2024-02-09 10:40:15 -08:00
Piyush Mehrotra 7b2d84c2df Merge "Fix widget restore for pre-archived apps" into main 2024-02-09 18:23:02 +00:00
Jakob Schneider 4f5b60169d Version-2: Prioritize the session-provided icon & label for archived apps during unarchival in the iconCache.
* Also ensures that apps are sorted based on their actual name, so that
  they don't jump around when "Pending.." switches to "Downloading.."
* In case of faillure during unarchival, icons shown are reverted to that of PM supplied ones.

New UI: http://recall/-/gMbThhDGagWFqnJTbQCqSz/fPuzxUuU7cGXCNdygMkXAB

Test: atest CacheDataUpdatedTaskTest.java and locally verified.
Bug: 319495216
Flag: ACONFIG com.android.launcher3.enable_support_for_archiving TRUNKFOOD
Change-Id: I6410482706af900e273fdc6f7cf0b0692442364c
2024-02-09 13:55:41 +00:00
Uwais Ashraf c2f73d9091 Merge "App chip refactor" into main 2024-02-09 13:43:03 +00:00
Uwais Ashraf 99fdf7a75e App chip refactor
- Adds background outline replacing 2 circles + rect approach. This
enables easier shadow drawing code.
- Simplify structure of AppChipView.
- Adds an anchor View to simplify laying out of menu around app chip

Bug: 313644427
Bug: 317007147
Fix: 322760765
Flag: ACONFIG com.android.launcher3.enable_grid_only_overview TEAMFOOD
Flag: ACONFIG com.android.launcher3.enable_overview_icon_menu TEAMFOOD
Test: OverviewImageTest
Change-Id: I56c2644779863c083ae475a740a84321b1d0c396
2024-02-09 12:09:42 +00:00
Andrew Cole 8def461aa1 Sort Apps During setApps
We found this potential edge case during the creation of AllAppsSearchImageTest.
Search in all apps uses a binary search which requires the list of mApps to be sorted,
which before the function setApps did not do. This could lead to other edge cases of bugs
either in test or production.

Bug: b/318867282
Flag: None
Test: AllAppsSearchImageTest
Change-Id: Iccd57fa8a51c725e8c161cbdf96f77fdc86d42b7
2024-02-08 12:07:09 -08:00
Federico Baron 1bb90a78f6 Merge "Fix two pane widget picker bugs" into main 2024-02-08 16:58:40 +00:00
Piyush Mehrotra b2decf8046 Fix widget restore for pre-archived apps
Widgets which were expected to be restored, were missing for apps which were pre-archived.
The fix adds checks for archived apps when processing widgets and ensures that icon with cloud overlay is present on the widget.

Test: Flashed device with build containing this fix.
    Screenshot right after SuW- http://shortn/_LoLudMXEaT
Bug: 321297173
Flag: ACONFIG com.android.launcher3.enable_support_for_archiving DEVELOPMENT
Change-Id: Ic5fd6b5b2a12f7b2b053ee4ec7c5c7330f0d07e1
2024-02-08 15:50:13 +00:00
Shamali Patwa e2849a0de0 Merge "Remove the "expand/collapse" actions on the apps list in 2 pane picker." into main 2024-02-07 22:53:34 +00:00
fbaron 88676ba7bb Fix two pane widget picker bugs
Here we:
-Move no widgets text outside of the right pane so that we can center it
-setInset and change the clipping of children in the views so that we can fix the padding at the bottom when we have 3 button nav
-create selectedHeader where we keep track of the currently selected header in order to refresh the widgets for the selected header on rotation
-when widgets are bound we check if there are no recommended widgets, and if there aren't we select the first visible header

Fix: 324002996
Fix: 324001940
Fix: 323417968
Fix: 323460545
Fix: 323409306
Test: WidgetPickerImageTest
Flag: NONE
Change-Id: Ibd85cb086bb6c2aede6cf79da0c688a1fdaec4e5
2024-02-07 22:36:59 +00:00
Himanshu Gupta ebc985850d Merge "Refreshin App Market Intent on Plus Icon Click" into main 2024-02-07 20:44:26 +00:00
Anushree Ganjam faa35a81bb Merge "Add Unit tests for System Shortcut." into main 2024-02-07 19:38:32 +00:00
Helen Cheuk 422b9739e4 Merge "Draw focus outline in search app result" into main 2024-02-07 17:19:05 +00:00
Federico Baron 789ab23ce1 Merge "Align workspace and hotseat icons in landscape" into main 2024-02-07 16:16:16 +00:00
helencheuk bbd54b3e32 Draw focus outline in search app result
Before:
https://screenshot.googleplex.com/9qoPoBNZkDY94gy
https://screenshot.googleplex.com/7XVFxwj8d6UqLUs
https://screenshot.googleplex.com/4KtQcma26eSdBnb

After:
https://screenshot.googleplex.com/BxfNAJGqXhyGBbJ
https://screenshot.googleplex.com/8EMKUQW4ubXHdDd
https://screenshot.googleplex.com/32KBfdj4preL8H6

Bug: 319454774
Test: Manual, open all apps, type some word and press enter to search. Navigate to the search result below and outline should appear
Test: will add screenshot test in b/318360469
Flag: ACONFIG com.android.launcher3.enable_focus_outline Development
Change-Id: I8caef8dd9e590d43e05baa78cebee73d21b84acf
2024-02-07 15:07:43 +00:00
Vinit Nayak 44911450c6 Merge "Update test infra to allow split placeholder view in all apps" into main 2024-02-07 14:57:19 +00:00
Himanshu Gupta 19f7a8a5ed Refreshin App Market Intent on Plus Icon Click
Currently the App Market intent is loaded statically into
Launcher, once during start. Sometimes, this causes the app
market activity start to be blocked, resulting in no action
from button tap.

To fix this, we hot-reload the intent when the plus button is
clicked.

Bug: 323189130
Test: Launcher3 test.
Flag: ACONFIG com.android.launcher3.Flags.enable_private_space TRUNKFOOD
Change-Id: I563d29838a43644ba8e0830b39d4f4ef8c60aeb6
2024-02-07 09:26:37 +00:00
Vinit Nayak fad0709510 Update test infra to allow split placeholder view in all apps
* Previously we assume the split placeholder view shouldn't be
present in any states except launcher split selection, however
with contextual that changes.
* Now we only ensure that view isn't there in all apps when
we are not in split selection.

Test: Test runs and passes locally
Fixes: 323418145
Change-Id: Ida92030f9b139532ebb09c1d2646795bbb940bfc
2024-02-07 03:32:02 +00:00
Fengjiang Li 7f827e1527 Merge "[Predictive Back] Replace legacy flag with aconfig flag in launcher" into main 2024-02-06 21:57:34 +00:00
Shamali Patwa efebbb21fe Merge "Update prediction task to provide categorized suggestions." into main 2024-02-06 21:36:14 +00:00
Sunny Goyal d1176bccf9 Merge "Using system API for rotating DisplayCutout instead of rotating it ourselves" into main 2024-02-06 20:20:47 +00:00
Shamali P 55fded376b Remove the "expand/collapse" actions on the apps list in 2 pane picker.
In a single pane picker, apps list is expandable / collapsable, but,
its not applicable for 2-pane variant. in 2-pane one, it should just
say "double tap to activate".

Also opened b/324073588 to make it clear from a11y perspective that it
is two pane and on click, right pane change should be announced.
(just like it does in settings with talkback).

see screencast/cast/NTQ1Mjk0MjIzOTg1ODY4OHw4OTc5ZjAzNS0wOQ

Bug: 319195592
Flag: None
Test: WidgetsListHeaderAccessibilityTest & manual.
Change-Id: I9ae3fbacc29364bd7459f6e6d85e0a1e919de3f8
2024-02-06 20:07:41 +00:00