From 6ddee3478952f13a3c38f57353caaeacc3612755 Mon Sep 17 00:00:00 2001
From: Guillaume Bernos <guillaume@bernos.dev>
Date: Mon, 3 Mar 2025 09:25:52 +0100
Subject: [PATCH 1/6] feat: rename setIsSmartLockEnabled to
 setCredentialManagerEnabled

---
 .../java/com/firebase/ui/auth/AuthUI.java     | 20 +------------------
 .../ui/auth/data/model/FlowParameters.java    |  6 ------
 2 files changed, 1 insertion(+), 25 deletions(-)

diff --git a/auth/src/main/java/com/firebase/ui/auth/AuthUI.java b/auth/src/main/java/com/firebase/ui/auth/AuthUI.java
index 28ec40a30..b82524e64 100644
--- a/auth/src/main/java/com/firebase/ui/auth/AuthUI.java
+++ b/auth/src/main/java/com/firebase/ui/auth/AuthUI.java
@@ -1126,7 +1126,6 @@ private abstract class AuthIntentBuilder<T extends AuthIntentBuilder> {
         boolean mAlwaysShowProviderChoice = false;
         boolean mLockOrientation = false;
         boolean mEnableCredentials = true;
-        boolean mEnableHints = true;
         AuthMethodPickerLayout mAuthMethodPickerLayout = null;
         ActionCodeSettings mPasswordSettings = null;
 
@@ -1250,20 +1249,6 @@ public T setDefaultProvider(@Nullable IdpConfig config) {
             return (T) this;
         }
 
-        /**
-         * Enables or disables the use of Smart Lock for Passwords in the sign in flow. To
-         * (en)disable hint selector and credential selector independently use {@link
-         * #setIsSmartLockEnabled(boolean, boolean)}
-         * <p>
-         * <p>SmartLock is enabled by default.
-         *
-         * @param enabled enables smartlock's credential selector and hint selector
-         */
-        @NonNull
-        public T setIsSmartLockEnabled(boolean enabled) {
-            return setIsSmartLockEnabled(enabled, enabled);
-        }
-
         /**
          * Enables or disables the use of Smart Lock for Passwords credential selector and hint
          * selector.
@@ -1271,12 +1256,10 @@ public T setIsSmartLockEnabled(boolean enabled) {
          * <p>Both selectors are enabled by default.
          *
          * @param enableCredentials enables credential selector before signup
-         * @param enableHints       enable hint selector in respective signup screens
          */
         @NonNull
-        public T setIsSmartLockEnabled(boolean enableCredentials, boolean enableHints) {
+        public T setCredentialManagerEnabled(boolean enableCredentials) {
             mEnableCredentials = enableCredentials;
-            mEnableHints = enableHints;
             return (T) this;
         }
 
@@ -1409,7 +1392,6 @@ protected FlowParameters getFlowParams() {
                     mTosUrl,
                     mPrivacyPolicyUrl,
                     mEnableCredentials,
-                    mEnableHints,
                     mEnableAnonymousUpgrade,
                     mAlwaysShowProviderChoice,
                     mLockOrientation,
diff --git a/auth/src/main/java/com/firebase/ui/auth/data/model/FlowParameters.java b/auth/src/main/java/com/firebase/ui/auth/data/model/FlowParameters.java
index b43edda53..c6dac950a 100644
--- a/auth/src/main/java/com/firebase/ui/auth/data/model/FlowParameters.java
+++ b/auth/src/main/java/com/firebase/ui/auth/data/model/FlowParameters.java
@@ -70,7 +70,6 @@ public FlowParameters createFromParcel(Parcel in) {
                     termsOfServiceUrl,
                     privacyPolicyUrl,
                     enableCredentials,
-                    enableHints,
                     enableAnonymousUpgrade,
                     alwaysShowProviderChoice,
                     lockOrientation,
@@ -113,7 +112,6 @@ public FlowParameters[] newArray(int size) {
     public final ActionCodeSettings passwordResetSettings;
 
     public final boolean enableCredentials;
-    public final boolean enableHints;
     public final boolean enableAnonymousUpgrade;
     public final boolean alwaysShowProviderChoice;
     public final boolean lockOrientation;
@@ -130,7 +128,6 @@ public FlowParameters(
             @Nullable String termsOfServiceUrl,
             @Nullable String privacyPolicyUrl,
             boolean enableCredentials,
-            boolean enableHints,
             boolean enableAnonymousUpgrade,
             boolean alwaysShowProviderChoice,
             boolean lockOrientation,
@@ -146,7 +143,6 @@ public FlowParameters(
         this.termsOfServiceUrl = termsOfServiceUrl;
         this.privacyPolicyUrl = privacyPolicyUrl;
         this.enableCredentials = enableCredentials;
-        this.enableHints = enableHints;
         this.enableAnonymousUpgrade = enableAnonymousUpgrade;
         this.alwaysShowProviderChoice = alwaysShowProviderChoice;
         this.lockOrientation = lockOrientation;
@@ -172,7 +168,6 @@ public void writeToParcel(Parcel dest, int flags) {
         dest.writeString(termsOfServiceUrl);
         dest.writeString(privacyPolicyUrl);
         dest.writeInt(enableCredentials ? 1 : 0);
-        dest.writeInt(enableHints ? 1 : 0);
         dest.writeInt(enableAnonymousUpgrade ? 1 : 0);
         dest.writeInt(alwaysShowProviderChoice ? 1 : 0);
         dest.writeInt(lockOrientation ? 1 : 0);
@@ -205,7 +200,6 @@ public boolean isAnonymousUpgradeEnabled() {
     public boolean isPlayServicesRequired() {
         // Play services only required for Google Sign In and the Credentials API
         return isProviderEnabled(GoogleAuthProvider.PROVIDER_ID)
-                || enableHints
                 || enableCredentials;
     }
 

From 3a1568b79b2a052fd3a589ecd65a9bd76a77b6ea Mon Sep 17 00:00:00 2001
From: Guillaume Bernos <guillaume@bernos.dev>
Date: Mon, 3 Mar 2025 10:16:39 +0100
Subject: [PATCH 2/6] fix

---
 .../com/firebase/ui/auth/ui/email/CheckEmailFragment.java     | 4 ++--
 .../firebase/ui/auth/ui/phone/CheckPhoneNumberFragment.java   | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/auth/src/main/java/com/firebase/ui/auth/ui/email/CheckEmailFragment.java b/auth/src/main/java/com/firebase/ui/auth/ui/email/CheckEmailFragment.java
index 7b572a9df..e423a30c7 100644
--- a/auth/src/main/java/com/firebase/ui/auth/ui/email/CheckEmailFragment.java
+++ b/auth/src/main/java/com/firebase/ui/auth/ui/email/CheckEmailFragment.java
@@ -87,7 +87,7 @@ public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceStat
 
         ImeHelper.setImeOnDoneListener(mEmailEditText, this);
 
-        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O && getFlowParams().enableHints) {
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
             mEmailEditText.setImportantForAutofill(View.IMPORTANT_FOR_AUTOFILL_NO);
         }
 
@@ -130,7 +130,7 @@ public void onActivityCreated(@Nullable Bundle savedInstanceState) {
             if (!TextUtils.isEmpty(email)) {
                 mEmailEditText.setText(email);
                 // Previously auto-triggering the check is now removed.
-            } else if (getFlowParams().enableHints) {
+            } else if (getFlowParams().enableCredentials) {
                 mHandler.fetchCredential();
             }
         }
diff --git a/auth/src/main/java/com/firebase/ui/auth/ui/phone/CheckPhoneNumberFragment.java b/auth/src/main/java/com/firebase/ui/auth/ui/phone/CheckPhoneNumberFragment.java
index 5dae792ad..c011f1a3e 100644
--- a/auth/src/main/java/com/firebase/ui/auth/ui/phone/CheckPhoneNumberFragment.java
+++ b/auth/src/main/java/com/firebase/ui/auth/ui/phone/CheckPhoneNumberFragment.java
@@ -85,7 +85,7 @@ public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceStat
 
         mSmsTermsText.setText(getString(R.string.fui_sms_terms_of_service,
                 getString(R.string.fui_verify_phone_number)));
-        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O && getFlowParams().enableHints) {
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
             mPhoneEditText.setImportantForAutofill(View.IMPORTANT_FOR_AUTOFILL_NO);
         }
         requireActivity().setTitle(getString(R.string.fui_verify_phone_number_title));
@@ -220,7 +220,7 @@ private void setDefaultCountryForSpinner() {
                     "",
                     countryIso,
                     String.valueOf(PhoneNumberUtils.getCountryCode(countryIso))));
-        } else if (getFlowParams().enableHints) {
+        } else if (getFlowParams().enableCredentials) {
             // Launch phone number hint flow using the new API
             mCheckPhoneHandler.fetchCredential(requireActivity());
         }

From dda1e2d08086e66174eda0cbc28395d7484669d1 Mon Sep 17 00:00:00 2001
From: Guillaume Bernos <guillaume@bernos.dev>
Date: Mon, 3 Mar 2025 10:30:26 +0100
Subject: [PATCH 3/6] feat: rename setIsSmartLockEnabled to
 setCredentialManagerEnabled

---
 auth/src/main/java/com/firebase/ui/auth/AuthUI.java | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/auth/src/main/java/com/firebase/ui/auth/AuthUI.java b/auth/src/main/java/com/firebase/ui/auth/AuthUI.java
index b82524e64..d389af20b 100644
--- a/auth/src/main/java/com/firebase/ui/auth/AuthUI.java
+++ b/auth/src/main/java/com/firebase/ui/auth/AuthUI.java
@@ -1250,10 +1250,9 @@ public T setDefaultProvider(@Nullable IdpConfig config) {
         }
 
         /**
-         * Enables or disables the use of Smart Lock for Passwords credential selector and hint
-         * selector.
+         * Enables or disables the use of Credential Manager for Passwords credential selector
          * <p>
-         * <p>Both selectors are enabled by default.
+         * <p>Is enabled by default.
          *
          * @param enableCredentials enables credential selector before signup
          */

From 224e239b1e0609062286fca61bc265741a065a09 Mon Sep 17 00:00:00 2001
From: Guillaume Bernos <guillaume@bernos.dev>
Date: Mon, 3 Mar 2025 10:31:16 +0100
Subject: [PATCH 4/6] feat: rename setIsSmartLockEnabled to
 setCredentialManagerEnabled

---
 app/src/main/java/com/firebase/uidemo/auth/AuthUiActivity.java | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/app/src/main/java/com/firebase/uidemo/auth/AuthUiActivity.java b/app/src/main/java/com/firebase/uidemo/auth/AuthUiActivity.java
index 823bb0be7..0a8d44cd3 100644
--- a/app/src/main/java/com/firebase/uidemo/auth/AuthUiActivity.java
+++ b/app/src/main/java/com/firebase/uidemo/auth/AuthUiActivity.java
@@ -194,8 +194,7 @@ private Intent getSignInIntent(@Nullable String link) {
                 .setTheme(getSelectedTheme())
                 .setLogo(getSelectedLogo())
                 .setAvailableProviders(getSelectedProviders())
-                .setIsSmartLockEnabled(mBinding.credentialSelectorEnabled.isChecked(),
-                        mBinding.hintSelectorEnabled.isChecked());
+                .setCredentialManagerEnabled(mBinding.credentialSelectorEnabled.isChecked());
 
         if (mBinding.customLayout.isChecked()) {
             AuthMethodPickerLayout customLayout = new AuthMethodPickerLayout

From ea8e59aa4d289a3171033c4371a63826d2813cdb Mon Sep 17 00:00:00 2001
From: Guillaume Bernos <guillaume@bernos.dev>
Date: Mon, 3 Mar 2025 10:47:25 +0100
Subject: [PATCH 5/6] fix

---
 .../test/java/com/firebase/ui/auth/testhelpers/TestHelper.java   | 1 -
 1 file changed, 1 deletion(-)

diff --git a/auth/src/test/java/com/firebase/ui/auth/testhelpers/TestHelper.java b/auth/src/test/java/com/firebase/ui/auth/testhelpers/TestHelper.java
index 2fab50343..2efed02da 100644
--- a/auth/src/test/java/com/firebase/ui/auth/testhelpers/TestHelper.java
+++ b/auth/src/test/java/com/firebase/ui/auth/testhelpers/TestHelper.java
@@ -184,7 +184,6 @@ public static FlowParameters getFlowParameters(Collection<String> providerIds,
                 null,
                 null,
                 true,
-                true,
                 enableAnonymousUpgrade,
                 false,
                 true,

From bbd1fad36051298151225250ef2732d905acf8f6 Mon Sep 17 00:00:00 2001
From: Guillaume Bernos <guillaume@bernos.dev>
Date: Tue, 4 Mar 2025 08:07:46 +0100
Subject: [PATCH 6/6] remove references

---
 app/src/main/res/layout/auth_ui_layout.xml | 7 -------
 app/src/main/res/values/strings.xml        | 3 +--
 2 files changed, 1 insertion(+), 9 deletions(-)

diff --git a/app/src/main/res/layout/auth_ui_layout.xml b/app/src/main/res/layout/auth_ui_layout.xml
index 622155af4..a22375abb 100644
--- a/app/src/main/res/layout/auth_ui_layout.xml
+++ b/app/src/main/res/layout/auth_ui_layout.xml
@@ -312,13 +312,6 @@
                 android:checked="true"
                 android:text="@string/options_enable_credential_selector" />
 
-            <CheckBox
-                android:id="@+id/hint_selector_enabled"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:checked="true"
-                android:text="@string/options_enable_hint_selector" />
-
             <CheckBox
                 android:id="@+id/allow_new_email_accounts"
                 android:layout_width="wrap_content"
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 9937ba5cd..88d0ed1d8 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -63,8 +63,7 @@
     <string name="facebook_permission_photos">Photos</string>
 
     <string name="options_header">Other Options</string>
-    <string name="options_enable_credential_selector">Enable Smart Lock\'s credential selector</string>
-    <string name="options_enable_hint_selector">Enable Smart Lock\'s hint selector</string>
+    <string name="options_enable_credential_selector">Enable Credential Manager\'s credential selector</string>
     <string name="options_allow_new_email_acccount">Allow new account creation</string>
     <string name="options_require_name">Require first/last name with email accounts.</string>
     <string name="options_use_auth_emulator">Connect to auth emulator (localhost:9099).</string>