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-10-23] [HOLD for payment 2023-10-23] [HOLD for payment 2023-10-20] [HOLD for payment 2023-10-20] [$500] Dev: Web - focus lose on click ctrl+shift+k again #27860

Closed
1 of 6 tasks
kbecciv opened this issue Sep 20, 2023 · 40 comments
Assignees
Labels
Awaiting Payment Auto-added when associated PR is deployed to production External Added to denote the issue can be worked on by a contributor Weekly KSv2

Comments

@kbecciv
Copy link

kbecciv commented Sep 20, 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:

  1. Press ctrl+shift+k to open Send message
  2. Again click press ctrl+shift+k

Expected Result:

Input field should be focused

Actual Result:

Input field not focused

Workaround:

Unknown

Platforms:

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

  • Android / native
  • Android / Chrome
  • iOS / native
  • iOS / Safari
  • MacOS / Chrome / Safari
  • MacOS / Desktop

Version Number: Dev 1.3.72.4
Reproducible in staging?: n
Reproducible in production?: n
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

Screen.Recording.2023-09-20.at.6.11.41.PM.mov

Expensify/Expensify Issue URL:
Issue reported by: @gadhiyamanan
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1694785511995319

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~019ec26b7124d8b07f
  • Upwork Job ID: 1704481362907553792
  • Last Price Increase: 2023-10-04
  • Automatic offers:
    • bernhardoj | Contributor | 27118476
@kbecciv kbecciv added the External Added to denote the issue can be worked on by a contributor label Sep 20, 2023
@melvin-bot melvin-bot bot changed the title Dev: Web - focus lose on click ctrl+shift+k again [$500] Dev: Web - focus lose on click ctrl+shift+k again Sep 20, 2023
@melvin-bot
Copy link

melvin-bot bot commented Sep 20, 2023

Job added to Upwork: https://www.upwork.com/jobs/~019ec26b7124d8b07f

@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Sep 20, 2023
@melvin-bot
Copy link

melvin-bot bot commented Sep 20, 2023

Triggered auto assignment to @garrettmknight (External), see https://stackoverflow.com/c/expensify/questions/8582 for more details.

@melvin-bot melvin-bot bot added the Daily KSv2 label Sep 20, 2023
@melvin-bot
Copy link

melvin-bot bot commented Sep 20, 2023

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

@kbecciv
Copy link
Author

kbecciv commented Sep 20, 2023

Linking a recent issue #17482

@bernhardoj
Copy link
Contributor

Proposal

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

Clicking ctr+shift+k shortcut twice will blur the Send message page search input.

What is the root cause of that problem?

Pressing the shortcut will navigate to the Send message page. Every time we are doing navigation, we are blurring anything.

DomUtils.blurActiveElement();

This issue was previously fixed here by preventing navigating to the same page by comparing the current route and the route we want to navigate to.

if (Navigation.isActiveRoute(ROUTES.NEW)) {
return;
}
Navigation.navigate(ROUTES.NEW);

