-
Notifications
You must be signed in to change notification settings - Fork 3.1k
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
Clean up IOUAmount page #2723
Clean up IOUAmount page #2723
Conversation
Got a request in the original issue to add a feature: https://github.com//Expensify/issues/163041#issuecomment-834285328 Putting on hold while I take care of that |
Alright, ready to be reviewed! @stitesExpensify |
Brandon is OOO today, and since it's a daily I'm going to trigger auto-assigner again |
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.
I think we should avoid the setTimeout call if possible
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.
Looking good, just one comment and one question!
Thanks for the comments, updated! I was also able to find a cleaner way to handle the focus cc @Jag96 @jasperhuangg |
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.
Looks good!
Fixed merge conflicts! |
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.
…Expensify.cash into jack-cleanUpIOUAmount
…Expensify.cash into jack-cleanUpIOUAmount
Removed the accidental podfile 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.
Hm, I don't know where I said this before, I swear I said it, but can't find it now :(
I'm not a fan of these files being split into index/index.native like they are currently. This will be the first time that an entire page is split between platforms, and it really creates a lot of repeated code. I think a solution should be found that only abstracts the absolute least amount of logic in the platform-specific files as possible. This will decrease the cost to maintain these files in the future as it's not very clear what logic is different between the two files.
I agree with you on all those points, the only logic difference in the files was the keydown event handler for Web/Desktop, which was having |
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.
Ah, that looks great! Thank you
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.
I'm seeing another crash on iOS after step 4 Enter in any amount and hit next
. Do you see the same @thienlnam?
TypeError: undefined is not an object (evaluating 'option.participantsList.length')
This error is located at:
in OptionRow
in OptionRow (at OptionsList.js:160)
Going to self merge since we got 2 approvals |
Details
Fixed Issues
Fixes https://github.com/Expensify/Expensify/issues/163041
Tests / QA
Go to someone's chat and click the + button and hit 'Request Money'
(On Web/Desktop), make sure the amount field is focused on (entering any text automatically adds it and the cursor is blinking)

(On Web/Desktop) Enter any amount and hit the 'Enter' button on your keyboard. Make sure that it takes you to the next screen.
(Other platforms) Enter in any amount and hit next
Go back and ensure that you still see the amount you entered before
Tested On
Screenshots
Web
Mobile Web
Desktop
iOS
Android