Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 890a71b4 authored by Hao Dong's avatar Hao Dong Committed by Android (Google) Code Review
Browse files

Merge "Combine customBiometricPrompt() with constraintBp()." into main

parents e4812b3c f96a5a05
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -881,7 +881,7 @@ public class AuthContainerView extends LinearLayout

        final Runnable endActionRunnable = () -> {
            setVisibility(View.INVISIBLE);
            if (Flags.customBiometricPrompt()) {
            if (Flags.customBiometricPrompt() && constraintBp()) {
                mPromptSelectorInteractorProvider.get().resetPrompt();
            }
            removeWindowIfAttached();
+2 −0
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.android.systemui.biometrics.data.repository

import android.hardware.biometrics.Flags
import android.hardware.biometrics.PromptInfo
import com.android.systemui.Flags.constraintBp
import com.android.systemui.biometrics.AuthController
import com.android.systemui.biometrics.Utils
import com.android.systemui.biometrics.Utils.isDeviceCredentialAllowed
@@ -151,6 +152,7 @@ constructor(
        val hasCredentialViewShown = kind.value !is PromptKind.Biometric
        val showBpForCredential =
            Flags.customBiometricPrompt() &&
                constraintBp() &&
                !Utils.isBiometricAllowed(promptInfo) &&
                isDeviceCredentialAllowed(promptInfo) &&
                promptInfo.contentView != null
+9 −5
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ import android.content.Context
import android.hardware.biometrics.BiometricAuthenticator
import android.hardware.biometrics.BiometricConstants
import android.hardware.biometrics.BiometricPrompt
import android.hardware.biometrics.Flags
import android.hardware.face.FaceManager
import android.text.method.ScrollingMovementMethod
import android.util.Log
@@ -166,11 +167,14 @@ object BiometricViewBinder {
            titleView.text = viewModel.title.first()
            subtitleView.text = viewModel.subtitle.first()
            descriptionView.text = viewModel.description.first()

            if (Flags.customBiometricPrompt() && constraintBp()) {
                BiometricCustomizedViewBinder.bind(
                    customizedViewContainer,
                    view.requireViewById(R.id.space_above_content),
                    viewModel
                )
            }

            // set button listeners
            negativeButton.setOnClickListener { legacyCallback.onButtonNegative() }
+4 −3
Original line number Diff line number Diff line
@@ -29,6 +29,7 @@ import android.util.Log
import android.view.HapticFeedbackConstants
import android.view.MotionEvent
import com.android.systemui.Flags.bpTalkback
import com.android.systemui.Flags.constraintBp
import com.android.systemui.biometrics.UdfpsUtils
import com.android.systemui.biometrics.Utils
import com.android.systemui.biometrics.domain.interactor.DisplayStateInteractor
@@ -284,7 +285,7 @@ constructor(
        promptSelectorInteractor.prompt
            .map {
                when {
                    !customBiometricPrompt() || it == null -> null
                    !(customBiometricPrompt() && constraintBp()) || it == null -> null
                    it.logoRes != -1 -> context.resources.getDrawable(it.logoRes, context.theme)
                    it.logoBitmap != null -> BitmapDrawable(context.resources, it.logoBitmap)
                    else ->
@@ -304,7 +305,7 @@ constructor(
        promptSelectorInteractor.prompt
            .map {
                when {
                    !customBiometricPrompt() || it == null -> ""
                    !(customBiometricPrompt() && constraintBp()) || it == null -> ""
                    it.logoDescription != null -> it.logoDescription
                    else ->
                        try {
@@ -329,7 +330,7 @@ constructor(
    /** Custom content view for the prompt. */
    val contentView: Flow<PromptContentView?> =
        promptSelectorInteractor.prompt
            .map { if (customBiometricPrompt()) it?.contentView else null }
            .map { if (customBiometricPrompt() && constraintBp()) it?.contentView else null }
            .distinctUntilChanged()

    private val originalDescription =
+1 −2
Original line number Diff line number Diff line
@@ -20,7 +20,6 @@ import android.content.pm.PackageManager
import android.hardware.biometrics.BiometricAuthenticator
import android.hardware.biometrics.BiometricConstants
import android.hardware.biometrics.BiometricManager
import android.hardware.biometrics.Flags.FLAG_CUSTOM_BIOMETRIC_PROMPT
import android.hardware.biometrics.PromptInfo
import android.hardware.biometrics.PromptVerticalListContentView
import android.hardware.face.FaceSensorPropertiesInternal
@@ -386,7 +385,6 @@ open class AuthContainerViewTest : SysuiTestCase() {

    @Test
    fun testShowCredentialUI_withDescription() {
        mSetFlagsRule.disableFlags(FLAG_CUSTOM_BIOMETRIC_PROMPT)
        val container = initializeFingerprintContainer(
                authenticators = BiometricManager.Authenticators.DEVICE_CREDENTIAL
        )
@@ -397,6 +395,7 @@ open class AuthContainerViewTest : SysuiTestCase() {
    }

    @Test
    @Ignore("b/302735104")
    fun testShowCredentialUI_withCustomBp() {
        val container = initializeFingerprintContainer(
                authenticators = BiometricManager.Authenticators.DEVICE_CREDENTIAL,
Loading