Issue/6850 add google signup#6999
Conversation
…th do login update parameter
| // Attempted to connect, but the user is not signed in. | ||
| case GoogleSignInStatusCodes.SIGN_IN_REQUIRED: | ||
| AppLog.e(T.NUX, "Google Sign-in Failed: user is not signed in."); | ||
| AppLog.e(T.NUX, "Google Login Failed: user is not signed in."); |
There was a problem hiding this comment.
The docs are confusing, but if I'm reading correctly then when SIGN_IN_REQUIRED is returned we may be able to continue with sign in (?)
There was a problem hiding this comment.
Yeah, the terminology is a little confusing. We've tried to differentiate by using login when referring to an existing account and signup when talking about creating a new account. The term sign-in used by the API and Google documentation refers to both login and signup depending on the situation, but the SIGN_IN_REQUIRED in this case means login.
| // WordPress account exists with input email address, and two-factor authentication is required. | ||
| case TWO_STEP_ENABLED: | ||
| AnalyticsTracker.track(AnalyticsTracker.Stat.SIGNUP_SOCIAL_2FA_NEEDED); | ||
| ToastUtils.showToast(getContext(), getString(R.string.signup_user_exists, mGoogleEmail), |
There was a problem hiding this comment.
Can we shorten the length of signup_user_exists? Even with a long toast, it's not easy to read the whole thing before it disappears, especially when you're not expecting it.
Also, the phrase "continue with login" is a bit cryptic and/or unfriendly. Might want to ask Editorial for better copy.
There was a problem hiding this comment.
Yep, I totally agree. I meant to add the [Status] Needs Copy Review label for wordsmithing help from Editorial. I'll add that and [Status] Needs Design Review.
|
This message feels ambiguous -- continue with the current process? Or go back to the login screen? |
I'm guessing you're referring to the "The Google account 'heckofatest@gmail.com' matches an existing account on WordPress.com. Continue with login." message when the user is taken from the signup flow to the login flow, right? The user is automatically taken to the login flow when this message is shown. We wanted to add something to inform the user they are no longer in the signup flow to minimize confusion. Do you know how we can express that better? What do you think about the "Google took too long to respond. You may need to wait until you have a better connection." message shown when a timeout error occurs while trying to login or signup with Google? See the screenshot below for illustration. |
|
@theck13 I'm finished reviewing this and apart from the wording it all looks good. We can wait to merge until after the wording is finalized, or I can merge now and you could change the wording in the next PR - just let me know which you prefer. |
|
The "Google took too long" message is good. I'd maybe say "stronger internet connection" instead of just "better connection." For the other, I'm thinking something like "There's already a WordPress.com account using [email address] -- log in normally with your WordPress.com username and password." Also -- on the login screen behind, it'd be great to change that second sentence to "We'll only ask for this once." |
|
Thanks, @michelleweber!
I'll update the timeout message to "Google took too long to respond. You may need to wait until you have a stronger internet connection."
I can change the message to that, but this message is also shown when the user is taken to the two-factor authentication screen, which has only a verification code field rather than username and password fields. Should we have one message for both cases or unique messages for each case? |
|
Ok so if I understand correctly there are two messages to review:
Also:
Given the above, I'd suggest the following: Timeout—
Signup tp Login—
The above still pending copy review of course. ;) |
Unique, I think. Any instruction/guidance we give should be as specific to what the user is currently seeing as possible, so I'd want the 2FA messaging to be about entering a 2FA code to continue login. |
Yes, those are the two scenarios and both of your suggestions are possible as you described them. @michelleweber: |
|
@folletto and @michelleweber: |
Yeh, I'd break on two lines on the ".":
I think given it's an automated message out of the part of the screen that the user is already looking at, having two lines raised a bit its visual profile. :) |
|
I was suggesting keeping the message to a single line to follow the design guidelines. Just to be clear, you are suggesting forcing the message to be two lines intentionally? |
|
Hurray for contradictory guidelines!
I'll use the "Email already exists on WordPress.com. Proceeding with login." and force the line break after the "WordPress.com." so that it always looks like this. |
|
Hehe yeh. I think they updated in two steps and never revised the whole doc. :D
Cool! |
|
These messages are good. My preference is always to go more natural-speech-y, but space doesn't always allow it! |
… from signup to login
|
Looks good, let's |



Fix
Add Google signup when the Sign Up With Google button is pressed on the prologue screen as described in #6850.
These changes also extract the code specific to Google login and signup from the
LoginGoogleFragmentinto a newGoogleFragmentfile to avoid code duplication. Now, the code in theLoginGoogleFragmentandSignupGoogleFragmentfiles only relate to the Google login and signup flow, respectively.Test
New Account
Old Account / Social Disconnected / Two-Factor Disabled
Old Account / Social Connected / Two-Factor Disabled
Old Account / Social Disconnected / Two-Factor Enabled
Old Account / Social Connected / Two-Factor Enabled
Note
There are two copy changes. One is the new timeout error message "Google took too long to respond. You may need to wait until you have a better connection." which occurs when Google login or signup fails due to taking too long. The second is the addition of a message that appears when users are taken from the signup flow to the login flow. It is an ephemeral message based off an existing Google login error. See the screenshot below for illustration.