-
-
Notifications
You must be signed in to change notification settings - Fork 654
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
Merge master to beta #16743
Merged
Merge master to beta #16743
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Start the dev cycle for the 2024.3 release. This won't be a compatibility breaking release.
Revert PRs are janitorial actions which do not make sense to follow the PR template. Typically these are made adhoc using the GitHub UX. When performing a revert, it is important to note issues being opened and closed by the reversion. It is also vital to note the PR being reverted. Adding a short reason for reversion will help people understand a summary of what is going on. Description of user facing changes None Description of development approach Created a new template to be copy-pasted when performing a revert
fixes #16456 Summary of the issue: In braille.BrailleHandler._handlePendingUpdate and braille.BrailleHandler._doNewObject functions scrollTocursororSelection function is called. scrollToCursorOrSelection calls scrollTo which in turns calls braille.BrailleHandler.update. Both _handlePendingUpdate and _doNewObject call braille.BrailleHandler.update after calling scrollToCursorOrSelection. Description of user facing changes There should be less "Braille window dots" log lines when log level is debug. Maybe some minor effect on performance. Description of development approach Minor modifications of _handlePendingUpdate and _doNewObject functions.
The current development documentation on creating self-signed builds of NVDA instructs users to save their PFX file to their NVDA repository root. As this directory is under version control, Git will then recognise the PFX file as a candidate for versioning. However, signing certificates should not be committed to VC. Description of user facing changes Git will now ignore PFX files in this repository. There are no end-user facing changes. Description of development approach Added *.pfx to .gitignore.
…es (#16480) Microsoft is about to introduce Visual Studio 2022 version 17.10 in the near future. They decided to change the minor toolset version number, so we're going from MSVC 14.39 to 14.40. See this blog post for details. Note that they'll stick with version 143 in the crt version string, which is very weird. Description of user facing changes Building NVDA on visual studio 2022 version 17.10 (to be released) will work correctly. Description of development approach Rather than expecting all toolset directories to start with 14.3, we expect them to start with the major version part only (i.e. 14).
Fixes #10960 Summary of the issue: There are cases where moving one character on a textInfo instance actually moves more than one unicode point offset. This is described by @mltony in the doc string for textInfos.TextInfo.moveToCodepointOffset. This causes of by one errors when cursor routing, since we're asking the textInfo to move by 1 characters, that might be presented by two or even more characters within the liblouis mapping. Description of user facing changes Cursor routing should be more reliable. Description of development approach @mltony's creation of moveToCodepointOffset allows us to move x code points from the start of the reading unit. As we're using 32 bit for liblouis, every character as presented by liblouis is equal to one code point. Therefore we can safely assume that this method to move is much more reliable than the previous method.
Fixes #3304. Fixes #9863. Supersedes PR #9864, #10172. Addresses #505 (comment) Summary of the issue: In NVDA, there is no easy and reliable way for an add-on to provide a new braille table. For an experienced users wishing to do so there are two options: Alter manually an existing table in louis/tables. The new table still has its original name in the settings GUI. This change is lost upon NVDA updates. Set the absolute path to the table file in the configuration in lieu of the usual file name. The settings GUI shows an empty entry for this one. Forces to manually alter nvda.ini. Forces to copy in the same directory the whole dependency chain of the new table plus braille-patterns.cti. This is because liblouis default table resolver only looks for tables in a single directory, See Make it easier for add-ons to supply custom braille tables #5489 (comment) Description of how this pull request fixes the issue: Add a new brailleTables optional directory in both the user scratchpad directory and the add-on directory structure. Support reading tables metadata from an optional brailleTables section of the add-on manifest or from a manifest.ini file with the same format found in the root of the scratchpad directory, allowing a user to provide a display name and set output/input/contracted capabilities with no code. Implement a custom liblouis table resolver that resolves tables based on what is registered in the brailleTables module: When liblouis calls the resolver without a base file specified, the table is looked up from the brailleTables module and either resolved from the add-ons brailleTables directory or the built-in tables directory When liblouis calls the resolver with a base file specified (e.g. when processing includes in tables), the table is looked up from the folder of the base table and/or the built-in tables directory Enforce the existing fallback mechanism to ensure there still is braille output if the configured table cannot be found e.g. because an add-on or the scratchpad directory was disabled. This now applies both to the main configuration and individual profiles and also covers braille input. Note that if an add-on author wants a table to be listed in the GUI, he/she should always define the table in the manifest. Contrary to earlier incarnations of this pr, replacing a table in an add-on (i.e. when it has the same filename as a built-in table) without defining it in the manifest is no longer possible. Therefore it is also not possible to replace unlisted tables that are included by listed tables. For example, if you want to replace spaces.uti as included in nl-comp8.utb, you weel need to both define and bundle a replacement of nl-comp8.utb and spaces.uti in your add-on.
CyrilleB79 Collaborator CyrilleB79 commented on Mar 19 • Link to issue number: None Summary of the issue: Errors in the source code are indicated visually by "^" characters and has become more precise with Python 3.11. However, the characters used in log viewer or python console have not a fixed width so: visually, the wrong place of the source code is indicated for blind people, going on the error marker ("^" characters) and pressing upArrow to jump at the same column position in the source code's line is useless because the cursor does not land in the same column. Description of user facing changes Use a fixed width font in the log viewer and in the Python console. In the Python console, only the output field is impacted by vertical alignment considerations; however, for visual consistency I have modified both the input and the output fields. Description of development approach Change the log viewer's font to 'Consolas' which has fixed width and which is the one used in Notepad.
Fixes #14874 Summary of the issue: NVDA reports the word "caption" before every element in a figcaption element, or before each line in same when navigating by line in browse mode. Description of user facing changes NVDA now reports "caption" only when first entering a figure caption, and "out of caption" when leaving it. Description of development approach Changed textInfos.ControlField.getPresentationCategory to return PRESCAT_CONTAINER when its role is controlTypes.Role.CAPTION .
…e children (#16471) Fixes #14514 Summary of the issue: HTML figure elements with no accessible children (EG, all children set to aria-hidden=true) but with an aria-label or aria-description are not reported by NVDA. Description of user facing changes Elements with no accessible children but which have a label or description are now reported in browse mode. Note this only applies to elements which are still rendered; if all children are set to display: none, for example, NVDA still does not report the parent element. Description of development approach Render a single space in elements with no content but a label or description se
Closes #8318 Summary of the issue: Currently, NVDA does not read error messages referenced with aria-errormessage and aria-invalid (or platform native invalid). Description of user facing changes Error messages referenced by aria-errormessage are reported in speech and Braille on nodes marked as invalid. Description of development approach NVDAObjects have a new property, errorMessage, which is retrieved via the error IA2 relation. For virtual buffers, this is done in the virtual buffer backend and stored in the virtual buffer node. For focus mode, this is done at call-time.
closes #16416 Summary of the issue: On Windows 11, some controls are above the Dbeaver autocomplete suggestions dialog, causing the check to see if is an autocomplete list item to fail. Description of user facing changes NVDA will speak the Dbeaver autocomplete list items on Windows 11 again. Description of development approach The solution was to improve this check to use the simple object navigation mode to ignore unwanted objects from the check and add the check for the start menu that is a Toggle Button on Windows 11.
…illeHandler.update executions #16501 fixes #16463 Summary of the issue: Fix for issue of #16463 where braille message was not dismissed. Description of user facing changes Braille message should be dismissed when moving cursor. Description of development approach if buffer is message buffer BrailleHandler._dismissMessage is executed before BrailleHandler.scrollToCursorOrSelection.
* soffice: Report keyboard-triggered formatting toggles in Writer ### Link to issue number: Fixes #4248 ### Summary of the issue: When toggling text formatting in LibreOffice Writer using keyboard shortcuts (eg. Ctrl+B for toggling bold when using English UI), NVDA was not reporting whether bold was enabled or not. ### Description of user facing changes In LibreOffice Writer (version 24.8 and newer), when toggling text formatting (bold, italic, underline, subscript/superscript, alignment) using the corresponding keyboard shortcut, NVDA announces the new formatting attribute (e.g. "Bold on", "Bold off"), similar to how it does for Microsoft Word. ### Description of development approach In the SymphonyDocument class, register gestures for keyboard shortcuts that can be used to toggle formatting in LibreOffice Writer. Add a method to handle the gestures, which is the same for all attributes and enables processing of state change events on toolbar buttons until a timeout (of currently 0.15 seconds) is reached. During that time, when a state change event for a toolbar button is received from LibreOffice, the name of the button and its new state (on/off) are announced. This also requires a corresponding change in LibreOffice [1] so that the state change events for toolbar buttons are actually sent, contained in LibreOffice >= 24.8: commit 0425b6eb47830b1fe630dc0128d5049f4b3e5582 Author: Michael Weghorn <m.weghorn@posteo.de> Date: Tue Apr 16 19:02:30 2024 +0200 tdf#160695 wina11y: Send status change events for toolbar buttons Note: An alternative approach querying the text attributes from the IAccessibleText interface instead of the button state would run into the problem that it works reliably when text is selected, but has no clear way to figure out whether or not bold is enabled or not when there's no selection. (The text attributes need to be queried for a given index, but when the text cursor is e.g. in front of the first character of non-bold text, Ctrl+B would enable bold for newly typed text, but querying the text attributes at index 0 of the existing text would still not report bold, resulting in issues like as observed and described in issue #16412 for MS Word.) [1] https://git.libreoffice.org/core/commit/0425b6eb47830b1fe630dc0128d5049f4b3e5582 ### Testing strategy: 1. start NVDA 2. start LibreOffice Writer (current development version, e.g. an upcoming daily build available from [2]). 3. Press Ctrl+B to enable Bold 4. Verify that NVDA announces "Bold on" 5. Press Ctrl+B again to disable bold formatting 6. Verify that NVDA announces "Bold off" 7. Type "hello world" 8. repeat steps 3-6 9. move text cursor to the beginning of the text 10. repeat steps 3-6 11. select the text 12. repeat steps 3-6 13. repeat steps 1-12 for other formatting attributes (Ctrl+I for italic, Ctrl+U for underline,...) [2] https://dev-builds.libreoffice.org/daily/master/current.html ### Known issues with pull request: None ### Code Review Checklist: - [x] Documentation: - Change log entry - User Documentation - Developer / Technical Documentation - Context sensitive help for GUI changes - [x] Testing: - Unit tests - System (end to end) tests - Manual testing - [x] UX of all users considered: - Speech - Braille - Low Vision - Different web browsers - Localization in other languages / culture than English - [x] API is compatible with existing add-ons. - [x] Security precautions taken. * Follow-up: Use @script decorator As suggested in review: #16413 (comment) * Follow-up: Address review comments s. #16413 (review) * Follow-up: Use function docstring instead of comments s. #16413 (review) Co-authored-by: Cyrille Bougot <cyrille.bougot2@laposte.net> * Follow-up: Use Sphinx syntax for reference s. #16413 (comment) --------- Co-authored-by: Cyrille Bougot <cyrille.bougot2@laposte.net> Co-authored-by: Sean Budd <sean@nvaccess.org>
…crosoft Excel (#16473) Fixes #15843 Summary of the issue: When editing a cell in Microsoft Excel with inline cell editing enabled, NvDA does not announce text selection changes. This is because in order to support inline cell editing, NvDA needs to redirect focus to the real cell edit control - Excel fires MSAA focus on a broken control. However, caret events do not know that focus was redirected and only go to the last queued focus object, which is still the broken control. Note that this already works when NVDA uses UIA to access MS Excel (as the UIA control is not broken). Description of user facing changes NVDA announces selection changes in the inline cel edit control in Microsoft Excel. Description of development approach Rather than redirecting focus events to an obj's focusRedirect property in executeEvent, do it earlier in queueEvent, so that lastQueuedFocusObject is the possibbly redirected focus and therefore other code paths in NVDA check against what the focus actually ends up being.
Summary of the issue: there is no information on "triage" permissions for the NVDA repository, i.e. how to get them and the responsibilities involved Description of user facing changes added information to the triage process
Fixup of #16477 Summary of the issue: When writing #16477, I hadn't realized that TextInfoRegion compensated for characters that aren't part of the text info. This mapping is stored in the _rawToContentPos attribute. This compensation is necessary for character movement based routing, but not for code point offset based routing. The following would happen without this pr. In Word, write a list item, e.g. 1. Hello Route to the fourth cell (offset 3) The third raw position (h) would correspond with content position zero (1) With moveToCodepointOffset, moving to offset 0 means moving to 1 not to h. Basically, the cursor would end up at the first cell, not at the fourth. Description of user facing changes Routing works again in Word list items. Description of development approach When using moveToCodepointOffset, move to the raw position, not to the actual content position. moveToCodepointOffset expects raw positions, not content positions. Don't use moveToCodepointOffset when the content position is 0, since we can simply collapse the textInfo at the start of the reading unit and return that. Note that moveToCodepointOffset would fail for everything up to offset 3 anyway, since it wouldn't be able to move.
Fixes #13648 Summary of the issue: The Welcome Screen and User Guide used different terms, "main Insert" and "Extended Insert" respectively, to refer to the same key. Description of user facing changes Both the Welcome Screen and User Guide now call Extended/main Insert by simply "Insert." Description of development approach Modified wording in userGuide and startupDialogs files, as well as the startup system test that checks the Welcome Screen text.
The CLDR team has been released the 45.0 version of CLDR. Description of user facing changes Maybe none or some symbols may have been changed.
NVDA cannot be uninstalled correctly by directly running "%ProgramFiles(x86)%\NVDA\uninstall.exe". You must run it as an administrator to uninstall it correctly. Description of user facing changes You can directly run "%ProgramFiles(x86)%\NVDA\uninstall.exe" to uninstall NVDA Description of development approach Change RequestExecutionLevel to admin
Follow up to #16027 Fixes #15850 Summary of the issue: Diff Match Patch proxy crashes and the calling thread deadlocks Description of user facing changes Diff Match Patch proxy will become more stable Description of development approach Refactored DiffMatchPatch diff handler. Now, when reading from stdout of a proxy process, if not enough bytes are read, the return code is checked. If a return code was received, an exception is raised and a fallback to difflib occurs.
nvda_dmp has received updates for better handling of large diffs, unicode characters, etc. Description of how this pull request fixes the issue: Updates nvda_dmp (and its backing diff-match-patch implementation) to the latest versi
Beta to master
Beta to master
The monkeypatch for wx.CallAfter didn't indicate wrapping. >>> import wx >>> help(wx.CallAfter) Help on function wx_CallAfter_wrapper in module monkeyPatches.wxMonkeyPatches: wx_CallAfter_wrapper(func, *args, **kwargs) Description of user facing changes None Description of development approach Imported wraps from functools, and added @wraps to the wrapper. From a build after the modification: >>> import wx >>> help(wx.CallAfter) Help on function CallAfter in module wx.core: CallAfter(callableObj, *args, **kw) Call the specified function after the current and pending event handlers have been completed. This is also good for making GUI method calls from non-GUI threads. Any extra positional or keyword args are passed on to the callable when it is called. Also converted the apply() function's comment into a docstring.
#16483 (comment) Summary of the issue: The current nvda_dmp is out of date. Description of how this pull request fixes the issue: Update nvda_dmp to latest commit.
Closes #16432 Summary of the issue: NVDA does not log its own app architecture at startup. Description of user facing changes NVDA's app architecture will be logged as part of the log at startup. Description of development approach At startup, log os.environ["PROCESSOR_ARCHITECTURE"], useful if running NVDA on 64-bit systems and to prepare for #16304 work.
…perience window receives focus when clipboard history window closes (#16534) Closes #16347 Summary of the issue: In Windows 11, Windows Input Experience window receives focus when clipboard history closes. Description of user facing changes NVDA will no longer appear to get stuck when closing Windows 11 clipboard history. Description of development approach In emoji panel app module, added again focus event handler that will check if Windows Input Experience window receives focus in Windows 11, and if yes and if no events are pending, will queue gain focus on system focus control (obj.objectWithFocus()). Testing strategy: Manual testing: in Windows 11, open clipboard history, then press Escape to close it. Known issues with pull request:
Closes #15035 Summary of the issue: Users would like a push notification on NVDA start-up letting them know if add-ons have available updates Description of user facing changes When starting NVDA, a dialog will appear notifying users of updatable add-ons if there are available updates. This will only notify users if the available update is in the same channel as the installed add-on. There is an "update all" button on the dialog and a list of add-ons with updates available. There is also an "Open Add-on Store" button to open the add-on store to the updatable add-ons tab. A setting to disable this. This is a combobox so that in future users can decide between: notify on updates (default) automatic update (See Ability to automatically update add-ons #3208) disabled Description of development approach Created a scheduling module to schedule tasks on NVDA start up, using the schedule pip module. This is so we can have conflict free scheduling. e.g. so NVDA's update notification won't clash with the add-on update notification. Uses their suggested code to run a background thread for task scheduling: schedule.readthedocs.io/en/stable/background-execution.html Changed much of the Add-on Store downloading code to be classmethods. This allows us to use it from the message dialog without creating a store instance.
Closes #16135 New Features Enhanced Chrome command-line arguments to improve testing efficiency and stability . Tests Re-enabled several test cases related to ARIA role descriptions and navigation in Chrome, improving test coverage.
Beta to master
Summary of the issue: Liblouis 3.30.0 has been released, adding many new Braille tables. Description of how this pull request fixes the issue: Update Liblouis and add new tables.
Chrome tests textParagraphNavigation and styleNav are failing. Description of user facing changes N/A Description of development approach Minor changes to make these two tests to pass.
On some websites QuickNav command jump to next menu doesn't work. For example in Jupyter: jupyter.org/try-jupyter/notebooks/?path=notebooks/Intro.ipynb Description of user facing changes QuickNav next menu command now works with Jupyter. Description of development approach Added one more IA2 role to search for in next menu QuickNav command.
…6668) Help Tech Activator Pro 80 and Activator Pro 64 are not supported. Description of user facing changes The two affected device types will be supported by NVDA and will also be autodetected. Description of development approach The driver was modified to include the new devices.
Fixes #16684 Summary of the issue: In #16636 / d7facd1, config.ConfigManager.BASE_ONLY_SECTIONS underwent a mutation from a set to a frozenset. Thhis modification hinders extensions from easily expanding this set. There are perfectly legit scenarios where an extension’s settings should not be overridden by profiles. Take webAccess, for instance: accessolutions/WebAccessForNVDA@4251aae/addon/globalPlugins/webAccess/config.py
Discussion in nvda.groups.io/g/nvda/topic/clock_add_on_add_on_store/105313955?p=,,,100,0,0,0::recentpostdate/sticky,,,100,2,0,105313955,previd%3D1712173725527803825,nextid%3D1710680040743854194&previd=1712173725527803825&nextid=1710680040743854194 Summary of the issue: The current incompatibility message for too old add-ons in the add-on store's details is as follows: An updated version of this add-on is required. The minimum supported API version is now 2024.1. This add-on was last tested with 2023.1. You can enable this add-on at your own risk. The concept of API is not clear for everyone and it is not explained in NVDA's GUI, nor in the User Guide. Thus, the logic of this sentence explaining why the add-on is not compatible is not easily understandable. Description of user facing changes Modify the incompatibility reason for too old add-ons as follows: An updated version of this add-on is required. This add-on was last tested with 2023.1. The current version of NVDA requires that the extension be tested with NVDA 2024.1 or higher. You can enable this add-on at your own risk.
When using the CLI command nvda.exe --help, a dialog window opens with visual clipping for smaller screens. Description of user facing changes Make the dialog wider and more legible. Description of development approach Created a custom formatter to widen the default dialog for CLI help.
…non-empty directories (#16686) Fixes #16443 Summary of the issue: When creating a portable copy, NVDA overwrites the contents of the folder. This may delete files like dlls. This caused #16514 to be reported, as this can be quite destructive and unexpected. Typical behaviour for writing to a directory like this involves creating a new folder to write the contents to. However, portable copies can also be upgraded, so it is important to be able to support writing to existing portable copy directories. Description of user facing changes When creating a portable copy, a new checkbox has been added to create a new folder for the portable copy, which is checked by default. If this box is unchecked, a warning dialog will appear if the directory is non-empty. The directory contains nvda.exe we assume its a portable copy directory, and confirm the user wishes to upgrade the portable copy. The directory is otherwise non-empty, a general warning dialog is opened warning the user that the contents of the folder will be overwritten.
Update translations
… for a pending caret event. (#16711) Summary of the issue: In Firefox's in-progress UIA implementation, moving with the cursor keys in editable text boxes sometimes reports the character at the old position of the caret instead of the new position of the caret. For example, on the line: abcdef with the cursor positioned on "a", pressing right arrow several times might read a, b, c instead of b, c, d. I don't anticipate that NVDA will ever move to using UIA in Firefox. Nevertheless, this is an NVDA bug which might impact other things. Description of user facing changes When navigating with the cursor keys in text boxes in applications which use UI Automation, NVDA no longer sometimes reports the wrong character, word, etc. Description of development approach Previously, EditableText._hasCaretMoved fetched the caret before checking for a pending caret event. It then returned this fetched caret. The following race condition could occur: In NVDA's main thread, NVDA queries the caret. The caret hasn't updated yet in the app, so this is the old position. The app fires a caret event. NVDA receives this caret event on a background UIA thread and queues it. Back in NVDA's main thread, NVDA checks for a pending caret event. That check passes because of 3). NVDA returns the old caret info retrieved in 1). This can't happen with other APIs because they all queue events on the main thread, which can't be preempted during _hasCaretMoved. However, UIA queues events from a background thread.
Fixes #16218 Summary of the issue: NVDA could silently crash when a Braille HID device was disconnected/closed. Description of user facing changes No more crashes under the above conditions. Description of development approach Introduced a flag that tracks if the close() method has already been called, and don't perform the operation again.
Closes #16266 Summary of the issue: Right now NV access is unable to gauge monthly or weekly users, only daily users. Each day NVDA performs an update check and optionally sends more usage data information. We are unable to differentiate copies performing update checks, meaning we only know X users who checked for an update on a given day. Description of user facing changes None Description of development approach A unique ID is stored to user config when initializing the update check. This creates a unique ID per user of NVDA, counting portable copies and each Windows user's profile of an installation. When checking for update, NVDA now sends the unique ID if usage tracking is enabled.
… WebView2 interface (#16717) Closes #16705 Summary of the issue: Apps hosting Edge WebView2 show up as websites. However, in apps such as new Outlook (olk.exe), it is desirable to disable browse mode by default or offer custom commands and workarounds. Description of user facing changes NVDA will recognize and work with app modules for apps hosting Edge WebView2 controls such as new Outlook. Description of development approach Similar to wwahost and javaw, a new host app module (msedgewebview2) is created to fetch actual names of aps hosting the webview controls. The module borrows heavily from javaw app module except it is limited to fetching parent process information. Instead of importing appModuleHandler.AppModule, module-level getattr is defined to return the default app module.
…ng the value directly from the UI element. (#16672) Fixes #16573 Summary of the issue: When pasting into the calculator, both speech and braille reported a truncated result (for example 1 instead of 12.34) Description of user facing changes When pasting into the Windows 10/11 calculator, the correct number is announced. Description of development approach While handling UIA notification events, NVDA may announce screen changes not caused by number entry or results commands, and this is what is being handled (pasting from clipboard, for example). NVDA will traverse through result element's children, looking for the actual result. NVDA will announce the element's content once actual result element is identified.
Closes #16495 Summary of the issue: updates espeak for 2024.3 Description of user facing changes adds Karakalpak language in eSpeak Description of development approach Followed steps in eSpeak readme
…onnection error (#16340) Add com port in Hims Braille Display and fix Serial Connection error Description of user facing changes Users can always perform serial connections normally. User can choose com port in Braille Display Selection Dialog(Hims). Description of development approach In the HimsDisplayDriver, due to a chip issue, there were instances where packet data was intermittently split arbitrarily during the serial connection verification process, necessitating modifications to the _onReceive function.
) Follow up to #16724 Summary of the issue: markdown 3.5.1 to 3.6 Updating python markdown to get the latest security updates modifications Description of user facing changes none Description of development approach Updated markdown and nh3 versions of requirements.txt file
Previously, markdown files were built as an intermittent step between converting text2tags content to HTML. During this period, it was useful for builds to upload their markdown files as AppVeyor artifacts in the builds system. We have now removed the t2t content in favour of a markdown source of truth, meaning that the artifact uploaded should be the same as the contents in the PR. Description of user facing changes Remove userGuide and changes markdown files from build artifacts Description of development approach Remove userGuide and changes markdown files from build artifacts Also removed other deprecated code and updated remaining references to t2t
seanbudd
requested review from
Qchristensen and
SaschaCowley
and removed request for
a team
June 26, 2024 03:22
…#16248) Fixed #16246 Summary of the issue: Most controls in Visual Studio Code do not support text review commands. The most typical example is when the user wants to review the control name character by character, such as the file name in the file tree and the setting items on the settings page. Based on current experience, this is not easy to achieve. Description of user facing changes Users will be able to review control name in Visual Studio Code by NVDA’s text review commands. Description of development approach In the application module for Visual Studio Code, a modification has been made within the event_NVDAObject_init method to enhance the handling of objects. Specifically, for objects whose role is not EDITABLETEXT , the TextInfo property is now explicitly set to NVDAObjectTextInfo.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.