From 6de2d73aad174b3011912b1170646e2d4f01dbf9 Mon Sep 17 00:00:00 2001 From: anticafe <340836+anticafe@users.noreply.github.com> Date: Fri, 27 Mar 2020 22:56:26 +0700 Subject: [PATCH 1/3] Update README.md (#1769) The Facebook Android SDK link is quite old. We should point to the official Facebook Android SDK changelog in Github: https://github.com/facebook/facebook-android-sdk/blob/master/CHANGELOG.md --- auth/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/auth/README.md b/auth/README.md index 70d89d00e..87e6832a3 100644 --- a/auth/README.md +++ b/auth/README.md @@ -68,7 +68,7 @@ dependencies { implementation 'com.firebaseui:firebase-ui-auth:6.2.1' // Required only if Facebook login support is required - // Find the latest Facebook SDK releases here: https://goo.gl/Ce5L94 + // Find the latest Facebook SDK releases here: https://github.com/facebook/facebook-android-sdk/blob/master/CHANGELOG.md implementation 'com.facebook.android:facebook-login:4.x' } ``` From 6d41fb2992a7ce01d7f38e8451805e49e96e5628 Mon Sep 17 00:00:00 2001 From: Frank van Puffelen Date: Tue, 26 May 2020 06:20:10 -0700 Subject: [PATCH 2/3] Fix tiny typo: afforted -> afforded (#1785) --- firestore/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/firestore/README.md b/firestore/README.md index 7ee7b17da..f5d21c473 100644 --- a/firestore/README.md +++ b/firestore/README.md @@ -247,7 +247,7 @@ FirestoreRecyclerAdapter adapter = new FirestoreRecyclerAdapter Date: Mon, 22 Jun 2020 16:47:25 +0300 Subject: [PATCH 3/3] Handle dynamic list of identity providers --- .../auth/ui/idp/AuthMethodPickerActivity.java | 23 ++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/auth/src/main/java/com/firebase/ui/auth/ui/idp/AuthMethodPickerActivity.java b/auth/src/main/java/com/firebase/ui/auth/ui/idp/AuthMethodPickerActivity.java index 5c467cae0..6c5701704 100644 --- a/auth/src/main/java/com/firebase/ui/auth/ui/idp/AuthMethodPickerActivity.java +++ b/auth/src/main/java/com/firebase/ui/auth/ui/idp/AuthMethodPickerActivity.java @@ -51,7 +51,6 @@ import com.google.firebase.auth.EmailAuthProvider; import com.google.firebase.auth.FacebookAuthProvider; import com.google.firebase.auth.FirebaseAuth; -import com.google.firebase.auth.GithubAuthProvider; import com.google.firebase.auth.GoogleAuthProvider; import com.google.firebase.auth.PhoneAuthProvider; @@ -229,14 +228,32 @@ private void populateIdpListCustomLayout(List providerConfigs) { for (IdpConfig idpConfig : providerConfigs) { final String providerId = providerOrEmailLinkProvider(idpConfig.getProviderId()); - if (!providerButtonIds.containsKey(providerId)) { + Integer buttonResId = providerButtonIds.get(providerId); + if (buttonResId == null) { throw new IllegalStateException("No button found for auth provider: " + idpConfig.getProviderId()); } - @IdRes int buttonId = providerButtonIds.get(providerId); + @IdRes int buttonId = buttonResId; View loginButton = findViewById(buttonId); handleSignInOperation(idpConfig, loginButton); } + //hide custom layout buttons that don't have their identity provider set + for (String providerBtnId : providerButtonIds.keySet()) { + if (providerBtnId == null) continue; + boolean hasProvider = false; + for (IdpConfig idpConfig : providerConfigs) { + if (providerBtnId.equals(idpConfig.getProviderId())) { + hasProvider = true; + break; + } + } + if (!hasProvider) { + Integer resId = providerButtonIds.get(providerBtnId); + if (resId == null) continue; + @IdRes int buttonId = resId; + findViewById(buttonId).setVisibility(View.GONE); + } + } } @NonNull