Commit Graph

229 Commits

Author SHA1 Message Date
Fan Wu
c6544f991f Disable Reset app preference during the call. Similar with ag/27511802, this is for non-SPA environment
Bug: 342627537
Test: manual
Flag: EXEMPT Bug fix
Change-Id: If64b6c878b2f793c6852d000d9d90dda18ef2420
2024-12-09 06:18:23 +00:00
Abdelrahman Daim
996afd17a1 Protect the Settings application from potential null pointer exceptions.
Summary: The app bar is not available, causing a null pointer exception.

Test: Successful Build on master branch

Change-Id: I36849606f6587d6e7f004ae21e1a6e6a5206735a
Signed-off-by: Abdelrahman Daim <adaim@meta.com>
2024-09-25 17:02:37 -07:00
Manish Singh
54461d2679 Merge "Apply personal filter when private tab not shown" into main 2024-04-30 09:55:34 +00:00
Manish Singh
4875662f48 Apply personal filter when private tab not shown
Bug: 336327005
Fix: 337744275
Test: manual
Change-Id: I1c8cbc35f90cd39bb332f9a6b787473779249166
2024-04-29 15:48:24 +00:00
Jason Chiu
5d82f6a648 Remove the package name restriction of ACTION_UNINSTALL_PACKAGE
PackageInstaller has protected the intent action by setting
"android:priority=1".

Test: manual
Fix: 332228634
Change-Id: If0794e5957366d8b26acd0362b59c6c9076a0c4f
2024-04-17 16:26:52 +08:00
Jason Chiu
6ca5c992d7 Merge "[Safer intents] Permission controller" into main 2024-03-29 09:20:28 +00:00
Jason Chiu
cf13dfd4c6 [Safer intents] Permission controller
To avoid implicit intents, make intents launch explicitly.

Test: build, manual
Bug: 323061508
Change-Id: Ib95b417fc8682f690890fc55f321b4fece2c0369
2024-03-28 17:09:37 +08:00
Jason Chiu
071dfe8691 [Safer intents] Applications
To avoid implicit intents, make intents launch explicitly.

Test: build, robotest
Bug: 323061508
Change-Id: I9bf4eb102550f4afd8d14a6799940d37fc0ab9a7
2024-03-28 04:13:47 +00:00
Manish Singh
8498f83141 Fix Apps storage page to show apps for selected user only
Currently only the personal and managed profile filters for the
respective profiles. And there's no filter to filter out the apps for
the private profile. This cl adds that filter and sets it for the
private profile user.

Bug: 317159160
Test: manual
Change-Id: Ia19171b1be73a061a598c2365c88e91ad2f8fec8
2024-02-09 11:29:58 +00:00
mxyyiyi
8dccd6947f Migrate battery optimization mode app list to SPA.
Bug: 284033422
Bug: 304923046
Test: manual
Change-Id: I7549b8a95508500bce098b42da04036869431060
2024-01-23 14:54:20 +08:00
Wesley Wang
2dec2b2785 Merge "Apply dynamic deny list into data usage state" into main 2023-11-15 12:53:25 +00:00
Wesley Wang
f0b67ef0f9 Apply dynamic deny list into data usage state
- Initiate and sync existing network policy when creating the instance
 - Imple a method to suggest list of packages to set as POLICY_REJECT
 - Reset/clear the policy settings once clear storage or reset
   preference

Bug: 306329984
Test: make SettingsRoboTests
Change-Id: I10ba28fee08c29bc2092820fbc8d8ac0e61d30e7
2023-11-15 18:25:19 +08:00
Chaohui Wang
5dd070325e Merge "[Spa] Fix "State<T> as a parameter" of Preference" into main 2023-11-03 09:46:59 +00:00
FanWu
0e9682eb31 Add LongBackgroundTasksApps
Bug: 284032922

Test: Unit test
Change-Id: Ic58f45c41c3d35803591afaf25829ff104dc493d
2023-11-03 05:59:25 +00:00
Chaohui Wang
3b21249d72 [Spa] Fix "State<T> as a parameter" of Preference
Bug: 292036686
Test: manual - with Settings
Test: unit tests
Change-Id: I8a9faaefe4780667a2747a4ef1573361d3258705
2023-11-03 11:48:52 +08:00
FanWu
2aeeaebbee Add TurnScreenOnApps
Bug: 284032615

Test: Manually on device and unit test
Change-Id: I4ccbf5892b3830a6c4657e43850d9b0eab5aecba
2023-11-02 11:45:07 +08:00
Chaohui Wang
c4a3a50d58 Migrate to CompoundButton
Switch and SwitchCompat are both CompoundButton.

