From 5e3fd696a51882427e13e4bf67047efa8897e168 Mon Sep 17 00:00:00 2001 From: Hao Dong Date: Tue, 31 Jan 2023 22:04:48 +0800 Subject: [PATCH] Hide "no thanks" button when enrollment completed. Test: atest FingerprintEnrollIntroductionTest Bug: 262666155 Change-Id: I61549029f87e7bbee665f47d24f9a929ad8b4df1 --- .../BiometricEnrollIntroduction.java | 5 ++++- .../FingerprintEnrollIntroductionTest.java | 20 +++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/src/com/android/settings/biometrics/BiometricEnrollIntroduction.java b/src/com/android/settings/biometrics/BiometricEnrollIntroduction.java index 893a8503423..7c5c77b5350 100644 --- a/src/com/android/settings/biometrics/BiometricEnrollIntroduction.java +++ b/src/com/android/settings/biometrics/BiometricEnrollIntroduction.java @@ -222,7 +222,9 @@ public abstract class BiometricEnrollIntroduction extends BiometricEnrollBase // Show secondary button once scroll is completed. if (!scrollNeeded) { - getSecondaryFooterButton().setVisibility(View.VISIBLE); + if (!enrollmentCompleted) { + getSecondaryFooterButton().setVisibility(View.VISIBLE); + } mHasScrolledToBottom = true; } }); @@ -242,6 +244,7 @@ public abstract class BiometricEnrollIntroduction extends BiometricEnrollBase mErrorText.setVisibility(View.VISIBLE); getNextButton().setText(getResources().getString(R.string.done)); getNextButton().setVisibility(View.VISIBLE); + getSecondaryFooterButton().setVisibility(View.INVISIBLE); } } diff --git a/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroductionTest.java b/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroductionTest.java index 4eb0a89699c..69f10d629dd 100644 --- a/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroductionTest.java +++ b/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroductionTest.java @@ -44,6 +44,7 @@ import android.hardware.fingerprint.FingerprintManager; import android.hardware.fingerprint.FingerprintSensorProperties; import android.hardware.fingerprint.FingerprintSensorPropertiesInternal; import android.os.UserManager; +import android.view.View; import androidx.annotation.NonNull; import androidx.annotation.Nullable; @@ -54,7 +55,10 @@ import com.android.settings.R; import com.android.settings.biometrics.GatekeeperPasswordProvider; import com.google.android.setupcompat.util.WizardManagerHelper; +import com.google.android.setupdesign.GlifLayout; +import com.google.android.setupdesign.template.RequireScrollMixin; +import org.junit.Assert; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -177,6 +181,14 @@ public class FingerprintEnrollIntroductionTest { int result = mFingerprintEnrollIntroduction.checkMaxEnrolled(); assertThat(result).isEqualTo(0); + + final RequireScrollMixin requireScrollMixin = + ((GlifLayout) mFingerprintEnrollIntroduction.findViewById( + R.id.setup_wizard_layout)).getMixin(RequireScrollMixin.class); + requireScrollMixin.getOnRequireScrollStateChangedListener().onRequireScrollStateChanged( + false); + Assert.assertEquals(View.VISIBLE, + mFingerprintEnrollIntroduction.getSecondaryFooterButton().getVisibility()); } @Test @@ -192,6 +204,14 @@ public class FingerprintEnrollIntroductionTest { int result = mFingerprintEnrollIntroduction.checkMaxEnrolled(); assertThat(result).isEqualTo(R.string.fingerprint_intro_error_max); + + final RequireScrollMixin requireScrollMixin = + ((GlifLayout) mFingerprintEnrollIntroduction.findViewById( + R.id.setup_wizard_layout)).getMixin(RequireScrollMixin.class); + requireScrollMixin.getOnRequireScrollStateChangedListener().onRequireScrollStateChanged( + false); + Assert.assertEquals(View.INVISIBLE, + mFingerprintEnrollIntroduction.getSecondaryFooterButton().getVisibility()); } @Test