-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Shorter sign up - remove Send Link by email screen #14025
Shorter sign up - remove Send Link by email screen #14025
Conversation
This change effectively removes the intermediate 'Send link by email' screen. This screen is actually a dual purpose screen because it is also used for with social login (Google). As such, the screen is not removed per se, but actually becomes now a single purpose screen to be used only for the purpose of logging in with Google.
This extra message will let the user know they can go back if they didn't intend to sign up.
This extra message will let the user know they can go back if they didn't intend to sign up.
1) This screen no longer needs the extra 'newInstance(email)' method, which was only used within the deleted 'gotUnregisteredEmail(...)' method. 2) As such the 'mIsSocialSignup' and 'ARG_IS_SOCIAL_SIGNUP' logic is no longer needed and deleted as well. 3) The tracking of 'trackEmailSignupConfirmationViewed()' is also no needed based on the above changes. 4) Finally, the XML file can be updated to account only for the social logic (Google). 5) And as part of that last change, the 'signup_confirmation_magic_link_message' string becomes obsolete as well.
This 'gotUnregisteredEmail(...)' method is indeed now unused for the 'WordPress' app, but not for the 'WooCommerce' app. As such, this is added back as an interface method to be shared with both apps. The only difference is that for the 'WordPress' app it will not be doing anything as of now.
This 'gotUnregisteredEmail(...)' method is added back but it will not be doing anything as of now.
You can trigger optional UI/connected tests for these changes by visiting CircleCI here. |
Error TypeError
Dangerfile
Generated by 🚫 dangerJS |
👋 @anitaa1990 ! Once more, I want to ping you on that change so that you are aware of it as well. After checking with |
You can test the changes on this Pull Request by downloading the APK here. |
👋 @oguzkocer ! When this PR ends up being merged in PS: Previous manual PR on WordPress-Login-Flow-Android. |
@ParaskP7 Yes, please go ahead with the manual update. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the ping; everything is looking as it should to me here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @ParaskP7, thanks for the changes!
I've tested the app and it seems to be working as expected. That said, it looks like this introduces some changes that could impact the Woo app, so unless you’ve already coordinated this with them, you should probably make some considerations, which I’ve detailed below.
libs/login/WordPressLoginFlow/src/main/java/org/wordpress/android/login/LoginEmailFragment.java
Outdated
Show resolved
Hide resolved
@@ -65,7 +65,6 @@ interface LoginAnalyticsListener { | |||
fun trackPickEmailFromHint() | |||
fun trackShowEmailHints() | |||
fun emailFormScreenResumed() | |||
fun trackEmailSignupConfirmationViewed() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a breaking change to the Woo app. It's not a big deal though, as long as you make sure to highlight it when pushing these changes to the library.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👋 @renanferrari !
Oh you're right, again nice catch! Woo
implements this method but as a TODO("Not yet implemented")
, which means that when they pull the changes from this library the compiler will complain. I'll revert that change on the library level and have the WordPress
app implement it with a \\ Do nothing
comment. Wdyt?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is now done here: bbf2464
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In this case I'm wondering if it's not better to actually remove this, since we are effectively removing the "signup confirmation" screen for email signups. And as none of the apps are going to use it, it seems right. What do you think?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👋 @renanferrari !
Do you mean if it's better to actually remove this
, without the not
, I just got a bit confused? 😅
If this is indeed what you meant, I was thinking along the same lines, but decided that it probably better to not have that removed since on the Woo
side it is marked as TODO("Not yet implemented")
. We now know that on the WordPress
side this is a \\ Do nothing.
, but I am not sure about Woo
.
Also Woo
has an intermediate LoginNoWPcomAccountFoundFragment
screen as well, which made me think that I shouldn't remove this logic from Woo
just yet (it might be of used as some point, or planned).
However, if you really think that it is indeed better if we just remove this, and have Woo
update their implementation by removing this as well, that is when they pull the latest changes, then I will confidently do so and I would agree. It is just that I choose the less risky, frictionless path on this instance.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👋 @renanferrari !
As per our discussion, I removed this tracking event, you can check this commit: 5252eda
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👋 @anitaa1990 !
Could you also please verify that this is okay on your end?
Many thanks in advance! 🙏
This is done purely because otherwise the behavior for the 'Woo' app will change, which will end up breaking the 'Woo' flows. As such, this commit reverts that and instead updates the 'LoginActivity', which exists only on the 'WordPress' side and makes sure that the implementing 'gotUnregisteredEmail(...)' method calls the 'showSignupMagicLink(...)' instead, thus updating only the 'WordPress' login flow with the intended change.
This is done purely because otherwise this will break the 'Woo' app, which also using this interface method, even if that is currently just a 'TODO("Not yet implemented")'. As such, this commit reverts that and instead updates the implementing method on the 'WordPress' side with a '\\ Do nothing.' comment.
👋 @renanferrari ! So many thanks for the excellent review, especially when it comes to how this will affect
You're right! I have made some updates based on your comments, you could please take another look. 🙏 |
After some more thought, it has been decided to remove this and have 'Woo' update their app when pulling this login library change.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the changes. Feel free to merge this once @anitaa1990 verifies everything is ok (I believe it should be).
Great job on this! LGTM
Hey @ParaskP7 👋 Thank you for the ping! Is this screen removed only during the sign up process? If that is the case, we currently don't support sign ups in the Woo app so you should be good to go 👍 |
👋 @anitaa1990 !
Yes, you are right Anitaa, this screen is used during the sign up process.
Perfect, thanks for the confirmation Anitaa, will now merge this PR! 🙏 |
PS: A manual PR was created (cherry-peeking the commit from this PR) within the WordPress-Login-Flow-Android repo to make sure that this change is replicated within that repo as well. |
Fixes #13971
Relates WordPressAuthenticator-iOS#574
This PR removes the below intermediate
Sign Up
screen:Instead, an email will be now sent immediately after the user enters their email:
screen-20210210-120918.mp4
ℹ️ An additional paragraph was added on the confirmation screen stating the:
Didn't mean to create a new account? Go back to re-enter your email address.
gotUnregisteredEmail(...)
functionality is shared between theWordPress
andWooCommerce
apps, this was not removed altogether. Instead the implementing client just end up doing nothing as an implementation on theWordPress
side.To test:
PR submission checklist:
RELEASE-NOTES.txt
if necessary.