-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
[HOLD for payment 2023-05-23] [$2000] Android - Sign in - The keyboard opens and disappears for a brief moment #16357
Comments
Triggered auto assignment to @tjferriss ( |
Bug0 Triage Checklist (Main S/O)
|
Job added to Upwork: https://www.upwork.com/jobs/~01f770760fee7155f3 |
Current assignee @tjferriss is eligible for the External assigner, not assigning anyone new. |
Reproduced via BrowserStack |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @Santhosh-Sellavel ( |
Triggered auto assignment to @roryabraham ( |
ProposalPlease re-state the problem that we are trying to solve in this issue.Keyboard is shown for a while when we go to login page from footer link while we are at password/2fa form. What is the root cause of that problem?Currently, when we go to the password form, the login form is not unmounted, but just hidden. App/src/pages/signin/SignInPage.js Lines 111 to 113 in 10d3d52
The login form will only be shown if this condition meets App/src/pages/signin/SignInPage.js Lines 56 to 59 in 10d3d52
When we press the Log in footer link, it will call this App/src/pages/signin/SignInPageLayout/Footer.js Lines 24 to 29 in 10d3d52
Even though we navigate to the same page, the page will remount. However, if we only do the navigate, the password form will still be shown. That's why we need the Now, inside App/src/pages/signin/LoginForm.js Lines 93 to 96 in 10d3d52
So, while we are navigating with Update: The focus delay (300ms) is for android to always receive the focus, the same thing we do in our app. To test it, just open the details page. On Android, you will notice the keyboard will shows for a while, but on iOS, the keyboard never shows. So, iOS smart enough to know that it's useless to show a keyboard. What changes do you think we should make in order to solve the problem?The solution is to prevent the focus to happen as we are leaving the page, going to the same page. To prevent it, we can check if the current screen/page is focused or not.
App/src/pages/signin/LoginForm.js Lines 93 to 96 in 10d3d52
|
Looks like something related to As a reminder, please make sure that all proposals are not workarounds and that any and all attempt to fix the issue holistically have been made before proceeding with a solution. Proposals to change our Feel free to drop a note in #expensify-open-source with any questions. |
cc: @luacmartins do we need to treat this as regression? |
I don’t think this is a regression since the previous behavior opened web instead of linking within the App. However, this is indeed something that we should fix. |
Thanks @luacmartins |
@bernhardoj I'm not sure why this happens on android alone root cause doesn't explain this clearly |
Added explanation to it on my proposal. |
Sorry for the delay. @roryabraham Your thoughts on the proposal? |
Yes, just waiting for Expensify Reviewer to merge #17445 |
Merged! |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.3.14-14 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue: If no regressions arise, payment will be issued on 2023-05-23. 🎊 After the hold period is over and BZ checklist items are completed, please complete any of the applicable payments for this issue, and check them off once done.
As a reminder, here are the bonuses/penalties that should be applied for any External issue:
|
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
|
@Santhosh-Sellavel @hellohublot can you please both apply to the job here: https://www.upwork.com/jobs/~01060f20aaf9a83d49? |
@tjferriss there is no unnecessary delay here, this issue is on hold for atleast couple of weeks due to other issue and For CME @roryabraham busy with priority internal items. You can check the PR for history. So penalty should not applicable here, thanks! |
Looking at the history here:
So that's 8 business days when the PR was on HOLD. Then @Santhosh-Sellavel final-approved the PR on May 7th, and I merged it on May 11th, so that's an additional 4 business days it was delayed outside of the contributors' control here. So given that there were 22 business days elapsed between assignment and merge, and 12 of those days were caused by factors outside the contributors' control. That still leaves 10 business days between assignment and merge (after correction). According to our contributing guidelines:
So by my reckoning the 50% penalty should still apply here. |
I agree it took around 10 days. I am requesting you to waive off here as this was on hold. The hold is the problem where I lost rack of time. Post Off hold I spent 4 days reviewing and testing the PR. That's the average review time (3 - 4 days) for any PR. I had to ensure this does not cause any regressions. Thanks! cc: @tjferriss |
@tjferriss @roryabraham In fact, this is the first time I got -50% penalty, but every time Expensify reviewer and C+ reviewer ask questions, every time I reply all messages within 1 day, yes I always push progress within 1 day , and this issue also consumed me a lot of time and energy, but still got -50% penalty |
I think this is a fair point – the delay added additional work due to merge conflicts. Given that you only missed the mark by 1 day, it's reasonable to assume that you would've completed it in time without the additional work caused by the delay. You were also responsive throughout, and demonstrated a good amount of urgency to push the PR forward. So given the specific context here, I'm willing to make an exception and void the 50% penalty because it was more my fault than yours. So, @tjferriss if you agree, that means that we should pay the full bounty amount here. |
Sorry for the delay as I've been out of office. I agree with paying the full bounty. Thanks for handling the discussion @roryabraham.
@hellohublot I don't fully follow your comment. Are you not able to apply to the job posting here: https://www.upwork.com/jobs/~01060f20aaf9a83d49? Similarly, @Santhosh-Sellavel can you please apply to the job posting? |
cc: @roryabraham @tjferriss Let me know if you differ on any of the above! |
Regression Test Steps:
👍 or 👎 |
@tjferriss Similar to this one, The client always can't see my proposal on upwork, so you can send me the offer directly, https://www.upwork.com/freelancers/~01509ca2c74bfc7073 Thanks. |
Oh duh, I just had to click "Load More". Offers have been sent to both of you. Once they're accepted, I'll process the payment. |
@hellohublot @Santhosh-Sellavel payments have been made. |
If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!
Issue found when executing PR #15731
Action Performed:
. Open the App
2. Navigate to the login page
3. Press the Create a new account link in the footer
4. Verify that you are navigated to the login page
5. Enter an email address and press Continue
6. Scroll down to the footer and press Log in
7. Verify that you are navigated back to the login page
Expected Result:
The keyboard doesn't open
Actual Result:
The keyboard opens and disappears for a brief moment
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Version Number: 1.2.88.0
Reproducible in staging?: Yes
Reproducible in production?: Yes
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
Bug5987014_Record_2023-03-21-21-26-21_4f9154176b47c00da84e32064abf1c48.mp4
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
View all open jobs on GitHub
Upwork Automation - Do Not Edit
The text was updated successfully, but these errors were encountered: