Commit Graph
133 Commits
Author SHA1 Message Date
Pun Butrach dd4a08be61 Merge tag 'android-16.0.0_r3' into 16-dev
Android 16.0.0 Release 3 (BP3A.250905.014)

Signed-off-by: Pun Butrach <pun.butrach@gmail.com>
2026-01-10 20:46:04 +07:00
MrSluffy 1bb5878457 feat(deck): app categorization to folders using flowerpot
- Categorize apps using flowerpot and organize into folders
- Add blocking loading dialog during categorization process
- Prevent user cancellation during workspace setup
- Auto-add newly installed apps to appropriate folders

- closes : #5846
2025-11-16 11:55:24 +08:00
Sunny Goyal 869b20cb27 Adding repository for AppsList data
Flag: com.android.launcher3.model_repository
Test: atest AppsListRepositoryTest
Bug: 390572144
Change-Id: I6e5993c91f77ed8f0b6f2c12c9d743c87a497134
2025-05-14 21:19:18 -07:00
Sunny Goyal f7fa4cef5b Using single pass to update both widgets and shortcuts in BgDataModel
Bug: 390572144
Test: Presubmit
Flag: EXEMPT refactor
Change-Id: I9ead8f7acb9fc3b550f7368474f0402c032dfd12
2025-05-06 15:20:13 -07:00
Sunny Goyal aef6c7932e Moving predicted items to ItemIdMap instead of extraItems
> This allows the whole workspace model to be contained in itemIdMap instead of spread across multiple data containers
> Deprecating extraItems, all non-workspace data should use separate repositories
> Design: http://go/launchermodel-re-arch?#heading=h.5y8n4r164d5s

Bug: 390572144
Test: atest PredictionUpdateTaskTest
Flag: EXEMPT refactor
Change-Id: I886d0a8d5bbbf9f5c2054d4a2442bf03f9c4eab5
2025-05-05 15:52:37 -07:00
Sunny Goyal 42975c39db Making various model objects injectable
Bug: 361850561
Test: Updated tests
Flag: EXEMPT dagger
Change-Id: Ibb45b72c186e6aeeed7a37b0ae3f8083472019d7
2025-03-10 14:37:43 -07:00
Charlie Anderson 9e50a01e92 Simplify some package update logic around restoring archived/unarchived shortcuts
- also avoids race condition where unarchived shortcut is not pinned in shortcut service after restore, and then marked as broken

Bug: 375414891
Test: Launcher B&R w/ archiving
Flag: com.android.launcher3.restore_archived_shortcuts
Change-Id: I2b5331117be93d66e4acbded49b65cd5ce9f8f83
2025-02-21 17:04:12 -05:00
Charlie Anderson ceb401c3e7 Revert^2 "Restore Archived Pinned Shortcuts instead of removing them."
This reverts commit f5cb1b664b.

Reason for revert: adding test fix and reverting

Change-Id: I2fc8dc83259b2ee7992ac2291df6ee4246a2e9d5
2025-02-07 12:14:55 -08:00
Liana Kazanova (xWF) f5cb1b664b Revert "Restore Archived Pinned Shortcuts instead of removing them."
This reverts commit abbb991d8f.

Reason for revert: DroidMonitor: Potential culprit for Bug X - verifying through ABTD before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted.

Change-Id: Ifa241a631a1a4361623cfe0e81e31ca6b44e9d73
2025-02-04 15:37:46 -08:00
Charlie Anderson abbb991d8f Restore Archived Pinned Shortcuts instead of removing them.
Bug: 375414891
Test: ShortcutsChangedTaskTest, WorkspaceItemProcessor test and manually backing up + restoring.
Flag: com.android.launcher3.restore_archived_shortcuts

Change-Id: I798d56bc1ffef9a454e3899e4155d63f7edf39f2
2025-02-04 11:29:29 -08:00
Sunny Goyal dfbbebc9e3 Revert^2 "Unifying various model update callbacks into one"
72f9943f64

Change-Id: I38901714947a2b7926723ea25df4a2b8216303e4
2025-01-30 13:19:32 -08:00
Pechetty Sravani (xWF) 72f9943f64 Revert "Unifying various model update callbacks into one"
Revert submission 31445615-model-callbacks

Reason for revert: <Droidmonitor crested revert due to b/393222548. Will be verified through ABTD for stanadard investigation.>

Reverted changes: /q/submissionid:31445615-model-callbacks

Change-Id: If6893a125756e5abfbb215af377576429bb1c91b
2025-01-29 22:46:55 -08:00
Sunny Goyal 36c3112abf Unifying various model update callbacks into one
Making the BubbleTextView.applyItem stateless so that it does not depend on the order of events

