Skip to content
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-02-18] [$4000] mWeb/Chrome - Payment - The keyboard overlaps the "Make default payment method" button #14003

Closed
1 task
kbecciv opened this issue Jan 5, 2023 · 47 comments
Assignees
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 External Added to denote the issue can be worked on by a contributor

Comments

@kbecciv
Copy link

kbecciv commented Jan 5, 2023

If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!


Action Performed:

Preconditional: account should have 2 or more payment method

  1. Go to URL https://staging.new.expensify.com/
  2. Log in any account
  3. Go to Settings -> Payment
  4. Tap on the bank account that doesn't have the "default" label
  5. Tap on "Make default payment method" button

Expected Result:

The keyboard NOT overlaps the "Make default payment method" button

Actual Result:

The keyboard overlaps the "Make default payment method" button

Workaround:

Unknown

Platforms:

Which of our officially supported platforms is this issue occurring on?

  • Android / Chrome

Version Number: 1.2.48.2

Reproducible in staging?: Yes

Reproducible in production?: Yes

Email or phone of affected tester (no customers):

Logs: https://stackoverflow.com/c/expensify/questions/4856

Notes/Photos/Videos: Any additional supporting documentation

Expensify/Expensify Issue URL:

Issue reported by: Applause - Internal Team

Slack conversation:

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01d2060c28a0b19842
  • Upwork Job ID: 1613576223743619072
  • Last Price Increase: 2023-01-26
@kbecciv kbecciv added Daily KSv2 Bug Something is broken. Auto assigns a BugZero manager. labels Jan 5, 2023
@melvin-bot melvin-bot bot locked and limited conversation to collaborators Jan 5, 2023
@kevinksullivan
Copy link
Contributor

The screenshot isn't showing my keyboard, but this flow doesn't seem broken to me when I test it out. @kbecciv do you have a screenshot or video that shows this is reproducible?

IMG_2A0392DE572D-1

@kbecciv
Copy link
Author

kbecciv commented Jan 6, 2023

Checking with team, get back to you shortly

@jasperhuangg
Copy link
Contributor

jasperhuangg commented Jan 6, 2023

@kevinksullivan @kbecciv

It looks like we didn't anticipate how tall the software keyboard would be, something unique about the Android Chrome keyboard is that it includes the numbers + recommended autofill text above it which adds a LOT of height. This doesn't really appear on other platforms.

Screen Shot 2023-01-06 at 12 20 09 PM Screen Shot 2023-01-06 at 12 21 28 PM

You can see it pretty clearly above, underneath the autofill recommendations (pictured on the left) is the rest of the "Make default payment method" button and the margins below it.

I think all that needs to happen here is we add some extra padding with the keyboardVerticalOffset prop on the KeyboardAvoidingView wrapping this on Android Chrome to account for the height of the autofill recommendations row.

However, to do this, we need a way to detect if we're currently on Android Chrome, which I don't think currently exists. Do we know if this problem crops up in other views on Android Chrome?

cc @tgolen

@kbecciv
Copy link
Author

kbecciv commented Jan 6, 2023

@jasperhuangg Please, attached the video.

Record_2023-01-06-09-36-51.mp4

@tgolen
Copy link
Contributor

tgolen commented Jan 6, 2023

we need a way to detect if we're currently on Android Chrome

We don't have this, no. I'd prefer if we could find a solution that works on all mobileWeb. I think that it would probably be fine to add some more padding regardless of the platform. I think it could also fix this issue for example: #13633

@melvin-bot melvin-bot bot added the Overdue label Jan 9, 2023
@jasperhuangg
Copy link
Contributor

jasperhuangg commented Jan 9, 2023

@tgolen thanks for the clarification here

I'd prefer if we could find a solution that works on all mobileWeb.

yeah that makes sense, I'll quickly spin up a PR adding some padding and we can see how it looks on all platforms, then we can see how Design (Shawn 😅 ) feels about it?

My only concern is that the extra padding might look jank on iOS, but we'll see in the PR

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Jan 9, 2023
@jasperhuangg
Copy link
Contributor

Haven't had a chance to look into this yet myself, still been trying to figure out quirks with #13986, going to apply the External label to see if any contributors have ideas.

@melvin-bot melvin-bot bot removed the Overdue label Jan 12, 2023
@jasperhuangg jasperhuangg added External Added to denote the issue can be worked on by a contributor Help Wanted Apply this label when an issue is open to proposals by contributors and removed Engineering labels Jan 12, 2023
@melvin-bot melvin-bot bot unlocked this conversation Jan 12, 2023
@melvin-bot melvin-bot bot changed the title mWeb/Chrome - Payment - The keyboard overlaps the "Make default payment method" button [$1000] mWeb/Chrome - Payment - The keyboard overlaps the "Make default payment method" button Jan 12, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jan 12, 2023

Job added to Upwork: https://www.upwork.com/jobs/~01d2060c28a0b19842

@melvin-bot
Copy link

melvin-bot bot commented Jan 12, 2023

Current assignee @kevinksullivan is eligible for the External assigner, not assigning anyone new.

@melvin-bot
Copy link

melvin-bot bot commented Jan 12, 2023

Triggered auto assignment to Contributor-plus team member for initial proposal review - @aimane-chnaif (External)

@melvin-bot
Copy link

melvin-bot bot commented Jan 12, 2023

Current assignee @jasperhuangg is eligible for the External assigner, not assigning anyone new.

@melvin-bot melvin-bot bot added the Overdue label Jan 16, 2023
@jasperhuangg jasperhuangg added Weekly KSv2 and removed Daily KSv2 labels Jan 16, 2023
@MelvinBot
Copy link

@Ollyws, @kevinksullivan, @jasperhuangg, @aimane-chnaif Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@jasperhuangg
Copy link
Contributor

