Commit Graph

29 Commits

Author SHA1 Message Date
Treehugger Robot 9a77922424 Merge "Fix for bug where we don't use default grid on comet, and migrate normally if not in a B&R case" into main 2024-09-25 17:01:54 +00:00
fbaron b633b9aa2b Fix for bug where we don't use default grid on comet, and migrate normally if not in a B&R case
-The grid migration where we just copy the grid and move everything one row up should only occur in a B&R scenario, so now we add that restriction
-We should default to 4x5 in comet if migrating from a 4x4 grid if the device we're migrating from does not have any other grids saved
-if we have other grids saved, then we'll try using the saved grid if possible. If not possible, we use the default grid for the new device

Bug: 360462379
Test: GridSizeMigrationUtilTest
Flag: EXEMPT bugfix
Change-Id: Ia905081046431c08dc058bd61b2b4ab42dee0506
2024-09-24 16:52:05 -07:00
Sunny Goyal c3dd1c380f Removing unnecessary package validation during grid migration
package validation happens during loader anyway. And using MATCH_INSTALLED
for checking cross user apps may not work all the time

Bug: 363324203
Test: atest GridSizeMigrationUtilTest
Flag: EXEMPT bug fix
Change-Id: Id36e8fdff132242705ef53c85dc6567fbde5d952
2024-09-23 15:16:37 -07:00
fbaron 3c4c975d74 Add logs for 4x4 to 4x5 missing row bug
Flag: EXEMPT adding logs
Test: EXEMPT adding logs
Bug: 360462379
Change-Id: Icb56209a4a12c935dd97bd01d53b8fb6e4371c34
2024-09-11 15:52:01 -07:00
fbaron 5ff84328f0 Fix grid migration item copy bug
When migrating from a grid with 2+ copies of the same item to a grid that has less copies of that item, but more than 0, the extra copies don't migrate to the new grid.

Bug: 354946925
Test: ValidGridMigrationUnitTest
Flag: EXEMPT bugfix
Change-Id: I76ad0cb0f5abe9b5bf895c07467fc05986e9fea4
2024-07-30 10:11:58 -07:00
fbaron 9d08e0fe70 Migrate smartspace as a widget and smartspace removal toggle flags to aconfig
Bug: 336823684, 336823681
Test: none
Flag: ACONFIG enable_smartspace_as_a_widget DISABLED
Flag: ACONFIG enable_smartspace_removal_toggle DISABLED
Change-Id: I4cba42e09f58365f761ab866b15a494817e6bb0f
2024-04-25 14:26:30 -07:00
Sebastian Franco 3d04c1f3fc Fix widget dissapearing because of change of appWidgetId
When migrating the widgets might dissapear because the appWidgetId
can change and when migrating it's no longer valid.

Bug: 324931424
Bug: 330583877
Test: ValidGridMigrationUnitTest
Test: GridMigrationTest
Flag: NA
Change-Id: Ie41a01470814b252f6bb7e4409d3382951a1d70d
2024-04-01 20:19:20 -07:00
Sebastian Franco efab2489d6 Generate grid migration cases and test if they are valid
This makes sure the grid migration logic always produces
valid results.

Bug: 313900847
Bug: 323525592
Flag: NA
Test: ValidGridMigrationUnitTest.kt
Change-Id: I76b19e1fa315f8a997afad34e5a4df7cc465b0c2
2024-03-27 14:03:07 -07:00
Sebastian Franco 5ea61960ab Making 2 flags read only since they are used on backup and restore
The flags are narrow_grid_restore and grid_migration_fix.

Flag: ACONFIG enable_grid_migration_fix enabled
Flag: ACONFIG enable_narrow_grid_restore enabled
Bug: 325286145
Bug: 325285743
Test: BackupAndRestoreDBSelectionTest.kt
Test: GridMigrationTest.kt
Change-Id: Ia6a439553c3c5098115144eae532342ce73be4f2
2024-03-14 17:16:51 +00:00
Sebastian Franco 2eaf15c37a In the case the gird migration goes to a taller grid keep the grid configuration
For example going from 4x5 to 4x6 it will keep the 4x5 configuration
which fits in the 4x6 grid.

Also, it fixes GridMigrationTest which was flaky because of
how it sorted arrays.

Bug: 325286145
Flag: ACONFIG grid_migration_fix disabled
Test: NA
Change-Id: I6063e3c303320096f7429a3b1d909e107d2ef2a0
2024-03-13 11:13:38 -07:00
Sebastian Franco 851b1f3b1c Add testing for GridMigration.
Bug: 325286145
Flag: ACONFIG grid_migration_fix disabled
Test: GridMigrationTest
Change-Id: I49fd32be895f3a05204775373b9eec62d9026f3b
2024-03-08 14:46:41 -06:00
Sebastian Franco c3ffd41ff0 Refactor migrateGridIfNeeded to pass the grid states and make it easier for unit testing
No-op change

Bug: 325286145
Flag: NA
Test: compiling
Change-Id: I703c08059b81e20111c17a142dc54335f18a5a87
2024-03-04 13:46:07 -06:00
Jeremy Sim ee596789de Fix crash with app pairs and grid migration
This CL makes it so that app pair contents are loaded properly during grid migration, like folder contents.

