Merge "Bug fixes for the create flow auto select." into udc-dev am: c58528f3f4 am: 9f64db5079
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/23125172 Change-Id: I6085860838353e18f489c6834960171d79e1bfd5 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -480,7 +480,10 @@ class CreateFlowUtils {
|
|||||||
createCredentialRequestJetpack.preferImmediatelyAvailableCredentials,
|
createCredentialRequestJetpack.preferImmediatelyAvailableCredentials,
|
||||||
appPreferredDefaultProviderId = appPreferredDefaultProviderId,
|
appPreferredDefaultProviderId = appPreferredDefaultProviderId,
|
||||||
userSetDefaultProviderIds = requestInfo.defaultProviderIds.toSet(),
|
userSetDefaultProviderIds = requestInfo.defaultProviderIds.toSet(),
|
||||||
isAutoSelectRequest = createCredentialRequestJetpack.isAutoSelectAllowed,
|
// The jetpack library requires a fix to parse this value correctly for
|
||||||
|
// the password type. For now, directly parse it ourselves.
|
||||||
|
isAutoSelectRequest = createCredentialRequest.credentialData.getBoolean(
|
||||||
|
Constants.BUNDLE_KEY_PREFER_IMMEDIATELY_AVAILABLE_CREDENTIALS, false),
|
||||||
)
|
)
|
||||||
is CreatePublicKeyCredentialRequest -> {
|
is CreatePublicKeyCredentialRequest -> {
|
||||||
newRequestDisplayInfoFromPasskeyJson(
|
newRequestDisplayInfoFromPasskeyJson(
|
||||||
@@ -491,7 +494,10 @@ class CreateFlowUtils {
|
|||||||
createCredentialRequestJetpack.preferImmediatelyAvailableCredentials,
|
createCredentialRequestJetpack.preferImmediatelyAvailableCredentials,
|
||||||
appPreferredDefaultProviderId = appPreferredDefaultProviderId,
|
appPreferredDefaultProviderId = appPreferredDefaultProviderId,
|
||||||
userSetDefaultProviderIds = requestInfo.defaultProviderIds.toSet(),
|
userSetDefaultProviderIds = requestInfo.defaultProviderIds.toSet(),
|
||||||
isAutoSelectRequest = createCredentialRequestJetpack.isAutoSelectAllowed,
|
// The jetpack library requires a fix to parse this value correctly for
|
||||||
|
// the passkey type. For now, directly parse it ourselves.
|
||||||
|
isAutoSelectRequest = createCredentialRequest.credentialData.getBoolean(
|
||||||
|
Constants.BUNDLE_KEY_PREFER_IMMEDIATELY_AVAILABLE_CREDENTIALS, false),
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
is CreateCustomCredentialRequest -> {
|
is CreateCustomCredentialRequest -> {
|
||||||
|
|||||||
@@ -19,5 +19,7 @@ package com.android.credentialmanager.common
|
|||||||
class Constants {
|
class Constants {
|
||||||
companion object Constants {
|
companion object Constants {
|
||||||
const val LOG_TAG = "CredentialSelector"
|
const val LOG_TAG = "CredentialSelector"
|
||||||
|
const val BUNDLE_KEY_PREFER_IMMEDIATELY_AVAILABLE_CREDENTIALS =
|
||||||
|
"androidx.credentials.BUNDLE_KEY_IS_AUTO_SELECT_ALLOWED"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -42,7 +42,6 @@ internal fun isFlowAutoSelectable(
|
|||||||
// applicable.
|
// applicable.
|
||||||
uiState.currentScreenState != CreateScreenState.PASSKEY_INTRO &&
|
uiState.currentScreenState != CreateScreenState.PASSKEY_INTRO &&
|
||||||
uiState.currentScreenState != CreateScreenState.MORE_ABOUT_PASSKEYS_INTRO &&
|
uiState.currentScreenState != CreateScreenState.MORE_ABOUT_PASSKEYS_INTRO &&
|
||||||
uiState.remoteEntry == null &&
|
|
||||||
uiState.sortedCreateOptionsPairs.size == 1 &&
|
uiState.sortedCreateOptionsPairs.size == 1 &&
|
||||||
uiState.activeEntry?.activeEntryInfo?.let {
|
uiState.activeEntry?.activeEntryInfo?.let {
|
||||||
it is CreateOptionInfo && it.allowAutoSelect
|
it is CreateOptionInfo && it.allowAutoSelect
|
||||||
|
|||||||
Reference in New Issue
Block a user