Bug: 390572144
Flag: EXEMPT refactor
Test: atest LauncherBindableItemsContainerTest
      atest BubbleTextViewTest
Change-Id: Ib9c0ac6c330d6f4e08c3db5772d35787fa056b65
2025-01-28 16:03:01 -08:00
Sunny Goyal 777324ed15 Removing redudntant objects from BgDataModel
Bug: 390572144
Flag: EXEMPT refactor
Test: Updated model tests
Change-Id: Ied8a0bfdbfd324b9fb05724f1fcf67238aa37d16
2025-01-23 12:55:37 -08:00
Sunny Goyal 18e480838a Replacing all int lookup flags and boolean overrides with an object to make it easier to extend options
Bug: 381897614
Bug: 366237794
Flag: EXEMPT refactor
Test: atest CacheLookupFlagTest
Change-Id: Ic89d48dd1c5dc8b0a89b1898cd7b00d9c61d6513
2024-12-12 18:32:55 -08:00
MrSluffy 8079af097b fixed java.lang.NoSuchFieldError: No instance field isArchived of type 2024-12-05 07:59:04 +08:00
MrSluffy 65c4fe9b32 fixed build 2024-11-03 18:45:48 +08:00
MrSluffy eeb7416bfe Merge branch 'android15-release' into merge-aosp15 2024-09-14 17:29:57 +08:00
Charlie Anderson 0c44432d06 Add additonal logging around PackageUpdatedTask to detect app updates for User
Bug: 350144057
Flag: EXEMPT just logging
Test: local debugging
Change-Id: I317bee94342ad5022025ec52c992c5eeb906efa5
2024-09-06 15:24:51 -04:00
Charlie Anderson 98c3cafcaf [Test Week] Add tests for each operation in PackageUpdatedTask
Bug:353303621
Test: unit test
Flag: TEST_ONLY

Change-Id: Ic2194fd1506c4ff5a542eac62a492f395d12886e
2024-07-17 11:06:38 -04:00
Charlie Anderson 1e96d751d2 Adding additional logging around updated shortcuts
Bug: 338218961
Test: locally
Flag: N/A
Change-Id: Ic72ec2686de20036928c1e98b52677bd82368282
2024-05-15 14:18:21 -04:00
Charlie Anderson 0171058c0f Merge "add more logging around package updates and widget click handling in Launcher" into main 2024-05-10 17:19:06 +00:00
Charlie Anderson 5fa4f02c70 add more logging around package updates and widget click handling in Launcher
Bug: 336976070
Test: locally verified
Flag: N/A

Change-Id: I8a1204fb6d96eccbc20b0ddd3c1e6fb1ae75fc6c
2024-05-10 10:00:51 -04:00
Winson Chung 94e8ad0731 Add multi-instance state to item infos
- Add legacy resource for supported multi-instance apps that
  matches the current SystemUI resource of the same name, and will
  be removed as apps migrate to the V manifest property to declare
  multi-instance support
- Load the multi-instance state from PackageManager when the db is
  first loaded or when packages are updated
- The multi-instance check is then used to determine if an app pair
  can be saved (ie. whether the action can be shown)

Bug: 323112914
Test: atest NexusLauncherTests

Change-Id: I565b4bee4ab5f7040910306b1fd60a4fc3bf9a1c
2024-05-09 18:43:38 +00:00
Sunny Goyal 993893895c Converting ModelTask to an interface instead of an abstract class
This allows extensibility and better use of lambdas

Bug: 338282246
Test: Presubmit
Flag: None

Change-Id: Ia41067f0068b3b631eeb4faf877dc77f8587e1f6
2024-05-01 15:43:26 -07:00
Winson Chung 6a6de2dfc3 Migrate WorkspaceItemInfo non-resizeable flag to runtime status flag
- This aligns with other app-level state that is read at runtime

Bug: 323112914
Test: atest NexusLauncherTests
Change-Id: I1e29583d1c0302646718473c8958d604c1a202a5
2024-04-14 06:20:54 +00:00
Song Chun Fan ab21ddb2da Merge "[Launcher/Archive] remove all checks for the archiving system property" into main 2024-04-09 22:05:08 +00:00
Sunny Goyal 11117d9b2a Using resource override instead of code-swap for ApiWrapper
Bug: 330920490
Flag: None
Test: Presubmit
Change-Id: Iac19f32e64d2c76ed5b4f8592943ee4ae7af51b5
2024-04-09 11:14:44 -07:00
Song Chun Fan e5ad96ce10 [Launcher/Archive] remove all checks for the archiving system property
No longer needed

