Commit Graph

11 Commits

Author SHA1 Message Date
Charlie Anderson 7cc4302f10 Send additional Extras in first screen broadcasts, to help with app archiving.
- refactor FirstScreenBroadcast.java into FirstScreenBroadcastHelper.kt
	- send Extras to include installed/archived items on first screen
	- send Extras to include installed/archived widgets on all screens.
	- truncate items to limit Broadcast size

Bug: 322314760
Test: unit testing and E2E test of B&R
Flag: launcher_broadcast_installed_apps

Change-Id: I214149ac0c63f177d3d1ca0b6d0cb11be37f4ae0
2024-06-13 21:29:50 +00:00
Jeremy Sim a596f589c4 Allow app pairs in folders
This CL substantially refactors folders to be able to take contents of type AppPairInfo. App pairs can now be moved in and out of folders, and launch from folders.

This CL contains only logic and model changes; animation and style changes (for dropping items into folders, color changes to app pair surfaces, etc.) will be in a following CL. Another CL (hopefully) will contain tests. I'm planning to submit them together, but this patch should also be able to stand alone with no issues (except janky transitions).

Bug: 315731527
Flag: ACONFIG com.android.wm.shell.enable_app_pairs TRUNKFOOD
Test: Manual, more to follow in another CL.
Change-Id: I73732fcaefbdc61bf6e02a5be365962b8bbc3e41
2024-04-03 16:47:42 -07:00
Jeremy Sim 742630c2f8 Reparent folders and app pairs
Previously, app pairs and folders shared a common data model, FolderInfo. Now we need to separate them, so a new type, CollectionInfo, will serve as the parent of both types.

Bug: 315731527
Fixes: 326664798
Flag: ACONFIG com.android.wm.shell.enable_app_pairs TRUNKFOOD
Test: Manual, unit tests to follow
Change-Id: Ia8c429cf6e6a376f2554ae1866549ef0bcab2a22
2024-03-29 15:39:28 -07:00
Sunny Goyal 425bfa320f Fixing ConcurrentModificationException in FirstScreenBroadcast
Bug: 232333237
Test: Not sure, unable to reproduce
Change-Id: I3eeabf76c14651d2fb64c82955851efa883760ce
2022-05-24 09:17:39 -07:00
Jon Miranda 5a8b62b38f Avoid sending FirstScreenBroadcast if there is nothing to send.
Bug: 216389279
Test: manual
Change-Id: I1c30f02cbb287c25a140cb4801d6b66b07cec3a7
2022-01-25 18:06:10 -08:00
Jon Miranda b62fba0d01 Set FLAG_IMMUTABLE flag on FirstScreenBroadcast PendingIntent.
Bug: 183927137
Test: restore phone and ensure broadcast is sent
Change-Id: I8d8e38a1aa6bdf13879d460cfa84cabe6c6bb1f2
2021-04-01 13:20:12 -04:00
Sunny Goyal d4d2a73b67 Removing MultiHashMap and using java-streams instead
This makes it easier to choose different collection
implementations

Change-Id: Ic44e128b7478fcbbb1b546027685e058945af3f9
2020-08-27 15:26:18 -07:00
Sunny Goyal e396abf502 Moving model data structures to a separate file
Change-Id: I77ad7a5219e72d2e0d6c1803de2ac3ed6a65a8f7
2020-04-09 13:20:39 -07:00
Jon Miranda c1322b6ac8 Key by both package and user for list of active install sessions.
This fixes the bug where items are left on the home screen for the wrong
user.

Bug: 139281702
Change-Id: I03c31bb308fc496b9fc633c2fde23ae4568f8c44
2019-09-17 11:20:35 -07:00
Jon Miranda 75161b9750 Pass intent extras as string arraylist.
Bug: 74355094
Change-Id: I697d837e48d7de4a490d2ad74a9c1ec7987d0574
2018-03-28 13:40:17 -07:00
Jon Miranda 5ab0d896c6 Send directed broadcast to package installers that have active sessions.
For each installer, we send a broadcast that includes package names of items that:
* Are being installed by that installer
* Are on the first screen
* Have an active install session

The packages are seperated by:
* Folder items
* Workspace items
* Hotseat items
* Widgets

Bug: 74355094
Change-Id: I573ed6b3b84314ef244486fcf8354bebdff8bbdf
2018-03-27 12:32:49 -07:00