Merge "[Biometric Onboarding & Edu] Update Set up Fingerprint/Face Unlock page" into main

This commit is contained in:
Shawn Lin
2024-12-09 10:37:03 +00:00
committed by Android (Google) Code Review
10 changed files with 498 additions and 8 deletions

View File

@@ -37,6 +37,7 @@ import com.android.internal.widget.LockPatternUtils;
import com.android.settings.R;
import com.android.settings.SetupWizardUtils;
import com.android.settings.Utils;
import com.android.settings.flags.Flags;
import com.android.settings.password.ChooseLockGeneric;
import com.android.settings.password.ChooseLockSettingsHelper;
import com.android.settings.password.ConfirmDeviceCredentialActivity;
@@ -551,8 +552,11 @@ public abstract class BiometricEnrollIntroduction extends BiometricEnrollBase
@NonNull
protected PorterDuffColorFilter getIconColorFilter() {
if (mIconColorFilter == null) {
final int colorType = Flags.biometricsOnboardingEducation()
? DynamicColorPalette.ColorType.PRIMARY_TEXT
: DynamicColorPalette.ColorType.ACCENT;
mIconColorFilter = new PorterDuffColorFilter(
DynamicColorPalette.getColor(this, DynamicColorPalette.ColorType.ACCENT),
DynamicColorPalette.getColor(this, colorType),
PorterDuff.Mode.SRC_IN);
}
return mIconColorFilter;

View File

@@ -53,6 +53,7 @@ import com.android.settings.biometrics.BiometricEnrollActivity;
import com.android.settings.biometrics.BiometricEnrollIntroduction;
import com.android.settings.biometrics.BiometricUtils;
import com.android.settings.biometrics.MultiBiometricEnrollHelper;
import com.android.settings.flags.Flags;
import com.android.settings.password.ChooseLockSettingsHelper;
import com.android.settings.password.SetupSkipDialog;
import com.android.settings.utils.SensorPrivacyManagerHelper;
@@ -144,6 +145,19 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction {
final ImageView iconLooking = findViewById(R.id.icon_looking);
iconGlasses.getBackground().setColorFilter(getIconColorFilter());
iconLooking.getBackground().setColorFilter(getIconColorFilter());
if (Flags.biometricsOnboardingEducation()) {
final ImageView iconSecurityPrivacySafe = findViewById(R.id.icon_security_privacy_safe);
final ImageView iconPrivacyTip = findViewById(R.id.icon_privacy_tip);
final ImageView iconFamiliarFaceAndZone =
findViewById(R.id.icon_familiar_face_and_zone);
final ImageView iconTrashCan = findViewById(R.id.icon_trash_can);
final ImageView iconLink = findViewById(R.id.icon_link);
iconSecurityPrivacySafe.getBackground().setColorFilter(getIconColorFilter());
iconPrivacyTip.getBackground().setColorFilter(getIconColorFilter());
iconFamiliarFaceAndZone.getBackground().setColorFilter(getIconColorFilter());
iconTrashCan.getBackground().setColorFilter(getIconColorFilter());
iconLink.getBackground().setColorFilter(getIconColorFilter());
}
// Set text for views with multiple variations.
final TextView infoMessageGlasses = findViewById(R.id.info_message_glasses);
@@ -156,9 +170,19 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction {
infoMessageLooking.setText(getInfoMessageLooking());
inControlTitle.setText(getInControlTitle());
howMessage.setText(getHowMessage());
inControlMessage.setText(Html.fromHtml(getString(getInControlMessage()),
Html.FROM_HTML_MODE_LEGACY));
inControlMessage.setMovementMethod(LinkMovementMethod.getInstance());
if (Flags.biometricsOnboardingEducation()) {
inControlMessage.setText(
R.string.security_settings_face_enroll_introduction_control_message_2);
final TextView learnMore = findViewById(R.id.message_learn_more);
learnMore.setText(Html.fromHtml(getString(
R.string.security_settings_face_enroll_introduction_learn_more_message),
Html.FROM_HTML_MODE_LEGACY));
learnMore.setMovementMethod(LinkMovementMethod.getInstance());
} else {
inControlMessage.setText(Html.fromHtml(getString(getInControlMessage()),
Html.FROM_HTML_MODE_LEGACY));
inControlMessage.setMovementMethod(LinkMovementMethod.getInstance());
}
lessSecure.setText(getLessSecureMessage());
final ScrollView scrollView =
@@ -411,7 +435,11 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction {
@Override
protected int getLayoutResource() {
return R.layout.face_enroll_introduction;
if (Flags.biometricsOnboardingEducation()) {
return R.layout.face_enroll_introduction_2;
} else {
return R.layout.face_enroll_introduction;
}
}
@Override
@@ -594,8 +622,13 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction {
setDescriptionText(getString(
R.string.private_space_face_enroll_introduction_message));
} else if (mIsFaceStrong) {
setDescriptionText(getString(
R.string.security_settings_face_enroll_introduction_message_class3));
final int messageRes;
if (Flags.biometricsOnboardingEducation()) {
messageRes = R.string.security_settings_face_enroll_introduction_message_class3_2;
} else {
messageRes = R.string.security_settings_face_enroll_introduction_message_class3;
}
setDescriptionText(getString(messageRes));
}
super.updateDescriptionText();
}