-
Notifications
You must be signed in to change notification settings - Fork 2.8k
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 2024-02-22][$500] The back and forward keys are not working properly for navigating back to a characters #36059
Comments
Job added to Upwork: https://www.upwork.com/jobs/~01a4bbd031958bf120 |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @jjcoffee ( |
Triggered auto assignment to @miljakljajic ( |
ProposalPlease re-state the problem that we are trying to solve in this issue.The back and forward keys are not working properly for navigating back to a characters What is the root cause of that problem?The main problem with issue is that on EmojiPickerMenu screen we are using useArrowKeyFocusManager which is disabled using arrow keys when index of element is -1 What changes do you think we should make in order to solve the problem?To fix this issue we can update useArrowKeyFocusManager and add new param App/src/components/EmojiPicker/EmojiPickerMenu/index.js Lines 103 to 111 in 82fa188
And then we need update Add Update arrowConfig
App/src/hooks/useArrowKeyFocusManager.ts Lines 47 to 53 in 61287bc
And update all For example
What alternative solutions did you explore? (Optional)NA |
ProposalPlease re-state the problem that we are trying to solve in this issue.The back and forward keys are not working properly for navigating back to a characters What is the root cause of that problem?Inside What changes do you think we should make in order to solve the problem?We need to disable the horizontal key presses when input is focused and we have some text in input. This way we can still use left/right arrow keys if the input is empty. Steps to solve the bug:
const [inputText, setInputText] = useState('');
disableHorizontalKeys?:boolean;
disableHorizontalKeys = false,
const arrowConfigHorizontal = useMemo(
() => ({
excludedNodes: shouldExcludeTextAreaNodes ? ['TEXTAREA'] : [],
isActive: isActive && !disableHorizontalKeys,
}),
[isActive, shouldExcludeTextAreaNodes, disableHorizontalKeys],
);
useKeyboardShortcut(CONST.KEYBOARD_SHORTCUTS.ARROW_LEFT, arrowLeftCallback, arrowConfigHorizontal);
useKeyboardShortcut(CONST.KEYBOARD_SHORTCUTS.ARROW_RIGHT, arrowRightCallback, arrowConfigHorizontal);
disableHorizontalKeys: isFocused && inputText.length, Resultarrow_keys.mp4 |
Reviewing tomorrow! |
While both proposals are similar, I prefer @Krishna2323's proposal as it offers a much clearer solution. One thing though, I think we're not so bothered about the right arrow key navigating from the text input to the first emoji, so we may be able to just leave out the 🎀👀🎀 C+ reviewed |
Triggered auto assignment to @amyevans, see https://stackoverflow.com/c/expensify/questions/7972 for more details. |
Assigning @Krishna2323, and +1 to @jjcoffee's note in #36059 (comment) |
📣 @jjcoffee 🎉 An offer has been automatically sent to your Upwork account for the Reviewer role 🎉 Thanks for contributing to the Expensify app! |
📣 @Krishna2323 🎉 An offer has been automatically sent to your Upwork account for the Contributor role 🎉 Thanks for contributing to the Expensify app! Offer link |
@jjcoffee PR ready for review :) |
PR was deployed to production on 15th Feb, this should be ready for payments tomorrow, I guess. cc: @miljakljajic |
Regression Test Proposal
Do we agree 👍 or 👎 |
@amyevans, @jjcoffee, @miljakljajic, @Krishna2323 Eep! 4 days overdue now. Issues have feelings too... |
@miljakljajic can you pls start the payment process? |
@miljakljajic Friendly bump for payment 🙇 |
Paid - so sorry for the hold up |
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.38-0
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 team
Slack conversation:
Action Performed:
Expected Result:
The back and forward keys should navigate characters entered in the emoji picker's search field
Actual Result:
The back and forward keys are not working properly for navigating back to a character while in use
Workaround:
unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Add any screenshot/video evidence
Bug6370743_1707330233368.2024-02-07_22-24-58.mp4
View all open jobs on GitHub
Upwork Automation - Do Not Edit
The text was updated successfully, but these errors were encountered: