Commit Graph

1025 Commits

Author SHA1 Message Date
Andras Kloczl 0056e95d8e Change home dragging logic for dead zones
- If a dragged item is not over a valid drop target
then we don't highlight anything and on drop we move
it back to its original position.
- Instead of checking if the dragged item is over the
hotseat view, now we check if the item is over the hotseat
shortcuts.
- Smartspace is a dead zone

Test: drag items from different workspaces, allapps, widget
  picker etc. to all parts of the screen and verify which
  view is targeted and where the item gets dropped.
  Check on phone/foldable/tablet.
Bug: 228201267
Change-Id: I18de576ea300d58ae645e511b238e0b946b5595a
2022-04-26 16:28:11 +01:00
Sihua Ma da8759ae29 Showing alert dialog when shortcut version higher than the App
Creating an AlertDialog when the disabled reason of the shortcut is DISABLED_REASON_VERSION_LOWER, which happens when the backed-up shortcut was created from an application that has a version higher than the one installed on the device. The AlertDialog will direct the user to the play store and update the application.

Test: Manual
Fix: 224796975
Change-Id: I0125fada60b48176775de6782ba03ee6790904aa
2022-04-14 01:34:44 -07:00
Andras Kloczl 07111f25f4 Change page snapping logic for large screen devices
Use 15% of the screen width instead of 40% of the page
width currently used for phones.

Test: try page snapping on Launcher home
Bug: 213305066
Change-Id: I6a525100bf942c5089f580a27250c425ca95cf00
2022-04-12 20:23:23 +01:00
Shikha Malhotra 0f2e1b6714 Added provision to switch the PageIndicator in specific Launchers
Please see the related CL in LauncherLilyGoogle where pagination is
implemented as persistent dots.

Bug: b/218187058
Test: manually test thet Launcher3 features work correctly
Change-Id: Ic20aa92249b1bbe3c4ab7810683b54648a181722
2022-04-08 11:47:46 +00:00
Pat Manning 08610ca583 Adjust workspace grid and cellLayout paddings.
This is a partial revert of ag/17540098

Bug: 202971709
Test: manual
Change-Id: Ia49e48f336bcca906aae6b014d88f10421b83d0c
2022-04-06 13:10:50 +01:00
Stefan Andonian bae4a72d30 Merge "Show correct drop targets for All-apps predicted item drags." into tm-dev 2022-04-04 20:13:29 +00:00
Stefan Andonian c62a4dae5f Show correct drop targets for All-apps predicted item drags.
This change fixes a bug where, after a user drags and drops a
predicted app from the all apps page once, dragging that item again
results in the "Remove" drop target being shown rather than the
"Do Not Suggest" drop target.

Bug: 221057278
Test: Verified correct drop down targets were present after fix when
dropping all apps prediction item on workspace multiple times in a row.

Change-Id: I95940eeebbd547861fcdfbb5d02769b82446184d
2022-04-04 17:32:32 +00:00
Pat Manning 5575dfeaad Merge "Revert "Adjust edit state drop targets, workspace scaling, and m..."" into tm-dev 2022-04-01 02:05:41 +00:00
Sebastian Franco b6b4069aa4 Fix widget drop animation in 4x5 grid
For the 4x5 grid we add insets to the widget and the
 animation wasn't accounting for it.

I'm using this shell function to quickly change the
animation speed

```
function anim-speed() {
	adb shell settings put global window_animation_scale $1
	adb shell settings put global transition_animation_scale $1
	adb shell settings put global animator_duration_scale $1
}
```

anim-speed 1 # for regular speed
anim-speed 10 # for really slow speed

Fix: 194227752
Test: Put down a widget in 4x5 and the animation should match,
sometimes is to fast but you can slow the animations with adb and see
the difference

Change-Id: I182729de39c0d0b12231d07e337dddca6fccf5c0
2022-03-30 21:18:18 +00:00
Pat Manning e372366bb3 Revert "Adjust edit state drop targets, workspace scaling, and m..."
Test: manual

Revert submission 17004675-edit-state

Reason for revert: b/226274309
Reverted Changes:
Ib50509b6f:Adjust edit state drop targets per device type and...
Id1817cd3c:Adjust edit state drop targets, workspace scaling,...