Change-Id: I62c8843aa04a245d1dcc30f7787c71d17993f5d1
BUG: 331165939
Test: builds
2024-04-08 23:14:07 +00: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
Jeremy Sim 3c1ee0dad4 Improve app pairs disabled state
This CL fixes 2 issues with app pairs:
- When an app pair is incompatible with the screen size due to a non-resizeable app (e.g. Camera), the app pair will now be properly disabled and display an error message. If the user is on a foldable, it will prompt the user to unfold their phone.
- The app pair icon will now properly redraw with lower opacity when it is disabled.

Fixes: 323088270
Test: Manually paused and unpaused apps, created Camera app pairs and tested with foldable
Flag: ACONFIG com.android.wm.shell.enable_app_pairs TEAMFOOD
Change-Id: I66514c96bc19f480c9788661e4dffaa5b1cdc2ca
2024-02-26 14:29:57 -08:00
Rohit Goyal b6b27a497e Bugfix: Ensure archived app icons persist when app main activity name changes post unarchival.
* In case app main activity changes, archived app icon should not disappear.
* We need to make sure the corresponding new intent is applied correctly to the app icon on activity name change.

Test: verified bugfix locally.
Bug: 324545643
Bug: 325458020
Flag: ACONFIG com.android.launcher3.enable_support_for_archiving DEVELOPMENT
Change-Id: I0134e57e3536d05fc96c8cfcf5f57fd8f4df5f1f
2024-02-21 13:12:02 +00:00
Jakob Schneider 328c32235e Add the archiving sysprop check to launcher3.
This system property will be used to test the feature
in DVT. This is required because the new device is built on U QPR3, not V. See
https://docs.google.com/document/d/1h8sLlnnhwGP4uZssglBqTShMoQcEq5dvR7jsJmmp0Cw/edit?resourcekey=0-KTFHkPKTdtMN-5kQYBWJig&tab=t.0#heading=h.x9snb54sjlu9  for more details.

Test: tested manually
Flag: ACONFIG com.android.launcher3.enable_support_for_archiving TEAMFOOD

Change-Id: Ie64a40ba799c81057258dd7de3872a0494cff2d8
2024-02-06 14:29:07 +00:00
Jeremy Sim 48467438da Remove app pairs when their member apps are uninstalled
This patch modifies PackageUpdatedTask.execute() to also remove app pairs when their member apps are uninstalled.

Fixes: 316050282
Test: Install App A, create an app pair containing App A, uninstall App A.
Flag: ACONFIG com.android.wm.shell.enable_app_pairs TEAMFOOD
Change-Id: I8487a2dfcfc6d29bd55e88003d1950078c6e2e31
2024-01-22 17:50:12 +08:00
Rohit Goyal 2e6010c421 Add support for progress bar during unarchival of app.
* With this change, progress bar should appear whenever app update for archived app reaches non-zero progress.
* Once the update is cancelled, the progress bar should also disappear.

Test: PromiseIconUiTest and manually tested the progress bar using Play Store
Bug: 302115555
Flag: ACONFIG com.android.launcher3.enable_support_for_archiving DEVELOPMENT
Change-Id: Iacf7a0fd865dba34915fa09f59c63a1da6e47315
2024-01-03 23:44:52 +05:30
MrSluffy 32700b0100 Merge branch 'android14-release' into 14-dev 2023-12-13 18:47:55 +08:00
Sunny Goyal eb29313595 Updating WidgetSheets so that it can be displayed in any
activity and not just Launcher

Bug: 307306823
Test: atest Launcher3Tests
Flag: NA
Change-Id: I0e33323805c6e895e3a1639ecf5933e698212c65
2023-11-27 11:17:04 -08:00
Himanshu Gupta 9aab4d4603 Adding Prework for Private Space integration in Launcher
This Cl adds the following:
1. Fixes for Quite Mode check maintained by Launcher
2. Addition of new Quite Mode broadcasts
3. Fixes for determining work profile user correctly.

Flag: ACONFIG com.android.launcher3.Flags.enable_private_space DEVELOPMENT
Bug: 289223923
Test: Ran Launcher3 tests
Change-Id: I5f6158b213723339e70ff99e66c5f439f5879e12
2023-11-05 12:31:10 +00:00
MrSluffy 19bf26dd5a Merge branch 'aosp-13' into 13-wip 2023-10-21 09:52:01 +08:00
Kevin Lim 07546b88e7 [AppInfo] Enable logs for debugging unexpected AppInfo changes.
Here's a sample log run through of AllAppsStore and PackageUpdatedTask
logs: http://gpaste/5250747917664256

