Commit Graph

1135 Commits

Author SHA1 Message Date
MrSluffy a8055385bb Fixed null object treference on A10
- Closes : #4553
2024-08-18 12:26:49 +08:00
MrSluffy 90ecc23782 Initial implementation wallpaper blur 2024-07-28 18:46:37 +08:00
Daniel Hauck 0390df7bfe Add options for unlimited and forced widget resize (#4170)
* Add option to make all widgets resizable.

* Split setting for unlimited size and forcing.

* Update labels and add description to settings.

* Fix build error.

---------

Co-authored-by: SuperDragonXD <70206496+SuperDragonXD@users.noreply.github.com>
2024-04-03 19:32:54 +08:00
MrSluffy 61055a6785 Fixed hotseat icon crop swiping app to home
- Closes : #3939
2024-01-29 19:16:54 +08:00
MrSluffy 32922a2e02 Fix conflicts 2024-01-08 16:03:01 +08:00
Goooler 20c884d972 Merge tag 'android-14.0.0_r21' into 14-dev-merge-launcher3
https://android.googlesource.com/platform/packages/apps/Launcher3/+/refs/tags/android-14.0.0_r21

Android 14.0.0 release 21
2024-01-08 14:45:36 +08:00
John Andrew Camu abfc4e18b1 Allow placing widget in hotseat (#3930) 2024-01-02 09:23:33 +08:00
John Andrew Camu afb5e37146 Add option to disable dock (#3880)
* Add option to disable dock

* Fixed styling

* Apply suggestion by @Goooler

* Apply suggestion by @SuperDragonXD

* Fixed shrink layout

* Apply suggestion by @suphon-t
2023-12-19 20:24:12 +08:00
MrSluffy e28d20dde3 Fixed hotseat spacing 2023-12-17 18:03:59 +08:00
MrSluffy de130cc611 Revert "Replicate Pixel Launcher"
This reverts commit 53a107f61c.
2023-12-17 17:34:29 +08:00
Suphon Thanakornpakapong 84274f1ae3 Fix Feed scroll animation 2023-12-17 15:29:08 +07:00
MrSluffy 53a107f61c Replicate Pixel Launcher
- Add workspace from Pixel Launcher
2023-12-17 10:31:01 +08:00
MrSluffy cc8f9828ab Merge branch 'heads/android-14.0.0_r18' into 14-dev 2023-12-16 17:18:13 +08:00
MrSluffy 32700b0100 Merge branch 'android14-release' into 14-dev 2023-12-13 18:47:55 +08:00
John Andrew Camu 5931c9afec Fix crash a9 (#3836)
* Fix crash on Android 9 (#3808)

- Initial support for A9


Co-authored-by: John Andrew Camu <werdna.jac@gmail.com>
Co-authored-by: Rafael de Moura Dev <93414086+Rafael2616@users.noreply.github.com>
2023-12-09 14:13:47 +08:00
MrSluffy 21b56cebfc Aligned pageIndicator when qsb is disabled 2023-11-08 20:16:48 +08:00
MrSluffy afbba27075 Use mFirstPagePinnedItem instead adding mQsb
This fix the faulty merge of A13 and reduce conflict when A14 merge: https://android.googlesource.com/platform/packages/apps/Launcher3/+/refs/heads/main/src/com/android/launcher3/Workspace.java
Fix issue At glance can't scroll vertically if it has 2 or more pages
2023-11-05 10:31:47 +08:00
MrSluffy acb3afa1f3 Properly set at glance cellHspan 2023-11-01 14:51:38 +08:00
MrSluffy 19bf26dd5a Merge branch 'aosp-13' into 13-wip 2023-10-21 09:52:01 +08:00
Sebastian Franco ddd0450f6b Remove odd screen ids when isTwoPanels is true
We where adding more CellLayouts but they where later
removed by removeExtraEmptyScreenDelayed but when rotated
the pagination animation is created before they are removed.

With this change the extra CellLayouts won't be added in the first
place.

Fix: 291822492
Test: RoerderWidgets
Test: FoldableItemsIntegrity
Change-Id: I561d2ce961a7ecc50f7a8c99c4acc44262b2e211
2023-08-18 12:51:00 -07:00
Sebastián Franco 1f4d56c01e Revert "Remove flags ENABLE_TWO_PANEL_HOME FOLDABLE_WORKSPACE_REORDE and FOLDABLE_SINGLE_PAGE"
This reverts commit 76a1ceb5f2.

Reason for revert: Add flag back to turn it off for further testing

Bug: 270395274
Merged-In: I10b9e99734b14cbbe8d1190300493099a1f28a24
Change-Id: I10b9e99734b14cbbe8d1190300493099a1f28a24
2023-08-09 20:43:47 +00:00
Sebastian Franco 76a1ceb5f2 Remove flags ENABLE_TWO_PANEL_HOME FOLDABLE_WORKSPACE_REORDE and FOLDABLE_SINGLE_PAGE
Fix: 270392643
Fix: 270395070
Fix: 270395274
Test: atest FoldableItemsIntegrity
Change-Id: I2d7af312da8aeb070588ca94a2a256d2def65eeb
2023-06-12 18:05:22 -07:00
Sunny Goyal 7b9e28f152 Removing all usage of LauncherProvider
Also fixing a race condition in model when an item update/delete task
gets queued and executed after the model has reloaded (making the old
data obsolete)

Bug: 277345535
Bug: 263079498
Test: Presubmit
Flag: N/A
Change-Id: Ibd4bdbb3eece05b38b73a22a4be5f368df3754f0
2023-06-07 12:57:13 -07:00
Kateryna Ivanova 7120373bbc Migrate Interpolators from Launcher3 to the public animation library
Test: atest
Bug: 271850966
Change-Id: Iba999f2e753764a37d35e508e707df02388432e9
2023-05-30 07:20:38 +00:00
Sunny Goyal e274d97fe5 Removing support for lagacy shortcuts
> Addition/removal of  shortcus is already removed. This just
  cleans up the unused code path

Bug: 275875209
Test: Updated tests
Flag: N/A
Change-Id: I8ab7f57b693f996920e50e8beecafcffab5167e9
2023-05-17 09:20:45 -07:00
Charlie Anderson afb447ee0d Merge "Adding a new Edit Mode LauncherState" into udc-dev 2023-05-16 18:42:34 +00:00
Charlie Anderson 438d405aab Adding a new Edit Mode LauncherState
- Edit Mode doesn't close after dragging / dropping an app
	- Edit Mode can be entered through options popup menu, Spring Loaded still entered by dragging items
	- Adds new onLeavingState call to launcher states to cleanup changes

Bug: 279590398
Flag: MULTI_SELECT_EDIT_MODE
Test: manually tested the new state with flag on/off

Change-Id: If4550037f9659dcb8cd8b1943388d1ec5d55fa29
2023-05-12 14:54:45 -04:00
Brandon Dayauon e63401e711 Separate animations and add dragOffSet points in dragOptions
For 1, when animateShift() is called shiftAnimation() is the only thing needed.
2, by having point saved in preDragCondition, we can use that to update the drag layers and not have to
modify registrationX/Y later

Removed dragVisualizedOffset since it does not do anything.

There is an issue that also needs to be fixed if user decides to long click
on a search result and let go, the icon flashes at the touch point when you let go.. so we check when mContent can be shown in DragView
depending on if there is dragOffset.
If there is dragOffset, set mContent to invisible.
If there is no dragOffset, set mContent to visible because it doesn't matter as the original content is at the same spot.

bug: 245659929
test: manual: video: https://drive.google.com/file/d/1JQ0pud31HU0WlrqecX0v1cdPKQ37jQCf/view?usp=sharing
Change-Id: I4d2276b9c43e1e92c45d8538b8dde70baa84a5e8
2023-05-11 10:50:17 -07:00
Sunny Goyal 6c304b157d Always insetting the widget by a minimum of 6dp
Removing default widget padding logic. Also widget padding it applied
at ShortcutAndWidgetContainer so that the widgetView always has the
correct size.

Bug: 274826296
Bug: 257589413
Test: Verified using screenshots
Flags: N/A
Change-Id: Id4b5e94db6ec7b2aa3dca87b1e9ccc831b608cac
2023-05-03 12:18:33 -07:00
fbaron e74256bba8 Remove unused code for old mult select design
We previously made a few CL's guarded under flags for the multi select feature. We ended up having to halt progress on this, and now that we're starting again, the design is different and we are using a new flag. Here we get rid of the unused code and flags

Bug: 277617038
Test: Verify everything still works normally, everything was guarded under flags that were off so there shouldn't be any changes
Change-Id: I2f57d1f67aa2a8cf83287f6f3df9fa6c46dbf0ab
2023-04-10 14:55:41 -07:00
Tracy Zhou a33fb69603 Disable 3-finger workspace scroll
Fixes: 274474023
Test: 3-finger horizontal scroll on the workspace doesn't do anything
Change-Id: I32ade8a5c26eae43f5ce9c8c71d47ed0d1abd5a2
2023-03-21 17:17:35 -07:00
Sunny Goyal 239d6e9b8d Adding support for customizing shortcut pinning logic
> Allowing support for overring shortcut badge
> Updating pendingShortcutInfo so that the
  handler can be easily overridden

Bug: 268253894
Test: Verified on device
Change-Id: I3184cb6494bc98c7eed33798b35b4e6e6a1e7ddc
2023-02-17 18:07:23 +00:00
Sebastian Franco 1c017d5d58 Fix foldable single page bug
I did a last minute change and uploaded the wrong branch.

Bug: 268356439
Change-Id: Ia11ce681d57b7a637c01b2155b16486cf5fd648f
2023-02-08 18:29:36 +00:00
Sebastian Franco 09589326db Simulating a split screen CellLayout using one CellLayout
Test: atest ReorderWidget
Fix: 188081026
Change-Id: I8eda5f77c11dc2625ae1f028d07539c28018fb55
2023-02-07 17:03:22 -08:00
Sunny Goyal 669b71f5b3 Introducing CellPosMapper which allows mapping between UI position
and model position

Test: atest CellPosMapperTest
Bug: 188081026
Change-Id: If5c6b3df5ad240317bb535c675f6ead94084238e
2023-01-30 12:17:09 -08:00
Goooler 6c073ae8b0 Check contentViewParent nullable in Workspace (#3271) 2023-01-20 17:04:56 +08:00
Sebastian Franco 877088e6c3 Change the access of cellX/Y of CellLayoutLayoutParams to private
Bug: 188081026
Test: no op change, should compile
Test: ReorderWidgets
Change-Id: I20367974e5a4cead406e18eb66dafd4d59651b2a
Merged-In: I20367974e5a4cead406e18eb66dafd4d59651b2a
2023-01-13 18:25:10 +00:00
Sebastian Franco f34f35fddb Printing the workspace items to improve flake investigation.
Recording the screen to investigates flakes on ReorderWidgets
is really useful but it requires changing the code for that and
storing the video and most of the time the useful information
is just the end state so by logging the end state makes resolving
flakes easier

Fix: 261877803
Test: atest ReorderWidgets
Change-Id: If5d9745ebb57826a55b5df9d3599eed56c48298f
2023-01-06 12:29:11 -06:00
Sebastian Franco 5356ff955c Creating a new alarm when drag X,Y change
If the user is changing the X and Y of the reorder, wich requires
the user to move at least one Workspace cell from the previous
position, then it doesn't make sense to wait for the previous alarm to finish
to start a new reorder.

Also, I added a new test to run on foldable devices.

Fix: 259995663
Fix: 259295374
Test: atest ReorderWidgets (it mostly fails on postsubmit)
Test: modify ReorderWidgets.fullReorder to run 20 times and it should work, before the chagne it would fail.
Change-Id: Ic6b436ea1088f8092c849e9791862947e9035c9f
2022-12-05 16:37:45 -08:00
Sebastian Franco 2ceb3b5088 Adding screen ID parameter in CellLayoutLayoutParams
Bug: 188081026
Test: launcher compiles, this test doesn't change existing logic only the model
Change-Id: I7bcf6452d5ecb9b50914defc311ad06839220c92
2022-12-02 13:40:34 -08:00
TreeHugger Robot 691c6e511f Merge changes from topic "revert-20479526-revert-20427045-258023561-BPDASTWITO-FBDWZBDEFC" into tm-qpr-dev
* changes:
  Fixing the revert by not continuing the reorder if the solution is null.
  Revert "Revert "Reorder widgets no longer overlaps when no space..."
2022-11-22 21:18:42 +00:00
Xiaowen Lei 6d66ad20cf Fix issue in RTL where swipes on Launcher Smartspace are intercepted.
The `+ getScrollX()` translation is a duplicate, because
`mapCoordInSelfToDescendant` also does it internally. Same for the `+
getScrollY()`.

This wasn't an issue in LTR because the top left corner of the root view
is the same as the top left corner of the first page.  `getScrollX()`
returns 0 in that case.

In RTL, the second page is to the left of the first page. If the touch
is on the first page, `+ getScrollX()` translates it outside of the
first page. This incorrectly sets mIsEventOverFirstPagePinnedItem to
false, leading to the swipe being intercepted.

Bug: 240380590
Fix: 240380590
Test: manual
Change-Id: I51f534695401ce527da8d2158130a4d54b086f3d
2022-11-21 23:52:20 +00:00
Sebastian Franco 02b4711e74 Fix issue where the solution is not updated when the grid is empty
Test: Manually move widgets and shortcuts around and the position should match the animation
Fix: 259502044
Change-Id: I20a98f9366394c840bb3cd0577de26a181a229ac
2022-11-17 14:23:09 -08:00
Sihua Ma c6bd4ad21f Merge changes If022ec8d,I34341937 into tm-qpr-dev
* changes:
  Move LauncherWidgetHolder to widget package
  Move most of the functions in LauncherAppWidgetHost to LauncherWidgetHolder
2022-11-17 01:46:55 +00:00
Sihua Ma 8bbfcb6581 Move LauncherWidgetHolder to widget package
Making LauncherAppWidgetHost package-private as well

Bug: 235358918
Test: N/A
Change-Id: If022ec8d429579a972991872b2dc11db76719341
2022-11-16 14:31:14 -08:00
Sihua Ma aa2b872d1c Move most of the functions in LauncherAppWidgetHost to LauncherWidgetHolder
Test: N/A
Bug: 235358918
Change-Id: I343419376491203a195154f2766b12e5def38879
2022-11-16 14:30:08 -08:00
Sebastián Franco f9a6ac241a Revert "Revert "Reorder widgets no longer overlaps when no space..."
Revert "Revert "Reorder widgets no longer overlaps when no space..."

Revert submission 20479526-revert-20427045-258023561-BPDASTWITO

Reason for revert: Fix the issue that caused the first revert.
Reverted Changes:
Icecfd1d34:Revert "Reorder widgets no longer overlaps when no...
I4cc552588:Revert "Reorder widgets no longer overlaps when no...

Change-Id: I47c4cde42c19f50e2834660d843a8e2ae571c03c
2022-11-15 22:56:41 +00:00
Sam Dubey 3dad4fec9f Revert "Reorder widgets no longer overlaps when no space is avai..."
Revert "Reorder widgets no longer overlaps when no space is avai..."

Revert submission 20427045-258023561

Reason for revert: Likely causing NPE while running launcher shortcut tests (Part of DM+Platinum monitor rotation. The revert won't be submitted if proven otherwise)

Bug: 259234533
Reverted Changes:
Ie599f7cb7:Reorder widgets no longer overlaps when no space i...
I04b262ecc:Reorder widgets no longer overlaps when no space i...

Change-Id: I4cc552588c8099356bc3f05c4c63d17a524f2a24
2022-11-15 13:24:19 +00:00
Sebastian Franco 592e2691f6 Fix the wiggle reorder aniamtion stopping if dragging
We were using the minimum span to calculate the cell position
of the widget and if you move slightly because the minimum is usually smaller than the current size it would calculate wrong cell positions
that are change more frequently because it's smaller.

Also, I went back and moved
performReorder(... CellLayout.MODE_SHOW_REORDER_HINT) with the
alarm if block as it was before one of my refactors, it still works
if they are separate but is harder to think about the logic if they
are divided so it's better to all be in one block.

Fix: 255421416
Test: manual testing, reordering and making sure the animation is playing well.
Test: atest ReorderWidgets (to make sure the reorder is not broken)
Change-Id: I3eff5bc9f21fda8f2f8908380397d8639ac15ff9
2022-11-10 21:53:33 +00:00
Sebastian Franco 893615f241 Reorder widgets no longer overlaps when no space is available
In the previous refactor I got confused between findNearestVacantArea
and findNearestArea thinking the later did the former. So it ignored the occupied spaces and treat it as a solution.

Changed the names to prevent further confusion.

Fix: 258023561
Test: manual, need to add this case to ReorderWidgets
Change-Id: I04b262ecce168d5c93a9d66ef62d5b0e148e38b6
2022-11-08 19:02:15 +00:00