Change-Id: I22863d7735f49f6a040a17cf56cc66f20a3e0986
2022-03-28 08:24:54 -04:00
Pat Manning 1acf2b18af Adjust edit state drop targets, workspace scaling, and margins per device type and orientation.
Bug: 202971709
Test: manual
Change-Id: Id1817cd3c7e7bfa5b0aa8aa20565b791ad871f64
2022-03-18 17:43:28 +00:00
Jon Miranda 7ebe209c21 Add debug logs for bad launcher state.
Bug:223498680
Bug:221658803

Test: manual
Change-Id: I138a7ab031269009fa8ca492cd0bd48085aa4e68
2022-03-10 20:25:38 +00:00
Adam Cohen f2f302bcf6 Fix DnD logic for determining current drag screen / panel
=> we want to use the extremum of finger location and object
   center for snapping to a new screen (max when snapping to right,
   min when snapping to left)
=> when selecting a panel within the current screen, we want to
   rely strictly on the object center to determine selection; there
   is plenty of space to be consistent here, and extremum logic
   could cause thrashing back and forth with no page movement.

Test: Manual. See videos in b/221104663. On two-panel and one-panel
      test dragging a widget between different screens with
      different starting positions of where the widget goes down.

Bug 221104663

Change-Id: I8f0f13f07b753752087a90c4bacb76cfbf7aa5bf
2022-02-24 16:13:12 -08:00
Andras Kloczl 2dacbee028 Fix incorrect accessibility announcement on two panel home
- Divide total pages by panelCount if two panel is active
- Increment target column when moving an item to right panel

Test: manual
Bug: 200009004
Change-Id: Ia8d2d760dc5e8b413e5b1150c049f7fa3ec26513
2022-02-23 22:35:12 +00:00
Schneider Victor-tulias bce63e06ed Merge "Fix taskbar icon dragging issues" 2022-01-25 19:03:06 +00:00
Josh Tsuji 231c9229bf Adds Launcher in-window animations, and reworks how the unlock flow works.
Bug: 197636887
Test: atest SystemUITests
Change-Id: Idab7249e4a761040863578d546f0831794efaf4a
2022-01-21 10:41:00 -05:00
Schneider Victor-tulias 312b68fde4 Fix taskbar icon dragging issues
- Fixed icons disappearing when initiating dragging
- Fixed incorrect icon location when initiating dragging after rotating the screen to an orientation other than what launcher started in

Fixes: 215418478
Fixes: 214025075
Test: dragged icons from the workspace and taskbar
Change-Id: I848138af28802f7d806708c77c25b8de307c70d8
2022-01-20 14:56:01 -08:00
Alex Chau 9fee3fd379 Allow column size of search container to be configured
- Added numSearchContainerColumns in grid-option to control search container's width, defaults to numColumns if not specified

Bug: 210127246
Test: manual
Change-Id: I0c2594f0eeab8844dcff9468e603282a09fae0bd
2021-12-10 17:55:51 +00:00
Jon Miranda 52ee4ec4aa Merge "Play return to icon animation if user swipes back to All Apps." into sc-v2-dev 2021-12-06 18:17:52 +00:00
Jon Miranda c4a99bff04 Play return to icon animation if user swipes back to All Apps.
Bug: 205187702
Test: open app in all apps, swipe back to go back to all apps
Change-Id: I9e79c8365fdf667321343aaac2f8d77cb60a316a
2021-11-23 11:27:42 -08:00
Tony Wickham 49da26f636 Merge changes I36871463,I691a5cbb,I62105c1c into sc-v2-dev
* changes:
  Update reorder and folder creation radii
  Fix misaligned folder creation drag over target
  Update CellLayout.DEBUG_VISUALIZE_OCCUPIED to include drag over targets
2021-11-17 22:08:28 +00:00
Andras Kloczl 953eb8041e Fix LauncherProvider newScreenId issue
Remove maxScreenId from LauncherProvider and whenever we need
a new screenId, query the database to calculate a new screenId.
Also converted and refactored AddWorkspaceItemsTaskTest
and added some extra test cases.

Test: manual & AddWorkspaceItemsTaskTest.kt
Bug: 199160559
Change-Id: I185f6823fed171d778af0130497f5ffaf89c0a70
2021-11-12 19:56:07 +00:00
Tony Wickham 1278490ac0 Update reorder and folder creation radii
- Before, dragging anywhere in the cell (including space between cells) would trigger a reorder. Now, we compute the radius to the closest cell edge
- For creating folders on icons, we split the difference between the reorder circle (above) and the icon size

Test: enable DEBUG_VISUALIZE_OCCUPIED and manually drag to ensure works as described above
Bug: 204406063
Change-Id: I368714634ed42a930fd16849f2bde1589df1aa63
2021-11-08 12:04:30 -08:00
Tony Wickham 3cfa5edc93 Fix misaligned folder creation drag over target
Previously, the folder creation distance was based on the center of the cell, rather than the *visual* center, i.e. around the icon. Updated to use existing getWorkspaceVisualDragBounds() to handle this.

Test: with DEBUG_VISUALIZE_OCCUPIED=true, ensure green circles are centered around the app icons; manually drag and drop to check the drawn regions are correct
Bug: 204406063
Change-Id: I691a5cbbfc18c88436b88b7bda42f7920b9a5750
2021-11-04 13:40:05 -07:00
Tony Wickham 0ac045fe23 Update CellLayout.DEBUG_VISUALIZE_OCCUPIED to include drag over targets
Instead of just drawing the occupied cells in red, now we draw the occupied cells based on drag over regions:
- Dragging over the red regions will reorder the cell
- Dragging over the green regions will create/add to a folder

Test: visual with internal flag on
Bug: 204406063
Change-Id: I62105c1c1a1101b6cd6f9fd222980d03ba6d8b84
2021-11-04 13:27:56 -07:00
Steven Ng 91b46d1ba3 Update all home screen widgets size upon workspace inset change
Test: Add a clock widget to the home screen. Then, change the navigation
      gesture. Go to home screen to confirm the clock widget is rendered
      as expected in the portrait. Then, rotate the device to landscape.
      Confirmed the clock widget is rendered correctly in the landscape.
Fix: 202837404
Change-Id: I93b70c53f10c8150131b183defc8baf01e5924a8
2021-11-04 12:00:03 +00:00
Alex Chau 920be89b26 Clean up IllegalStateException for page pairing
Fix: 198820019
Test: manual
Change-Id: Ic691f781b20d664c57a26370aae479ab68508303
2021-10-25 15:20:16 +01:00
Schneider Victor-tulias 16e04e29d2 Generalize the icon popup menu types.
Generalized popup menu types and logic to allow wider uses outside of launcher.

Bug: 198438631
Test: long pressed launcher icons and pressed menu options
Change-Id: Iadcbb1796496c0061dcee362784e426ff55dc94a
2021-10-19 16:06:16 -07:00
Thales Lima 9a6b20f0cb Merge "launcher: create more space options" into sc-v2-dev 2021-10-05 15:38:57 +00:00
Thales Lima 78d00adcbe launcher: create more space options
The grid doesn't have a constant space between cells anymore, so we need
new attributes for the different spaces in different situations.

Bug: 191879424
Test: checking cell size and extra space in dumpsys
Change-Id: I4b6aae5b3fea281490c00cd13d0cd3a25372f21b
2021-10-05 12:26:05 +01:00
sfufa@google.com ca76de0e6e Support drag/drop on search results
Bug: 199341710
Test: manual
Change-Id: I9879c2a3769d4f930ab0289d2f26e4757971549d
2021-10-04 13:14:12 -07:00
Thales Lima 7a6752da51 launcher: create paddings for foldables
This creates a new padding file that bring some foldables up to spec
with VisD. For 2 panel layouts it now uses workspace margin instead of
cell layout padding.

Bug: 191879424
Fixes: 200035429
Test: checking paddings in HSV
Change-Id: I11b8e1afd76f535368d4c26e31630ce496171e13
2021-09-29 11:53:29 +01:00
Tony Wickham 6b8a139581 Merge "Remove nonOverlappingTaskarInsets" into sc-v2-dev 2021-09-22 22:44:45 +00:00
Tony Wickham 21970ccd29 Remove nonOverlappingTaskarInsets
- Override our insets in LauncherRootView to explicitly only care about nav bar size, ignoring any insets due to taskbar.
- Previously we used nonOverlappingTaskbarInsets to belatedly subtract from measurements in e.g. DeviceProfile, but now we can revert most of those calculations since we effectively subtract taskbar insets at the root.