Using CompoundButton in Java will helps migration in the future.

Bug: 306658427
Test: manual - on affected pages
Change-Id: I7cdc2601879a85d33f77239e38263320d5a6984e
2023-10-25 14:57:48 +08:00
Chaohui Wang
82a9a9e47d Remove Settings preference_widget_primary_switch
File content same as SettingsLib's preference_widget_primary_switch

Bug: 285231003
Test: m Settings
Change-Id: I4b9f92435ffb5c253241e294c4680025fe0447fc
2023-10-20 12:55:22 +08:00
Peter Kalauskas
80e914a263 Enable use_resource_processor for all sysui deps
This will make the build faster

Test: m checkbuild
Bug: 295208392
Change-Id: If75acb6b1c3f204e3686c20cef609f7cfabe15cf
2023-09-21 23:09:39 +00:00
Chaohui Wang
8e2ae547d6 Clean up FeatureFactory.getFeature()
Bug: 286764889
Test: m Settings
Change-Id: I7e472e6b0ca6b7a735c1b92742ddf06c545176fc
2023-08-08 08:41:48 +00:00
Chaohui Wang
2541381259 Fix references to resources for Settings
Bug: 293810334
Test: m Settings
Change-Id: Ie140278f492ef7e1c062ec1ecae2866c521a86aa
2023-08-08 01:56:05 +00:00
Chris Antol
993e1cec1f Storage Apps Lists SPA migration
Pending task to support Sorting by Name which is currently not possible given existing SPA infra

Bug: 284032857
Bug: 284032898
Test: Unit Test. Uncomment lines and tested Settings>Storage>Apps and Settings>Storage>Games
Change-Id: I93853ed7184808a083b66ba5b03f9fe3acf48d41
2023-07-21 23:52:27 +00:00
Graciela Wissen Putri
b4c4f6cbe6 [2/n] Add aspect ratio app list page under apps
Apps > General > Screen Size

To enable feature:
adb shell device_config put window_manager enable_app_compat_user_aspect_ratio_settings true
adb shell am force-stop com.android.settings

Fix: 287448088
Test: Manual
      atest AspectRatioAppsPageProviderTest
      atest AspectRatioUtilsTest
      All CUJs passed in go/settings-cujs
Change-Id: I4de6c3cbdbdfbc79ed839ec149fb633344dcd3a7
2023-07-21 08:02:09 +00:00
Himanshu Gupta
40dd0958d6 Merge "Clearing obsolete cloneUserId from CloneBackend." into udc-dev am: 4740720948 am: af793d86f2
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23262239

Change-Id: I6a6b1f0824fefb1ec12cc61dda3c2b550d8fb072
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-19 21:56:28 +00:00
Himanshu Gupta
d9f60d9a1a Clearing obsolete cloneUserId from CloneBackend.
When cloned user is removed from device, the previous clonedUserId
present with the CloneBackend instance becomes obsolete, and does
not update to reflect the new clonedUserId, when the cloned user is
re-created.
To fix this we set cloneUserId to -1 when cloned user is removed,
causing CloneBackend#installCloneApp to update clonedUserId when
the cloned profile is re-created.

Bug: 280431074, 275062025
Test: Manual by flashing the local build.
Change-Id: If0d7960998865b4081502e84d0d4125b3b05c69c
2023-05-17 12:22:01 +00:00
Chris Antol
8c4f831cda Merge "Remove SPA gating from App Cloning click ingress" into udc-dev am: 9567bd4a50 am: 701babd574
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23197464

Change-Id: I51f78328b5c0527018c07588f90641d4556493c6
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-12 19:25:44 +00:00
Chris Antol
8e93ac6670 Remove SPA gating from App Cloning click ingress
Bug: 277002988
Test: existing tests. flag on by default, no-op unless disabled, which now has access to this otherwise accessible feature
Change-Id: Ic37e4c76d379133f1dbda3c65930ae44afc24f70
2023-05-12 03:03:12 +00:00
Himanshu Gupta
0b19e92158 Merge "Enabling App Cloning Device Config flags by default. The features will be guarded *only* by config overlays, which are off by default." into udc-dev am: 53bf6b1dc8 am: 81180f985e
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/22381242

