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

[$250] Chat - Plus/FAB icon menu can't be opened by pressing Enter on keyboard #40602

Closed
2 of 6 tasks
lanitochka17 opened this issue Apr 19, 2024 · 29 comments
Closed
2 of 6 tasks
Assignees
Labels
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

@lanitochka17
Copy link

lanitochka17 commented Apr 19, 2024

If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!


Version Number: 1.4.63-7
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail: N/A
Issue reported by: Applause - Internal Team

Issue found when executing PR #40425

Action Performed:

  1. Launch new Expensify
  2. Open any chat and click on the text box for a new message
  3. Press SHIFT+TAB on the keyboard to highlight the Plus icon
  4. On the Desktop app press ENTER on the keyboard

Expected Result:

The Plus icon on chats can be highlighted and pressed using just the keyboard and TAB or SHIFT+TAB

Actual Result:

The Plus icon on chats can be highlighted on Desktop or Chrome but when pressing ENTER the menu appears and is immediately dismissed. On Safari using the keyboard and TAB or SHIFT+TAB does not get the plus icon highlighted
It's the same on the main FAB icon

Workaround:

Unknown

Platforms:

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

  • Android: Native
  • Android: mWeb Chrome
  • iOS: Native
  • iOS: mWeb Safari
  • MacOS: Chrome / Safari
  • MacOS: Desktop

Screenshots/Videos

Add any screenshot/video evidence

Bug6455110_1713544744910.Recording__827.mp4
Bug6455110_1713544744922.Recording__828.mp4

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01f7e1c8f66a91018d
  • Upwork Job ID: 1782806823766507520
  • Last Price Increase: 2024-04-24
Issue OwnerCurrent Issue Owner: @sakluger
@lanitochka17 lanitochka17 added Daily KSv2 Bug Something is broken. Auto assigns a BugZero manager. labels Apr 19, 2024
Copy link

melvin-bot bot commented Apr 19, 2024

