-
Notifications
You must be signed in to change notification settings - Fork 3.1k
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-01-25] [$500] Workspace - Enter click does not trigger workspace remove members button #33201
Comments
Triggered auto assignment to @kevinksullivan ( |
Job added to Upwork: https://www.upwork.com/jobs/~01fd33a43f9c145685 |
Bug0 Triage Checklist (Main S/O)
|
Triggered auto assignment to Contributor-plus team member for initial proposal review - @allroundexperts ( |
ProblemProposalWorkspace - Enter click does not trigger workspace remove members Root CauseWhen enter is triggered first time the sectionlist item is unselected because there is enter key listner still active on the page. https://github.com/Expensify/App/blob/main/src/components/SelectionList/BaseSelectionList.js#L384 ChangesWe have prop |
ProposalPlease re-state the problem that we are trying to solve in this issue.Enter click does not trigger workspace remove members button What is the root cause of that problem?This is because we don't disable the Keyboard Shortcut on BaseSelectionList when a modal is opened:
When a modal is opened the active element changes to modal view, and What changes do you think we should make in order to solve the problem?We should update the line here:
to: const disableEnterShortcut = activeElement && ( _.isNull(activeElement.role) || [CONST.ROLE.BUTTON, CONST.ROLE.CHECKBOX].includes(activeElement.role)); Result:Screen.Recording.2023-12-16.at.9.27.42.PM.mov |
ProposalUpdatedAdded video demostrating result of code changes. |
ProposalPlease re-state the problem that we are trying to solve in this issue.Enter click does not trigger workspace remove members button What is the root cause of that problem?The root cause of the problem is that pressing enter after the modal is open will be listened by the App/src/components/SelectionList/BaseSelectionList.js Lines 159 to 160 in 8bef4bb
which disables when the active element is checkbox or button and which is correct but in this case What changes do you think we should make in order to solve the problem?We should exploit the correct disabling enter shourtcut here App/src/components/SelectionList/BaseSelectionList.js Lines 159 to 160 in 8bef4bb
And we should focus on the remove button whenever the modal is rendered or focused (useEffect or useFocusEffect). These will solve similar problems where we use the confirm modal.
What alternative solutions did you explore? (Optional)In |
ProposalPlease re-state the problem that we are trying to solve in this issue.
What is the root cause of that problem?
What changes do you think we should make in order to solve the problem?
What alternative solutions did you explore? (Optional)
|
ProposalPlease re-state the problem that we are trying to solve in this issue.Enter click does not trigger workspace remove members button What is the root cause of that problem?The issue arises from the fact that, when the What changes do you think we should make in order to solve the problem?To resolve the issue, we can enhance the modal's accessibility by introducing a new attribute, role, within the // Custom Backdrop
<PressableWithoutFeedback
tabIndex={0}
onPress={onClose}
role={CONST.ROLE.DIALOG}
accessibilityLabel="modal"
style={{flex: 1, backgroundColor: theme.overlay, opacity: hideBackdrop ? 0 : variables.overlayOpacity}}
/>
// Updated disableEnterShortcut logic
const disableEnterShortcut = activeElement && [CONST.ROLE.BUTTON, CONST.ROLE.CHECKBOX, CONST.ROLE.DIALOG].includes(activeElement.role); Resultmodal_press_on_enter.mp4 |
Hey @allroundexperts can you give these a review? |
📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸 |
@kevinksullivan, @allroundexperts Huh... This is 4 days overdue. Who can take care of this? |
@kevinksullivan, @allroundexperts 6 days overdue. This is scarier than being forced to listen to Vogon poetry! |
@kevinksullivan, @allroundexperts 8 days overdue is a lot. Should this be a Weekly issue? If so, feel free to change it! |
@kevinksullivan @allroundexperts this issue was created 2 weeks ago. Are we close to approving a proposal? If not, what's blocking us from getting this issue assigned? Don't hesitate to create a thread in #expensify-open-source to align faster in real time. Thanks! |
📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸 |
@kevinksullivan, @allroundexperts 12 days overdue now... This issue's end is nigh! |
📣 @shubham1206agra 🎉 An offer has been automatically sent to your Upwork account for the Reviewer role 🎉 Thanks for contributing to the Expensify app! |
📣 @ishpaul777 🎉 An offer has been automatically sent to your Upwork account for the Contributor role 🎉 Thanks for contributing to the Expensify app! Offer link |
@shubham1206agra @amyevans Sorry for my late. I`ve updated the proposal (What alternative solutions did you explore? (Optional) ) so in the future, we do not need to make any changes once the modal is opened |
Sorry @DylanDylann, your solution is still not right. |
Can you give me more details, thanks. I just tested and it works well |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.4.26-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 2024-01-25. 🎊 For reference, here are some details about the assignees on 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:
|
@shubham1206agra mind finishing out the checklist above? |
Hey @kevinksullivan, Shumbam is OOO until 29th Jan. https://expensify.slack.com/archives/C02NK2DQWUX/p1706026202997839 |
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:
|
@kevinksullivan friendly bump |
@amyevans, @kevinksullivan, @shubham1206agra, @ishpaul777 Uh oh! This issue is overdue by 2 days. Don't forget to update your issues! |
sorry for the delay, all set! |
If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!
Version Number: v1.4.11-6
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:
App should trigger remove button in popup on enter click as we do throughout the app for similar buttons
Actual Result:
App does not trigger remove button in popup for remove members on click of enter
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Add any screenshot/video evidence
Bug6310160_1702370222507.windows_chrome_-_enter_click_remove_button_issue.mp4
View all open jobs on GitHub
Upwork Automation - Do Not Edit
The text was updated successfully, but these errors were encountered: