Merge "Update Face Unlock strings to the latest versions" into sc-dev

This commit is contained in:
Curtis Belmonte
2021-05-21 23:40:40 +00:00
committed by Android (Google) Code Review
8 changed files with 305 additions and 165 deletions

View File

@@ -16,6 +16,7 @@
package com.android.settings.biometrics.face;
import android.annotation.StringRes;
import android.app.settings.SettingsEnums;
import android.content.ComponentName;
import android.content.Intent;
@@ -39,6 +40,7 @@ import com.android.settings.password.ChooseLockSettingsHelper;
import com.google.android.setupcompat.template.FooterBarMixin;
import com.google.android.setupcompat.template.FooterButton;
import com.google.android.setupcompat.util.WizardManagerHelper;
import com.google.android.setupdesign.GlifLayout;
import com.google.android.setupdesign.view.IllustrationVideoView;
public class FaceEnrollEducation extends BiometricEnrollBase {
@@ -62,22 +64,27 @@ public class FaceEnrollEducation extends BiometricEnrollBase {
new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
int titleRes = isChecked ?
R.string.security_settings_face_enroll_education_title_accessibility
: R.string.security_settings_face_enroll_education_title;
getLayout().setHeaderText(titleRes);
setTitle(titleRes);
final int headerRes;
final int descriptionRes;
if (isChecked) {
headerRes = R.string
.security_settings_face_enroll_education_title_accessibility;
descriptionRes = R.string
.security_settings_face_enroll_education_message_accessibility;
} else {
headerRes = R.string.security_settings_face_enroll_education_title;
descriptionRes = R.string.security_settings_face_enroll_education_message;
}
updateHeaders(headerRes, descriptionRes);
if (isChecked) {
mIllustrationNormal.stop();
mIllustrationNormal.setVisibility(View.INVISIBLE);
mIllustrationAccessibility.setVisibility(View.VISIBLE);
mDescriptionText.setVisibility(View.INVISIBLE);
} else {
mIllustrationNormal.setVisibility(View.VISIBLE);
mIllustrationNormal.start();
mIllustrationAccessibility.setVisibility(View.INVISIBLE);
mDescriptionText.setVisibility(View.VISIBLE);
}
}
};
@@ -86,8 +93,11 @@ public class FaceEnrollEducation extends BiometricEnrollBase {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.face_enroll_education);
getLayout().setHeaderText(R.string.security_settings_face_enroll_education_title);
setTitle(R.string.security_settings_face_enroll_education_title);
final int headerRes = R.string.security_settings_face_enroll_education_title;
final int descriptionRes = R.string.security_settings_face_enroll_education_message;
updateHeaders(headerRes, descriptionRes);
mHandler = new Handler();
mFaceManager = Utils.getFaceManagerOrNull(this);
@@ -237,4 +247,13 @@ public class FaceEnrollEducation extends BiometricEnrollBase {
public int getMetricsCategory() {
return SettingsEnums.FACE_ENROLL_INTRO;
}
private void updateHeaders(@StringRes int headerRes, @StringRes int descriptionRes) {
final CharSequence headerText = getText(headerRes);
setTitle(headerText);
final GlifLayout layout = getLayout();
layout.setHeaderText(headerText);
layout.setDescriptionText(descriptionRes);
}
}

View File

@@ -20,10 +20,10 @@ package com.android.settings.homepage.contextualcards;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.hardware.face.Face;
import android.hardware.face.FaceManager;
import android.os.Bundle;
import android.provider.Settings;
import android.util.Log;
import com.android.internal.app.AlertActivity;
@@ -53,11 +53,15 @@ public class FaceReEnrollDialog extends AlertActivity implements
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final PackageManager pm = getApplicationContext().getPackageManager();
final int dialogMessageRes = pm.hasSystemFeature(PackageManager.FEATURE_FINGERPRINT)
? R.string.security_settings_face_enroll_improve_face_alert_body_fingerprint
: R.string.security_settings_face_enroll_improve_face_alert_body;
final AlertController.AlertParams alertParams = mAlertParams;
alertParams.mTitle = getText(
R.string.security_settings_face_enroll_improve_face_alert_title);
alertParams.mMessage = getText(
R.string.security_settings_face_enroll_improve_face_alert_body);
alertParams.mMessage = getText(dialogMessageRes);
alertParams.mPositiveButtonText = getText(R.string.storage_menu_set_up);
alertParams.mNegativeButtonText = getText(R.string.cancel);
alertParams.mPositiveButtonListener = this;

View File

