-
-
Notifications
You must be signed in to change notification settings - Fork 651
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
Fix issue with certain SECTION elements not being recognized as editable controls in Visual Studio Code #17573
base: rc
Are you sure you want to change the base?
Conversation
…ble controls in Visual Studio Code
WalkthroughThe pull request modifies the Changes
Assessment against linked issues
Possibly related PRs
Suggested labels
Suggested reviewers
Tip CodeRabbit's docstrings feature is now available as part of our Early Access Program! Simply use the command 📜 Recent review detailsConfiguration used: .coderabbit.yml 📒 Files selected for processing (1)
🧰 Additional context used📓 Path-based instructions (1)source/appModules/code.py (2)Pattern Pattern 🔇 Additional comments (1)source/appModules/code.py (1)
The updated logic excludes objects that are not explicitly recognized as As a follow-up, do you want me to create a test script or add a test to verify that potential roles/states are correctly handled? ✅ Verification successfulEditable state handling is consistent with the codebase Based on the codebase analysis, the current implementation in Visual Studio Code's appModule correctly handles editable states by checking both the role and state: if obj.role != controlTypes.Role.EDITABLETEXT and controlTypes.State.EDITABLE not in obj.states: This approach is consistent with how editability is checked throughout the codebase:
The implementation ensures proper coverage by:
🏁 Scripts executedThe following scripts were executed for the analysis: Script: #!/bin/bash
# Description: Verify references to 'EDITABLETEXT' or 'EDITABLE' across the codebase
# This helps confirm that all possible roles/states are accounted for consistently.
rg -A 5 "Role\.EDITABLETEXT"
rg -A 5 "State\.EDITABLE"
Length of output: 39583 Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
Documentation and Community
|
I hope this fix will be included in 2024.4.2, it's unlikely to bring additional regression. |
We try to avoid any risky and unnecessary changes. Given this issue is a p4 I don't think we will accept it in 2024.4.2 |
Hi @seanbudd I see you added the 'needs-product-decision' label. Do I need to wait for NV Access's decision or feedback from the community, or do you want me to open a new PR for master? |
Link to issue number:
closed #17525
Summary of the issue:
In Visual Studio Code, NVDA was unable to correctly read certain non-standard editable text controls, specifically those with the
SECTION
role that have an editable state. These controls could be edited by users but were not recognized asEDITABLETEXT
by NVDA.Description of user-facing changes:
This fix ensures that NVDA correctly recognizes and reads non-standard editable text controls, such as those with the
SECTION
role and an editable state, in Visual Studio Code.Description of development approach:
In #16248, we introduced support for text-review commands for objects in Visual Studio Code. Initially, we used
obj.role == controlTypes.Role.EDITABLETEXT
as the check for editable text fields. However, this caused a regression for some controls, specificallySECTION
elements in VS Code that were editable but did not have theEDITABLETEXT
role. These controls have an editable state but were overlooked by NVDA. This fix updates the logic to account for such cases, ensuring these elements are treated as editable controls.Testing strategy:
Manual testing
Known issues with pull request:
no known issues
Code Review Checklist:
Summary by CodeRabbit