Test: visual in different orientations and navigation modes, and testPressHomeOnAllAppsContextMenu to ensure REQUEST_WINDOW_INSETS still works for automated tests
Fixes: 200607741
Change-Id: I8de5a268c686a1354b4beaa30e101bab6bed5af9
2021-09-21 13:52:43 -07:00
Steven Ng 3bbebe2439 Merge "Add an animation for invalid widget resizing in 2 panel UI" into sc-v2-dev 2021-09-21 09:27:44 +00:00
Steven Ng 4b346108d1 Add an animation for invalid widget resizing in 2 panel UI
Test: manual
Fix: 197509872
Change-Id: Ibcfae107e7f4b3bfbc562d4a6436f4b9237db122
2021-09-20 15:33:23 +01:00
Thales Lima d1df5fcaac launcher: use scalable grid in 4x4
Many changes are required to make scalable displays work correctly on
foldables. This first one is making sure that the correct number of
columns is used when calculating the used width for scalable grid. The
spaces around the workspace are not final yet.

Bug: 191879424
Test: manual
Change-Id: Idc41ed004580f1f86d8f9595d005abc72301b1e3
2021-09-17 10:43:42 +01:00
TreeHugger Robot b94401646d Merge "Fix wrong screenId when committing emptyScreens" into sc-v2-dev 2021-09-10 15:36:22 +00:00
TreeHugger Robot 81a3e6e7e7 Merge "Fix two dragging related bugs in Launcher home" into sc-v2-dev 2021-09-10 13:39:26 +00:00
Alex Chau 1d5929dd82 Fix wrong screenId when committing emptyScreens
- Need to increment newScreenId whenever the screen is already bound
- Also cleaned up placeholder on w1 as we now have page pairing logic

Bug: 199160559
Bug: 175939730
Fix: 199131780
Test: drag and drop after clear data
Change-Id: Ic42f3bddfa6cf11b8b726d6181ed2477defde19d
2021-09-10 14:36:36 +01:00
Andras Kloczl 9732df1add Fix two dragging related bugs in Launcher home
- accessibility bug: 199394124
- dragging on side bug: http://shortn/_LFBdIllupk

Test: manual
Bug: 199394124
Change-Id: I478e31332119f337bf0f8b6c92926845eb4889c4
2021-09-10 12:16:03 +01:00
Thales Lima c2a6f6f4ae launcher: correct page spacing for multiple panels in RTL
Fixes 199043583
Test: manual testing in unfolded state in portrait and landscape

Change-Id: Idf5bdabb50742498701681e4654e72260054ab47
2021-09-09 19:13:19 +01:00
Andras Kloczl d888e77145 Fix crash when hotseat icon is dragged onto Workspace
Test: manual
Bug: 198820019
Change-Id: I53bb858feb7aad45472803b133ef3d026dd9f319
2021-09-06 16:43:01 +01:00
Alex Chau 62f129b878 Fix getPagesToBindSynchronously returning wrong page pairs
- Use WorkSpace.getPagePair instead for accurate value

Bug: 191657065
Test: manual
Change-Id: I584f1705fb5ed2f0d2bd776eb6cf4f60c69238ac
2021-09-06 10:58:48 +01:00
András Klöczl 4926bf706a Merge "Add two extra empty pages on two panel launcher home" into sc-v2-dev 2021-09-05 21:05:53 +00:00
Andras Kloczl 408a54f2e7 Add two extra empty pages on two panel launcher home
Add a new screen ID for the second extra empty page
and add that new screen as well when the existing
extra empty page is added so that users can put items
on both sides of Workspace.

Test: manual
Bug: 196376162
Change-Id: I0b4f2e818407a10d8a7c032788a7bd7a61267779
2021-09-05 22:03:07 +01:00
Sunny Goyal bb0305614c Preventing workspace scroll over QSB area
Bug: 189792966
Test: Manual
Change-Id: Ie2fe8e7fb6c80b9cc19d517fe828cf26f54f6f09
2021-08-27 10:38:30 -07:00
András Klöczl 701c76013c Merge "Two panel home empty page removing logic change" into sc-v2-dev 2021-08-26 11:09:05 +00:00
Andras Kloczl 8c574de97f Two panel home empty page removing logic change
- Don't remove a single page if it's empty, only if both pages are empty.
- Add back empty pages after they were removed while the phone
  was on single panel home.
- On two panel home don't add new workspace items onto the second screen

Test: manual
Bug: 196376162
Change-Id: I4c54ffa3b359a236deb3ab67adb54111e77ec896
2021-08-26 12:06:50 +01:00
Thales Lima 653ae0a524 Merge "workspace: get the correct page when setting paddings" into sc-v2-dev 2021-08-25 11:54:13 +00:00