Commit Graph

258 Commits

Author SHA1 Message Date
Jan Tomljanovic
303abbc3cc Merge "Always confirm eSim removal." into main 2023-12-13 10:54:43 +00:00
Jakob Schneider
accd9ca298 Merge "Fix settings tests where we relied on the resId." into main 2023-12-12 19:41:53 +00:00
Jakob Schneider
75b99cc6e4 Fix settings tests where we relied on the resId.
Test: HibernationSwitchPreferenceTest
Bug: 315957412
Change-Id: I1e941563c480de6c8cb15bc4c8b0876e2aa44824
2023-12-12 18:04:17 +00:00
Jan Tomljanovic
db1402a4df Always confirm eSim removal.
Test: atest DeleteSimProfilePreferenceControllerTest
Bug: 313604661

Change-Id: I0c43790bf43bedcc2e8075aa7be0b25876c731b4
2023-12-12 15:57:19 +00:00
Mark Kim
e3b456ef3e Add 'Restore' button to AppInfo screen
Test: AppButtonsTest, AppRestoreButtonTest

Bug: 304255818
Change-Id: Ica9055d8ee5603e4bb682e9b5d90a225c839002a
2023-12-11 22:07:03 +00:00
SongFerng Wang
dd2cc366a6 Merge "Add condition whether esim is visible or not" into main 2023-12-11 05:52:47 +00:00
SongFerngWang
ec27c60461 Add condition whether esim is visible or not
Bug: 314736037
Test: SubscriptionInfoListViewModelTest pass and build pass
Change-Id: I7dc86ca93691f044d951122c0c669c790b7aef98
2023-12-11 05:47:49 +08:00
Mark Kim
d17b1a3816 Merge "Add 'Archive' button to AppInfo screen" into main 2023-12-08 10:25:58 +00:00
Mark Kim
63f48ad2c6 Add 'Archive' button to AppInfo screen
Disable 'Archive' button whenever 'Uninstall' button is disabled.

Test: AppArchiveButtonTest, AppButtonsTest

Bug: 304256700
Change-Id: I9671905eca2cb71a5bf30bf29be83e5305a48ef4
2023-12-07 20:21:40 +00:00
Chaohui Wang
176a5727ff Fix flaky of AppInstallerInfoPreferenceTest
Bug: 288353352
Test: unit test
Change-Id: Iaf500bd9f3428914d5a35d69f1bf4f3a57d511b4
2023-12-07 14:15:21 +00:00
Anubhav Kakkar
86b5a0afc1 Merge "Implement special app access settings for MEDIA_ROUTING_CONTROL app-op." into main 2023-12-07 10:58:40 +00:00
Anubhav Kakkar
642bc5a6bc Implement special app access settings for MEDIA_ROUTING_CONTROL app-op.
Bug: b/307632045
Test: Pair a watch with companion app > Settings > Apps > Special app access > enter "Change Media Output" > Find the companion app > Ensure the special app access is Allowed > ensure companion app is able to call remote media routing APIs > come back to the settings > revoke the access > ensure that now companion app is NOT able to call the remote media routing APIs.

Change-Id: I35487660365ef05f3b998e8ecf13aaed7ba844a9
2023-12-07 09:12:08 +00:00
Chaohui Wang
b0cf27abbd Update the App Info Settings when package archived
Listen to the following actions,
- Intent.ACTION_PACKAGE_CHANGED for App enabled / disabled
- Intent.ACTION_PACKAGE_REMOVED for App archived
- Intent.ACTION_PACKAGE_REPLACED for App updated
                                     App updates are uninstalled
- Intent.ACTION_PACKAGE_RESTARTED for App force-stopped

Also,
- Prevent AppInfoSettings flaky, by moving package info null into
  RegularScaffold.
- Offload uninstallButton's enabled from main thread.

