You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[HOLD for payment 2024-01-31] [$500] Mention - Only 3 user are scrollable when use keyboard to pick user to mention #33613
Version Number: 1.4.17-1 Reproducible in staging?: y Reproducible in production?: y 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 Expensify/Expensify Issue URL: Issue reported by: Applause - Internal Slack conversation:
Action Performed:
Precondition:
Connect the pc keyboard to mobile device
Steps:
Navigate to staging.new.expensify.com
Go to any chat
Start texting until chat is expanded
Type @ to open mention member list
Use keyboard arrows to scroll through the list
Expected Result:
User should be able to navigate to all members in the list
Actual Result:
When using keyboard arrows user is able to scroll only 3 members from the list
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
changed the title [-]Mention - Only 3 user are scrollable when use keyboard to pick user to mention[/-][+][$500] Mention - Only 3 user are scrollable when use keyboard to pick user to mention[/+]on Dec 26, 2023
Here, we're getting max arrow index from 2 factors: list size and isAutoSuggestionPickerLarge
So if isAutoSuggestionPickerLarge = false and list size > 3, this function always returns 3, ignoring list size. And this sets maxIndex of arrow focus manager to 3.
What changes do you think we should make in order to solve the problem?
arrow max index should not depend on visible size as it's scrollable
So replace this line with maxIndex: suggestionValues.suggestedMentions.length - 1
📣 @rrrshtt! 📣
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:
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.
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.
Copy the format below and paste it in a comment on this issue. Replace the placeholder text with your actual details.
Format:
Contributor details
Your Expensify account email: <REPLACE EMAIL HERE>
Upwork Profile Link: <REPLACE LINK HERE>
changed the title [-][$500] Mention - Only 3 user are scrollable when use keyboard to pick user to mention[/-][+][HOLD for payment 2024-01-31] [$500] Mention - Only 3 user are scrollable when use keyboard to pick user to mention[/+]on Jan 24, 2024
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.4.30-1 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this 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:
[@eVoloshchak] The PR that introduced the bug has been identified. Link to the PR:
[@eVoloshchak] 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:
[@eVoloshchak] 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:
[@eVoloshchak] Determine if we should create a regression test for this bug.
[@eVoloshchak] 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.
[@CortneyOfstad / @bfitzexpensify] Link the GH issue for creating/updating the regression test once above steps have been agreed upon:
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: I don't think an additional discussion is needed, this is a very minor bug
Determine if we should create a regression test for this bug.
Is it easy to test for this bug? No, this requires an Android device with a physical keyboard connected to test
Is the bug related to an important user flow? No
Is it an impactful bug? No
We don't need a regression test here, the bug is rare and isn't impactful, and it might be hard for QA to test
Activity
[-]Mention - Only 3 user are scrollable when use keyboard to pick user to mention[/-][+][$500] Mention - Only 3 user are scrollable when use keyboard to pick user to mention[/+]melvin-bot commentedon Dec 26, 2023
Job added to Upwork: https://www.upwork.com/jobs/~017bdddeb3dc37e5c7
melvin-bot commentedon Dec 26, 2023
Triggered auto assignment to @bfitzexpensify (
Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.melvin-bot commentedon Dec 26, 2023
Bug0 Triage Checklist (Main S/O)
Platformsin OP are ✅)melvin-bot commentedon Dec 26, 2023
Triggered auto assignment to Contributor-plus team member for initial proposal review - @eVoloshchak (
External)mkhutornyi commentedon Dec 26, 2023
Proposal
Please re-state the problem that we are trying to solve in this issue.
Mention - Only 3 user are scrollable when use keyboard to pick user to mention
This happens on emoji suggestion as well
What is the root cause of that problem?
App/src/libs/SuggestionUtils.js
Line 9 in 64a88e4
Here, we're getting max arrow index from 2 factors: list size and
isAutoSuggestionPickerLargeSo if
isAutoSuggestionPickerLarge= false and list size > 3, this function always returns 3, ignoring list size. And this setsmaxIndexof arrow focus manager to 3.What changes do you think we should make in order to solve the problem?
arrow max index should not depend on visible size as it's scrollable
So replace this line with
maxIndex: suggestionValues.suggestedMentions.length - 1App/src/pages/home/report/ReportActionCompose/SuggestionMention.js
Line 62 in 64a88e4
Same applies to SuggestionEmoji
rrrshtt commentedon Dec 26, 2023
Proposal
Please re-state the problem that we are trying to solve in this issue.
Suggestions stacked in 3 items with keyboard control.
What is the root cause of that problem?
App/src/libs/SuggestionUtils.js
Line 9 in 2b58e1c
App/src/pages/home/report/ReportActionCompose/SuggestionMention.js
Line 62 in 2b58e1c
The entire
function getMaxArrowIndex()is incorrect for this purpose since it's a keyboard controller.What changes do you think we should make in order to solve the problem?
We can simply use the length of suggested mentions in the keyboard controller because we only need the total number of items in the hook.
melvin-bot commentedon Dec 26, 2023
📣 @rrrshtt! 📣
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:
Format:
rrrshtt commentedon Dec 26, 2023
Contributor details
Your Expensify account email: mrishat03@gmail.com
Upwork Profile Link: https://www.upwork.com/freelancers/~012f657c01285b6cf0
42 remaining items
[-][$500] Mention - Only 3 user are scrollable when use keyboard to pick user to mention[/-][+][HOLD for payment 2024-01-31] [$500] Mention - Only 3 user are scrollable when use keyboard to pick user to mention[/+]melvin-bot commentedon Jan 24, 2024
Reviewinglabel has been removed, please complete the "BugZero Checklist".melvin-bot commentedon Jan 24, 2024
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.4.30-1 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-01-31. 🎊
For reference, here are some details about the assignees on this issue:
melvin-bot commentedon Jan 24, 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:
CortneyOfstad commentedon Jan 31, 2024
Payment Summary
@mkhutornyi (Contributor) — paid $500 via Upwork
@eVoloshchak (C+) — to be paid $500 via New Dot
CortneyOfstad commentedon Jan 31, 2024
@eVoloshchak any update on the checklist above? Thanks!
CortneyOfstad commentedon Feb 1, 2024
@eVoloshchak just bumping on the checklist so we can get this closed. Thanks!
eVoloshchak commentedon Feb 3, 2024
Is it easy to test for this bug? No, this requires an Android device with a physical keyboard connected to test
Is the bug related to an important user flow? No
Is it an impactful bug? No
We don't need a regression test here, the bug is rare and isn't impactful, and it might be hard for QA to test
eVoloshchak commentedon Feb 3, 2024
Requested the payment
JmillsExpensify commentedon Feb 3, 2024
$500 approved for @eVoloshchak based on summary above.
CortneyOfstad commentedon Feb 5, 2024
Thanks all!