Fixes: 316052056
Test: Have app pairs on home screen, change home grid (e.g. 4x5 to 5x5), launcher does not crash
Flag: ACONFIG com.android.wm.shell.enable_app_pairs DEVELOPMENT
Change-Id: I6a531d0d29d15ed7b8dfe7933690effe5344d941
2023-12-19 22:44:46 -08:00
fbaron c0e687bad8 Add smartspace removal option as a toggle
Bug: 303471576
Test: try removing smartspace by going to home settings and turning it off
Flag: ENABLE_SMARTSPACE_REMOVAL
Change-Id: Idd95da1b302927885a8c469e38db6d3c5130f8c1
2023-10-05 17:26:03 +00:00
Jeremy Sim 4986aa85e5 Merge "App Pairs: App pairs now save with automatic default name and custom split ratios" into main 2023-10-04 00:06:57 +00:00
Jeremy Sim 6ac8949fc4 App Pairs: App pairs now save with automatic default name and custom split ratios
[App Pairs 4/?]

This patch includes:
- Ability to save and launch app pairs with custom 0.3, 0.7, or 0.5 split ratios
- App pairs now save with default name "App1 | App2"
- Grid migration, prediction, and other misc. flows should now work with app pairs

Flag: ENABLE_APP_PAIRS (set to false)
Bug: 274189428
Test: AppPairsControllerTest.java
Change-Id: I46dd3e30f8de03dd3e6d086c8ff9fc52e7e7fd2b
2023-10-03 10:38:03 -07:00
fbaron e58aaf1802 Add smartspace as a widget to first page (implementation 2)
Flag: SMARTSPACE_AS_A_WIDGET
Test: verify that the smartspace gets replaced with a smartspace widget
Bug: 300140279
Change-Id: I42c170de5e2a9fd3d24d99bb8b09cf412c55e3a5
2023-09-29 18:16:09 +00:00
fbaron 30d9e3fb06 Add smartspace custom widget
Flag: SMARTSPACE_AS_A_WIDGET
Test: no test
Bug: 200721106
Change-Id: I4ae4ff72ff7267bab0b5a928f3f78b47f7cfbc1f
2023-09-07 20:27:59 +00:00
Sunny Goyal ee9740462e Simplifying some test utility methods
Bug: 283821111
Test: Presubmit
Flag: N/A
Change-Id: I7b9690bc0cc53d097d26cd4f0ab2dd36ba88e1cb
2023-06-02 13:30:55 +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
Sunny Goyal 7bc6cdee56 Revert "Revert "Revert "Revert "Revert "Revert "Changing GridMigrationTask to use ModelDbController directly""""""
This reverts commit 09905cfa90.

Reason for revert: Fixed the crashing issue

Change-Id: Ibcfc28a89356d262e67e8842d6bae37e230a70f5
2023-05-13 01:59:19 -07:00
Sunny Goyal 09905cfa90 Revert "Revert "Revert "Revert "Revert "Changing GridMigrationTask to use ModelDbController directly"""""
This reverts commit bca4e694f0.

Reason for revert: post submit broken

Change-Id: I8afc63b5aa67ee14127f79e2245ef543bff8cf31
2023-05-11 22:22:16 +00:00
Sunny Goyal bca4e694f0 Revert "Revert "Revert "Revert "Changing GridMigrationTask to use ModelDbController directly""""
This reverts commit 3772b246c2.

Reason for revert: Fixed the test failure

Change-Id: Ibdc9e184fcb32c7caa4ab25d8753a46fa322b703
2023-05-10 17:49:16 +00:00
Sunny Goyal 3772b246c2 Revert "Revert "Revert "Changing GridMigrationTask to use ModelDbController directly"""
This reverts commit 8d9e468dbb.

Reason for revert: b/281179368

Change-Id: Ibfc5329f72cdbcb37d01a8bf3dac2ba0724b9faf
2023-05-06 18:18:07 +00:00
Sunny Goyal 8d9e468dbb Revert "Revert "Changing GridMigrationTask to use ModelDbController directly""
This reverts commit 30bb3a247a.

Reason for revert: Fixed original issue

Change-Id: I02d85d604631795d96f0379eb94b7b6789102ea9
2023-05-05 16:00:49 +00:00
Charlie Anderson 30bb3a247a Revert "Changing GridMigrationTask to use ModelDbController directly"
This reverts commit 9ef41413e0.

Reason for revert: This was the only launcher CL during the time  b/280669657 and 280680602 occurred

Change-Id: Id7107f0935f84908ca87e1ae4c62ab05efe41a24
2023-05-04 15:19:58 +00:00
Sunny Goyal 9ef41413e0 Changing GridMigrationTask to use ModelDbController directly
instead of using content uris

Bug: 277345535
Test: Updated tests
Flag: Presubmit
Change-Id: Ib62db3334c01d9e7d27ae7b02ea703d046e2bcaa
2023-05-03 08:54:14 -07:00
Pinyao Ting cc90d1b767 Make grid size migration less confusing for users.
Grid size migration is a confusing experience for users because the
content of the grid is not predicatable to the user. Part of the reason
was the dedupe logic which merges items from new grid into old grid,
this mean if user removes an item, change to another grid and go back,
user will see that same item re-appears.

This CL keeps the content of target grid the same as source gird, i.e
user will will get the exact same set of app icons/shortcuts/folders and
widgets (if size permits) across grid sizes. The only difference being
their placement in the grid.

Bug: 256859723
Test: atest GridSizeMigrationUtilTest
Change-Id: I1732c91e441ad44bc43e0a943566a83563d12b07
2022-12-02 13:33:04 -08:00
Pinyao Ting dec4305d0c Refactor GridSizeMigrationTaskV2
The majority of the logic in grid size migration should be implemented
as static functions in the first place since (1) they only runs once
after instantiation and (2) they are executed immediately after they are
instantiated.

This CL removes most of the instance variables from grid size migration
in favor of static methods since the later is more efficient, more
testable and therefore considered better programming practice in
general.

Bug: 256859723
Test: atest GridSizeMigrationUtilTest
Change-Id: Ief4654d79ad5cfd636e6145fdcc9dfe5a39cdf62
2022-11-21 15:24:38 -08:00