Bug: b/290090023
Flag: None. Adding logging.
Test: None. Adding logging.
Change-Id: Ia1d620a50267d6a65fe719936d7e87e6dad13afa
2023-10-02 19:40:58 +00:00
Cameron Brown 089094ab40 launcher3: add missing whitespace to log
Change-Id: Ia3f4ec3bd46647eb3e0ee5a3a5e38d748a8ae02b
2023-07-19 15:08:48 +00:00
Vinit Nayak f6f192853d Cleanup WorkProfileTest logs
Fixes: 243688989
Change-Id: Ic3f143062c1a1383d1e79959dae59c45743547e9
2023-07-05 16:27:11 -07:00
Vinit Nayak 88a91bbd16 Add logs to check which userId is used for workProfile matcher
Flag: none
Test: compiles
Bug: 243688989
Change-Id: I0a579203cc0c51f7707180b323ed4828f1dea297
2023-05-11 14:55:00 -07:00
Vinit Nayak 6106ae9ac7 Add logs for PackageUpdatedTask
* That's the bit that updates new packages for work profile,
at least from command line.
* There is variability in how long it could take work profile
apps to show up, from 2-8 seconds.

Bug: 243688989
Change-Id: I710befc5f17b4a16bff523eb03f1e88975cafd43
2023-04-26 13:21:57 -07:00
Sunny Goyal 84b48d8deb Removing support for adding legacy shortcuts.
All existing legacy shortcuts will be migrated one-time to deep shortcuts
This shortcuts are pinned under the Launcher package, with custom badging