Bug: 314562958
Test: manual - All apps > app detail
Change-Id: Iaf210eb9e9b4ace1aa9079cdbb2d7430de4dd75f
2023-12-06 15:31:14 +08:00
Chaohui Wang
015a98ac38 Use IconDrawableFactory in AppPreferenceRepository
Bug: 314757827
Test: manual - on AppDataUsage
Test: unit test
Change-Id: Ica559ce044ebddfa8bc3ce994f9266ea1aabbe84
2023-12-05 14:56:47 +08:00
Chaohui Wang
6adf1bad31 Let SpaBridgeActivity support HIGHLIGHT_MENU_KEY
Also the SpaAppBridgeActivity.

Could be tested by,
adb shell am start -n com.android.settings/.ManageFullScreenIntent

adb shell am start \
  -a android.settings.MANAGE_APP_USE_FULL_SCREEN_INTENT \
  -d package:com.android.settings

adb shell am start -n com.android.settings/.UsageStatsActivity

Bug: 309075424
Test: manual - on tablet
Test: unit test
Change-Id: I778443e9d21d165904e415c66c03aafc7ac81372
2023-12-05 11:43:31 +08:00
Chaohui Wang
de3fe3744f Refresh the App Info Settings
When apk upgraded or downgraded.

And only close the page when the package is fully removed.

Bug: 314562958
Test: manual - on App Info Settings
Test: unit test
Change-Id: Ifdff714da99e31f9c5f237a0c3342de7a0797ec4
2023-12-04 01:43:11 +00:00
Chaohui Wang
8295743fe1 Only show DeveloperOptionsController for admin
Bug: 311604902
Test: manual - on System page
Test: unit test
Change-Id: Idbf40be4e0074f5d381724538c226a336c2c3b27
2023-12-01 15:30:27 +08:00
Chaohui Wang
880068d23a Avoid ANR of TetherPreferenceController
Off load the following work from main thread,
- Calculate title
- Calculate summery

This also helps improve the latency.

Also migrate to registerTetheringEventCallback() since
TetheringManager.ACTION_TETHER_STATE_CHANGED is deprecated.

Fix: 311848767
Test: manual - on Network & internet page and turn on / off tethering
Test: unit tests
Change-Id: I6ee182b41ef51f691ea31938142be1a41faf5573
2023-11-29 12:06:37 +08:00
Chaohui Wang
ee7139a889 Remove injecting developer options into Settings itself
- It can improve performance because we use less injected item
- Also use RestrictedPreference instead just checking restrictions,
  so we follow policy transparency.

Note: Renamed DevelopmentSettingsDashboardActivity to
DevelopmentSettingsActivity,
because DevelopmentSettingsDashboardActivity could in disabled state
even after Settings upgrades, use a new name to prevent this issue.

Bug: 311604902
Test: manual - turn on / off Developer Options
Test: unit test
Change-Id: I17be117ae59e59410687e6d08fd5edd034d0508f
2023-11-27 05:12:13 +00:00
Chaohui Wang
28bbbf783b Merge "Reduce flaky of whenIsInstantApp_hasSummaryForInstant" into main 2023-11-22 03:02:30 +00:00
Chaohui Wang
3534061f7b New SystemUpdateRepository
Extract getSystemUpdateIntent, and add unit test.

Bug: 311110616
Test: manual - on "Software updates" page
Test: unit test
Change-Id: Ic7c06490d1d324705f547b2394794605e85485a4
2023-11-21 14:09:57 +08:00
Chaohui Wang
8b7e6c28bc Check isSimHardwareVisible earlier
In SimEidPreferenceController, to reduce flaky on no SIM devices.

Bug: 304560734
Test: manual - on "About phone / tablet" page
Test: unit test
Change-Id: I07ae9b785d0fbe24a866883080a466a2110ca68f
2023-11-17 07:18:44 +00:00
Chaohui Wang
7cb01f2f1e Reduce flaky of whenIsInstantApp_hasSummaryForInstant
Wait for enabled summary instead wait for title.