However, if we open Send message (with policy room permission), the route is either /new/chat or /new/room but we are comparing it to /new (this is to fix #27710).

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

Remove the blurring of everything every time we call navigate, then we can also remove the if code to prevent calling navigate to the same page.

// A pressed navigation button will remain focused, keeping its tooltip visible, even if it's supposed to be out of view.
// To prevent that we blur the button manually (especially for Safari, where the mouse leave event is missing).
// More info: https://github.com/Expensify/App/issues/13146
DomUtils.blurActiveElement();

This code was previously removed in this PR but looks like there is some bad merge that reintroduced it (most likely from this PR).

@melvin-bot melvin-bot bot added the Overdue label Sep 22, 2023
@garrettmknight
Copy link
Contributor

@sobitneupane either of these proposals look good?

@sobitneupane
Copy link
Contributor

@gadhiyamanan @garrettmknight I was unable to replicate the issue. Is it still reproducible?

@Pluto0104
Copy link
Contributor

@sobitneupane this issue is still reproducible under the beta feature. if you don't enable the beta feature, it may be not reproducible.

@melvin-bot
Copy link

melvin-bot bot commented Sep 27, 2023

📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸

@melvin-bot melvin-bot bot added the Overdue label Sep 29, 2023
@melvin-bot
Copy link

melvin-bot bot commented Oct 2, 2023

@garrettmknight, @sobitneupane Huh... This is 4 days overdue. Who can take care of this?

@sobitneupane
Copy link
Contributor

this issue is still reproducible under the beta feature. if you don't enable the beta feature, it may be not reproducible.

Which beta feature are we talking about?

@melvin-bot melvin-bot bot removed the Overdue label Oct 3, 2023
@Pluto0104
Copy link
Contributor

If you enabled beta feature, RHP might look like this:

image

@sobitneupane
Copy link
Contributor

This code was previously removed in this PR but looks like there is some bad merge that reintroduced it (most likely from this #16581).

@bernhardoj Why was the code removed in the linked PR?

The code was introduced to tackle #13146 issue. Won't removing the code cause the regression?

@bernhardoj
Copy link
Contributor

bernhardoj commented Oct 4, 2023

@sobitneupane #13146 issue handles a couple of issues and DomUtils.blurActiveElement (and also setting all tooltip as focusable) is specifically made to handle the issue where the tooltip is stuck when we navigate to another page, only on Safari.

(on main)

Screen.Recording.2023-10-04.at.15.25.28.mov

We considered it a hack, so we decided to remove it. It brings more issues than the fix. One of them is this. I told them that it's safe to remove it here, but looks like they miss it, so I propose it here again.

@melvin-bot
Copy link

melvin-bot bot commented Oct 4, 2023

📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸

@melvin-bot melvin-bot bot added the Overdue label Oct 6, 2023
@garrettmknight
Copy link
Contributor

@sobitneupane what do you think?

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Oct 6, 2023
@melvin-bot melvin-bot bot added Weekly KSv2 and removed Weekly KSv2 labels Oct 13, 2023
@melvin-bot melvin-bot bot changed the title [HOLD for payment 2023-10-20] [$500] Dev: Web - focus lose on click ctrl+shift+k again [HOLD for payment 2023-10-20] [HOLD for payment 2023-10-20] [$500] Dev: Web - focus lose on click ctrl+shift+k again Oct 13, 2023
@melvin-bot
Copy link

melvin-bot bot commented Oct 13, 2023

The solution for this issue has been 🚀 deployed to production 🚀 in version 1.3.83-11 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-10-20. 🎊

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

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

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

@melvin-bot melvin-bot bot added Weekly KSv2 and removed Weekly KSv2 labels Oct 16, 2023
@melvin-bot melvin-bot bot changed the title [HOLD for payment 2023-10-20] [HOLD for payment 2023-10-20] [$500] Dev: Web - focus lose on click ctrl+shift+k again [HOLD for payment 2023-10-23] [HOLD for payment 2023-10-20] [HOLD for payment 2023-10-20] [$500] Dev: Web - focus lose on click ctrl+shift+k again Oct 16, 2023
@melvin-bot
Copy link

melvin-bot bot commented Oct 16, 2023

The solution for this issue has been 🚀 deployed to production 🚀 in version 1.3.84-10 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-10-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.

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

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

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

@melvin-bot melvin-bot bot added Weekly KSv2 and removed Weekly KSv2 labels Oct 16, 2023
@melvin-bot melvin-bot bot changed the title [HOLD for payment 2023-10-23] [HOLD for payment 2023-10-20] [HOLD for payment 2023-10-20] [$500] Dev: Web - focus lose on click ctrl+shift+k again [HOLD for payment 2023-10-23] [HOLD for payment 2023-10-23] [HOLD for payment 2023-10-20] [HOLD for payment 2023-10-20] [$500] Dev: Web - focus lose on click ctrl+shift+k again Oct 16, 2023
@melvin-bot
Copy link

melvin-bot bot commented Oct 16, 2023

The solution for this issue has been 🚀 deployed to production 🚀 in version 1.3.84-10 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-10-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.

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

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

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

@melvin-bot melvin-bot bot added Daily KSv2 Overdue and removed Weekly KSv2 labels Oct 20, 2023
@melvin-bot
Copy link

melvin-bot bot commented Oct 23, 2023

@garrettmknight, @nkuoch, @sobitneupane, @bernhardoj Whoops! This issue is 2 days overdue. Let's get this updated quick!

@garrettmknight
Copy link
Contributor

garrettmknight commented Oct 23, 2023

Summary of payments for this issue:

Upwork job: https://www.upwork.com/jobs/~019ec26b7124d8b07f

@melvin-bot melvin-bot bot removed the Overdue label Oct 23, 2023
@garrettmknight
Copy link
Contributor

@gadhiyamanan offer out to you - accept and I'll pay.

@gadhiyamanan
Copy link
Contributor

@garrettmknight offer accepted, thanks!

@garrettmknight
Copy link
Contributor

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:

  • [@sobitneupane ] The PR that introduced the bug has been identified. Link to the PR:
  • [@sobitneupane ] 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:
  • [@sobitneupane ] 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:
  • [@sobitneupane ] Determine if we should create a regression test for this bug.
  • [@sobitneupane ] 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.
  • [@garrettmknight] Link the GH issue for creating/updating the regression test once above steps have been agreed upon:

@garrettmknight
Copy link
Contributor

@sobitneupane please complete the checklist and request payment.

@garrettmknight garrettmknight added Weekly KSv2 and removed Daily KSv2 labels Oct 24, 2023
@sobitneupane
Copy link
Contributor

sobitneupane commented Oct 30, 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:

  • [@sobitneupane ] The PR that introduced the bug has been identified. Link to the PR:

The change resulting this issue was introduced by #14048 PR which was later removed by #16052 PR. But was later reintroduced probably due to some merge conflicts.

  • [@sobitneupane ] 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:
  • [@sobitneupane ] 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:

There are multiple PRs involved. As this feature was newly introduced, probably shortcuts were not tested.

  • [@sobitneupane ] Determine if we should create a regression test for this bug.

Yes.

  • [@sobitneupane ] 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.

#27860 (comment)

@sobitneupane
Copy link
Contributor

Regression Test Proposal

  • Press CTRL+K
  • Verify a new chat opens with the search input focused
  • Press CTRL+K once again
  • Verify the search input is still focused

Do we agree 👍 or 👎

@sobitneupane
Copy link
Contributor

#27860 (comment)

Requested payment on newDot.

@JmillsExpensify
Copy link

$750 payment approved for @sobitneupane based on this comment.

@garrettmknight
Copy link
Contributor

All set, closing.

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 External Added to denote the issue can be worked on by a contributor Weekly KSv2
Projects
None yet
Development

No branches or pull requests

9 participants