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

Commit df0bddb5 authored by Diya Bera's avatar Diya Bera
Browse files

Change in Fingerprint Error Dialog in Enrollment

Changed the dialog title for error UNABLE_TO_PROCESS

Test: Manual (check the error dialog associated with the errMsgId)
Bug: 261886132
Change-Id: I86bf31d363625a3138676a64e7356c9fecb178d8
parent 9f8b28ea
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -1407,6 +1407,8 @@
    <string name="security_settings_fingerprint_enroll_touch_dialog_title">Whoops, that\u2019s not the sensor</string>
    <!-- Dialog message for dialog which shows when user touches the icon on the screen, instead of the sensor at the back [CHAR LIMIT=NONE] -->
    <string name="security_settings_fingerprint_enroll_touch_dialog_message">Touch the sensor on the back of your phone. Use your index finger.</string>
    <!-- Dialog message for dialog which shows when finger cannot be processed in enrollment. [CHAR LIMIT=45] -->
    <string name="security_settings_fingerprint_enroll_error_unable_to_process_dialog_title">Enrollment was not completed</string>
    <!-- Dialog message for dialog which shows when finger cannot be enrolled. [CHAR LIMIT=45] -->
    <string name="security_settings_fingerprint_enroll_error_dialog_title">Fingerprint setup timed out</string>
    <!-- Dialog message for dialog which shows when finger cannot be enrolled due to being idle too long. -->
+29 −14
Original line number Diff line number Diff line
@@ -40,18 +40,20 @@ import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
public class FingerprintErrorDialog extends InstrumentedDialogFragment {

    public static final String KEY_ERROR_MSG = "error_msg";
    public static final String KEY_ERROR_TITLE = "error_title";
    public static final String KEY_ERROR_ID = "error_id";
    public static final String KEY_UDFPS = "is_udfps";

    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
        CharSequence errorString = getArguments().getCharSequence(KEY_ERROR_MSG);
        final AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
        final CharSequence errorString = getArguments().getCharSequence(KEY_ERROR_MSG);
        final CharSequence errorTitle = getArguments().getCharSequence(KEY_ERROR_TITLE);
        final int errMsgId = getArguments().getInt(KEY_ERROR_ID);
        final boolean canAssumeUdfps = getArguments().getBoolean(KEY_UDFPS, false);
        boolean wasTimeout = errMsgId == BiometricConstants.BIOMETRIC_ERROR_TIMEOUT;
        final boolean wasTimeout = errMsgId == BiometricConstants.BIOMETRIC_ERROR_TIMEOUT;

        builder.setTitle(R.string.security_settings_fingerprint_enroll_error_dialog_title)
        builder.setTitle(errorTitle)
                .setMessage(errorString)
                .setCancelable(false)
                .setPositiveButton(
@@ -60,7 +62,7 @@ public class FingerprintErrorDialog extends InstrumentedDialogFragment {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
                                dialog.dismiss();
                                Activity activity = getActivity();
                                final Activity activity = getActivity();
                                if (wasTimeout && !canAssumeUdfps) {
                                    activity.setResult(RESULT_TIMEOUT);
                                } else {
@@ -76,8 +78,8 @@ public class FingerprintErrorDialog extends InstrumentedDialogFragment {
                                @Override
                                public void onClick(DialogInterface dialog, int which) {
                                    dialog.dismiss();
                                    Activity activity = getActivity();
                                    Intent intent = activity.getIntent();
                                    final Activity activity = getActivity();
                                    final Intent intent = activity.getIntent();
                                    intent.addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
                                    intent.putExtra(KEY_STATE_CANCELED, false);
                                    activity.startActivity(intent);
@@ -90,13 +92,13 @@ public class FingerprintErrorDialog extends InstrumentedDialogFragment {
                                @Override
                                public void onClick(DialogInterface dialog, int which) {
                                    dialog.dismiss();
                                    Activity activity = getActivity();
                                    final Activity activity = getActivity();
                                    activity.setResult(RESULT_TIMEOUT);
                                    activity.finish();
                                }
                            });
        }
        AlertDialog dialog = builder.create();
        final AlertDialog dialog = builder.create();
        dialog.setCanceledOnTouchOutside(false);
        return dialog;
    }
@@ -111,11 +113,13 @@ public class FingerprintErrorDialog extends InstrumentedDialogFragment {
            return;
        }
        CharSequence errMsg = host.getText(getErrorMessage(errMsgId));
        final CharSequence errTitle = host.getText(getErrorTitle(errMsgId));
        if (!canAssumeUdfps
                && errMsgId == BiometricConstants.BIOMETRIC_ERROR_TIMEOUT) {
            errMsg = host.getText(getErrorMessage(BiometricConstants.BIOMETRIC_ERROR_CANCELED));
        }
        final FingerprintErrorDialog dialog = newInstance(errMsg, errMsgId, canAssumeUdfps);
        final FingerprintErrorDialog dialog = newInstance(errMsg, errTitle,
                errMsgId, canAssumeUdfps);
        dialog.show(fragmentManager, FingerprintErrorDialog.class.getName());
    }

@@ -133,11 +137,22 @@ public class FingerprintErrorDialog extends InstrumentedDialogFragment {
        }
    }

    private static FingerprintErrorDialog newInstance(CharSequence msg, int msgId,
            boolean canAssumeUdfps) {
        FingerprintErrorDialog dialog = new FingerprintErrorDialog();
        Bundle args = new Bundle();
    private static int getErrorTitle(int errMsgId) {
        switch (errMsgId) {
            case FingerprintManager.FINGERPRINT_ERROR_UNABLE_TO_PROCESS:
                return R.string
                        .security_settings_fingerprint_enroll_error_unable_to_process_dialog_title;
            default:
                return R.string.security_settings_fingerprint_enroll_error_dialog_title;
        }
    }

    private static FingerprintErrorDialog newInstance(CharSequence msg, CharSequence title,
            int msgId, boolean canAssumeUdfps) {
        final FingerprintErrorDialog dialog = new FingerprintErrorDialog();
        final Bundle args = new Bundle();
        args.putCharSequence(KEY_ERROR_MSG, msg);
        args.putCharSequence(KEY_ERROR_TITLE, title);
        args.putInt(KEY_ERROR_ID, msgId);
        args.putBoolean(KEY_UDFPS, canAssumeUdfps);
        dialog.setArguments(args);