Bug: 288353352
Test: unit test
Change-Id: Ifaf713fd3b781401701f1c8770a7a2a2de0f673f
2023-11-15 11:10:54 +08:00
Chaohui Wang
9e0bd18686 Fix restriction to configure Calls & SMS
Restriction UserManager.DISALLOW_CONFIG_MOBILE_NETWORKS is added.

Fix: 278062379
Test: manual - apply restriction no_config_mobile_networks
Test: unit test
Change-Id: I87bf2269359bbceb989fa10524d55dd7ceb55de1
2023-11-14 09:48:52 +00:00
Chaohui Wang
4e2fa570bd Merge "Use MobileDataEnabledFlow in BillingCyclePreference" into main 2023-11-10 10:15:30 +00:00
Chaohui Wang
de8876e9b5 Extract ClientInitiatedActionRepository
Also add unit test.

Bug: 300851543
Test: manual - on system page
Test: unit test
Change-Id: I362afb4aa0683ebcc6695ff0b5bc35ef8afb5697
2023-11-10 14:31:07 +08:00
Chaohui Wang
0739b5edd1 Use MobileDataEnabledFlow in BillingCyclePreference
To easily collect the mobile data enabled setting changes.

Bug: 308903704
Test: manual - on Mobile Settings
Test: unit test
Change-Id: Ic449ce14fad38513b1e13facc6a192d30318c7b0
2023-11-10 10:33:46 +08:00
Chaohui Wang
d8b21d7846 Avoid unnecessary Html.fromHtml()
Check if string contains html tag, before call Html.fromHtml()

Fix: 308681068
Test: atest SubscriptionsPreferenceControllerTest
Test: atest ProviderModelSliceHelperTest NetworkProviderWorkerTest
Test: manual - on Internet page
Change-Id: Id914689f2861a8c997d18afd03ecfdf47b91c631
2023-11-09 11:10:43 +00:00
Chaohui Wang
62e64c592e Merge "Let SpaBridgeActivity support ActivityEmbedding" into main 2023-11-09 09:39:36 +00:00
Chaohui Wang
478ab50c01 Prevent Erase SIM during call
By collecting call state and only enable preference when idle.

Fix: 298893271
Test: manual - on Mobile Settings during call
Test: unit tests
Change-Id: Ifd567a6b68a3efbb0b42bfa0233f7c54eca07ae1
2023-11-08 03:08:56 +00:00
Chaohui Wang
0d338cd1df Let SpaBridgeActivity support ActivityEmbedding
Move the multi pane shared logic into EmbeddedDeepLinkUtils.

Fix: 309075424
Test: manual - with SpaActivity
Test: unit tests
Test: m RunSettingsRoboTests ROBOTEST_FILTER=".*\.SettingsActivityTest"
Change-Id: I8c41c801b8a5009a3959c85b784ed9739d947a70
2023-11-07 13:24:59 +08:00
Chaohui Wang
ddf79703ce Merge "[Spa] Fix State<T> as a parameter of SwitchPreference" into main 2023-11-06 04:19:30 +00:00
FanWu
1e0e039708 Cleanup Spa special access tests
Bug: 309042337

Test: Unit test
Change-Id: Id58dfc46a6e3cafc8d6e89516ffd241c791adda1
2023-11-06 04:00:19 +00:00
Chaohui Wang
89a3f9b194 Merge "New MobileDataEnabledFlow" into main 2023-11-06 02:56:31 +00:00
Chaohui Wang
fead9257b3 Fix AppDataUsageCycleController.setInitialCycles
This is actually called after displayPreference(), so should update
cycleAdapter in setInitialCycles() instead of displayPreference().

Also update test.

