Commit Graph

20 Commits

Author SHA1 Message Date
Kevin Chyn
156db33a56 Disable combined controller only if all modalities require consent
Additionally, ensure that consent is only requested for modalities
that have not been previously consented to. We retrieve the consent
requirement (which come from DPM) in onActivityResult instead of
onCreate, since the signal may not be ready immediately.

Fixes: 196060286
Fixes: 204592495
Test: make -j56 RunSettingsRoboTests ROBOTEST_FILTER=CombinedBiometricStatusPreferenceControllerTest

Change-Id: I984e61f28ffbf957c16cac4ea84f40b6ad7d8ae9
2021-11-16 12:32:56 -08:00
Jason Chiu
9fc0f18181 Define a constant Sliceable#NO_RES for no resource cases
Fix: 204733076
Test: build
Change-Id: Ifa3b9db0e915a3ec056ad68a9a1862811594d423
2021-11-03 12:23:49 +08: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
Curtis Belmonte
a9c582262e Make biometric setting toggles show dynamic auth types
Updates the preference toggles shown on the combined biometric settings
screen to indicate which types of biometric sensor (e.g. face and/or
fingerprint) each setting applies to. This is done by checking the
maximum registered strength for each type of sensor.

Test: Manual

Bug: 193714498
Bug: 201306569
Change-Id: I1f27bbe1fdd172ebc899c3c5f1daef9095b338bd
2021-09-27 15:55:43 -07:00
Joe Bolinger
f78cec292c Remove sliceable attribute from biometric preference controllers.
This removes the top-level UI switch on some of the boolean preference settings.

Bug: 193438173
Test: atest com.android.settings.biometrics
Change-Id: If1cd2cb9ae456021fcdf0efc5002db4a083b9689
2021-08-20 18:42:50 +00:00
Joe Bolinger
9e9f1249d4 Refresh biometric preference controllers on lifecycle events.
Fix: 195961101
Test: make RunSettingsRoboTests
Test: manual (enroll via settings and verify preferences enabled after enrolling)

Change-Id: Ie50cd862a42c96eb95f2156a33f34748b2b8b50c
2021-08-10 13:29:05 -07:00
Joe Bolinger
61d998406d Use RestrictedPreference for all biometric settings.
Fix hardcoded preference key in settings controller.

Fix: 194708564
Bug: 194246380
Test: manual
Test: make RunSettingsRoboTests
Change-Id: I86bdd40fd848c5ba2d39acfde4771f5969e640d1
2021-07-26 18:36:32 -07:00
Curtis Belmonte
effa67a8bb Limit searchability of combined biometric Settings
Ensures that the combined biometric settings pages shown in Settings are
not indexed for search on devices without multiple biometric sensors.

Test: Manually tested on devices with and without multiple biometrics

Fixes: 193704179
Change-Id: I007b5d2a0191cb61454e5ae0f411d4c594536fc5
2021-07-15 10:51:35 -07:00
Kevin Chyn
9af27677e9 Convert biometrics to RestrictedPreference
Bug: 188847063
Test: adb shell settings put secure com.android.settings.biometrics.ParentalControlsUtils.always_require_consent 1
      Preference becomes gray with an info icon
Test: atest ParentalControlsUtilsTest
Test: make -j56 RunSettingsRoboTests ROBOTEST_FILTER=CombinedBiometricStatusPreferenceControllerTest
Test: make -j56 RunSettingsRoboTests ROBOTEST_FILTER=FingerprintStatusPreferenceControllerTest
Test: make -j56 RunSettingsRoboTests ROBOTEST_FILTER=FaceStatusPreferenceControllerTest

Change-Id: I929c11606eec76063f7b060fdc5cb2b5f60a80e2
2021-06-15 19:57:04 -07:00
Yi-Ling Chuang
9312dc83fa Apply sliding transition to biometric settings
Bug: 187542491
Test: rebuild
Change-Id: Ife645785a37c4ac838204d0613dffd5a5911a47e
2021-06-04 15:49:43 +08:00
Joe Bolinger
eb5fd6ec30 Prevent duplicate lock confirmation in face & fingerprint settings.
Wait for all extras to be available before launching the next activity.

