Commit Graph

94 Commits

Author SHA1 Message Date
Emilian Peev
1a56189eca Add camera extension fallback toggle
Android camera extensions
(https://source.android.com/docs/core/camera/camerax-vendor-extensions)
will be able to use SW fallback implementations
on devices that do not ship the corresponding
the device specific functionality.
Since the SW fallback will be using a new data
path, it was suggested that users must be able to
control and enable/disable the SW fallback
via the Settings app.

Bug: 297083874
Test: atest packages/apps/Settings/tests/unit/src/com/android/settings/privacy/CameraExtensionsFallbackPreferenceControllerTest.java

Change-Id: I1b97777babe1c9f4ea4f2f6ee3d8251fea11146e
2024-02-09 00:07:05 +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
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
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
Chaohui Wang
4000b90fad Merge "Remove context from enterprisePrivacyFeatureProvider" into main 2023-08-04 04:31:44 +00:00
Chaohui Wang
3cdf5b9be9 Remove context from enterprisePrivacyFeatureProvider
EnterprisePrivacyFeatureProvider is created by using application
context, no need pass context in when get.

Bug: 286764889
Test: m Settings
Change-Id: I346f2b0ccbb0590f26954603ab630132cd8be63f
2023-08-02 19:10:31 +08:00
Elliot Sisteron
4688f3f642 Fix entrerprise strings replacement for Safety Center.
In ag/20641184, it looks like we changed the behavior to only replace
titles when in fact some strings were replacing the summary.

This causes some entries to have the summary as the title instead.

Bug: 283743216
Test: Manual
Change-Id: I7157fd04c32eebd89bdb825ccc3e8ef73c9075bf
2023-08-01 17:43:43 +00:00
Mill Chen
f43f87fd16 Remove unused preference controller
Bug: 289967665
Test: robotest pass
Change-Id: I927d12a3978f00661d3079a655d22cd0aacbdf32
2023-07-11 17:31:59 +08:00
Elliot Sisteron
d86c590440 Remove search entries from old pages when SC is on.
There was already some code to guard this, but this wasn't overriding
the `isPageSearchEnabled` as well to support dynamic indexing.

Bug: 280596858
Test: manual
Change-Id: If4793d9fa2a7d68eac78258c18d04e9fb7d8fcea
2023-05-10 13:48:03 +00:00
Karishma Vakil
151d3deed2 [Safety Labels] Enable safety label change notifications flag by default
in Settings code

Bug: 261249312
Test: atest CtsPermission3TestCases
Test: atest AppDataSharingUpdatesPreferenceControllerTest
Change-Id: I34da5e4d140731b00749c89f8b328a2f2cb93e61
2023-04-19 23:50:57 +00:00
Jay Thomas Sullivan
fa6d0031f1 [Safety Labels] Filter out auto, wear and tv
This feature should never be enabled on these form factors.

Bug: 277601279
Bug: 264939792
Test: atest CtsPermission3TestCases:SafetyLabelChangesJobServiceTest
Test: atest CtsPermission3TestCases:AppDataSharingUpdatesTest
Change-Id: I89f0443c52cfc0894f2ad5398a15f2c0e1a9ad77
2023-04-13 15:17:04 -07:00
Jay Sullivan
6ed8f2b894 Merge "[Safety Labels] Decouple safety label changes from permission rationale" 2023-02-15 18:32:43 +00:00
Jay Thomas Sullivan
9f8da1f9be [Safety Labels] Decouple safety label changes from permission rationale
Currently the "Safety Label Changes" feature is toggled on only when the
following two feature flags are enabled:

1. safety_label_change_notifications_enabled
2. permission_rationale_enabled

Remove the dependence on "permission_rationale_enabled", so that "Safety
Label Changes" only relies on the
"safety_label_change_notifications_enabled" flag.

Bug: 269330969
Test:  atest PermissionControllerMockingTests:SafetyLabelChangesJobServiceTest; atest CtsPermission3TestCases:SafetyLabelChangesJobServiceTest;atest CtsPermission3TestCases:AppDataSharingUpdatesTest
Change-Id: Ie82bf6a5b6fe1d8cbe6ab58d23085e01c748b5c3
2023-02-15 04:33:38 +00:00
Prabal Singh
9afbd458d7 Remove Advanced Privacy Settings screen
This page will no longer be there in U, all these entries will be in
More Security Privacy page.
Removes the xml, and redirects the intent to the new More Security
Privacy page.
Bug: 263038547
Test: manually tested

Change-Id: Ib6dad47f79cdaadeff94c640e2001c59a0d8e233
2023-02-13 17:52:15 +00:00
Prabal Singh
52ba133285 Create MoreSecurtiyPrivacyFragment
Created a new MoreSecurityPrivacyFragment, a new
more_security_privacy_settings xml.
This more_security_privacy_settings xml is a created by merging
privacy_advanced_settings.xml and security_advanced_settings.xml and the
MoreSecurityPrivacyFragment is created by merging
PrivacyDashboardFragment and SecurityAdvancedSettings fragments.

Test: adb shell am start -a com.android.settings.security.MORE_SECURITY_PRIVACY_SETTINGS
Bug: b/261557620
Change-Id: I8729f4eaf25a31f91354383e7b6cb5e0fc7df976
2023-01-26 14:43:00 +00:00
TreeHugger Robot
e0050d3abf Merge "Fix Content Capture service starting after restriction" into tm-qpr-dev am: fb0986623f am: e9da17a8b9
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/20904549

Change-Id: I4cfcbf8cdfeafdd2547ed81bf3953eb371296ee7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-01-11 12:16:51 +00:00
Nate Myren
027d64c84c Add "Data Sharing Updates" to legacy Privacy Page
Note: Strings are non-final

Test: manual
Fixes: 261663929
Change-Id: Ia036a3bf715d10f94f17faf5b571896ca229a39a
2023-01-09 16:47:35 -08:00
TYM Tsai
a1ca72224d Fix Content Capture service starting after restriction
When a device owner and a profile owner restrict Content Capture,
there should be no toggle setting to turn on Content Capture.

Bug: 250573776
Test: Manual. Use setps on the comment#3,
      make sure no toggle setting in the Privacy page.
Change-Id: Ia17f852b224c67b9c1cf5846ee9ad5592a485bab
2023-01-09 08:34:40 +00:00
xinghailu
897fd74731 Cleanup some plurals in Settings
Change <one> to <1> in string res file, and update related java files.
Test: Update, existing test still pass.
bug: 199230342

Change-Id: Idd0ba3c6adc060da21574d98f8ed765fae00cef8
2022-12-22 16:05:13 +08:00
Nate Myren
8e3bc8c3ce Use PRIVACY_CONTROLS enum in PrivacyControlsFragment
Fixes: 260055305
Test: build
Change-Id: Ic7fe61d50416608496d1f0dfbc34735e61461a37
2022-12-06 14:25:29 -08:00
Tsung-Mao Fang
bd2ee1e20a Add indexable setting items
When work profile is supported on the device,
we should support work profile releated setting items.

Fix: 238055360
Test: Manual
Change-Id: I5b952f958d0c5fc0f7b22838e1f7cfc36239a22e
2022-10-18 16:03:43 +08:00
Evan Severson
5ba4065703 Make SensorToggleControllers lifecycle aware
We need to watch the lifecycle so that we can unregister callbacks and
not cause leaks.

This change also rewrites the SensorPrivacyManagerHelper. The previous
implmementation was using deprecated apis. It also had an issue where
if a callback was added it would not necessarily register alistener with
the callback with the service since that was only done when the value is
checked. Now we register a listener when the class is instantiated and
with the new API there will only be the 1.

Finally we impove the tests to have more coverage and test both
SensorToggleControllers and the SensorPRivacyManagerHelper class.

Test: Use profiler to verify no more leaks
      SensorToggleControllerTest, SensorPrivacyManagerHelperTest
Bug: 244280065
Change-Id: Ibf0bcee455444a104ca6800302907c3dc0de8f1f
2022-09-28 11:42:01 -07:00
Prabal Singh
b31624d406 Hide work policy info if safety center is enabled
Fix: b/241747812
Test: Manually
Test: make RunSettingsRoboTests
ROBOTEST_FILTER=WorkPolicyInfoPreferenceControllerTest

Change-Id: I23d68dd80d91ec9df80dd2542355ecc964583d39
2022-08-10 09:56:14 +01:00
Nate Myren
d18f11a84f Remove location toggle from privacy controls screen
Bug: 238857896
Test: manual
Change-Id: Ifc4ccc13271c42a0dd1941e8f26842afbe0411d6
2022-07-13 11:31:16 -07:00
Jay Thomas Sullivan
ecc0a45a98 Implement "More privacy settings"
Safety Center is enabled, the existing "Privacy" screen will be
different in a few ways:

1. Its title will become "More privacy settings"
2. A few preferences will be hidden
3. A few preferences will be reworded
4. The ordering of a few preferences will change
5. The PRIVACY_SETTINGS intent will now point to Safety Center;
   PRIVACY_ADVANCED_SETTINGS will point to "More privacy settings".

Test: manual
Bug: 222127397
Change-Id: I74faf770babb34f775b2ef572248e550ea683ab3
2022-05-12 18:25:06 -07:00
Chaohui Wang
f250493787 Update Personal / work selection UI.
Implement the new-look by using AlertDialog's
custom title and custom view.
Using the RecyclerView so we can display profile
horizontally.

Bug: 174626616
Test: manual & robolectric
Change-Id: I9f5a7685d9217fc62e01799ad73f9b9a3ddbf19a
2022-04-25 19:12:38 +08:00
Marie Matheson
ce321f0dd0 Merge SafetyCenterStatusHolder into SafetyCenterManagerWrapper
Test: SettingsUnitTests
Bug: 220384387
Change-Id: I3886d3cf4717b5c7efd99ebd8ffb6a039e3565a4
2022-02-22 16:36:17 +00:00
Jonathan Scott
269f97d960 Allow overriding of strings referenced in XML files.
Test: manual
Bug: 188414370
Change-Id: Ice45b1808530c14c4efff16795cac7b2cb81516e
2022-02-07 21:00:05 +00:00
Nate Myren
2f1fec89a0 Merge "Create PrivacyControls page in settings" 2022-01-31 22:43:04 +00:00
Jan Tomljanovic
9d2ec95c61 Call system service API instead of checking the phenotype flag directly.
Test: atest SettingsUnitTests
Bug: 208625216
Change-Id: Ib551cbaf0f09fe49bd81ef657037401263705521
2022-01-17 17:06:50 +00:00
Nate Myren
232962c3f2 Create PrivacyControls page in settings
Current strings are WIP, no entry point. Also updates a few remaining
EXTRA_PERMISSION lines to EXTRA_PERMISSION_GROUP

Test: build
Bug: 194816787
Change-Id: I347b3011e1f51bd11dca92471ba8ba77e2d758e5
2022-01-13 12:24:21 -08:00
Yuri Ufimtsev
2fb7bac849 Exclude Privacy Settings from search if Safety Center is enabled
Test: manual

Bug: 206797394
Change-Id: I474064786642a7e772da03e13308a63f7dd2dd4b
2022-01-07 14:24:59 +00:00
Stanley Wang
c35cab1c7b Merge "Fix the problem that some items can't be searched in Privacy category." 2022-01-05 01:52:31 +00:00
Stanley Wang
a0146d3fb7 Fix the problem that some items can't be searched in Privacy category.
The source of problem is that the controller returns the wrong
availability status value and the searchable attribut of the preference
is false.

Fix: 200249682
Test: manual test and see the search result
Change-Id: I2265514c49303f6a0910f1be84b281fccb9abb45
2021-12-24 18:09:58 +08:00
Jan Tomljanovic
9ef7f72349 Toggle Security and Privacy entries depending on SafetyCenter status.
Test: atest SettingsUnitTests
Bug: 206798563
Change-Id: I4c813a35754fa7ed5db630fa4c41ef14b469878c
2021-12-08 18:05:31 +00:00
Jason Chiu
2989c50a23 Add highlight menu keys for all toggle pref controllers and custom slices
Bug: 204695404
Test: manual, robotest build pass, unit
Change-Id: Iad2e28ada8ddb766ffa7eff2c8dc581250cbd6f8
2021-11-01 15:00:18 +08:00
arangelov
c5346baaa2 Don't start DPC with the FLAG_ACTIVITY_NEW_TASK flag
The flag prevents the DPC screen from showing with the in-app
transition.

Fixes: 198422800
Test: manual
Change-Id: Ie6debb55396eb5ce48a21b1ef52c89612b1c7ffd
2021-10-07 19:27:38 +01:00
Evan Severson
7d1835a319 Set toggle state for profile group
The toggle state should be set for all users in the current profile
group; for example a profile user.

Test: make RunSettingsRoboTests ROBOTEST_FILTER=SensorToggleControllerTest
Fixes: 194280328
Change-Id: Ib0b74e7b27722b44b116e614dc960bff72983a38
2021-07-23 16:04:39 +00:00
TreeHugger Robot
caa670fad4 Merge "Disable the mic/cam toggles when admin disallows" into sc-dev 2021-07-15 19:52:50 +00:00
Pyuli Naithani
c9dfa59d7c Add stats log for sensor privacy.
Test: statsd_testdrive 381

BUG: 192269258

Change-Id: I69e766b789b4b4a6ca0ad26b3a312baca3dbccd2
2021-07-07 05:26:51 +00:00
Evan Severson
2a5dd0e2ad Disable the mic/cam toggles when admin disallows
Test: Use test DPC app
Bug: 184927615
Change-Id: Ib3825967b2e7ddb6d4768abbc2e17fd39b936371
2021-07-01 10:19:15 -07:00
Evan Severson
175ca1c4b0 Update the settings privacy page to the latest mocks
Add the mic and camera toggles to the page. Also create an helper class
to keep binder calls to the system_server at a minimum.

Test: make RunSettingsRoboTests
Test: atest SettingsUnitTests
Test: Manual
Bug: 183985427
Change-Id: Iff6ee1c9a2c30095307f636decbcfcf298ed31b0
2021-05-17 22:49:28 +00:00
Narayan Kamath
c80e4ce3a1 Settings: Turn Privacy hub on by default.
Bug: 176902658
Test: manual
Change-Id: I44027f29ce1a6b5a0c5eeba1e68cabb7476e7cc6
2021-04-28 13:48:16 +00:00
Oli Lan
b914ec91f1 Merge "Use DeviceConfig property for default value of clipboard access notification setting." into sc-dev 2021-04-08 11:31:12 +00:00
Yi-an Chen
faf203edea Add top level privacy hub preference
Bug: 176902658

Test: Manually tested on Sargo DVT
Change-Id: I15d09f0288acadd7599dbe7a2a01223949b40e8f
2021-03-31 18:10:41 +00:00
Oli Lan
413f068536 Use DeviceConfig property for default value of clipboard access notification setting.
This uses a new DeviceConfig property for the default value of the
setting that controls whether a notification is shown when an app
accesses clipboard.

Bug: 182349993
Test: manual, "adb shell device_config put clipboard
show_access_notifications false" and observe setting changes when
not set manually; also check notifications shown when expected.
Test: make RunSettingsRoboTests ROBOTEST_FILTER=
"com.android.settings.privacy.ShowClipAccessNotificationPreferenceControllerTest"

Change-Id: I452b1850ecc5fefb2ca9476d249866b32c885478
2021-03-17 19:04:54 +00:00
Oli Lan
a984be6fdb Add a setting to turn clipboard access notifications on/off.
This adds a new switch setting under Privacy to control whether
toast notifications are shown when an app accesses clipboard
(see b/179667029 for the clipboard access notification feature).

Bug: 179667029
Test: make RunSettingsRoboTests ROBOTEST_FILTER=
"com.android.settings.privacy.ShowClipAccessNotificationPreferenceControllerTest"

Change-Id: Ibac7f31538ab3e4d2ec476cb8c05cbbd0c7e6d41
2021-03-17 17:54:30 +00:00
Tsung-Mao Fang
ab914adc00 Remove permission bar chart in Privacy setting
- Because permission hub is already postponed,
we don't need to show this UI in privacy settings.

Test: Rebuild, visual, robotest
Change-Id: I51aca52bc605a3c6b0cafc084e8e491c280d770f
Fix: 143447873
2019-10-28 19:00:44 +08:00
Raff Tsai
ac3e0d0988 Directly use BaseIndexableProvider
- Add function getXmlResourceId, Fragments don't need to write
xml resource id twice.
- Remove getPreferenceControllers from Indexable.java. Because it will
move to SettingsLib later for other apps which don't need this function

Bug: 135053028
Test: robolectric
Change-Id: I1e74519aecdea3dde64a5aea79f08d766dbc0003
2019-09-24 00:35:52 +08:00
Tsung-Mao Fang
12155084d8 Hide a11y usage when there is no enabled a11y service
A11y usage still shows in privacy page after
user disable a11y with a11y usage dialog.

We need to check again whether there is any enabled a11y
after screen comes back to foreground.

Change-Id: Icf7aa7dc9d802765ec49df8651385397f454cd48
Fix: 140207216
Test: robotest
2019-09-20 17:32:19 +08:00