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

Commit 9e07ad08 authored by Kevin Chyn's avatar Kevin Chyn Committed by Android (Google) Code Review
Browse files

Merge "Plumb setRequireConfirmation to CC"

parents 85653341 56c745c3
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -43,6 +43,7 @@ public class BiometricFragment extends InstrumentedFragment {
    private static final String KEY_SUBTITLE = "subtitle";
    private static final String KEY_DESCRIPTION = "description";
    private static final String KEY_NEGATIVE_TEXT = "negative_text";
    private static final String KEY_REQUIRE_CONFIRMATION = "require_confirmation";

    // Re-set by the application. Should be done upon orientation changes, etc
    private Executor mClientExecutor;
@@ -127,6 +128,7 @@ public class BiometricFragment extends InstrumentedFragment {
            .setDescription(mPromptInfo.getDescription())
            .setNegativeButton(mPromptInfo.getNegativeButtonText(), mClientExecutor,
                    mNegativeButtonListener)
            .setRequireConfirmation(mPromptInfo.getRequireConfirmation())
            .build();
        mCancellationSignal = new CancellationSignal();

@@ -171,6 +173,10 @@ public class BiometricFragment extends InstrumentedFragment {
            return mBundle.getCharSequence(KEY_NEGATIVE_TEXT);
        }

        public boolean getRequireConfirmation() {
            return mBundle.getBoolean(KEY_REQUIRE_CONFIRMATION);
        }

        public static class Builder {
            private final Bundle mBundle = new Bundle();

@@ -194,6 +200,11 @@ public class BiometricFragment extends InstrumentedFragment {
                return this;
            }

            public Builder setRequireConfirmation(boolean requireConfirmation) {
                mBundle.putBoolean(KEY_REQUIRE_CONFIRMATION, requireConfirmation);
                return this;
            }

            public PromptInfo build() {
                return new PromptInfo(mBundle);
            }
+8 −3
Original line number Diff line number Diff line
@@ -136,6 +136,10 @@ public class ConfirmDeviceCredentialActivity extends FragmentActivity {
        Intent intent = getIntent();
        mTitle = intent.getStringExtra(KeyguardManager.EXTRA_TITLE);
        mDetails = intent.getStringExtra(KeyguardManager.EXTRA_DESCRIPTION);

        final boolean requireConfirmation =
                !intent.getBooleanExtra(KeyguardManager.EXTRA_USE_IMPLICIT, true);

        String alternateButton = intent.getStringExtra(
                KeyguardManager.EXTRA_ALTERNATE_BUTTON_LABEL);
        boolean frp = KeyguardManager.ACTION_CONFIRM_FRP_CREDENTIAL.equals(intent.getAction());
@@ -170,7 +174,7 @@ public class ConfirmDeviceCredentialActivity extends FragmentActivity {
                && !lockPatternUtils.isSeparateProfileChallengeEnabled(mUserId)) {
            mCredentialMode = CREDENTIAL_MANAGED;
            if (isBiometricAllowed(effectiveUserId)) {
                showBiometricPrompt();
                showBiometricPrompt(requireConfirmation);
                launchedBiometric = true;
            } else {
                showConfirmCredentials();
@@ -181,7 +185,7 @@ public class ConfirmDeviceCredentialActivity extends FragmentActivity {
            if (isBiometricAllowed(effectiveUserId)) {
                // Don't need to check if biometrics / pin/pattern/pass are enrolled. It will go to
                // onAuthenticationError and do the right thing automatically.
                showBiometricPrompt();
                showBiometricPrompt(requireConfirmation);
                launchedBiometric = true;
            } else {
                showConfirmCredentials();
@@ -242,7 +246,7 @@ public class ConfirmDeviceCredentialActivity extends FragmentActivity {
                && !isBiometricDisabledByAdmin(effectiveUserId);
    }

    private void showBiometricPrompt() {
    private void showBiometricPrompt(boolean requireConfirmation) {
        mBiometricManager.setActiveUser(mUserId);

        mBiometricFragment = (BiometricFragment) getSupportFragmentManager()
@@ -255,6 +259,7 @@ public class ConfirmDeviceCredentialActivity extends FragmentActivity {
                    .setSubtitle(mDetails)
                    .setNegativeButtonText(getResources()
                            .getString(R.string.confirm_device_credential_use_alternate_method))
                    .setRequireConfirmation(requireConfirmation)
                    .build();
            mBiometricFragment = BiometricFragment.newInstance(info);
            newFragment = true;