Triggered auto assignment to @sakluger (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details. Please add this bug to a GH project, as outlined in the SO.

@lanitochka17
Copy link
Author

@sakluger FYI I haven't added the External label as I wasn't 100% sure about this issue. Please take a look and add the label if you agree it's a bug and can be handled by external contributors

@lanitochka17
Copy link
Author

We think that this bug might be related to #vip-vsp

@melvin-bot melvin-bot bot added the Overdue label Apr 22, 2024
@dragnoir
Copy link
Contributor

Proposal

Please re-state the problem that we are trying to solve in this issue.

Plus/FAB icon menu can't be opened by pressing Enter on keyboard

What is the root cause of that problem?

When the buttons are activated by pressing the 'Enter' key on the keyboard, the onPress event is triggered twice. This results in the action being executed twice—first opening and then immediately closing. This is why we observe a blurred effect and the menu appears briefly before hiding.

What changes do you think we should make in order to solve the problem?

As we do here #40642
and here #39924

We should prevent the second keyboard action here

if (event.key  ===  'Enter'  ||  event.keyCode  ===  ' ') {
  return;
}

POC:

20240422_112322.mp4

Copy link

melvin-bot bot commented Apr 22, 2024

@sakluger Whoops! This issue is 2 days overdue. Let's get this updated quick!

@sakluger
Copy link
Contributor

Asked Rory in Slack about the expected behavior here: https://expensify.slack.com/archives/C01GTK53T8Q/p1713811802815369

@melvin-bot melvin-bot bot removed the Overdue label Apr 22, 2024
@sakluger sakluger added the External Added to denote the issue can be worked on by a contributor label Apr 23, 2024
@melvin-bot melvin-bot bot changed the title Chat - Plus/FAB icon menu can't be opened by pressing Enter on keyboard [$250] Chat - Plus/FAB icon menu can't be opened by pressing Enter on keyboard Apr 23, 2024
Copy link

melvin-bot bot commented Apr 23, 2024

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

@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Apr 23, 2024
Copy link

melvin-bot bot commented Apr 23, 2024

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

@sakluger sakluger changed the title [$250] Chat - Plus/FAB icon menu can't be opened by pressing Enter on keyboard [$125] Chat - Plus/FAB icon menu can't be opened by pressing Enter on keyboard Apr 23, 2024
Copy link

melvin-bot bot commented Apr 23, 2024

Upwork job price has been updated to $125

@sakluger
Copy link
Contributor

It sounds like this same issue has already been fixed several times (ex. #40642 and
#39924). Let's make sure that whatever solution we go with is a global solution.

Accordingly, I'm going to increase the bounty back to $250.

@sakluger sakluger changed the title [$125] Chat - Plus/FAB icon menu can't be opened by pressing Enter on keyboard [$250] Chat - Plus/FAB icon menu can't be opened by pressing Enter on keyboard Apr 24, 2024
Copy link

melvin-bot bot commented Apr 24, 2024

Upwork job price has been updated to $250

@dragnoir
Copy link
Contributor

Proposal

Please re-state the problem that we are trying to solve in this issue.

Plus/FAB icon menu can't be opened by pressing Enter on keyboard

What is the root cause of that problem?

I's a bug withing react-native-web package version 0.19.9

What changes do you think we should make in order to solve the problem?

Update react-native-web package to version 0.19.11 and all the problems with keyboad enter key souble actions will be solved.

20240424_121834.mp4

@roryabraham
Copy link
Contributor

@dragnoir, thanks for your latest proposal but @bernhardoj proposed the same thing just yesterday over here, after preparing the upstream PR and getting it merged. So I'm going to just put this on HOLD for #33502 for now and let @bernhardoj finish upgrading react-native-web.

@roryabraham roryabraham changed the title [$250] Chat - Plus/FAB icon menu can't be opened by pressing Enter on keyboard [HOLD #33502][$250] Chat - Plus/FAB icon menu can't be opened by pressing Enter on keyboard Apr 24, 2024
@sakluger sakluger added Weekly KSv2 and removed Daily KSv2 Help Wanted Apply this label when an issue is open to proposals by contributors labels Apr 24, 2024
@sakluger
Copy link
Contributor

Moving to weekly while it's on hold.

@melvin-bot melvin-bot bot removed the Weekly KSv2 label May 16, 2024
@sakluger
Copy link
Contributor

@miljakljajic assigning you to help watch this issue while I'm OOO through May 31. I'll take back over if it's still open when I return.

All that needs to be done for now is to check on the hold issue #33502 weekly to see if it's made any movement.

@sakluger sakluger self-assigned this May 16, 2024
@sakluger sakluger added Weekly KSv2 and removed Daily KSv2 labels May 16, 2024
@melvin-bot melvin-bot bot added the Overdue label May 27, 2024
@melvin-bot melvin-bot bot removed the Overdue label Jun 4, 2024
@sakluger
Copy link
Contributor

sakluger commented Jun 4, 2024

Removed @miljakljajic since I'm back.

The PR linked to the hold issue is merged and on Staging. @roryabraham does that mean that we can start working on this one now, or should we wait until it's on prod?

@dragnoir
Copy link
Contributor

dragnoir commented Jun 4, 2024

@sakluger After the PR is merged, the issue is half solved. The keyboard enter key opens the Plus icon when highlighted but does not close it when highlighted. Do we need to update our proposals?

@melvin-bot melvin-bot bot added Weekly KSv2 Awaiting Payment Auto-added when associated PR is deployed to production and removed Weekly KSv2 labels Jun 4, 2024
@melvin-bot melvin-bot bot changed the title [HOLD #33502][$250] Chat - Plus/FAB icon menu can't be opened by pressing Enter on keyboard [HOLD for payment 2024-06-11] [HOLD #33502][$250] Chat - Plus/FAB icon menu can't be opened by pressing Enter on keyboard Jun 4, 2024
Copy link

melvin-bot bot commented Jun 4, 2024

The solution for this issue has been 🚀 deployed to production 🚀 in version 1.4.78-5 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 2024-06-11. 🎊

For reference, here are some details about the assignees on this issue:

  • @thesahindia requires payment through NewDot Manual Requests

Copy link

melvin-bot bot commented Jun 4, 2024

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:

  • [@thesahindia] The PR that introduced the bug has been identified. Link to the PR:
  • [@thesahindia] 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:
  • [@thesahindia] 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:
  • [@thesahindia] Determine if we should create a regression test for this bug.
  • [@thesahindia] If we decide to create a regression test for the bug, please propose the regression test steps to ensure the same bug will not reach production again.
  • [@sakluger] 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 Jun 10, 2024
@sakluger
Copy link
Contributor

@dragnoir good catch. Any idea why updating RN fixed open behavior but did not fix the close behavior?

As for payment, no payment is due for the linked PR because payment is being handled in another linked issue.

Copy link

melvin-bot bot commented Jun 11, 2024

Payment Summary

Upwork Job

BugZero Checklist (@sakluger)

  • I have verified the correct assignees and roles are listed above and updated the neccesary manual offers
  • I have verified that there are no duplicate or incorrect contracts on Upwork for this job (https://www.upwork.com/ab/applicants/1782806823766507520/hired)
  • I have paid out the Upwork contracts or cancelled the ones that are incorrect
  • I have verified the payment summary above is correct

@sakluger sakluger changed the title [HOLD for payment 2024-06-11] [HOLD #33502][$250] Chat - Plus/FAB icon menu can't be opened by pressing Enter on keyboard [$250] Chat - Plus/FAB icon menu can't be opened by pressing Enter on keyboard Jun 12, 2024
@sakluger sakluger removed the Awaiting Payment Auto-added when associated PR is deployed to production label Jun 12, 2024
@sakluger
Copy link
Contributor

Removed the payment information since no work was done specifically for this GH issue.

Waiting to find out what's going on with the behavior around closing the menu.

@sakluger
Copy link
Contributor

@dragnoir friendly bump - do you know why the close behavior wasn't fixed by updating RN?

@bernhardoj
Copy link
Contributor

@sakluger hi, I don't think it's possible to highlight the FAB anymore to close it. Please see the video below. The TAB-bing focus is trapped within the FAB menu (it's the behavior for all popover/modal)

Screen.Recording.2024-06-15.at.09.54.46.mov

@melvin-bot melvin-bot bot added the Overdue label Jun 17, 2024
Copy link

melvin-bot bot commented Jun 17, 2024

@sakluger, @thesahindia Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@sakluger
Copy link
Contributor

Hey @bernhardoj, good point - thanks for pointing that out! We can close this issue out now.

Since the linked PR was paid out on another issue, no payment is due here. For any questions, please bring it up in Slack. Thanks!

@melvin-bot melvin-bot bot removed the Overdue label Jun 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
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
Status: No status
Development

No branches or pull requests

7 participants