Commit Graph

2937 Commits

Author SHA1 Message Date
Becca Hughes
401ebcb53d Fix enterprise settings bug
This fixes a bug where the picker
is not using the correct user id
and also ensures that the settings
activity uses the correct user when
launched.

Test: flash & test w/ work profile
Bug 322071206

Change-Id: I846593ff9ae320d9bb774e3e79ed9ef41f101ff5
2024-02-05 10:58:09 -08:00
Becca Hughes
09fa333f47 Add try/catch to handle invalid settings activity
Change-Id: I20d9480fd3bfe14fe4e85ed2937aaba3df09302d
Test: make
Bug: 322287971
2024-01-26 17:51:55 +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
Becca Hughes
87117b0183 Merge "Add buttons for new settings design" into main 2024-01-19 22:05:14 +00:00
Becca Hughes
782fcb9bd5 Add buttons for new settings design
This adds a new class called PrimaryProviderPreference
which is responsible for laying out the old cog view if
the feature is disabled and the new button view if it
is enabled.

Screenshots:
https://hsv.googleplex.com/5109836204212224
https://hsv.googleplex.com/5574754636398592
https://hsv.googleplex.com/6737135727017984

Change-Id: I1ad0c59a4afc5be3694b499f66bbd7306dfbee69
Test: Manual test with flag on + off & unit tests
Bug: 300979487
2024-01-19 19:42:14 +00:00
Becca Hughes
2417c84a77 Update strings for new settings design
This updates the strings for the new settings
design as per the new spec.

Screenshots:
https://hsv.googleplex.com/5257279109595136
https://hsv.googleplex.com/5049022822744064
https://hsv.googleplex.com/6177842804031488

Change-Id: I6ff705d2bfab9de4ca2e8d49763b5405e3d2d2c3
Test: Manual test
Bug: 300979487
2024-01-16 18:13:32 +00:00
Chris Antol
5245ebfd4a Merge "Prevent the disabling of specified apps" into main 2024-01-12 18:54:58 +00:00
Becca Hughes
42bcdcfdfd Merge "Make provider icon sizes consistent" into main 2024-01-12 17:23:03 +00:00
Becca Hughes
7dca691308 Make provider icon sizes consistent
Fixes an issue where the icons under "additional providers"
are not the same size. Also, fixes the unit tests for
CredentialManagerPreferenceController.

https://hsv.googleplex.com/4797855484084224

Test: unit tests and manual on device tests
Bug: 278772478
Change-Id: I88d8694189a7529ccc2d92bf1b74bb5bf2268f46
2024-01-12 16:19:47 +00:00
Hani Kazmi
4e0fc12d05 Merge "Enable ECM restrictions for Usage Access and Device Admin" into main 2024-01-11 13:26:43 +00:00
Sunny Shao
bee65b4109 Merge "Revert^2 "Nullability Annotations replacement"" into main 2024-01-10 08:35:06 +00:00
Sunny Shao
076ed573eb Revert^2 "Nullability Annotations replacement"
This reverts commit 19d1d3d15d.

Reason for revert: revert it because this is not the root cause.

bug: 316867690
Change-Id: I0f168dbb64044aa720202af7b1040afd4f028c9c
2024-01-10 07:34:01 +00:00
Edward Savage-Jones
03bde3d8c6 Prevent the disabling of specified apps
Prevent the disabling of specified apps, avoiding cases
where disabling the app may result in an unusable system.

Bug: 200043113
Test: make RunSettingsRoboTests ROBOTEST_FILTER=ApplicationFeatureProviderImplTest

