forked from nvaccess/nvda
-
Notifications
You must be signed in to change notification settings - Fork 0
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
[pull] master from nvaccess:master #92
Merged
Merged
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
From translation svn revision: 83070 Authors: [email protected] [email protected] Aaron Wu <[email protected]> Victor Cai <[email protected]> [email protected] Stats: 2 1 source/locale/zh_TW/symbols.dic 1 file changed, 2 insertions(+), 1 deletion(-)
From translation svn revision: 83070
From translation svn revision: 83088 Authors: Daniel K. Gartmann <[email protected]> Nicolai Svendsen <[email protected]> [email protected] Stats: 0 11 source/locale/da/gestures.ini 1 file changed, 11 deletions(-)
From translation svn revision: 83088 Authors: Bernd Dorer <[email protected]> David Parduhn <[email protected]> Rene Linke <[email protected]> Adriani Botez <[email protected]> Karl Eick <[email protected]> Robert Hänggi <[email protected]> Astrid Waldschmetterling <[email protected]> Stats: 9 9 source/locale/de/gestures.ini 1 file changed, 9 insertions(+), 9 deletions(-)
From translation svn revision: 83088 Authors: Juan C. buno <[email protected]> Noelia Martinez <[email protected]> Remy Ruiz <[email protected]> Jose M. Delicado <[email protected]> Stats: 4 4 user_docs/es/userGuide.md 1 file changed, 4 insertions(+), 4 deletions(-)
From translation svn revision: 83088
Start the dev cycle for the 2025.1 release. This will be a compatibility breaking release.
…rged PRs (#17040) The current auto milestone script currently applies milestones to all closed issues and pull requests, even when the issues are invalid or pull requests not merged. Description of user facing changes None. Purely a DX improvement. Description of developer facing changes If an issue is closed as completed, the default milestone will be applied if the issue does not yet have a milestone. If an issue is closed as not planned, no milestone will be auto-applied. If a pull request is merged and closed, the default milestone will be applied if the PR does not yet have a milestone. If a pull request is closed without merging, no milestone will be auto-applied. Description of development approach Added a step to the auto milestone script that checks the close reason of the issue, or merge status of the PR. If the issue is closed as complete or PR closed and merged, the isDone output is set to 'true', otherwise it is set to 'false'. Updated the "Assign default milestone" step's if condition to require isDone to be 'true'.
…ing the build process (#17029) The build guide currently suggests that developers use the --all-cores parameter to SCons to speed up their builds, noting that this will scramble the output. However, it does not mention that in some cases this may break building altogether. Description of user facing changes None. Developer change only. Description of development approach Updated projectDocs/dev/buildingNVDA.md: Fixed a bunch of linting issues, including having blanks around headings, using 2 spaces for list indents, and not having duplicate headings. Added a heading for building NVDA without archiving it. Noted that the -j N option can be used instead of the --all-cores option. Noted that using a parallel build may break the build system. Noted that when experiencing problems with the build system, make sure to run it serially to make finding the source of the issue easier.
2024.4 Final master to beta merge
… `fontAttributeReporting` (#17035) Partial fix for #16802 Summary of the issue: #16748 introduced new behaviour whereby NVDA can be configured to report font attributes in speech, braille, both or not at all. This required the implementation of a new configuration key, documentFormatting.fontAttributeReporting. To avoid a breaking change to the API, aliasing code was introduced to ensure that the new key and its deprecated counterpart were kept in sync. When the API version is updated, these tests will fail as this code will no-longer run. Therefore, these tests need to be removed. Description of user facing changes None. Description of development approach Deleted tests.unit.test_config.Config_getitem_alias.
…ipt is waiting. (#17049) Fixes #16812 Summary of the issue: If holding down an arrow key in NvDA browse mode, such as in Microsoft Word, NVDA can become unresponsive if holding down the key for a long period of time. This is because moving in browse mode can be very costly, and scripts become backed up. Description of user facing changes NVDA no longer becomes unresponsive if holding down an arrow key for a long time while in NVDA browse mode, in particular in Microsoft word. Description of development approach CursorManager._caretMovementScriptHelper: return early if another script is waiting. There is no point doing something costly when another script is going to happen anyway.
…rge files (#17051) Fixes #17039 Summary of the issue: With the introduction of pr #16745 which added better reporting of the caret at when at the end of a line, VS Code became quite slow when arrowing up and down through particular large files. IAccessibleText::textAtOffset with IA2_OFFSET_CARET is very costly in VS Code, and Chromium does not actually implement this correctly yet anyway. Description of user facing changes NVDA is less sluggish when arrowing up and down through large files in VS Code. Description of development approach VS code appModule: provide a new VsCodeEditorTextInfo which disables end-of-line caret detection by returning False in _IsCaretAtEndOfLine.
…17042) Fixes #15138 Summary of the issue: If a cell in Microsoft Excel has a data validation type of list, NvDA does not report anything when it is opened and or when selecting a value. Note that this is specifically talking about the list shown when the cell has data validation set. The dropdown list shown when auto completing from values in higher cells does report okay. Technical info The list is a SysListView32 control. It has a native UIA implementation. NvDA generally does not trust UIA implementations for SysListView32 as they have been somewhat limited. Therefore NVDA falls back to MSAA for the list. Although UIA core is proxying the UIA events to MSAA events, the UIA implementation seems to be incomplete as AccessibleObjectFromEvent is always returning E_FAIL for any focus win event fired by the control. Even if NvDA is told to specifically use UIA for this control, there is a loop in the control's parent chain, causing a never ending focus ancestry. Description of user facing changes It is now possible tin teract with data validation dropdown lists in Excel. this includes reporting the focused / selected item as you move up and down the list, and reporting focus back on the sheet when the list is closed with enter, space or escape. Description of development approach Excel appModule's isGoodUIAWindow treats this SysListView32 window as native UIA. The parent property on this NvDAObject has been overridden to return the desktop, skipping the loop between SysListView32 and __XLACOOUTER windows. AScript on this NvDAObject bound to enter, space and escape, corrects NvDA's focus back to the sheet.
Reverts #16873. Summary of the issue: When backspacing beyond the leftmost character of a line in Windows Terminal, the last character of the prompt is erroneously read in some environments. Some caret tracking issues (especially when connected to remote systems) are more apparent. Description of how this pull request fixes the issue: Revert the new behaviour until it can be fixed upstream or a workaround can be found. Testing strategy: Verified restoration of previous behaviour and that caret tracking works as before.
Beta to master
From translation svn revision: 83169 Authors: Juan C. buno <[email protected]> Noelia Martinez <[email protected]> Remy Ruiz <[email protected]> Jose M. Delicado <[email protected]> Stats: 91 88 user_docs/es/userGuide.md 1 file changed, 91 insertions(+), 88 deletions(-)
From translation svn revision: 83169 Authors: Simone Dal Maso <[email protected]> Alberto Buffolino <[email protected]> Stats: 1 1 user_docs/it/userGuide.md 1 file changed, 1 insertion(+), 1 deletion(-)
From translation svn revision: 83169 Authors: Zvonimir Stanecic <[email protected]> Aleksandr Lin'kov <[email protected]> Stats: 77 77 user_docs/ru/userGuide.md 1 file changed, 77 insertions(+), 77 deletions(-)
From translation svn revision: 83169 Authors: Dinakar T.D. <[email protected]> Stats: 2 2 user_docs/ta/userGuide.md 1 file changed, 2 insertions(+), 2 deletions(-)
From translation svn revision: 83169
Update translations from l10n
) When NVDA is run from source, if the documentation is missing, e.g. because it has not been built, there is a user friendly message indicating that the documentation is missing when using context help. Though, when trying to open the documentation from NVDA's menu, there is no user friendly message; there is only an error in the log. Description of user facing changes If the documentation is missing, a message pops up to report it to the user. In this case, we do not use ui.message as for context help, because the message is cut by the new focus being reported. Description of development approach Factored the function to report that the doc is missing. Testing strategy: Manual test, with and without built doc: * Try to use context help * NVDA menu -> Help: try to open User Guide, Key commands and Changes documentations.
Beta to master
… yet implement what we need, and it is costly for no gain. (#17067) More broadly fixes #17039 Summary of the issue: In PR #16745, code was added to detect the caret at end of lines in Mozilla-compatible edit areas, so as to not report the next line when on the final insertion point of the line before. Although this works great in Firefox and other Gecko-based apps, it does not work at all in Chromium due to Chromium not correctly implementing IAccessibleText::textAtOffset with IA2_OFFSET_CARET. More importantly, this is a very costly check in VS code, which has a noticeable performance hit when arrowing up and down large files (issue #17039), for no gain. PR #17051 successfully fixed the performance hit in VS code by disabling caret at end of line detection just for VS Code. But it was pointed out that there are several VS Code variants including VS Code.dev which require this also. Description of user facing changes NVDA is no longer as sluggish when arrowing up and down large fles in VS code and otherChromium-based applications. Description of development approach Remoe the VSCodeditor and VSCodeEditorTextInfo classes from the VS ode appModule introduced in pr VS Code is no longer as sluggish when arrowing up and down through large files #17051. Add Editor and EditorTextInfo classes to NVDAObjects.IAccessible.chromium which are used in Chromium where ever NVDAObject.IAccessible.ia2Web.Editor is used. These classes disable caret at end of line detection for any chromium edit area.
Text fragments is a new web concept that allows you to link directly to a specified piece of arbitrary text on a page without needing a predefined id. For example: https://www.jantrid.net/#:~:text=browsers%20were%20much%20simpler As well as scrolling to the element containing the text, the browser will highlight the text. Because this could span a partial object, this can't be exposed using IA2_ROLE_MARK. Instead, similar to spelling errors, this is exposed using an IAccessible2 text attribute, specifically the new attribute mark:true. This will also be used eventually to support CSS custom highlights. Description of user facing changes In Mozilla Firefox, NVDA will report the highlighted text when a URL containing a text fragment is visited. Description of development approach NVDA already supports the "marked" attribute on FormatFields. To be consistent with IA2_ROLE_MARK, it was decided to name the IA2 attribute "mark" instead of "marked". This PR simply maps the attribute appropriately in normalizeIA2TextFormatField.
…ot Inc (#17007) The Dot Pad from Dot Inc is a device that can display refreshable tactile graphics and braille. The A320 model can show tactile graphics of 120 by 80 dots (which could comfortably fit 8 lines of 20 cells each. The device also has a dedicated line of 20 cells specifically for text. Currently you can use the Dot Pad with NVDA via Brltty I believe, though I did not manage to get that working on my machine. There are also some NVDA add-ons to support Dot Pad in various forms, using the Dot Pad SDK. NVDA should add native support for the Dot pad device, removing the requirement for Brltty or add-ons, at least for basic functionality. Description of user facing changes It is now possible to use the Dot Pad braille display with NVDA. Features: Can display braille either on the dedicated 20 cell text line, or on the tactile graphic area. This can be configured in NVDA's braille settings panel by changing the Braille Destination combo box. Left and right panning keys are supported. Description of development approach Write a native braille display driver that communicates with the device over serial. Borrowed many of the constants and structures from BrlTty. Also added a new tactile package, which contains untilities and classes for working with tactile graphics. So far just a TactileGraphicsBuffer which represents a buffer in which single dots can be set, and a drawBrailleCells function which can take bytes representing a string of standard braille cells, and draws them onto the graphics buffer.
fix up changes
Fixes the initial request of #11538. Summary of the issue: When a user encounters an issue with NVDA, a dev diagnosing the issue may need to ask them a log. In this situation, the most common use case is to ask a log with add-ons disabled (to eliminate possible add-on interferences) and log level set to debug (to get the maximum information to help debugging). Though, NVDA does not provide a handy way to restart with add-ons disabled and log level set to debug. Description of user facing changes NVDA's exit dialog now provides the 4 following permanent options: "Exit" (as before) "Restart" (as before) "Restart with add-ons disabled and debug logging", replacing "Restart with add-ons disabled". This option may be used to discriminate if a bug comes from NVDA or from add-ons, and in case it comes from NVDA, help a developer to investigate and fix it. "Restart with debug logging", just renamed from "Restart with debug logging enabled". This option is useful to get a log to investigate a bug in an add-on. The non-permanent option to install pending updates remains unchanged. And the options in secure mode remain unchanged. More specifically, "Restart with add-ons disabled" remains without enabling debug logging because logging is disabled in secure mode. Description of development approach Added the RESTART_WITH_ADDONS_DISABLED_AND_DEBUG_LOGGING item in gui.exit._ExitAction enum. And removed the unneeded items of this enum to display the combo-box. More specifically, RESTART_WITH_ADDONS_DISABLED_AND_DEBUG_LOGGING and RESTART_WITH_ADDONS_DISABLED cannot coexist in the allowed values of the combo-box. Also renamed RESTART_WITH_DEBUG_LOGGING_ENABLED to RESTART_WITH_DEBUG_LOGGING so that RESTART_WITH_ADDONS_DISABLED_AND_DEBUG_LOGGING does not become a longer RESTART_WITH_ADDONS_DISABLED_AND_DEBUG_LOGGING_ENABLED; same (and more importantly) for the displayed string. Moreover, technically there is no debug logging that we can enable or disable in NVDA, but a debug level that may be set to "disabled", to "debug" or other intermediate levels. At last, "Restart with debug logging" is not named "Restart with add-ons enabled and debug logging", because the add-ons can still be disabled all individually in the add-on store.
before ruff, the flake8 version we used didn't support match/case statements. ruff does now Description of development approach Remove redundant NOQA flags
Beta to master
…after the message, and add buttons to some instances (2nd try) (#17018) Fixes #14641 Addresses #16995 Addresses #16996 Summary of the issue: In #14641 @Qchristensen reported that some users are confused by browseableMessages, and their lack of definite closure mechanisms. During the conversation, it was pointed out that in some cases, a user might also desire a copy button. During work on the PR (originally #16369), it was requested that the copy button be given an accelerator key. Description of user facing changes Added copy and close buttons to some browseableMessages, and the capability to add them to others. Description of development approach Thanks to @michaelDCurran's change in ui.browseableMessage--namely adding a Scripting.Dictionary to carry arbitrary query-string-equivalent style parameters to the mshtml instance behind browseableMessage, it is now possible to pass in values for two new buttons, and various translatable messages, without any contortions. Tried different methods in the JS and CSS of message.html, and eventually settled on one which displayed the two buttons side-by-side, under a separator. If neither button's label is supplied, the div containing the HR and buttons remains hidden. The "Copy" button can be activated with Ctrl+Shift+C, and the "Close" button by Escape. Alt+C is indicated to the user via an accessibility label. Fixed up some docstring parameter listings to match modern format. Per the issue, modified the Report Link Destination message, to have both a copy button and a close button. Per the issue, added buttons to the Report Character Information message. Per request in PR comments, used a live region to present a "Copy complete" or "copy failed" message to the user. This message remains on screen for five seconds. The AI suggested covering for more failures in the initialization and configuration of MSHTML. I used its suggested exception checking, but added a private function to display an error message to the user when one of the components fail, so at least some kind of user notice can be given. I based it on the already extant private function for messaging the user if a browseableMessage is called on a secure screen. Both of the warning functions for browseableMessage unavailable situations, are now self-contained, with respect to wx. Added an immediate return if the MSHTML window is opened without providing the dialog arguments (i.e. the message and title, at least). That situation should never actually occur, but in the unlikely event that a failure passes the error checking we have in browseableMessage, this will return immediately, instead of stranding the user in a blank window with no obvious close mechanism.
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.
See Commits and Changes for more details.
Created by pull[bot]
Can you help keep this open source service alive? 💖 Please sponsor : )