@@ -23,6 +23,7 @@ import android.content.DialogInterface;
import android.os.Bundle;
import androidx.annotation.NonNull;
import androidx.annotation.StringRes;
import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.FragmentManager;
@@ -77,22 +78,20 @@ public class SetupSkipDialog extends InstrumentedDialogFragment
final boolean forBiometrics =
args.getBoolean(ChooseLockSettingsHelper.EXTRA_KEY_FOR_BIOMETRICS);
if (forFace || forFingerprint || forBiometrics) {
final boolean hasFace = forFace || forBiometrics;
final boolean hasFingerprint = forFingerprint || forBiometrics;
final int titleId;
if (args.getBoolean(ARG_LOCK_TYPE_PATTERN)) {
titleId = R.string.lock_screen_pattern_skip_title;
} else {
titleId = args.getBoolean(ARG_LOCK_TYPE_ALPHANUMERIC) ?
R.string.lock_screen_password_skip_title : R.string.lock_screen_pin_skip_title;
}
final int msgResId;
if (forBiometrics) {
msgResId = R.string.biometrics_lock_screen_setup_skip_dialog_text;
} else if (forFace) {
msgResId = R.string.face_lock_screen_setup_skip_dialog_text;
if (args.getBoolean(ARG_LOCK_TYPE_PATTERN)) {
titleId = getPatternSkipTitleRes(hasFace, hasFingerprint);
msgResId = getPatternSkipMessageRes(hasFace, hasFingerprint);
} else if (args.getBoolean(ARG_LOCK_TYPE_ALPHANUMERIC)) {
titleId = getPasswordSkipTitleRes(hasFace, hasFingerprint);
msgResId = getPasswordSkipMessageRes(hasFace, hasFingerprint);
} else {
msgResId = R.string.fingerprint_lock_screen_setup_skip_dialog_text;
titleId = getPinSkipTitleRes(hasFace, hasFingerprint);
msgResId = getPinSkipMessageRes(hasFace, hasFingerprint);
}
return new AlertDialog.Builder(getContext())
@@ -111,6 +110,84 @@ public class SetupSkipDialog extends InstrumentedDialogFragment
}
}
@StringRes
private int getPatternSkipTitleRes(boolean hasFace, boolean hasFingerprint) {
if (hasFace && hasFingerprint) {
return R.string.lock_screen_pattern_skip_biometrics_title;
} else if (hasFace) {
return R.string.lock_screen_pattern_skip_face_title;
} else if (hasFingerprint) {
return R.string.lock_screen_pattern_skip_fingerprint_title;
} else {
return R.string.lock_screen_pattern_skip_title;
}
}
@StringRes
private int getPatternSkipMessageRes(boolean hasFace, boolean hasFingerprint) {
if (hasFace && hasFingerprint) {
return R.string.lock_screen_pattern_skip_biometrics_message;
} else if (hasFace) {
return R.string.lock_screen_pattern_skip_face_message;
} else if (hasFingerprint) {
return R.string.lock_screen_pattern_skip_fingerprint_message;
} else {
return R.string.lock_screen_pattern_skip_message;
}
}
@StringRes
private int getPasswordSkipTitleRes(boolean hasFace, boolean hasFingerprint) {
if (hasFace && hasFingerprint) {
return R.string.lock_screen_password_skip_biometrics_title;
} else if (hasFace) {
return R.string.lock_screen_password_skip_face_title;
} else if (hasFingerprint) {
return R.string.lock_screen_password_skip_fingerprint_title;
} else {
return R.string.lock_screen_password_skip_title;
}
}
@StringRes
private int getPasswordSkipMessageRes(boolean hasFace, boolean hasFingerprint) {
if (hasFace && hasFingerprint) {
return R.string.lock_screen_password_skip_biometrics_message;
} else if (hasFace) {
return R.string.lock_screen_password_skip_face_message;
} else if (hasFingerprint) {
return R.string.lock_screen_password_skip_fingerprint_message;
} else {
return R.string.lock_screen_password_skip_message;
}
}
@StringRes
private int getPinSkipTitleRes(boolean hasFace, boolean hasFingerprint) {
if (hasFace && hasFingerprint) {
return R.string.lock_screen_pin_skip_biometrics_title;
} else if (hasFace) {
return R.string.lock_screen_pin_skip_face_title;
} else if (hasFingerprint) {
return R.string.lock_screen_pin_skip_fingerprint_title;
} else {
return R.string.lock_screen_pin_skip_title;
}
}
@StringRes
private int getPinSkipMessageRes(boolean hasFace, boolean hasFingerprint) {
if (hasFace && hasFingerprint) {
return R.string.lock_screen_pin_skip_biometrics_message;
} else if (hasFace) {
return R.string.lock_screen_pin_skip_face_message;
} else if (hasFingerprint) {
return R.string.lock_screen_pin_skip_fingerprint_message;
} else {
return R.string.lock_screen_pin_skip_message;
}
}
@Override
public void onClick(DialogInterface dialog, int button) {
switch (button) {