Fix screen reader focus not moving to opened menu on mWeb#81390
Fix screen reader focus not moving to opened menu on mWeb#81390madmax330 merged 10 commits intoExpensify:mainfrom
Conversation
Codecov Report❌ Looks like you've decreased code coverage for some files. Please write tests to increase, or at least maintain, the existing level of code coverage. See our documentation here for how to interpret this table.
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d5c8753c7c
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
The lint failure is not related to our changes, btw. |
|
@suneox, kindly bump. thanks. |
Sure, I’m on it. |
|
@codex review |
|
@marufsharifi Could you please also verify the recording on the other pages described in the OP on web platform? |
|
Codex Review: Didn't find any major issues. Chef's kiss. ℹ️ About Codex in GitHubCodex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback". |
|
I found another issue on mWeb/Safari where, if a menu item already has focus, tapping once on the bottom navigation causes the previous item to regain focus instead of moving focus to the new item. But this also happens on the latest main, so it’s not related to this PR. I’m just noting this bug. It won’t be addressed in this PR, and we should open a separate issue for it Focus issue on latest mainScreenRecording_02-11-2026.18-36-04_1.mp4cc: @marufsharifi |
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppscreen-20260212-000015.mp4screen-20260211-232034.mp4Android: mWeb Chromescreen-20260212-000618.mp4screen-20260212-000427.mp4iOS: HybridAppScreenRecording_02-11-2026.18-24-29_1.mp4iOS: mWeb SafariScreenRecording_02-11-2026.18-59-12_1.mp4MacOS: Chrome / SafariNot available modal overlay navigation bar |
JmillsExpensify
left a comment
There was a problem hiding this comment.
PR aligns with product behavior and spec.
|
1. On Settings - About - Keyboard Shortcuts 1.mov2. On Settings - Save the world - I know a teacher 2.mov3. On Settings - Save the world - I am a teacher 3.mov5. On Settings - Preferences - Language 5.mov6. On Settings - Preferences - Priority mode 6.mov7. On Settings - Security 7.mov9. On Settings - Security - Close account 9.mov10. On Settings - Security - Two-factor authentication 10.mov11. On Settings - Profile - Display name 11.mov12. On Settings - Profile - Contact methods 12.mov13. On Settings - Profile - Pronouns 13.mov14. On Settings - Profile - Share Code 14.mov15. On Settings - Profile - Legal Name 15.mov16. On Settings - Profile - DOB 16.mov17. On Settings - Profile - Phone number 17.mov18. On Settings - Profile - Address 18.mov20. On Workspaces - Duplicate Workspaces 20.mov21. On Workspaces - Delete Workspace 21.mov22. On Workspaces - Overview - Workspace Name 22.mov24. On Workspace - Categories - Add Category 24.mov25. On Workspace - Categories - Settings 25.mov26. On Workspace - Workflows - Edit Approval Workflow 26.mov28: On Workspace - Workflows - Approver 28.mov28. On Workspace - Rules - Cash Expense Default d28.mov29. On Workspaces - Distance Rates - Rate Details 29.mov30. On Workspaces - Expensify Card - Add bank account 30.mov31. On Workspaces - Expensify Card - Bank info 31.mov32. On Workspaces - Expensify Card - Confirm currency and country 32.mov33. On Workspace - Company Card - Add Cards 33.mov34. On Workspace - Create Workspace - Confirm Workspace 34.mov35. On Workspace - Create Workspace - Invite new members 35.mov36. On Workspace - Create Workspace - Default Currency 36.mov40. On Track Distance 40.mov41. On Track Distance - Choose Recipient 41.mov42. On Send Invoice 42.mov43. On Wallet - Add bank account 43.mov44. On Create Expense flow 44.mov45. On Paid Expense details flow 45.mov46. On Reports flow 46.mov47. On Chat flow 47.mov |
@suneox, uploaded record for all 47 pages. thanks. |
|
@marufsharifi There's just one issue left regarding our own guideline mentioned above. Also, could you please merge the latest main to resolve the ESLint failure? |
|
@suneox, lint is fixed. Could you please take another look? thanks. |
|
@Suneo, I've addressed all your comment please take another look. thanks. |
|
@madmax330, kindly bump, thanks. |
|
🚧 @madmax330 has triggered a test Expensify/App build. You can view the workflow run here. |
|
🧪🧪 Use the links below to test this adhoc build on Android, iOS, and Web. Happy testing! 🧪🧪
|
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🚀 Deployed to staging by https://github.com/madmax330 in version: 9.3.25-0 🚀
|
|
🚀 Deployed to production by https://github.com/puneetlath in version: 9.3.25-13 🚀
|
Explanation of Change
Ensure screen reader focus shifts correctly when menus open across pages.
Fixed Issues
$ #74858
PROPOSAL: #74858 (comment)
Tests
settings > aboutOffline tests
Same as the tests.
QA Steps
Same as the tests.
// TODO: These must be filled out, or the issue title must include "[No QA]."
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectioncanBeMissingparam foruseOnyxtoggleReportand notonIconClick)src/languages/*files and using the translation methodSTYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))npm run compress-svg)Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.ScrollViewcomponent to make it scrollable when more elements are added to the page.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Android: Native
android-native-bottom-tabs-not-announce.mp4
Android: mWeb Chrome
android-mweb-bottom-tabs-not-announce.mp4
iOS: Native
Screen.Recording.2026-02-08.at.3.16.57.PM.mov
iOS: mWeb Safari
Screen.Recording.1404-11-19.at.5.38.54.PM.mov
MacOS: Chrome / Safari
Screen.Recording.2026-02-08.at.1.15.24.PM.mov