The PR is super duper close to getting merged! There's just a few last minute comments that need to be addressed. Not overdue!

@melvin-bot melvin-bot bot added Weekly KSv2 Awaiting Payment Auto-added when associated PR is deployed to production and removed Daily KSv2 labels Feb 11, 2023
@melvin-bot melvin-bot bot changed the title [$4000] mWeb/Chrome - Payment - The keyboard overlaps the "Make default payment method" button [HOLD for payment 2023-02-18] [$4000] mWeb/Chrome - Payment - The keyboard overlaps the "Make default payment method" button Feb 11, 2023
@melvin-bot melvin-bot bot removed the Reviewing Has a PR in review label Feb 11, 2023
@MelvinBot
Copy link

Reviewing label has been removed, please complete the "BugZero Checklist".

@MelvinBot
Copy link

The solution for this issue has been 🚀 deployed to production 🚀 in version 1.2.69-2 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-02-18. 🎊

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.

  • External issue reporter
  • Contributor that fixed the issue
  • Contributor+ that helped on the issue and/or PR

As a reminder, here are the bonuses/penalties that should be applied for any External issue:

  • Merged PR within 3 business days of assignment - 50% bonus
  • Merged PR more than 9 business days after assignment - 50% penalty

@MelvinBot
Copy link

MelvinBot commented Feb 11, 2023

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:

  • [@aimane-chnaif / @jasperhuangg] The PR that introduced the bug has been identified. Link to the PR:
  • [@aimane-chnaif / @jasperhuangg] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment:
  • [@aimane-chnaif / @jasperhuangg] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion:
  • [@Ollyws] Propose regression test steps to ensure the same bug will not reach production again.
  • [@kevinksullivan] Link the GH issue for creating/updating the regression test once above steps have been agreed upon:

@melvin-bot melvin-bot bot added Daily KSv2 and removed Weekly KSv2 labels Feb 17, 2023
@aimane-chnaif
Copy link
Contributor

@Ollyws please propose regression test steps

I don't think any PR caused regression. This is barely noticeable to users and hard to catch on mWeb while implementing and testing this page.

@Ollyws
Copy link
Contributor

Ollyws commented Feb 20, 2023

Regression Test Proposal

  1. Go to Settings -> Payment
  2. Tap on the bank account that doesn't have the "default" label
  3. Tap on "Make default payment method" button
  4. Ensure the keyboard does not overlap the "Make default payment method" button.

Do we agree 👍 or 👎 ?

@melvin-bot melvin-bot bot added the Overdue label Feb 22, 2023
@kevinksullivan
Copy link
Contributor

@aimane-chnaif @Ollyws sent you both offers. Can you accept so I can pay this out? Thanks!

@melvin-bot melvin-bot bot removed the Overdue label Feb 22, 2023
@Ollyws
Copy link
Contributor

Ollyws commented Feb 22, 2023

@kevinksullivan Accepted, thanks!

@MelvinBot
Copy link

📣 @Ollyws! 📣

Hey, it seems we don’t have your contributor details yet! You'll only have to do this once, and this is how we'll hire you on Upwork.
Please follow these steps:

  1. Get the email address used to login to your Expensify account. If you don't already have an Expensify account, create one here. If you have multiple accounts (e.g. one for testing), please use your main account email.
  2. Get the link to your Upwork profile. It's necessary because we only pay via Upwork. You can access it by logging in, and then clicking on your name. It'll look like this. If you don't already have an account, sign up for one here.
  3. Copy the format below and paste it in a comment on this issue. Replace the placeholder text with your actual details.

Screen Shot 2022-11-16 at 4 42 54 PM

Format:

Contributor details
Your Expensify account email: <REPLACE EMAIL HERE>
Upwork Profile Link: <REPLACE LINK HERE>

@MelvinBot
Copy link

✅ Contributor details stored successfully. Thank you for contributing to Expensify!

@MelvinBot
Copy link

📣 @MelvinBot! 📣

Hey, it seems we don’t have your contributor details yet! You'll only have to do this once, and this is how we'll hire you on Upwork.
Please follow these steps:

  1. Get the email address used to login to your Expensify account. If you don't already have an Expensify account, create one here. If you have multiple accounts (e.g. one for testing), please use your main account email.
  2. Get the link to your Upwork profile. It's necessary because we only pay via Upwork. You can access it by logging in, and then clicking on your name. It'll look like this. If you don't already have an account, sign up for one here.
  3. Copy the format below and paste it in a comment on this issue. Replace the placeholder text with your actual details.

Screen Shot 2022-11-16 at 4 42 54 PM

Format:

Contributor details
Your Expensify account email: <REPLACE EMAIL HERE>
Upwork Profile Link: <REPLACE LINK HERE>

@kevinksullivan
Copy link
Contributor

Also can we confirm whether this is necessary or not?

[@aimane-chnaif / @jasperhuangg] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion:

@melvin-bot melvin-bot bot added the Overdue label Feb 27, 2023
@MelvinBot
Copy link

@Ollyws, @kevinksullivan, @jasperhuangg, @aimane-chnaif Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@jasperhuangg
Copy link
Contributor

jasperhuangg commented Feb 27, 2023

@kevinksullivan Thanks for keeping things moving!

I don't entirely think this is necessary, reason being the solution for this involved updating a reusable component, meaning if we reuse that component in the future then the problem should be avoided.

I think adding integration tests here should suffice.

@melvin-bot melvin-bot bot removed the Overdue label Feb 27, 2023
@kevinksullivan
Copy link
Contributor

Paid. Thanks everyone!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 External Added to denote the issue can be worked on by a contributor
Projects
None yet
Development

No branches or pull requests