Change-Id: If6633fb997d54a37ad07b26c097d98ce19de3602
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-09 22:43:28 +00:00
Himanshu Gupta
53bf6b1dc8 Merge "Enabling App Cloning Device Config flags by default. The features will be guarded *only* by config overlays, which are off by default." into udc-dev 2023-05-09 22:00:36 +00:00
George
750cd809fe Fork the NfcTagAppsSettings page to SPA
The page is located at "Apps > Special app access > Nfc launch"

Bug: 267404181
Test: make RunSettingsRoboTests ROBOTEST_FILTER=NfcTagAppsPreferenceControllerTest
Change-Id: I9fb4a68634f0b6f20d5f87601c1175ced33daad5
2023-05-02 10:15:53 +00:00
himanshuz
dd26189e2c Enabling App Cloning Device Config flags by default. The features will be guarded *only* by config overlays, which are off by default.
Bug: 253449368
Test: Manual by building and flashing
Change-Id: I9099019f2bd982588f12ac1741fce27d24e5849e
2023-04-28 11:10:14 +00:00
Philip Junker
ded7f45e6a List apps which requested the TURN_SCREEN_ON appOp permission
This reverts commit 94f08e4ba1.
Reason for revert: Re-land with fix (b/278739832#comment8)

Bug: 272053372
Change-Id: I945e543b6e17b682bc88e9e9b0a79775a71dd6f7
Test: manually installed an app which requests the permission and verified it shows up correctly in Settings > Apps > special app access > Turn screen on
Test: atest AppFilterRegistryTest
Test: atest TurnScreenOnDetailsTest
Test: m -j RunSettingsRoboTests
Test: adb shell am start -a android.settings.TURN_SCREEN_ON_SETTINGS
2023-04-19 11:59:19 +00:00
Liana Kazanova
94f08e4ba1 Revert "List apps which requested the TURN_SCREEN_ON appOp permi..."
Revert submission 22338257-turnScreenOnPermission_pregrant

Reason for revert: b/278739832

Reverted changes: /q/submissionid:22338257-turnScreenOnPermission_pregrant

Change-Id: Iada276497c37c0e89a2cde8706394949d468e8e5
2023-04-18 17:47:14 +00:00
Philip Junker
58e7b70df3 List apps which requested the TURN_SCREEN_ON appOp permission
Bug: 272053372
Test: manually installed an app which requests the permission and verified it shows up correctly in Settings > Apps > special app access > Turn screen on
Test: atest AppFilterRegistryTest
Test: atest TurnScreenOnDetailsTest
Test: m -j RunSettingsRoboTests
Test: adb shell am start -a android.settings.TURN_SCREEN_ON_SETTINGS
Change-Id: I7c47d4b1c0b33c7ba6209bb64acf93cb07d9a717
2023-04-18 09:12:44 +00:00
Jigar Thakkar
ee0c837117 Fix user starts by using startProfile
We used ActivityManager.startUserInBackground earlier to start the clone
user. As per the changes done recently (b/267800984),
UserVisibilityMediator now marks all the profiles/users started usign
startUserInBackground as startedInvisible. This results in the apps not
being able to launch on clone profile without a device restart. To fix
this, in this change we move to using ActivityManager.startProfile to
start the clone-user.

Test: Tested on device by creating clone profile through settings app
Bug: 268011720
Change-Id: I4a594cd4d10cfbd7459b04baa45719885decf87e
2023-03-29 10:58:23 +00:00
Josh Hou
38df174bba [Panlingual] Can't set per-app languages for apps on work profile page
Use startActivityAsUser instead of startActivity API to start the AppLocalePickerActivity of different users

Bug: 274378136
Test: 1. Perform AppLocalePickerActivityTest robolectric test
      2. Perform the manual test by switching different users
      3. Perform the manual test by switching different profiles
Change-Id: I4405b3b7e832b71b9ef66fa71d9e42ce12da167c
2023-03-21 10:57:42 +00:00
Alex Johnston
2747dc6e8c Implement OP_SYSTEM_EXEMPT_FROM_POWER_RESTRICTIONS exemption
OP_SYSTEM_EXEMPT_FROM_POWER_RESTRICTIONS details:
* An app with this appop will be made exempt from all
  power restrictions, including app standby and doze.
* In addition, the app will be able to start fgs from
  the bg, and the user will not be able to stop fgs
  run by the app.

Changes:
* Implement the OP_SYSTEM_EXEMPT_FROM_POWER_RESTRICTIONS

Bug: 246330879
Test: atest PowerAllowlistBackendTest

Manual testing:
- Give OP_SYSTEM_EXEMPT_FROM_POWER_RESTRICTIONS appop to TestDPC app
- Verify the app can start fg services from the bg
- Verify fgs started by the app cannot be stopped
- Verify the app cannot be put into background restricted via Settings

Change-Id: If9e76076c59195f1e6e5f3eee3c8e7a0c754d8de
2023-02-10 13:37:38 +00:00
George
2c5d1f8d29 Adding Nfc Tag App Preference setting to special_access settings
In the settings app, allow users to change the preference of the Nfc Tag apps.

Bug: 244272155
Test: make RunSettingsRoboTests ROBOTEST_FILTER=NfcTagAppsPreferenceControllerTest
Change-Id: I28903fae8935613a0e8618da21ca44e98b8801d5
2023-02-01 14:10:04 +08:00
Ankita Vyas
5fc8308173 Merge "AppClone: Few fixes in Cloned Apps page." 2023-01-20 04:39:19 +00:00
Ankita Vyas
48279a0d72 AppClone: Few fixes in Cloned Apps page.
- Trigger uninstall as clone user
- Back navigation

Test: manual
Bug: 259022623
Change-Id: Ic9e0b20d371f6f0a5c70c84b3950e82ba43bc82e
2023-01-19 08:53:39 +00:00
Ankita Vyas
7bad1241a4 AppClone: Add animation and description text in Cloned Apps page.
Bug: 265251138
Test: manual and robo
Change-Id: I623c01fc74c1ac162917fce8b2fda9754b0a2b4b
2023-01-13 08:12:18 +00:00
Ankita Vyas
149cbf04aa Merge "AppClone: Changes in AppInfo page for cloned app." 2023-01-12 05:04:43 +00:00
Ankita Vyas
3672fb4b85 AppClone: Changes in AppInfo page for cloned app.
- Hides preferences for cloneable apps under Cloned Apps page
- Displays Create option for cloneable apps under Cloned Apps page.
- Invokes CloneBackend on click of create and refreshes to display newly
  cloned app's AppInfo page.
- Appends suffix 'clone' for cloneable/cloned app.
- Displays text 'Delete' instead of 'uninstall'.

Screencast: https://screencast.googleplex.com/cast/NjI3MDEyMjk1MzAxNTI5NnxhOTIxZDhiZC03Zg

Bug: 262375058
Test: make RunSettingsRoboTests -j64

Change-Id: I34018f6cc7420d2667c25fbca59c832b398d723e
2023-01-06 08:31:20 +00:00
Yilin Cai
772f3b370b Add mapping to the WiFi-control SPA page in Settings app.
Test: local device + logcat
Bug: 262206181
Change-Id: Iafa2851a5a7c8770fc1b15cdfefaf37a17d55750
2023-01-05 14:18:25 +08:00
Himanshu Gupta
1648d68d49 Adding "Delete all App Clones" option on Cloned Apps page.
This option is seen by clicking the '3-dot' menu on Settings->Cloned Apps page and requires:
1. Flag 'remove_all_cloned_apps' to be turned on.
2. Cloned UserId to be present in system.

Test: Manually setting the flag, creating clones.
Change-Id: I83ff40923f7932ed6b23cb831bdcd2cb9252d295
2022-12-23 10:58:54 +00:00
Ankita Vyas
5784198b56 AppClone: Implement clone backend flow
- Add onClick listeners of add/trash icons on Cloned Apps page
- New layout with ImageView(Add icon) and ProgressBar
- Creation of clone user and install package in clone user
- Uninstallation of cloned app
- Summary when app is being cloned and after clone completion
- Action metrics

Bug: 259022623
Test: make RunSettingsRoboTests -j64
Change-Id: Idc76fb8d88ba8987084beef2a0ce4c57d6c45b9e
2022-12-19 06:15:10 +00:00
Chaohui Wang
fb8200aef8 Merge "Add ResetAppPreferences to AllAppListPage" 2022-11-30 06:55:46 +00:00
Arc Wang
c3ccc6a20d Merge "Fix flickering before transition animation of app search" 2022-11-29 06:01:39 +00:00
Arc Wang
3b80540e37 Fix flickering before transition animation of app search
ApplicationState.Session must be aware of ManageApplications
lifecycle to correctly activate/deactivate.

Bug: 245877468
Test: manual visual
      Settings -> Apps -> All apps -> search -> click search item
Change-Id: Ia4e6da0c4e43dcd53f6b4ea3e2fa6ffec059b880
2022-11-29 04:03:30 +00:00
Ankita Vyas
3bdedc2add Merge "AppClone: Changes to display app list on Cloned Apps page." 2022-11-28 15:41:37 +00:00