Fix: 187005993
Test: manual (open face/fp settings & verify only asked for PIN once)
Change-Id: I9e3f46d5750b11ab0773d08d44908d3e9703ca42
2021-05-21 20:55:11 +00:00
Joe Bolinger
971f0f3c5a Add userId parameter to all uses of challenge in settings.
Bug: 184915229

Test: manually on device (as normal, extra user, & work profile)
Change-Id: Id509b5866d53525b38a5bb95bbbcc723d6651745
2021-05-10 18:26:57 -07:00
TreeHugger Robot
b3b59d6edd Merge "Refactor ChooseLockGenericController" into sc-dev 2021-05-06 23:59:17 +00:00
Rubin Xu
8e4acdbf51 Refactor ChooseLockGenericController
* Move all logics around aggregating password policies
  to the controller
* Replace HIDE_DISABLED_PREFS and MINIMUM_QUALITY_KEY
  with HIDE_INSECURE_OPTIONS as all call sites are just
  using them to hide insecure screenlock options.
* Remove password policy aggregation logic from
  ChooseLockPassword and make it use policies passed in.
* Remove padlock from disabled screen lock options,
  per UX mock.
* Increase char limit for some strings

Bug: 177638284
Bug: 177641868
Bug: 182561862
Test: m RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.password
Test: 1. set profile password quality/complexity and enroll device lock
      2. set profile password quality/complexity and enroll work challenge
      3. set parent password quality/complexity and enroll device lock
      4. set parent password quality/complexity and enroll work challenge
      5. set profile and parent password complexity, then enroll work challenge
      6. set profile and parent password complexity, then unify work challenge
      7. Enroll device lock during SUW
Change-Id: Iba1d37e6f33eba7b7e8e1f805f8e37aaec108404
2021-05-06 23:09:27 +01:00
TreeHugger Robot
a75ba398fe Merge "Fix searching condition for biometric settings" into sc-dev 2021-05-06 05:37:08 +00:00
Mill Chen
ecd1495977 Fix searching condition for biometric settings
The preferences that are related to biometric settings should only be
searchable if the device supports the multiple biometric auth. However
we can see these preferences still can be searched even the device
doesn't support the feature, which is caused by that there's no
guardence. So the availiability of the preferences need to be updated to
prevent revealing unsupported preference from Settings search.

Fixes: 187167774
Test: manual test
1) Navigate to Settings search on a device without face auth
2) Search for face
3) See if there's something about face unlock

Change-Id: I6f120e8d9002a1e8f0be9361fdbea193776e4d7d
2021-05-05 23:35:53 +08:00
Kevin Chyn
50dcf7955a Update combined settings summary
Display strings based on number of enrollments

Bug: 185804815
Test: manual on-device
Change-Id: I47be2a53b37c36b3136cd233001db7cadf123ae9
2021-05-03 16:15:56 -07:00
Kevin Chyn
1f0cd17e3e Fix several challenge paths
1) Combined settings page should finish() when losing foreground
   (but not if fingerprint or face settings are launched from it)
2) Challenge should be generated when entering FaceSettings or
   FingerprintSettings each time. This allows us to leave the existing
   revokeChallenge paths in FaceSettings and FingerprintSettings.

Fixes: 186257202
Test: Manual

Change-Id: I1b6452f787279001a71628f220c01fcb86b88f3d
2021-04-28 13:01:28 -07:00
Mill Chen
8843157b01 Update confirming credential flow for biometric settings
The combined biometrics settings has been integrating face and
fingerprint authentication together, so the confirming credential flow
has to be invoked before entering biometrics settings page.

Bug: 183449119
Test: manual
Change-Id: I3c0d059241cb10a254868c2e388c4d3b20305b10
2021-04-23 15:33:32 +08:00
Mill Chen
7edebeef7e Combined biometric settings implementation
There will be multiple biometrics authentications existing at the same
time, so we added a new page for multiple biometrics to control
biometrics settings.

Bug: 183449119
Test: manual test
Change-Id: I359082caf771e07dfd5b24973cb8a3cf372c1b30
2021-04-23 15:18:08 +08:00