Skip to content

Commit 9b8a06d

Browse files
committed
Fix issue 1278
Change-Id: I1ef08d498261ecfe09e0efd651814bf34f498ea8
1 parent f7282bd commit 9b8a06d

File tree

3 files changed

+18
-7
lines changed

3 files changed

+18
-7
lines changed

auth/src/main/java/com/firebase/ui/auth/AuthUI.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131

3232
import com.facebook.login.LoginManager;
3333
import com.firebase.ui.auth.data.model.FlowParameters;
34+
import com.firebase.ui.auth.data.remote.TwitterSignInHandler;
3435
import com.firebase.ui.auth.ui.idp.AuthMethodPickerActivity;
3536
import com.firebase.ui.auth.util.CredentialUtils;
3637
import com.firebase.ui.auth.util.ExtraConstants;
@@ -276,7 +277,7 @@ public static int getDefaultTheme() {
276277
* UI-based sign-in flow knowing it is required.
277278
*
278279
* @param context requesting the user be signed in
279-
* @param desiredConfigs to use for silent sign in. Only Google and email are currently
280+
* @param configs to use for silent sign in. Only Google and email are currently
280281
* supported, the rest will be ignored.
281282
* @return a task which indicates whether or not the user was successfully signed in.
282283
*/
@@ -455,6 +456,7 @@ private Task<Void> signOutIdps(@NonNull Context context) {
455456
LoginManager.getInstance().logOut();
456457
}
457458
if (ProviderAvailability.IS_TWITTER_AVAILABLE) {
459+
TwitterSignInHandler.initializeTwitter();
458460
TwitterCore.getInstance().getSessionManager().clearActiveSession();
459461
}
460462
return GoogleSignIn.getClient(context, GoogleSignInOptions.DEFAULT_SIGN_IN).signOut();

auth/src/main/java/com/firebase/ui/auth/data/remote/TwitterSignInHandler.java

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,7 @@
3333
public class TwitterSignInHandler extends ProviderSignInBase<Void> {
3434
static {
3535
if (ProviderAvailability.IS_TWITTER_AVAILABLE) {
36-
Context context = AuthUI.getApplicationContext();
37-
Twitter.initialize(new TwitterConfig.Builder(context)
38-
.twitterAuthConfig(new TwitterAuthConfig(
39-
context.getString(R.string.twitter_consumer_key),
40-
context.getString(R.string.twitter_consumer_secret)))
41-
.build());
36+
initializeTwitter();
4237
}
4338
}
4439

@@ -50,6 +45,18 @@ public TwitterSignInHandler(Application application) {
5045
mClient = new TwitterAuthClient();
5146
}
5247

48+
public static void initializeTwitter() {
49+
Context context = AuthUI.getApplicationContext();
50+
51+
// Note: this has no effect if Twitter is already initialized so it's safe to call
52+
// multiple times.
53+
Twitter.initialize(new TwitterConfig.Builder(context)
54+
.twitterAuthConfig(new TwitterAuthConfig(
55+
context.getString(R.string.twitter_consumer_key),
56+
context.getString(R.string.twitter_consumer_secret)))
57+
.build());
58+
}
59+
5360
private static IdpResponse createIdpResponse(
5461
TwitterSession session, String email, String name, Uri photoUri) {
5562
return new IdpResponse.Builder(

auth/src/main/java/com/firebase/ui/auth/viewmodel/ResourceObserver.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import android.support.annotation.NonNull;
55
import android.support.annotation.RestrictTo;
66
import android.support.annotation.StringRes;
7+
import android.util.Log;
78

89
import com.firebase.ui.auth.data.model.Resource;
910
import com.firebase.ui.auth.data.model.State;
@@ -34,6 +35,7 @@ private ResourceObserver(HelperActivityBase activity, FragmentBase fragment, int
3435
@Override
3536
public final void onChanged(Resource<T> resource) {
3637
if (resource.getState() == State.LOADING) {
38+
Log.d("DIALOG", "Shown by: " + resource.toString());
3739
mActivity.getDialogHolder().showLoadingDialog(mLoadingMessage);
3840
return;
3941
}

0 commit comments

Comments
 (0)