Bug: 275875209
Test: Updated unit tests
Flag: N/A
Change-Id: I7da001f724776ad8d6c807517b7e4e259de626c2
2023-04-10 12:28:52 -07:00
NaveenandSuperDragonXD 1f9439b2a0 Enhancement on applying themed icon (#3169)
* Squashed commit of the following:

commit 578de6dddad5a9e831240f4ff31bde218c4fa58f
Merge: a0ef4288fd 798e93ee17
Author: Naveen <naveen.ccmsd@gmail.com>
Date:   Tue Dec 27 05:04:50 2022 +0530

    Merge remote-tracking branch 'upstream/12.1-dev' into FixIconPack

commit a0ef4288fd13674b183a8d6ec27964c1cc0ff7e4
Author: Naveen <naveen.ccmsd@gmail.com>
Date:   Thu Dec 22 02:56:20 2022 +0530

    code cleanup

commit 3e6e49c957f8670e4540d4c6d1f87aa6b370ef74
Author: Naveen <naveen.ccmsd@gmail.com>
Date:   Thu Dec 22 02:28:58 2022 +0530

    recreate icons for adaptive and tranparant background when icons are from iconpack

commit a77c8e7bcb44f3e7a4286a345acdf64010552dc1
Author: Naveen <naveen.ccmsd@gmail.com>
Date:   Thu Dec 22 02:23:20 2022 +0530

    Add icon change event for iconpack as well

commit 4b36b447e823eb42e3204e7ce3c1094893c48757
Author: Naveen <naveen.ccmsd@gmail.com>
Date:   Wed Dec 21 20:06:09 2022 +0530

    cleanup

commit 3bf0a8e38f408ef9f3b3c5cb00f69d2e1045870c
Author: Naveen <naveen.ccmsd@gmail.com>
Date:   Wed Dec 21 19:55:06 2022 +0530

    limit monochrome to SDK 33

commit 7e52a6d8736aa9b917294c79b23405a0df5b4a0e
Author: Naveen <naveen.ccmsd@gmail.com>
Date:   Wed Dec 21 03:10:50 2022 +0530

    move string to xml

commit 3f340a68f82b0f06007df0c8c41c8e0157961612
Author: Naveen <naveen.ccmsd@gmail.com>
Date:   Wed Dec 21 03:08:05 2022 +0530

    Enhancement on applying Themed Icon

    Apply themed icons for system icons if they support (android 13+ [not sure about android 12] )
    Select Icon pack and Themed Icon separately for home and app drawer (This help to apply Themed icons (home) + delta icons (app drawer) together) - Ref : 815
    Support Transparant background on adaptive icons

commit 88ddd5b3f654a580fcc17fbd1d39741913a8baf3
Merge: df0eaf8160 6ad549c79b
Author: Naveen <naveen.ccmsd@gmail.com>
Date:   Wed Dec 21 03:07:42 2022 +0530

    Merge remote-tracking branch 'upstream/12.1-dev' into FixIconPack

commit df0eaf816015df83563003092a3764a438d20ce3
Author: Naveen <naveen.ccmsd@gmail.com>
Date:   Wed Dec 21 03:07:28 2022 +0530

    Revert "Revert "Bump AGP to 7.4.0-rc01 (#3178)""

    This reverts commit 0013d4094803c788e84c82d0c00b7630b01e9a57.

commit 0013d4094803c788e84c82d0c00b7630b01e9a57
Author: Naveen <naveen.ccmsd@gmail.com>
Date:   Sun Dec 18 04:25:33 2022 +0530

    Revert "Bump AGP to 7.4.0-rc01 (#3178)"

    This reverts commit 4b789cd5d3.

* updated suggestions

* Remove unused imports

* revert reload icons

* Update lawnchair/res/values/strings.xml

Co-authored-by: SuperDragonXD <70206496+SuperDragonXD@users.noreply.github.com>

* Changed themed icon order

Co-authored-by: SuperDragonXD <70206496+SuperDragonXD@users.noreply.github.com>
2023-01-18 11:18:40 +08:00
NaveenandGoooler e61e43952e Identify theme supported icon pack by intent (#3116)
* Remove hardcoded Icon pack that supports Themed Icons

* Cleanup

* Trim space

* Moved intent value to xml

Moved

* Build ThemedMap from old lawnicon packs

* fix wrong condition

* resync platform module

Co-authored-by: Goooler <wangzongler@gmail.com>
2022-11-20 17:17:52 +03:30
64bc9c232b Fix : Themed icons turn off automatically when dark mode changes (#3099)
* Experimental feature - Transparent Background

* Refactor method name

* Transparent bg fix for clock

* Sync submodule

* resync

* Update lawnchair/res/values/strings.xml

Co-authored-by: Yasan <yasandev@gmail.com>

* Update platform_frameworks_libs_systemui

* Enable Smart hide

* Update lawnchair/src/app/lawnchair/ui/preferences/AppDrawerPreferences.kt

Co-authored-by: SuperDragonXD <70206496+SuperDragonXD@users.noreply.github.com>

* enableSmartHide only when showHiddenAppsInSearch is disabled

Co-authored-by: SuperDragonXD <70206496+SuperDragonXD@users.noreply.github.com>

* updated new Layout

* Remove smart hide description

* Rename pref titiles

* Cleanup equals

* Remerge submodule

* Revert "AGP 7.3.1 & KSP 1.0.7"

This reverts commit bb024ef89e.

* clock

* Revert "clock"

This reverts commit 44b4f6d9db4301d86540e37a66681b64a1e2bea3.

* Update platform_frameworks_libs_systemui

* Update lawnchair/src/app/lawnchair/ui/preferences/AppDrawerPreferences.kt

Co-authored-by: SuperDragonXD <70206496+SuperDragonXD@users.noreply.github.com>

* Rename Title

* Revert changes in build.gradle

* resync platform module

* Hide hideHiddenAppsInSearch when showDrawerSearchBar is disabled

* fix overlap issue

* Hide conf options of Hidden Apps if no hidden apps

* ThemedIcons

* Implementation for wrapping Lawnicons from iconspack

* resync platform ui

* Cleanup

* Cleanup

* Update config.xml

* resync module

* Enable Themed option if any supported package is installed

* Use `any`

* Use `apply`

* Fix auto turn of themed icons when lawnicons is not installed

* resync Fix package name for Lawnicons

* Tweak

Co-authored-by: Goooler <wangzongler@gmail.com>
Co-authored-by: Yasan <yasandev@gmail.com>
Co-authored-by: SuperDragonXD <70206496+SuperDragonXD@users.noreply.github.com>
2022-11-13 11:06:59 +03:30
Pinyao Ting 777c13eb00 Explicit Nullbility in Launcher (Part 5)
This CL addresses the nullbility in LauncherModel and update tasks.

Bug: 242895652
Test: manual
Change-Id: Ied635c944c3656f0d493b295f772aa0329b354b9
2022-09-16 17:17:16 -07:00
Pinyao Ting 415740978b Include additional logs for widget removal
It isn't clear what causes widgets to be removed when restoring on a new
device. This CL included additional error message, which hopefully would
reveal the root cause.

Bug: 235923862
Test: manual
Change-Id: I8601d8fe598072dc9def0549796d1e527e167e23
2022-07-19 14:43:32 -07:00