Bug: 240931350
Test: manual - on AppDataUsage
Test: unit test
Change-Id: I00287c21e307199b26c336f15b9a623737a5d130
2023-11-05 21:27:19 +08:00
Chaohui Wang
eedc7fd52d [Spa] Fix State<T> as a parameter of SwitchPreference
Bug: 292036686
Test: manual - with Settings
Test: unit tests
Change-Id: I003f3b7f29117258da6ae3c48039fb50c2bee95c
2023-11-05 00:09:27 +08:00
josephpv
380ac9a48e Adds Google account login during private space setup
This has the following changes:
1. On profile creation starts intent to add google account to the private profile for Pixel only devices.
2. On accout sign in failed show an error screen with message to try again.
3. Moves the lock setup fragment from private to main user which now calls the helper Activity as a private user which helps to setup lock. This activity can now also be called from the planned Secondary Auth settings page to set up private profile lock.
4. On set up complete use SHOW_WORK_APPS intent as a workaroud to start launcher.

Bug: 308397617
Test: Manual setup
Change-Id: I19b95375409f015b2a5d30fdad766c2f6baa634b
2023-11-03 13:50:55 +00: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
Fan Wu
20826ab063 Merge "Add TurnScreenOnApps" into main 2023-11-03 01:34:24 +00:00
Chaohui Wang
9e72afdca4 New MobileDataEnabledFlow
To easily collect the mobile data enabled setting changes.

Bug: 308903704
Test: manual - on DataUsageList
Test: unit tests
Change-Id: I31327f59ac32c1a621e2853e64bd30d7d17e079c
2023-11-03 07:19:26 +08:00
fayey
6619010f0a Add Voice activation apps into Settings->Apps->Special app access
This change is flag controlled by
`com.android.settings.flags.enable_voice_activation_apps_in_settings`.

Bug: 306447565
Bug: 303727896
Test: atest com.android.settings.spa.app.specialaccess.VoiceActivationAppsTest
Test: atest com.android.settings.spa.app.specialaccess.VoiceActivationAppsPreferenceControllerTest
Test: manual Settings CUJs
Change-Id: I71a0dc2303263c9957220b56e4dcacec9a561b02
2023-11-02 20:07:53 +00:00
Chaohui Wang
298f65b048 Merge "Finish Mobile Settings if airplane mode is on" into main 2023-11-02 09:06:48 +00: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
Mark Kim
fda2e169bc Move launch button from 3-buttons panel to the top right corner
Test: AppButtonsTest, TopBarAppLaunchButtonTest

Bug: 304255179
Change-Id: Ib8ac1670e0910436f4200e2200714c65b2a593f9
2023-11-01 11:20:22 +00:00
Chaohui Wang
4ad7c3c2e6 Finish Mobile Settings if airplane mode is on
Fix: 298940648
Fix: 299256852
Fix: 295408616
Test: manual - on Mobile Settings then turn on airplane mode
Test: unit tests
Change-Id: Ifb4a287f7494ecb8b5040dbae7620fedfc316fdc
2023-11-01 18:05:42 +08:00
Mark Kim
fb3db3024d Merge "Support fetching PackageInfo for archived apps" into main 2023-10-31 12:08:00 +00:00
Mark Kim
9942248d98 Support fetching PackageInfo for archived apps
Test: PackageInfoPresenterTest

Bug: 304256071
Change-Id: Ia8f160c160acf41aa4f25f9d02efa4d470a56a63
2023-10-30 10:50:55 +00:00
Chaohui Wang
8a5bba1f22 Check MOBILE_DATA_POLICY_MMS_ALWAYS_ALLOWED
To know whether MMS is always allowed, should check
isMobileDataPolicyEnabled(MOBILE_DATA_POLICY_MMS_ALWAYS_ALLOWED)
instead of isDataEnabledForApn(ApnSetting.TYPE_MMS).

Fix: 303759893
Test: manual - toggle "MMS messages" switch
Test: unit test
Change-Id: Id0417e569ff4e3dbac1ecff9327b4a964125c122
2023-10-26 11:07:03 +00:00