Merge "Use title area for enrollment error messages" into sc-dev

This commit is contained in:
TreeHugger Robot
2021-03-11 06:16:42 +00:00
committed by Android (Google) Code Review
2 changed files with 40 additions and 20 deletions

View File

@@ -183,10 +183,18 @@ public abstract class BiometricEnrollBase extends InstrumentedActivity {
setHeaderText(resId, false /* force */); setHeaderText(resId, false /* force */);
} }
protected void setHeaderText(CharSequence title) {
getLayout().setHeaderText(title);
}
protected void setDescriptionText(int resId) { protected void setDescriptionText(int resId) {
getLayout().setDescriptionText(resId); getLayout().setDescriptionText(resId);
} }
protected void setDescriptionText(CharSequence descriptionText) {
getLayout().setDescriptionText(descriptionText);
}
protected FooterButton getNextButton() { protected FooterButton getNextButton() {
if (mFooterBarMixin != null) { if (mFooterBarMixin != null) {
return mFooterBarMixin.getPrimaryButton(); return mFooterBarMixin.getPrimaryButton();

View File

@@ -324,7 +324,9 @@ public class FingerprintEnrollEnrolling extends BiometricsEnrollEnrolling {
@Override @Override
public void onEnrollmentHelp(int helpMsgId, CharSequence helpString) { public void onEnrollmentHelp(int helpMsgId, CharSequence helpString) {
if (!TextUtils.isEmpty(helpString)) { if (!TextUtils.isEmpty(helpString)) {
mErrorText.removeCallbacks(mTouchAgainRunnable); if (!mCanAssumeUdfps) {
mErrorText.removeCallbacks(mTouchAgainRunnable);
}
showError(helpString); showError(helpString);
} }
} }
@@ -345,7 +347,9 @@ public class FingerprintEnrollEnrolling extends BiometricsEnrollEnrolling {
} }
showErrorDialog(getText(msgId), errMsgId); showErrorDialog(getText(msgId), errMsgId);
stopIconAnimation(); stopIconAnimation();
mErrorText.removeCallbacks(mTouchAgainRunnable); if (!mCanAssumeUdfps) {
mErrorText.removeCallbacks(mTouchAgainRunnable);
}
} }
@Override @Override
@@ -354,8 +358,10 @@ public class FingerprintEnrollEnrolling extends BiometricsEnrollEnrolling {
updateTitleAndDescription(); updateTitleAndDescription();
clearError(); clearError();
animateFlash(); animateFlash();
mErrorText.removeCallbacks(mTouchAgainRunnable); if (!mCanAssumeUdfps) {
mErrorText.postDelayed(mTouchAgainRunnable, HINT_TIMEOUT_DURATION); mErrorText.removeCallbacks(mTouchAgainRunnable);
mErrorText.postDelayed(mTouchAgainRunnable, HINT_TIMEOUT_DURATION);
}
} }
private void updateProgress(boolean animate) { private void updateProgress(boolean animate) {
@@ -397,22 +403,28 @@ public class FingerprintEnrollEnrolling extends BiometricsEnrollEnrolling {
} }
private void showError(CharSequence error) { private void showError(CharSequence error) {
mErrorText.setText(error); if (mCanAssumeUdfps) {
if (mErrorText.getVisibility() == View.INVISIBLE) { setHeaderText(error);
mErrorText.setVisibility(View.VISIBLE); // Show nothing for subtitle when getting an error message.
mErrorText.setTranslationY(getResources().getDimensionPixelSize( setDescriptionText("");
R.dimen.fingerprint_error_text_appear_distance));
mErrorText.setAlpha(0f);
mErrorText.animate()
.alpha(1f)
.translationY(0f)
.setDuration(200)
.setInterpolator(mLinearOutSlowInInterpolator)
.start();
} else { } else {
mErrorText.animate().cancel(); mErrorText.setText(error);
mErrorText.setAlpha(1f); if (mErrorText.getVisibility() == View.INVISIBLE) {
mErrorText.setTranslationY(0f); mErrorText.setVisibility(View.VISIBLE);
mErrorText.setTranslationY(getResources().getDimensionPixelSize(
R.dimen.fingerprint_error_text_appear_distance));
mErrorText.setAlpha(0f);
mErrorText.animate()
.alpha(1f)
.translationY(0f)
.setDuration(200)
.setInterpolator(mLinearOutSlowInInterpolator)
.start();
} else {
mErrorText.animate().cancel();
mErrorText.setAlpha(1f);
mErrorText.setTranslationY(0f);
}
} }
if (isResumed()) { if (isResumed()) {
mVibrator.vibrate(VIBRATE_EFFECT_ERROR, FINGERPRINT_ENROLLING_SONFICATION_ATTRIBUTES); mVibrator.vibrate(VIBRATE_EFFECT_ERROR, FINGERPRINT_ENROLLING_SONFICATION_ATTRIBUTES);
@@ -420,7 +432,7 @@ public class FingerprintEnrollEnrolling extends BiometricsEnrollEnrolling {
} }
private void clearError() { private void clearError() {
if (mErrorText.getVisibility() == View.VISIBLE) { if (!mCanAssumeUdfps && mErrorText.getVisibility() == View.VISIBLE) {
mErrorText.animate() mErrorText.animate()
.alpha(0f) .alpha(0f)
.translationY(getResources().getDimensionPixelSize( .translationY(getResources().getDimensionPixelSize(