If user enters face settings but does not enter the password, then
turns off the screen, it's possible the challenge is invalidated. Instead,
we should finish() the device credential screen as well as FaceSettings.
This prevents
1) The user from being prompted for credential with lack of context
2) Credential returning a HAT that wraps an invalidated challenge
The user will be returned to the security settings screen, where they
have more context and can decide if they want to enter face settings again.
Fixes: 138273242
Test: 1) Open face settings, do not enter password
2) Press power button
3) Unlock keyguard
4) User is not presented with credential screen
Test: Go through SUW, turning on/off the screen at various security
screens. Able to enroll successfully
Change-Id: I3c3d4600138012821bb0eea7d2927df00011cdb0
And a hidden preference category. This makes
hiding/showing the list a lot cleaner and also allows more
of the code to be tested.
Also delete some unused code that no longer complied after
this refactor.
Fixes: 133443871
Test: atest
Change-Id: I4a5fe0e075019bae2df44a0a9dcec26a40ee6d12
(cherry picked from commit a295d71c94)
Currently we always send cancel() if ConfirmDeviceCredentialActivity
goes into the background. However, if the biometric state is no longer
authenticating, requesting cancel() in this state will result in an
inconsistent state between BiometricService/client and
ConfirmDeviceCredentials.
BiometricService/client will receive the ERROR_CANCELED message incorrectly,
while ConfirmDeviceCredential is showing / pending user password. When
the password is entered, its result is ignored.
The correct behavior is for ConfirmDeviceCredentialActivity to invoke
cancel() only if it's still authenticating. Otherwise BiometricService
and its client will receive ERROR_CANCELED, instead of the actual password
auth result.
Bug: 138279856
Test: BiometricPromptDemo, enable device credential fallback, get into
lockout state, successfully enter password. API result is
success instead of "canceled" now.
Change-Id: I6521e896d0402fe856dc85476f51149c9b3084a8
Merged-In: I6521e896d0402fe856dc85476f51149c9b3084a8
In general the mobile network details page has several preference
controllers that don't listen to carrier config changes, so instead of
having each one add a listener, we instead just have one listener and
refresh the entire page when we see the broadcast.
Fixes: 135587885
Test: make RunSettingsRoboTests
Change-Id: Iff5b28dbfe12d94c901b442b23cece8e68218983
Currently we always send cancel() if ConfirmDeviceCredentialActivity
goes into the background. However, if the biometric state is no longer
authenticating, requesting cancel() in this state will result in an
inconsistent state between BiometricService/client and
ConfirmDeviceCredentials.
BiometricService/client will receive the ERROR_CANCELED message incorrectly,
while ConfirmDeviceCredential is showing / pending user password. When
the password is entered, its result is ignored.
The correct behavior is for ConfirmDeviceCredentialActivity to invoke
cancel() only if it's still authenticating. Otherwise BiometricService
and its client will receive ERROR_CANCELED, instead of the actual password
auth result.
Bug: 138279856
Test: BiometricPromptDemo, enable device credential fallback, get into
lockout state, successfully enter password. API result is
success instead of "canceled" now.
Change-Id: I6521e896d0402fe856dc85476f51149c9b3084a8
Refine code:
1. Change method name from getSpinnerAdapterWithEapMethods to getSpinnerAdapter
and apply it to other Spinner adapters.
2. Change method name from getSpinnerArrayWithEapMethodsTts to
getSpinnerAdapterWithEapMethodsTts and it will
setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item)
for adapters.
3. Remove the code of ag/8693033
4. Improve indentation.
Bug: 135127581
Test: WifiConfigControllerTest
Change-Id: I653eda11ca1b8235c5ecaa1a826a2fddd004d2e1
1. Only support EAP-TLS for WPA3-Enterprise 192-bit
2. Remove "Do not validate" from the CA certificate menu
3. Remove "Do not provide" from user certificate menu
To reduce review effort, I left refine code change in another CL.
Bug: 135127581
Test: WifiConfigControllerTest
Change-Id: Ibf904da9407ec803afb8bb995e9df1a2e25f0dcb
updateState was invoked in loader callback. But the
package was uninstalled at the callback time caused
null pointer exception. Add null check to prevent
null pointer access.
Fixes: 136170218
Fixes: 133771724
Test: make RunSettingsRoboTests, manual
Change-Id: I2715e77f6e32af42a4bce70c9f409b0311eb36c4
(cherry picked from commit 790a822526)
Add two type SortType.TYPE_DEFAULT and SortType.TYPE_FIFO in BluetoothDevicePreference.
It needs to decide the sort type when you create the BluetoothDevicePreference.
TYPE_DEFAULT - According to the CacheBluetoothDevice state to sort
TYPE_FIFO - According to the timestamp to sort
Bug: 112546918
Test: make -j42 RunSettingsRoboTests
Change-Id: Icd25d9b76a44d5a105f8daf64e5bc1f9ead8cd92
So the correct context will be used to obtain the
correct translation for the summary string
Test: manual
Fixes: 138158873
Change-Id: I3d121fdfc7587870a86f7ad56f4efcbde664586d
Bug: 138197084
Test: Verified other accessibility features like Live Transcribe does
not bring the user to the accessibility flow.
Test: Verified that the Sound Amplifier does not bring the user to
the accessibility flow.
Change-Id: I5131d74926c0b01c565da280c55afe0080855688
The last private DNS settings screen landed in P after string
freeze, which led us to reuse R.string.switch_on_text for the
"on" text when private DNS is active. That string comes from
notifications. Private DNS should have its own string for this
instead.
Bug: 79122154
Test: 1. Build pass
2. make -j44 RunSettingsRoboTests \
ROBOTEST_FILTER=PrivateDnsPreferenceControllerTest
Change-Id: Ie013a858c8bc41e00a1b940d02efa2b605991685
- Use getText() to apply html format to text view.
- Remove extra bullets from string.
Fixes: 138174003
Test: visual, robotests
Change-Id: Ia736087224d7a65ebe41ca2ac3fca7064a03f950
For saved networks that do not have a MAC address available in their
WifiConfiguration such as Passpoint networks, the MAC address will
be the default value of 20:00:00:00:00:00. In this case, display
"Not Available" as the summary of the MAC address preference.
Bug: 137282522
Test: atest WifiDetailPreferenceControllerTest &&
manual - open saved passpoint network details while disconnected
but in range and observe MAC address preference.
Change-Id: Ie9010b0430726de8105852ae2afe10047dcc3676
Use WifiSettings2 if settings_wifitracker2 feature flag is enabled.
WifiSettings2 will be used for changes to WifiSettings to incorporate
the WifiTracker2 refactor.
Bug: 70983952
Test: make, set feature flag, open Wifi settings to verify new page
opens.
Change-Id: I08edc227bf38ab4b3b785180bf123815bf95da81