Loading src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java +32 −11 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ 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.span.LinkSpan; import com.google.android.setupdesign.template.RequireScrollMixin; public class FaceEnrollIntroduction extends BiometricEnrollIntroduction { Loading Loading @@ -67,14 +68,25 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction { ); } mFooterBarMixin.setPrimaryButton( new FooterButton.Builder(this) FooterButton.Builder nextButtonBuilder = new FooterButton.Builder(this) .setText(R.string.security_settings_face_enroll_introduction_agree) .setListener(this::onNextButtonClick) .setButtonType(FooterButton.ButtonType.NEXT) .setTheme(R.style.SudGlifButton_Primary) .build() ); .setTheme(R.style.SudGlifButton_Primary); if (maxFacesEnrolled()) { nextButtonBuilder.setListener(this::onNextButtonClick); mFooterBarMixin.setPrimaryButton(nextButtonBuilder.build()); } else { final FooterButton agreeButton = nextButtonBuilder.build(); mFooterBarMixin.setPrimaryButton(agreeButton); final RequireScrollMixin requireScrollMixin = getLayout().getMixin( RequireScrollMixin.class); requireScrollMixin.requireScrollWithButton(this, agreeButton, R.string.sud_more_button_label, button -> { onNextButtonClick(button); }); } } @Override Loading Loading @@ -134,13 +146,22 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction { return findViewById(R.id.error_text); } @Override protected int checkMaxEnrolled() { private boolean maxFacesEnrolled() { if (mFaceManager != null) { final int max = getResources().getInteger( com.android.internal.R.integer.config_faceMaxTemplatesPerUser); final int numEnrolledFaces = mFaceManager.getEnrolledFaces(mUserId).size(); if (numEnrolledFaces >= max) { return numEnrolledFaces >= max; } else { return false; } } //TODO: Refactor this to something that conveys it is used for getting a string ID. @Override protected int checkMaxEnrolled() { if (mFaceManager != null) { if (maxFacesEnrolled()) { return R.string.face_intro_error_max; } } else { Loading Loading
src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java +32 −11 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ 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.span.LinkSpan; import com.google.android.setupdesign.template.RequireScrollMixin; public class FaceEnrollIntroduction extends BiometricEnrollIntroduction { Loading Loading @@ -67,14 +68,25 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction { ); } mFooterBarMixin.setPrimaryButton( new FooterButton.Builder(this) FooterButton.Builder nextButtonBuilder = new FooterButton.Builder(this) .setText(R.string.security_settings_face_enroll_introduction_agree) .setListener(this::onNextButtonClick) .setButtonType(FooterButton.ButtonType.NEXT) .setTheme(R.style.SudGlifButton_Primary) .build() ); .setTheme(R.style.SudGlifButton_Primary); if (maxFacesEnrolled()) { nextButtonBuilder.setListener(this::onNextButtonClick); mFooterBarMixin.setPrimaryButton(nextButtonBuilder.build()); } else { final FooterButton agreeButton = nextButtonBuilder.build(); mFooterBarMixin.setPrimaryButton(agreeButton); final RequireScrollMixin requireScrollMixin = getLayout().getMixin( RequireScrollMixin.class); requireScrollMixin.requireScrollWithButton(this, agreeButton, R.string.sud_more_button_label, button -> { onNextButtonClick(button); }); } } @Override Loading Loading @@ -134,13 +146,22 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction { return findViewById(R.id.error_text); } @Override protected int checkMaxEnrolled() { private boolean maxFacesEnrolled() { if (mFaceManager != null) { final int max = getResources().getInteger( com.android.internal.R.integer.config_faceMaxTemplatesPerUser); final int numEnrolledFaces = mFaceManager.getEnrolledFaces(mUserId).size(); if (numEnrolledFaces >= max) { return numEnrolledFaces >= max; } else { return false; } } //TODO: Refactor this to something that conveys it is used for getting a string ID. @Override protected int checkMaxEnrolled() { if (mFaceManager != null) { if (maxFacesEnrolled()) { return R.string.face_intro_error_max; } } else { Loading