(cherry picked from https://android-review.googlesource.com/q/commit:e6279dd6a20ee254bab9a66e545b9dbaf1895db0)
Change-Id: I0b298af76cec20e4f31ec7411bbf3200a2869035
2024-01-09 21:21:34 +00:00
Omer Ozer
ea4ca29090 Add logic to redirect default payment setting
to default wallet selector.

Bug: 283989236
Bug: 313968146
Test: Manual
Change-Id: I984497baa1689d1b31eedd6a4f9ab453b10dd93c
2024-01-09 18:00:05 +00:00
David Liu
38ce956b72 Merge "Fixed logging ACTION_SETTINGS_DISABLE_APP with package name" into main 2024-01-04 08:11:02 +00:00
Sunny Shao
946f52b2a1 Merge "Revert "Nullability Annotations replacement"" into main 2023-12-29 03:18:24 +00:00
Sunny Shao
19d1d3d15d Revert "Nullability Annotations replacement"
This reverts commit cf0501e4d7.

Reason for revert: b/317462033, it seems a flaky but revert it first.

Change-Id: Ie1d5e279cca6477fc17d8c27c1ecda8d7a6b2553
2023-12-29 02:28:24 +00:00
sunnyshao
2ff71edc1c Disabled the "Double-tap to activate"
- disabled the listview in the createVerifiedLinksDialog

Fixes: 242822432
Test: manual test
Change-Id: Iee884691d5900ff016f41a9ca120604d52dfc362
2023-12-25 14:00:38 +08:00
Kevin Jeon
dc8508293e Merge "Hide Memory usage UI fields if flag is enabled" into main 2023-12-22 17:39:09 +00:00
Graciela Wissen Putri
480d523a0c [3/n] Pre-select fullscreen option if overridden
Settings > Apps > Aspect ratio (experimental)

Pre-select the fullscreen option if all are true:
- device manufacturer has overridden app to fullscreen
- app has not opted out of orientation override
- app has not opted out of user's fullscreen option
- user has not set any aspect ratio (USER_MIN_ASPECT_RATIO_UNSET)

"App default" will have a new value of USER_MIN_ASPECT_RATIO_APP_DEFAULT
if device manufacturer has overridden app to fullscreen, which will
behave the same as USER_MIN_ASPECT_RATIO_UNSET without the
device-applied fullscreen override.

Bug: 310816437
Test: atest UserAspectRatioDetailsTest
      atest UserAspectRatioManagerTest
      atest UserAspectRatioAppPreferenceTest
Change-Id: I6be634bb4369292687b865ce30d902540419183c
2023-12-22 13:15:56 +00:00
Kevin Jeon
55c8c9b86c Hide Memory usage UI fields if flag is enabled
This change updates the Memory use UI in developer settings to hide
memory fields by default if the AppProfiler PSS deprecation flag is
enabled. A toggle is provided to resume PSS profiling and reinstate the
memory fields, and shows a dialog to reboot if the toggle is updated.

The summary for the "Memory" button in developer settings will show
"Memory profiling disabled" instead of "Avg X GB of Y memory used" if
PSS profiling is not enabled.

Test: With the flag enabled, flash and verify that:
      - The memory fields are hidden by default, and the summary shows
	the expected "Memory profiling disabled" text
      - Clicking the toggle shows the reboot dialog, which will
	correctly change the setting and reboot if accepted, and keep
	the setting and not reboot if denied
      - Check that AppProfiler correctly profiles PSS or RSS based on
	the state of the toggle, which persists across reboots
      - Included UI test for Memory page elements based on flag value.
Bug: 296454553
Change-Id: Ie21791502445a321446cb8110e5800089f47ac58
2023-12-22 01:15:04 -05:00
David Liu
fcb6e1a5ac Fixed logging ACTION_SETTINGS_DISABLE_APP with package name
Bug: 317386395
Test: fixing metrics only + local build pass
Change-Id: I6bac53d3219315f9d225bfe367c7b3bdc423ca7c
2023-12-21 19:49:27 +00:00
sunnyshao
cf0501e4d7 Nullability Annotations replacement
-- Replace the android.annotation.Nullable / android.annotation.NonNull
   with androidx.annotation.Nullable / androidx.annotation.NonNull

Bug: 316867690
Test: build pass
Change-Id: I0c1da55dfb09ece855151c47e0492d6f46538621
2023-12-20 08:50:09 +08:00
Matías Hernández
c76c679f63 Merge "Tag Zen operations from Settings as coming from the user" into main 2023-12-18 22:57:58 +00:00
Matías Hernández
907b47105b Tag Zen operations from Settings as coming from the user
Bug: 308670715
Test: atest ApprovalPreferenceControllerTest
Change-Id: Id118f867e84f3d742db6b12eab0f34df1357d178
2023-12-18 13:32:32 +01:00
Ziad Youssef
e41e5444e9 Block the disable option for WebView Default package
Test: atest ApplicationFeatureProviderImplTest

Bug: 308907090

Change-Id: I21785975b965b04895849d2df71fa2f2b4cb4b2d
2023-12-13 12:43:19 +00:00
Hani Kazmi
05f85914d8 Enable ECM restrictions for Usage Access and Device Admin
This commit continues the work to make all special app access
permissions ECM restrictable. Some implementation notes:

1. The FilterTouchesSwitchPreference and AppSwitchPrefernce components
   are replaced with RestrictedSwitchPreference. afaict this is a
   superset - it still filters out obscured touches and shows the app
   icon.

2. I'm treating this as mostly a refactoring, and so do not have a
   feature flag around most of the changes. Enabling ECM for them /is/
   behind the feature flag in RestrictedLockUtilsInternal.

3. app_ops_permissions_details.xml is currently only used by
   UsageAccessDetails.

Bug: 297372999
Test: Manually tested on device. Automated tests to follow
Change-Id: I65fe7ec099582de19192a77ad2e41c1558761502
2023-12-07 15:59:52 +00:00
Hani Kazmi
ded1cd59c9 Update existing ECM settings to use new infrastructure
1. Update Notification Listener and A11y settings to call
   RestrictedLockUtilsInternal rather than checking appOp themselves

2. Rename ecm related methods to include Ecm rather than AppOp -
   implementation details are being moved to permissions module and may
   change.

Bug: 297372999
Test: Manually tested on device. Automaated tests to follow
Change-Id: Ie3e16b502993b21a7e34eab0d661f98814b3cfd5
2023-12-07 15:59:52 +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
Jakob Schneider
b423e6b5b5 Fix opening the Settings page from the launcher.
Bug: 309107861
Test: Tested the bugfix manually
Change-Id: I40e05d0b6fc22a432895490bc51531a0eb3190ac
2023-12-01 11:48:45 +00:00
Roshan Pius
f04ee0dfab settings: Remove @hide NFC API usage
These @hide usages in other parts of platform need to be cleaned
up to unbundle NFC mainline module.

Flag: None (The NFC flag - `enableNfcMainline` has been promoted to trunkfood. Note these APIs are available as @hide even if not available in formal SDK until V)
Bug: 307352220
Test: Compiles

Change-Id: I6f87ad7ae03c67aaa2ddb0ac2529debc53278ba8
2023-11-29 21:24:28 +00:00
Becca Hughes
e70dad42f4 Swap cog and left hand side of row
See bug for more context.

Test: flash device
Bug: 280951040
Change-Id: I21ba2a2177f88dbabea42915727f8c33aa0e23f8
2023-11-28 10:05:38 -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
08a1c9876e Revert^2 "Migrate to CompoundButton.OnCheckedChangeListener"
8979681a8d

Change-Id: I60edd3aabf49afbe4aa016af780baa68d928bddf
2023-11-07 14:17:15 +00:00
Sebastian Pickl
8979681a8d Revert "Migrate to CompoundButton.OnCheckedChangeListener"
Revert submission 25147565-onSwitchChanged-CompoundButton

Reason for revert: breaking builds 

Bug:309601476

Reverted changes: /q/submissionid:25147565-onSwitchChanged-CompoundButton

Change-Id: Ie746db87d9c642599593aa3d5e5baf6b7ba89c0e
2023-11-07 13:26:36 +00:00
Chaohui Wang
71d1f021af Migrate to CompoundButton.OnCheckedChangeListener
Switch and SwitchCompat are both CompoundButton.

Using CompoundButton in Java will helps migration in the future.

Bug: 306658427
Test: manual - check Settings pages
Change-Id: If2e08a9a9557ec66a3b31ef18cd2e15943098a59
2023-11-07 20:22:27 +08:00
Eghosa Ewansiha-Vlachavas
bf7010be33 Merge "Log radio button clicks on the user aspect ratio app info page" into main 2023-11-03 10:28:16 +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
Eghosa Ewansiha-Vlachavas
76ba215300 Log radio button clicks on the user aspect ratio app info page
When a user changes an apps aspect ratio, log both the new aspect ratio
they select and the previous aspect ratio they are changing from.

Fix: 308395282
Bug: 298030311
Test: atest SettingsRoboTests:UserAspectRatioDetailsTest
Change-Id: I0ba8f84e1dae94eba0de0301b281506c4eb82f32
2023-11-02 16:01:13 +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
Roshan Pius
a5d82be483 settings(payments): Use newly exposed formal API for CardEmulation.getServices()
Bug: 307352220
Test: Compiles
(cherry picked from https://android-review.googlesource.com/q/commit:1b6f9160c6954619bc86a3f7c7c39241b2427d91)
Change-Id: Iaaa37a8e55d755f8abcbaa26c31bf7962e166e96
2023-10-31 01:14:44 +00:00
Graciela Putri
5c06348c93 Merge "Enable all aspect ratio options in UserAspectRatioManagerTest" into main 2023-10-27 08:46:23 +00:00
Mark Kim
679b2626d8 Include archived apps into the counter
Test: InstalledAppCounterTest

Bug: 304255511
Change-Id: If667acae249d248ce013a9dd370af41698266a45
2023-10-26 18:18:26 +00:00
Graciela Wissen Putri
3ced0bd60d Enable all aspect ratio options in UserAspectRatioManagerTest
testGetUserMinAspectRatioEntry fails for foldables and tablets due to
some aspect ratio options being disabled. Mock Resources to return all
default aspect ratio options and strings to make test device agnostic.

Clean up unused variables and remove getLauncherApps in
UserAspectRatioManager.

Add more tests in UserAspectRatioManagerTest.

Fix: 304685321
Test: atest SettingsUnitTests:UserAspectRatioManagerTest
Change-Id: I6f4bbd60863be0c66139955507157619a5fc6662
2023-10-26 12:55:12 +00: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
e752f7214b Remove unused SwitchBar
Only used in tests, so also migrate the tests.

Bug: 306658346
Test: manual - on bluetooth
Test: m RunSettingsRoboTests
Change-Id: Id2b010c1d9c32abe21dcc8765e9446fc4f7a5b25
2023-10-25 12:17:49 +08:00