-
-
Notifications
You must be signed in to change notification settings - Fork 634
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 alpha into beta for 2021.1 #12391
Commits on Dec 8, 2020
-
Start dev cycle for 2021.1 (PR #11913)
Branch for release 2020.4 PR #11910
Configuration menu - View commit details
-
Copy full SHA for 694912e - Browse repository at this point
Copy the full SHA 694912eView commit details
Commits on Dec 9, 2020
-
Developer Guide: inline docstring and
__doc__
attribute explanation…Configuration menu - View commit details
-
Copy full SHA for 2030dd6 - Browse repository at this point
Copy the full SHA 2030dd6View commit details -
Configuration menu - View commit details
-
Copy full SHA for d3ba21a - Browse repository at this point
Copy the full SHA d3ba21aView commit details
Commits on Dec 11, 2020
-
Configuration menu - View commit details
-
Copy full SHA for fba5058 - Browse repository at this point
Copy the full SHA fba5058View commit details
Commits on Dec 15, 2020
-
Update espeak to commit 82d5b7b04 (PR #11928)
* Update Espeak to commit 82d5b7b04 Commit: "Ported voices from NVSpeechPlayer to espeak variants." Full sha: 82d5b7b04488412845101851f36da6953cac4378F * Update build process for Espeak - Split build environment settings for internal and 3rd party code. - Specifically don't enable warning level 3 for third party code builds. - Use 3rd party build config for Espeak and Libluis - centralize preprocessor macros
Configuration menu - View commit details
-
Copy full SHA for 7b92e44 - Browse repository at this point
Copy the full SHA 7b92e44View commit details
Commits on Dec 22, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 57e234f - Browse repository at this point
Copy the full SHA 57e234fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7e5ffde - Browse repository at this point
Copy the full SHA 7e5ffdeView commit details
Commits on Dec 31, 2020
-
diff-match-patch for LiveText (PR #11639)
Refactor LiveText to use diff-match-patch via IPC with another process Changes diffing functions to operate at the string rather than line level. Adds diff-match-patch (DMP) as an optional diffing algorithm for LiveText objects. It is anticipated that DMP will become the default in a future NVDA release pending positive user testing. Unlike #11500, this PR does not import or dynamically link to DMP due to licensing issues. Instead, a Python application is run in another process that calls the DMP extension, and communicates over standard IO. Co-authored-by: Michael Curran <[email protected]> Co-authored-by: Reef Turner <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9889285 - Browse repository at this point
Copy the full SHA 9889285View commit details
Commits on Jan 5, 2021
-
Merge beta into alpha PR #11984
- Translation updates - Fix for NVwave issue: #11968
Configuration menu - View commit details
-
Copy full SHA for d3aaca5 - Browse repository at this point
Copy the full SHA d3aaca5View commit details
Commits on Jan 11, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 1f43f98 - Browse repository at this point
Copy the full SHA 1f43f98View commit details -
Synth drivers/eSpeak NG internal: pass in a NULL pointer (path string…
…) when obtaining eSpeak NG version string (#11975) * Synth drivers/eSpeak NG internal: update copyright header * Synth drivers/eSpeak NG internal: passin NULL (None) when obtaining version info. Python 3.8: without passing in a path string, access violation is thrown, which can cause NVDA executable to hang when trying to obtain eSpeak NG version string. Therefore pass in NULL (None) because what NVDA is interested in is synthesizer version. * Synth drivers/eSpeak NG internal: address review comments. Comment from Lukasz Golonka: remove file name from copyright header, use bytes.decode to transform eSpeak NG version string from bytes to Unicode.
Configuration menu - View commit details
-
Copy full SHA for 4c49001 - Browse repository at this point
Copy the full SHA 4c49001View commit details -
Script decorator: add ability to specify that given script should be …
…active in sleep mode. (#11979) * Script decorator: Allow to set `allowInSleepMode` for a decorated script. * Also take this oportunity to use type hints for script decorator parameters * Unit test for allowInSleepMode * Mention `allowInSleepMode` in script decorator's docstring * Lint fixes * Update developer guide * Update what's new Co-authored-by: Michael Curran <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8ec984e - Browse repository at this point
Copy the full SHA 8ec984eView commit details -
Dev docs: tell NVDA to treat source directory as app directory, allow…
…ing dev docs build with Sphinx to succeed (#11972) * Dev docs/config: point globalVars.appDir to source directory when building source code dev docs. re #11971. Before building dev docs with Sphinx, config module is imported without NVDA knowing where the app dir is i.e. globalVars.appDir is undefined. Therefore tell Sphinx that globalVars.appDir is source directory so Sphinx can build source code documentation. * Dev docs/Sphinx config: update copyright header * Dev docs/Sphinx config: address review comments. Reviewed by Lukasz Golonka: move globalvars.appDir definition, along with removing duplicate globalVars import statement.
Configuration menu - View commit details
-
Copy full SHA for e34ec59 - Browse repository at this point
Copy the full SHA e34ec59View commit details -
Sphinx: remove 2.2.2 restriction and update readme regarding building…
… source code docs locally (#11973) * Sphinx: remove version requirement (2.2.2). NVDA docs can be built using more recent Sphinx releases such as 3.4.1. Therefore remove checking for Sphinx 2.2.2 in dev docs requirements. * Readme: replace Epydoc with Sphinx, and remove dev docs limitation statement. Replace Epydoc with Sphinx. As a result, remove the Python 3 source dev docs limitation statement, as Sphinx will now build NVDA dev docs. * Readme: document how to build source code docs with 'scons devDocs'. * Readme: output/DevDocs -> output/NVDA for source code documentation. * Dev docs/Sphinx: specify Sphinx 3.4.1 (December 2020 release). Comment from Lukasz Golonka: specify Sphinx==3.4.1 to align with readme.
Configuration menu - View commit details
-
Copy full SHA for b58e6cc - Browse repository at this point
Copy the full SHA b58e6ccView commit details -
Symbols: test regex group references through the symbols engine (#11961)
* Symbols: test regex group references through the engine This adds a test for regex group reference replacement that goes through the complete speech symbol processor, using the French locale. * Fix test content
Configuration menu - View commit details
-
Copy full SHA for 714fa6f - Browse repository at this point
Copy the full SHA 714fa6fView commit details -
Update nvda_dmp to possibly address an autoread hang (#11998)
* Update nvda_dmp. * Add flush calls for completeness.
Configuration menu - View commit details
-
Copy full SHA for 04858db - Browse repository at this point
Copy the full SHA 04858dbView commit details -
Don't use UnidentifiedEdit for windows with empty windowText (#11966)
* Don't use UnidentifiedEdit for windows with empty windowText Fix-up of #8165 * Update what's new Co-authored-by: Michael Curran <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4288882 - Browse repository at this point
Copy the full SHA 4288882View commit details
Commits on Jan 12, 2021
-
Global commands: replace gestures map with script decorator (#11974)
* Global commands: convert basic commands to use script decorator. Re #11964. The following commands were edited to use scriptHandler.script decorator: NVDA+N (show NVDA menu), NVDA+1 (toggle input help), NVDA+Q (quit NVDA), NVDA+F2 (pass next key through), NVDA+Shift+S/Z (toggle sleep mode), as well as unassigned restart NVDA command. For sleep mode toggle command, allow sleep mode flag is kept, and for NVDA menu and sleep mode toggle commands, gestures tuple is used (gestures order: keyboard (desktop and laptop), braille (including braille input and emulated keys), touch). * Global commands: convert system status scripts to use script decorator. Re #11964. Convert the following scripts: NVDA+F12 (time and date), NVDA+C (clipboard data announcement), NVDA+Shift+B (battery status). * Global commands: convert system focus and caret scripts to use script decorator. Re #11964. Convert the following commands: NVDA+up arrow/L (read current line), NVDA+Tab (current focus), NVDA+End/Shift+End (read status line), NVDA+down arrow/A (say all), NVDA+Shift+up arrow/Shift+S (say selection), NVDA+T (say title), NVDA+B (read foreground window). * Global commands: convert object navigation scripts to use script decorator. Re #11964. Converted object navigation scripts: NVDA+Numpad 5/4/6/8/2, NVDA+Shift+O/right/left/up/down arrows, object touch mode flicks (announce current object/move to next/previous/parent/first child) and friends. * Global commands: convert review cursor commands to script decorator. Re #11964. Convert review cursor commands: Shift+Numpad 7/9, Control+NvDA+Home/End on laptop layout (top/bottom), Numpad 7/8/9 (previous/current/next line)m Numpad 4/5/6 (previous/current/next word), Numpad 1/2/3 (previous/current/next character), Shift+Numpad 1/3 (start/end of line) and touch equivalents in text mode, along with review mark/copy commands. * Global commands: convert mouse and browse mode scripts to use script decorator. Re #11964. Convert the following commands: left/right mouse click/lock, move navigator object to mouse and mouse to navigator object, focus/browse mode toggle, parent tree interceptor. * Global commands: convert config dialogs/panels commands to use script decorator. Re #11964. Convert settings dialogs/panels opener commands to use script decorator, including ones iwthout a set gesture such as dictionary dialogs and review cursor panel. * Global commands: convert config management scripts to use script decorator. Re #11964. Convert the following configuration management scripts: Control+NVDA+C (save configuration), Control+NVDA+R (revert/reset configuration), Control+NVDA+P (open config profiles dialog), and an unassigned command to toggle profile triggers. * Global commands: convert settings scripts to use script decorator. Re #11964. Convert various settings scripts to use script decorator, including NVDA+2 (toggle speak typed characters), NVDA+U (probress bar output) and others. * Global commands: convert synth settings ring scripts to use script decorator. Re #11964. Convert synth settings ring scripts: Control+NVDA+arrows/Control+NVDA+Shift+arrows (next/previous setting, increase/decrease current setting). * Global commands: convert document formatting settings scripts to use script decorator. Re #11964. Convert document formatting scripts to use script decorator, all of them unassigned. * Global commands: convert unassigned settings scripts to script decorator. Re #11964. Convert unassigned settings scripts such as braille focus presentation, change braille cursor/shape, mouse text resolution, all unassigned. * Global commands: convert tools scripts to use script decorator. Re #11964. Convert tools scripts to script decorator, including app module info, UWP OCR, speech viewer, and others, some of them with gestures unassigned. * Global commands: convert braille display scripts to use script decorator. Re 311964. Converted braille input and outpu scripts (except keyboard emulation) to use script decorator (tested with a HumanWare BrailleNote Touch Plus). * Global commands: convert touch gestures to use script decorator. Re #11964. Convert touch-specific scripts to use script decorator, including touch hover, right click, and touch mode toggle. * Global commands: convert keyboard emulation scripts to use script decorator. Re #11964. Convert keyboard emulation scripts for Control, Alt, Windows, Shift, and NVDA keys to use script decorator. * Global commands: rearrange bypassInputHelp and remove commas from ends of function argument definitions. Re #11964. * Global commands: lint (Flake8 E203, E251) * Global commands: lint (Flake8 E501) * Global commands: fix spelling - 'wil' -> 'will' in speech mode command description. * Global commands: scriptHandler.script -> script * Global commands: remove gestures map, replaced by script decorator. Re #11964. Replace gestures map found in global commands with script decorator. * Global commands: update copyright year * Global commands: use allowInSleepMode flag for sleep mode toggle script. Re #11964.
Configuration menu - View commit details
-
Copy full SHA for c4d6fb5 - Browse repository at this point
Copy the full SHA c4d6fb5View commit details
Commits on Jan 20, 2021
-
Configuration menu - View commit details
-
Copy full SHA for bf36715 - Browse repository at this point
Copy the full SHA bf36715View commit details -
Fix for inappropriate distance announcement when pressing shift+tab f…
…rom Outlook message (#11925) * When writing an e-mail in MS Outlook, pressing shift+tab keystroke to go back to the e-mail's headers or attachments should not announce a distance anymore. * Fixed linting. * Update what's new Co-authored-by: Michael Curran <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5daf693 - Browse repository at this point
Copy the full SHA 5daf693View commit details -
Configuration menu - View commit details
-
Copy full SHA for 33cd507 - Browse repository at this point
Copy the full SHA 33cd507View commit details -
Configuration menu - View commit details
-
Copy full SHA for c5697d6 - Browse repository at this point
Copy the full SHA c5697d6View commit details -
Prevent running Windows 10 OCR if screen curtain is enabled. (#11921)
* Prevent running Windows 10 OCR if screen curtain is enabled. * Update what's new Co-authored-by: Michael Curran <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b3b25d5 - Browse repository at this point
Copy the full SHA b3b25d5View commit details
Commits on Jan 21, 2021
-
Python Console: Fix handling of the tab key in the input pane (#11532) (
#11936) * Python Console: Fix handling of the tab key in the input pane (#11532) * Support indenting with tabs when editing a non-empty input line * Support tab-completion in the middle of an input line * Python Console: Tab-completion: Handle selection * Consider selection start rather than cursor position (different if selection is anchored at start) * Replace selection upon successful completion
Configuration menu - View commit details
-
Copy full SHA for 561beeb - Browse repository at this point
Copy the full SHA 561beebView commit details -
Configuration menu - View commit details
-
Copy full SHA for 90c3787 - Browse repository at this point
Copy the full SHA 90c3787View commit details -
Remove deprecated functions from the config module (#11935)
* Remove compatibility wrappers around `hasUiAccess` and `execElevated` introduced in #10493 from the config module * Remove deprecated `getConfigDirs` from the config module * Add missing imports from `typing` to the config module * Remove deprecated `canStartOnSecureScreens` from the config module * Update what's new Co-authored-by: Michael Curran <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d353d1b - Browse repository at this point
Copy the full SHA d353d1bView commit details -
Configuration menu - View commit details
-
Copy full SHA for ed24425 - Browse repository at this point
Copy the full SHA ed24425View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8749473 - Browse repository at this point
Copy the full SHA 8749473View commit details -
Added some mathematical symbols (#11467)
* Added some mathematical symbols * Addressed missing tab character and a missing level * Added some more mathematical symbols and restructured for better overview * Fixed some symols to match different languages (i.e. see issue #11502 * Addressed review actions and removed the ordinal symbols because they cause issues in many lating languages. Those ordinal symbols should be controlled by the synthesizers. * Addressed review actions (removed the mathematical constants and the incremental symbol to avoid confusions and improved consistency in ortographics)
Configuration menu - View commit details
-
Copy full SHA for 2e0ebb5 - Browse repository at this point
Copy the full SHA 2e0ebb5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 84e2c6e - Browse repository at this point
Copy the full SHA 84e2c6eView commit details
Commits on Jan 22, 2021
-
Remove blank lines in browseable message (#12005)
* Removed the blank lines in browseable message. * Code clean-up. * Addressed review comments: use html.escape to fully escape the message string. * Fixing commit issue (a modification was not correctly added in previous commit). * Update what's new Co-authored-by: Michael Curran <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e8f14f9 - Browse repository at this point
Copy the full SHA e8f14f9View commit details
Commits on Jan 26, 2021
-
Convert NVDA's code base to use output reasons from enum in controlTy…
…pes and remove deprecated REASON_* module level constants (#11969) * Convert NVDA's code base to use output reasons from enum in controlTypes rather than module level constants * Remove deprecated REASON_* constants from controlTypes * Update what's new Co-authored-by: Michael Curran <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 856adec - Browse repository at this point
Copy the full SHA 856adecView commit details
Commits on Jan 31, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 94e2926 - Browse repository at this point
Copy the full SHA 94e2926View commit details
Commits on Feb 1, 2021
-
Fix-up of #11467 in symbol file: (#12017)
- deleted extra tab - removed duplicate symbol definition
Configuration menu - View commit details
-
Copy full SHA for 90dd4e9 - Browse repository at this point
Copy the full SHA 90dd4e9View commit details
Commits on Feb 3, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 376780f - Browse repository at this point
Copy the full SHA 376780fView commit details -
System tests: run Chrome in kiosk mode to stop treeGrid test failing (#…
…12023) * Chrome system tests: run Chrome in kiosk mode, which removes the need to press f6 1 or more times to move from the Chrome to the document. * Linting * Force another pr build.
Configuration menu - View commit details
-
Copy full SHA for 65e183b - Browse repository at this point
Copy the full SHA 65e183bView commit details -
Fix misleading log message for aria-current="true" (PR #11782)
Types and naming for isCurrent were confusing, so normalize the types using an enum and only name as ariaCurrent when the data is specific to aria-current, otherwise use 'isCurrent'. Include comments to link aria-current as the potential (likely) source for 'isCurrent'
Configuration menu - View commit details
-
Copy full SHA for 94f60a8 - Browse repository at this point
Copy the full SHA 94f60a8View commit details -
add styles for userguide and changes (PR #12027)
Co-authored-by: Michael Curran <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1c0ab7c - Browse repository at this point
Copy the full SHA 1c0ab7cView commit details -
Move functions / classes edge -> web
UIA.Web is a new base for browser specific implementations: - spartan-edge - Chromium based browsers: anaheim-edge, chrome This commit is a direct move (no alterations) of code to preserve history. - Move function splitUIAElementAttribs - Move EdgeTextInfo - Move shareable aspects of class EdgeNode: * _get_role * _get_states * _get_ariaProperties * _get_isCurrent * _get_roleText * _get_placeholder * _get_landmark - Move class EdgeList - Move class EdgeHeadingQuickNavItem - Move class EdgeHeadingQuicknavIterator - Move shareable aspects of class EdgeHTMLTreeInterceptor: * makeTextInfo * shouldPassThrough * _iterNodesByType
Configuration menu - View commit details
-
Copy full SHA for edb0e88 - Browse repository at this point
Copy the full SHA edb0e88View commit details -
This is a module containing common classes above the browser specific classes (edge.py, chromium.py). The browser specific classes inherit from these web module classes. - Move splitUIAElementAttribs(attribsString) from edge module to web module - Move common implementation of edge.EdgeNode and rename to web.UIAWeb(UIA), edge.EdgeNode now inherits from web.UIAWeb. - Move implementation of edge.EdgeList and rename to web.List(UIAWeb), edge.EdgeList now inherits from web.List - Move implementation of edge.EdgeHTMLTreeInterceptor and rename to web.UIAWebTreeInterceptor, edge.EdgeHTMLTreeInterceptor now inherits from web.UIAWebTreeInterceptor
Configuration menu - View commit details
-
Copy full SHA for 64ef614 - Browse repository at this point
Copy the full SHA 64ef614View commit details -
Configuration menu - View commit details
-
Copy full SHA for e074421 - Browse repository at this point
Copy the full SHA e074421View commit details -
Depend upon abstract _isIframe rather than concrete impl
The concrete implementation relied on knowing that self is actually a subclass and providing varied behaviour. Instead, abstract this test so it can be altered via polymorphism.
Configuration menu - View commit details
-
Copy full SHA for e3a47ae - Browse repository at this point
Copy the full SHA e3a47aeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3f30bea - Browse repository at this point
Copy the full SHA 3f30beaView commit details -
Use chromium treeinterceptor Use Web module for chromium module Use chromium.ChromiumUIADocument in findOverlayClasses
Configuration menu - View commit details
-
Copy full SHA for 0032d5f - Browse repository at this point
Copy the full SHA 0032d5fView commit details -
Fix freeze in Chromium with UIA
Trade off: slight degradation of performance. UIATextInfo._getTextWithFieldsForUIARange: Test each child to see if it is clipped by or lives completely outside the parent text range, and if so appropriately clip the child range and break out of the for loop. Previously these checks only happened on the final child to try and avoid extra calls, but Edge sometimes returns many more children then it should when on the end of a list, and a trivial slow down is much preferred over a 20 second freeze.
Configuration menu - View commit details
-
Copy full SHA for 833ab78 - Browse repository at this point
Copy the full SHA 833ab78View commit details -
Fix freeze in Chromium with UIA
Trade-off: only the first line is fetched. speech.getObjectSpeech: If the given object should have its text presented (E.g. a document or edit field) and the line at the selection cannot be fetched, then only present the first line. Previously the text for the entire object would be fetched, which in the case of Edgium, was extremely costly and could cause a freeze of 10 seconds or more.
Configuration menu - View commit details
-
Copy full SHA for 65c5b59 - Browse repository at this point
Copy the full SHA 65c5b59View commit details -
Fix duplicate heading announcement Chromium with UIA
As headings are exposed in the element tree, don't expose them in format fields.
Configuration menu - View commit details
-
Copy full SHA for 9c825b6 - Browse repository at this point
Copy the full SHA 9c825b6View commit details -
Fix freeze on checkboxes for chromium with UIA
UIATextInfo._getTextwithFieldsForUIARange: skip children that appear completely before the start of the parent textRange. Stops a freeze on some checkboxes in Edgium and is generally safer.
Configuration menu - View commit details
-
Copy full SHA for 6809fc6 - Browse repository at this point
Copy the full SHA 6809fc6View commit details -
Fix list presentation while in browse mode for Chromium with UIA
Make sure interactive / presentational lists are presented correctly in browseMode in Edgium.
Configuration menu - View commit details
-
Copy full SHA for 50a3097 - Browse repository at this point
Copy the full SHA 50a3097View commit details -
Fix overriding labels when embedded object chars present for Chromium…
… with UIA Embedded object characters in Edgium should not stop overriding labels from being used.
Configuration menu - View commit details
-
Copy full SHA for 8d90a61 - Browse repository at this point
Copy the full SHA 8d90a61View commit details -
Fix identification of layout tables for Chromium with UIA
Allows ignoring of layout tables when configured to do so.
Configuration menu - View commit details
-
Copy full SHA for 56eb068 - Browse repository at this point
Copy the full SHA 56eb068View commit details -
Fix missing value for comboboxes for Chromium with UIA
Ensure the value of comboboxes are used as content.
Configuration menu - View commit details
-
Copy full SHA for 6c676a8 - Browse repository at this point
Copy the full SHA 6c676a8View commit details -
Fix missing control names for Chromium with UIA
Names of controls (that do not use their name as content) are always reported: Currently no way to tell if author has explicitly set name. Therefore always report the name if the control is not of a type that by definition uses its name for content. This may cause some duplicate speaking, but that is currently better than nothing at all.
Configuration menu - View commit details
-
Copy full SHA for 0defba7 - Browse repository at this point
Copy the full SHA 0defba7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6a00a71 - Browse repository at this point
Copy the full SHA 6a00a71View commit details -
Update changes file for PR #12025
PR #12025 was not squash merged (which is the usual practice for this project). Instead, to preserve the history of moved then modified code, the commits have been rebased directly onto master.
Configuration menu - View commit details
-
Copy full SHA for 11ba984 - Browse repository at this point
Copy the full SHA 11ba984View commit details -
Report comments in MS Word with UIA enabled (#9631)
* Change condition for filtering comments * Deal with unretrievable date * Split filtering condition to two separate lines * Replace gesture dictionary with script decorator * Adress review requests. * Create helper function * Address linting errors * Address more linting errors * Modify copyright header * Fixes * Correct syntax * Linting * Ensure comments are read in different Office versions. * Linting * Update what's new Co-authored-by: Michael Curran <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8f31bdc - Browse repository at this point
Copy the full SHA 8f31bdcView commit details
Commits on Feb 5, 2021
-
Add code review checklist for PRs (PR #12037)
Co-authored-by: Leonard de Ruijter <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1392aa3 - Browse repository at this point
Copy the full SHA 1392aa3View commit details
Commits on Feb 8, 2021
-
Merge pull request #12046 from nvaccess/beta
Merge Beta (and translations) into master
Configuration menu - View commit details
-
Copy full SHA for 068b181 - Browse repository at this point
Copy the full SHA 068b181View commit details -
Add missing context help. (PR #12034)
* Fixes some missing context help in advanced settings panel.
Configuration menu - View commit details
-
Copy full SHA for a73b481 - Browse repository at this point
Copy the full SHA a73b481View commit details
Commits on Feb 9, 2021
-
Configuration menu - View commit details
-
Copy full SHA for dcf3a32 - Browse repository at this point
Copy the full SHA dcf3a32View commit details
Commits on Feb 12, 2021
-
Clarify code review checklist instructions (PR #12056)
The intent of the checklist is to serve purely as a reminder, checking items communicates that you have considered the item, and have not accidentally forgotten about it. Further, the checklist acts as a reminder for reviewers, unfortunately GitHub does not yet provide a way to create a dedicated code review template. Additionally the wiki page has been adjusted: https://github.com/nvaccess/nvda/wiki/Github-pull-request-template-explanation-and-examples Co-authored-by: Cyrille Bougot <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e5d62e3 - Browse repository at this point
Copy the full SHA e5d62e3View commit details
Commits on Feb 18, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 8e51a7f - Browse repository at this point
Copy the full SHA 8e51a7fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 567627f - Browse repository at this point
Copy the full SHA 567627fView commit details -
Configuration menu - View commit details
-
Copy full SHA for ec1a5c5 - Browse repository at this point
Copy the full SHA ec1a5c5View commit details -
Configuration menu - View commit details
-
Copy full SHA for a45b084 - Browse repository at this point
Copy the full SHA a45b084View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1775a6d - Browse repository at this point
Copy the full SHA 1775a6dView commit details -
Configuration menu - View commit details
-
Copy full SHA for f2a509a - Browse repository at this point
Copy the full SHA f2a509aView commit details -
Deploy via ssh to deploy.nvaccess.org this time with a correct entry …
…in the ssh known_hosts file.
Configuration menu - View commit details
-
Copy full SHA for 71c385e - Browse repository at this point
Copy the full SHA 71c385eView commit details
Commits on Feb 21, 2021
-
appveyor.yml: add a comment above the call to ssh warning of a freeze…
… if the server address is changed yet known_hosts is not updated.
Configuration menu - View commit details
-
Copy full SHA for eea0406 - Browse repository at this point
Copy the full SHA eea0406View commit details
Commits on Feb 23, 2021
-
Configuration menu - View commit details
-
Copy full SHA for e340852 - Browse repository at this point
Copy the full SHA e340852View commit details -
Fix command line length limit reached (PR #12083)
The number of files passed to xgettext had grown too great, use a file list instead
Configuration menu - View commit details
-
Copy full SHA for bdc71ba - Browse repository at this point
Copy the full SHA bdc71baView commit details -
Report 'unsupported' when toggling screen layout in Word (#10795)
Report 'unsupported' when toggling screen layout in Word (PR #10795) Fixes #7297 Report "unsupported" when trying to toggle screen layout (NVDA+v) in MS Word and other applications that don't have support for screen layout. Previously 'v' was passed through to the application which was confusing for users who expected screen layout to be available. Co-authored-by: Reef Turner <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b4087a2 - Browse repository at this point
Copy the full SHA b4087a2View commit details
Commits on Mar 1, 2021
-
remove unused imports from the nvwave module (#12048)
* Nvwave: Update copyright header * Nvwave: remove unused imports * virtualBuffers: Remove unused import of nvwave
Configuration menu - View commit details
-
Copy full SHA for 5678c8b - Browse repository at this point
Copy the full SHA 5678c8bView commit details
Commits on Mar 2, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 8e3657d - Browse repository at this point
Copy the full SHA 8e3657dView commit details
Commits on Mar 3, 2021
-
Fix usages of some remaining Python 2 names (#12036)
* NVDA controller client Python example: xrange -> range * Add unit test to make sure that locationHelper classes raises expected exceptions when attempting to create their isntances from wrong types. * locationHelper: Long no longer exists in Pythonn 3
Configuration menu - View commit details
-
Copy full SHA for 2c4316d - Browse repository at this point
Copy the full SHA 2c4316dView commit details -
Microsoft Word documents (both with UIA enabled and disabled) now get…
… a treeInterceptor created straight way, but with passThrough (focus mode) enabled. Thus, NVDA+f7 (elements list) is now available with out having to switch to browse mode in Microsoft Word first. (#12051)
Configuration menu - View commit details
-
Copy full SHA for db664be - Browse repository at this point
Copy the full SHA db664beView commit details
Commits on Mar 11, 2021
-
remove winKernel.GetTimeFormat, winKernel.GetDateFormat and usages (#…
…12139) * remove winKernel.GetTimeFormat, winKernel.GetDateFormat and usages * updated changes.t2t
Configuration menu - View commit details
-
Copy full SHA for 0d22a00 - Browse repository at this point
Copy the full SHA 0d22a00View commit details -
remove DriverSettingsMixin alias for AutoSettingsMixin (#12144)
* remove DriverSettingsMixin alias for AutoSettingsMixin * update changes.t2t
Configuration menu - View commit details
-
Copy full SHA for 16b8333 - Browse repository at this point
Copy the full SHA 16b8333View commit details -
remove getSpeechForSpelling alias for getSpellingSpeech (#12145)
* remove getSpeechForSpelling alias for getSpellingSpeech * fix flake8 error * updated changes.t2t
Configuration menu - View commit details
-
Copy full SHA for 8e4b189 - Browse repository at this point
Copy the full SHA 8e4b189View commit details -
Py3.8: Transparently use a Python virtual environment under the hood (#…
…12075) A Python virtual environment is now used transparently by the NVDA build system, and all Python dependencies are installed into this environment using pip. From a developer's perspective using the NVDA build system, there is no need to worry about the Python virtual environment behind the scenes, nor should you create and or activate one manually. All NVDA build system commands will handle this transparently. * To build NVDA, SCons should continue to be used in the usual way. E.g. executing scons.bat in the root of the repository. Running py -m SCons is no longer supported, and scons.py has also been removed. * To run NVDA from source, rather than executing source/nvda.pyw directly, the developer should now use runnvda.bat in the root of the repository. If you do try to execute source/nva.pyw, a message box will alert you this is no longer supported. * To perform unit tests, execute rununittests.bat [<extra unittest discover options>] * To perform system tests: execute runsystemtests.bat [<extra robot options>] * To perform linting, execute runlint.bat <base branch> Behind the scenes, the above batch files (scons, runnvda, rununittests, runsystemtests and runlint) ensure that the Python virtual environment is created and up to date, activates the environment, runs the command and then deactivates. All transparently. A developer should not have to know about the Python virtual environment at all. The first time one of these commands are run, the virtual environment will be created, and all required Python dependencies will be installed with pip. You can see the entire list of packages and their exact versions that pip will use, in requirements.txt in the root of the repository. venvUtils/ensureVenv.py contains the logic to check for, create and update the virtual environment. If a previous virtual environment exists but has a miss-matching Python version or pip package requirements have changed, The virtual environment is recreated with the updated version of Python and packages. If a virtual environment is found but does not seem to be ours, the user is asked if it should be overwritten or not. This script also detects if it is being run from an existing 3rd party Python virtual environment and aborts if so. thus, it is impossible to execute SCons or NVDA from source within another Python virtual environment. venvUtils/ensureAndActivate.bat can be used to ensure the virtual environment exists and is up to date, and then activates it in the current shell, ready for other commands to be executed in the context of NVDA's build system Python virtual environment. this would never normally be executed by itself, though appVeyor uses it at the beginning of its execution and leaves the environment active for the remainder of its execution. venvUtils/venvCmd.bat is a script that runs a single command within the context of the NVDA build system Python virtual environment. It ensures and activates the environment, executes the command, and then deactivates the environment. this script is what all the high-level batch files use internally. SConstruct, and source/nvda.pyw both contain logic that detects the NVDA build system Python virtual environment, and abort if it is not active. As this PR is specific for Python 3.8, it also upgrades the following Python dependencies: • wxPython to 4.1.1 • pySerial to 3.5 • py2exe to 0.10.1.0
1Configuration menu - View commit details
-
Copy full SHA for 528d570 - Browse repository at this point
Copy the full SHA 528d570View commit details -
Update comtypes to 1.1.8 (#12155)
* Update comtypes to 1.1.8 * Fix check_version monkeypatch * Linting
Configuration menu - View commit details
-
Copy full SHA for e2c6f50 - Browse repository at this point
Copy the full SHA e2c6f50View commit details -
Configuration menu - View commit details
-
Copy full SHA for a6ba80c - Browse repository at this point
Copy the full SHA a6ba80cView commit details
Commits on Mar 12, 2021
-
Deprecate import of Commands directly from speech module in favour of…
… speech.commands (#12126) * Include deprecations of import commands directly from speech * fix flake8 issues * changes to match reproduction steps * update changelog
Configuration menu - View commit details
-
Copy full SHA for c901b0f - Browse repository at this point
Copy the full SHA c901b0fView commit details -
implement deprecation of SAYALL behaviour for speakTextInfo (#12150)
* implement deprecation of SAYALL behaviour for speakTextInfo in favour of sayAllHandler * update changelog
Configuration menu - View commit details
-
Copy full SHA for 52bf1ed - Browse repository at this point
Copy the full SHA 52bf1edView commit details
Commits on Mar 16, 2021
-
Chrome system tests: ensure the page is fully loaded (including all i…
…frames) before testing the page (#12174) * Chrome system tests: add a load status line after the start marker, and wait for it to become "Test page load complete" before continuing with the test. This is set by the boy's onload event. * Core: queue the PostNVDAStartup notification so that it is actually executed from within the core loop once running, and after any initial focus has been reported.
Configuration menu - View commit details
-
Copy full SHA for 4779af0 - Browse repository at this point
Copy the full SHA 4779af0View commit details -
Performance increase interacting with Visual Studio (#12170)
* NVDAObjects.UIA.visualStudio.findExtraOverlayClasses: avoid fetching parent unless it is actually needed. Provides a significant performance increase. * Update what's new.
Configuration menu - View commit details
-
Copy full SHA for a20e768 - Browse repository at this point
Copy the full SHA a20e768View commit details -
Stop installer from attempting to delete lib directories for the vers…
…ion of NVDA which has just been installed (#12165) * installer: Unify usages of names from ctypes to avoid linter warnings about star imports * installer: Remove unused imports * Ensure that installer does not try to delete lib directories for the version of NVDA which is currently being installed.
Configuration menu - View commit details
-
Copy full SHA for ee1be35 - Browse repository at this point
Copy the full SHA ee1be35View commit details -
Configuration menu - View commit details
-
Copy full SHA for ef8a0d4 - Browse repository at this point
Copy the full SHA ef8a0d4View commit details -
controlTypes: Remove deprecated ROLE_EQUATION (#12164)
* controlTypes: Remove deprecated ROLE_EQUATION * update changes.t2t Co-authored-by: buddsean <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d67c3c7 - Browse repository at this point
Copy the full SHA d67c3c7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3dcba91 - Browse repository at this point
Copy the full SHA 3dcba91View commit details
Commits on Mar 17, 2021
-
don't rely on star imports from synthDriverHandler (#12172)
* synthDriverHandler: Remove unused imports, standardize copyright header * sayAllHandler: Remove unused import of synthDriverHandler * settingsDialog: don't rely on star imports from synthDriverHandler * globalCommands: don't rely onn star imports from synthDriverHandler, remove unused imports * update changes.t2t Co-authored-by: buddsean <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 04849b0 - Browse repository at this point
Copy the full SHA 04849b0View commit details -
Use DriverSetting classes from autoSettingUtils rather than from driv…
…erHandler (#12168) * Use DriverSetting classes from autoSettingUtils rather than from driverHandler * update changes.t2t Co-authored-by: buddsean <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b3b2e1f - Browse repository at this point
Copy the full SHA b3b2e1fView commit details -
TextInfos must inherit from BaseContentRecogTextInfo (#12157)
* usage of TextInfos that do not inherit from BaseContentRecogTextInfo is removed * remove unusued code * update changes.t2t
Configuration menu - View commit details
-
Copy full SHA for 4b74c7b - Browse repository at this point
Copy the full SHA 4b74c7bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5fbe05d - Browse repository at this point
Copy the full SHA 5fbe05dView commit details
Commits on Mar 18, 2021
-
Fix right-to-left layout direction issues (#12181)
* move to supported usage of wx.StaticBoxSizer standardize LTRStaticBoxSizer usage standardize LTRStaticBoxSizer usage test wx RTL workaround use wxWidgets workaround commit c59e874 Author: buddsean <[email protected]> Date: Tue Mar 16 14:09:26 2021 +1100 try parent instead of sibling method commit 11017de Author: buddsean <[email protected]> Date: Tue Mar 16 13:25:59 2021 +1100 remove LTRStaticBoxSizer workaround commit e17de62 Author: buddsean <[email protected]> Date: Tue Mar 16 13:14:39 2021 +1100 try parent instead of sibling method commit 45514f2 Author: buddsean <[email protected]> Date: Tue Mar 16 11:48:24 2021 +1100 try parent instead of sibling method commit 9575740 Author: buddsean <[email protected]> Date: Tue Mar 16 11:23:59 2021 +1100 try parent instead of sibling method commit 608fb66 Author: buddsean <[email protected]> Date: Mon Mar 15 14:38:37 2021 +1100 test wx RTL workaround commit f1189bf Author: buddsean <[email protected]> Date: Mon Mar 15 14:03:20 2021 +1100 test wx RTL workaround * fix flake8 issues * set layout on mainframe for locale * fix lint * move out wx import * use better typing and naming * remove unused variable * apply DRY * undo risky import change * fix lint * undo risky import change, fix lint * fix nose typing read * remove unneccessary typing import * update changes.t2t
Configuration menu - View commit details
-
Copy full SHA for 073826a - Browse repository at this point
Copy the full SHA 073826aView commit details -
Allow NVDA build system to still function if NvDA repository is moved…
… or copied to another location (#12184) * venvUtils\ensureAndActivate.bat: rather than calling the standard activate.bat from the generated .venv, set the necessary environment variables manually, and make VIRTUAL_ENV be relative to this script, rather than a hard-coded path. This allows the NVDA repository to be moved or copied somewhere else on the same system and the environment used without having to be recreated. * Don't call the deactivate script from venvCmd.bat. We no longer call activate.bat so deactivate.bat may do the wrong thing. But more importantly, we already call endlocal which dumps all changes to the environment anyway, thus it is not needed. * Add extra comments to venvCmd.bat explaining setlocal / endlocal. * ensureAndActivate.bat: add more clearer comments, mentioning .venv's standard activate.bat.
Configuration menu - View commit details
-
Copy full SHA for 7139a9c - Browse repository at this point
Copy the full SHA 7139a9cView commit details -
Stop printing some exceptions in __del__ to standard error (#12148)
* garbageHandler.trackableObject's __del__method: handle the case where the object is being deleted while Python is exiting. In this situation, some global symbols could be None. * comtypesMonkeyPatches: in our override of compointer_base's __del__ method: handle the case where Python is exiting. In this situation some global symbols could become set to None. * Linting * Clarify comment. * comtypesMonkeyPatches._newCpbdel: make isFinalizer check a little easier to read.
Configuration menu - View commit details
-
Copy full SHA for 3c1693d - Browse repository at this point
Copy the full SHA 3c1693dView commit details
Commits on Mar 22, 2021
-
Update espeak to 1.51-dev commit 53915b (PR #12202)
Now using 1.51-dev commit 53915bf0a7cd48f90c4a38ac52fff697723d9f4d
Configuration menu - View commit details
-
Copy full SHA for b5ad8d6 - Browse repository at this point
Copy the full SHA b5ad8d6View commit details -
Configuration menu - View commit details
-
Copy full SHA for abdf77e - Browse repository at this point
Copy the full SHA abdf77eView commit details -
Remove backwards compat aliases from PR 10593 (#12195)
Removes code provided for backwards compatibility in PR #10593 ### Summary of the issue: PR #10593 introduced `speech.speakWithoutPauses ` as an alias for `speech._speakWithoutPauses.speakWithoutPauses` and `speech.re_last_pause` as an alias for `speech._speakWithoutPauses.re_last_pause` for backwards compatibility. Since 2021.1 is going to be backwards compatibility breaking release it makes sense to remove these. ### Description of how this pull request fixes the issue: These aliases are removed and their usages are replaces with `speech.SpeechWithoutPauses(speakFunc=speech.speak).speakWithoutPauses` and `speech.SpeechWithoutPauses.re_last_pause` respectively.
Configuration menu - View commit details
-
Copy full SHA for f2a734b - Browse repository at this point
Copy the full SHA f2a734bView commit details -
Update liblouis to 3.17.0 (PR #12137)
Adds Urdu braille tables to the GUI Co-authored-by: Reef Turner <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 83738d7 - Browse repository at this point
Copy the full SHA 83738d7View commit details
Commits on Mar 23, 2021
-
Move some classes from the main gui module. (#12105)
Code layout in the gui module is sup optimal. This can easily cause cyclic imports for one such example see #11950 While the issue mentioned above has been resolved it makes sense to reorganize this part of the code to minimize likelihood of similar problems in the future. Description of how this pull request fixes the issue: - `LauncherDialog`, `WelcomeDialog` and `AskAllowUsageStatsDialog` were moved to the `gui.startupDialogs` module - `getDocFilePath` has been moved into the new `documentationUtils` module as there is no logical connection between it and gui Co-authored-by: buddsean <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fc6b73f - Browse repository at this point
Copy the full SHA fc6b73fView commit details -
Fix routing to cell in selection (braille) (PR #12208)
When routing to a cell within a selection, an error occurred. When there is a selection self.brailleCursorPos is None.
Configuration menu - View commit details
-
Copy full SHA for 6ede267 - Browse repository at this point
Copy the full SHA 6ede267View commit details -
Remove Adobe Flash support from NVDA (PR #12207)
Support for Adobe Flash content has been removed from NVDA due to the use of Flash being actively discouraged by Adobe. Fixes #11131 Co-authored-by: Reef Turner <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ae38fcc - Browse repository at this point
Copy the full SHA ae38fccView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0316158 - Browse repository at this point
Copy the full SHA 0316158View commit details
Commits on Mar 25, 2021
-
Optional experimental support for Microsoft Excel via UI Automation (#…
…12210) Since 2013, Microsoft has been slowly adding a UI Automation implementation to Microsoft Excel. For quite some time, this implementation was missing too much to be at all useful for NVDA. However, in the last year, Microsoft has increased its effort in this area, starting to fill many of the gaps in the implementation, providing more of a reason for NVDA to start consuming this experimentally, with the goal of one day switching to UI Automation in Excel by default. Not only would this provide significant performance improvemts for NVDA with Excel, but it would also enable scenarios such as using Excel in Application Guard, or remotely via Windows Virtual Desktop, where access to the object model and in-process injection is no longer possible. NVDA will now fall back to relying on UI Automation In Microsoft Excel if available, if NVDA is not able to inject in-process. A new option has been added to NVDA's Advanced settings, which when enabled, forces NVDA to use UI Automation in Microsoft Excel always when available. Although so far navigating, editing and querying cells is all supported, the following features are not yet implemented: • NvDA Elements List for listing formulas, comments etc. The needed UI Automation extensions are not yet available. • Browse mode quick nav. Again, same reason as above. • Setting / consuming screen reader specific column and row headers. This feature probably will not be supported. Instead it is recommended to make these particular sets of data into tables, marking the needed rows and columns as headers in the standrd way for modern Microsoft Excel. As some Excel-specific information on cells does not quite fit with standard NVDA concepts. A new Cell Appearance script (NVDA+o) has been added, which presents a browse mode document, listing these specific bits of information. This script may be changed or removed in future as it is possible to find this information out by looking in the Cell formatting dialog etc anyway, but for now it is there to demonstrate NVDa's ability to fetch this kind of information from UI Automation. Many of Excel's specific features have been exposed by Microsoft through UI automation via either annotations, or custom properties. Standard UIA annotations that NvDA consumes for this support are: • comment: For notes and comments. NVDA exposes the "has comment" state on cells, and reports the comment with a reportComment script (NVDA+alt+c). • Data validation error: the error text is included in the cell's description. • Formula error: the error text is included in the cell's description. • Circular reference error: the error text is included in the cell's description. Microsoft has made use of UI Automation's custom property feature in order to expose many more Excel-specific properties: https://docs.microsoft.com/en-us/office/uia/excel/excelcustomproperties This pr adds an infrastructure in UIAHandler / UIA NVDAObjects which allows registering and accessing these custom property IDs in a standard way. The properties that Microsoft exposes in Excel are: • cellFormula: mapped to NvDA's hasFormula state. • cellNumberFormat: exposed in Cell appearence script (NvDA+o). Note however that Excel currently exposes the raw template value and not the friendly name. So right now this is not as useful as it could be. • hasDataValidation: Exposed in Cell appearence script (NvDA+o) • hasDataValidationDropdown: Mapped to NvDA's submenu state. • dataValidationPrompt: exposed in cell description and Cell appearence script (NvDA+o) • hasConditionalFormatting: exposed in Cell appearence script (NvDA+o) • areGridlinesVisible: exposed in Cell appearence script (NvDA+o) • commentReplyCount: Included in reportComment script (NvDA+alt+c). The above annotations and properties have only been available in Microsoft Excel since build 16.0.13522.10000. Thus turning on this option will only be useful for this build or higher.
Configuration menu - View commit details
-
Copy full SHA for ed5fca6 - Browse repository at this point
Copy the full SHA ed5fca6View commit details -
use wx.Accessible to improve accessibility of our settings panels and…
… checkable list controls (#12215) To fix some accessibility issues in our settings panel and checkable lists, we had to use a custom com server with comtypes. However, wx has built-in functionality to manipulate accessibility properties. This commit removes our own accprop server in favour of wx' native support. Closes #12209
Configuration menu - View commit details
-
Copy full SHA for 57e02ca - Browse repository at this point
Copy the full SHA 57e02caView commit details -
Make com interfaces ide friendly (PR #12201)
* Make UIAutomationClient work for tools and runtime At runtime the import from comtypes.gen will work, as a fallback for IDE / Tools that can't find that, the relative import is used. Note: IDE's wont be aware of 'protected' symbols (beginning with underscore). Protected symbols aren't imported with the from x import * statment. * Auto fix generated files for IDE / tools. Generated "friendly name" comtypes.gen files are modified so that they can be used by tools / IDEs more easily. The files are read, the module name extracted, and the import statement replaced by a more elaborate version which include a fall back to a do a relative import if the comtypes.gen file is not found.
Configuration menu - View commit details
-
Copy full SHA for 8412adb - Browse repository at this point
Copy the full SHA 8412adbView commit details -
Exit NVDA safely by closing all top level windows (#12183)
Unreleased silent installs of NVDA were causing a crash at the end of the install process. it was found NVDA closes the wxApp by forcibly exiting the MainLoop. This is not recommended and the behaviour of closing the TopWindow is recommended. NVDA now will exit even with windows still open, the exit process now closes all NVDA windows and dialogs
Configuration menu - View commit details
-
Copy full SHA for 8665526 - Browse repository at this point
Copy the full SHA 8665526View commit details -
Replace isWin10 with more flexible Windows version checking (PR #11909)
Convenience methods and types have been added to the winVersion module for getting and comparing Windows versions. - isWin10 function found in winVersion module has been removed. - class winVersion.WinVersion is a comparable and order-able type encapsulating Windows version information. - Function winVersion.getWinVer has been added to get a winVersion.WinVersion representing the currently running OS. - Convenience constants have been added for known Windows releases, see winVersion.WIN* constants. Closes #11795 Closes #11837 Closes #11933 Replaces #11796 Replaces #11799
Configuration menu - View commit details
-
Copy full SHA for ff79f51 - Browse repository at this point
Copy the full SHA ff79f51View commit details -
Restore advanced settings layout. (#12223)
The new option introduced by #12210 was not located in the "Microsoft UI Automation" option group as it should. Probably due to missed changes during upmerge of master. It is now Put in this group as intended by using The static box of the sizer as parent for the checkbox rather than the whole panel.
Configuration menu - View commit details
-
Copy full SHA for d90b24e - Browse repository at this point
Copy the full SHA d90b24eView commit details
Commits on Mar 26, 2021
-
Remove backwards compat code from IAccessibleHandler (#12232)
removes code marked as deprecated in #10934 PR #10934 refactored IAccessibleHandler into a package. This necessitated keeping some unused imports but marking them as deprecated. Also various parts of NVDA relied on the fact that IAccessibleHandler star imported all variables from IAccessible and IAccessible2 COM interfaces. Unused imports are removed from IAccessibleHandler NVDA's source has been modified to use IAccessible2 names from the COM interface rather than from IAccessibleHandler.
Configuration menu - View commit details
-
Copy full SHA for 6a0839d - Browse repository at this point
Copy the full SHA 6a0839dView commit details -
Report appointment categories in Microsoft Outlook (PR #11598)
Outlook appointments could have multiple categories (or colors) assigned to them. Fetch the categories from the object model and report them after other appointment details.
Configuration menu - View commit details
-
Copy full SHA for 9a1cca5 - Browse repository at this point
Copy the full SHA 9a1cca5View commit details -
Allow UIA to work again on Win7 after pr #12210 (#12233)
With the merging of pr #12210 it became impossible to interact with UI Automation controls on Windows 7. * Fetching the annotationTypes UIA property raises a COMError if not implemented by the control. On newer Operating Systems UIA core returns a default. * Fetching the SelectionPattern2 interface also causes a COMError on older Operating Systems if not implemented by the control. Therefore: * Catch COMError when fetching UIA annotationTypes. * Catch COMError when fetching the UIA SelectionPattern2 interface. Fixes #12227
Configuration menu - View commit details
-
Copy full SHA for 656ecb5 - Browse repository at this point
Copy the full SHA 656ecb5View commit details
Commits on Mar 28, 2021
-
Patch wx overriding the correct python locale (#12214)
The thread executing this did not have the correct locale set by NVDA through languageHandler.setLanguage. This is due to the latest wxPython incorrectly overriding the locale with one not supported by python. The Windows/System language option should also call locale.setlocale in setLanguage and the locale needs to be reset after wx changes it.
Configuration menu - View commit details
-
Copy full SHA for d9ccf26 - Browse repository at this point
Copy the full SHA d9ccf26View commit details
Commits on Mar 29, 2021
-
Configuration menu - View commit details
-
Copy full SHA for e1a937f - Browse repository at this point
Copy the full SHA e1a937fView commit details
Commits on Mar 30, 2021
-
Ensure that
speech.cancelSpeech
clears instance of `SpeechWithoutPa……uses` which has been used for say all. (#12228) Fixes #12225 PR #12195 removed speech.speakWithoutPauses which was an alias for speech._speakWithoutPauses. While all usages of speech.speakWithoutPauses were found and fixed it turned out than when cancelling speech during say all speech._speakWithoutPauses was cleared rather than instance of SpeakWithoutPauses used for say all. Now the instance of SpeechWithoutPauses which is used during say all is cleared. A function is added to sayAllHandler which creates it first if necessary, and ensures that the single instance is being used for say all.
Configuration menu - View commit details
-
Copy full SHA for 55a9b32 - Browse repository at this point
Copy the full SHA 55a9b32View commit details
Commits on Mar 31, 2021
-
Microsoft Edge with UIA: move the browse mode caret to the target of …
…a same-page link when it is activated, by supporting UI Automation's activeTextPositionChanged event. (#12242) When following a same-page link in a web browser, the page is scrolled to the target of the same-page link, and it is expected that the screen reader will move its browse mode caret to that location as well. Recently a new ActiveTextPositionchanged event was added to UI Automation to allow browsers to communicate this to screen readers. Only in the last week or so, Microsoft Edge Canary has started firing this event when same-page links are activated. NVDA should make use of this. NVDA now registers for UI Automation's ActiveTextPositionChanged event globally, and when one is received, fires its own UIA_activetextPositionChanged NvDA event. This NVDA event is implemented on UIABrowseModeDocument, which uses BrowseMode's _handleScrollTo to move the browse mode caret to the new location. _handleScrollTo had to be changed to accept not just an NvDAObject, but now also a TextInfo, as the ActiveTextPositionChanged event is actually passed a IUIAutomationTextRange.
Configuration menu - View commit details
-
Copy full SHA for 2e37433 - Browse repository at this point
Copy the full SHA 2e37433View commit details
Commits on Apr 6, 2021
-
Fixed a typo in changes file (autoSettingUtils to autoSettingsUtils). (…
…#12263) Co-authored-by: trypolis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ebe1ab5 - Browse repository at this point
Copy the full SHA ebe1ab5View commit details -
Ensure TextInfo.getTextInChunks does not freeze, and provide new frie…
…ndly compareable TextInfo endpoint properties (#12253) TextInfo.getTextInChunks could sometimes end up in an infinit loop when dealing with particular TextInfo implementations such as ITextDocument where setting start to the end of the document results in the start never quite getting there. To work around this specific freeze, getTextInChunks now double checks that the start has really moved to the end of the last chunk. If not, we break out of the loop. However, for a long time now we have wanted to make these TextInfo comparisons much more readable, which can aide in finding logic errors much easier. To that end, TextInfo objects now have start and end properties, which can be compared mathematically, and also set from another, removing the need to use compareEndPoints or setEndPoint. Some examples: Setting a's end to b's start Original code: a.setEndPoint(b, "endToStart") New code: a.end = b.start Is a's start at or past b's end? Original code: a.compareEndPoints(b, "startToEnd") >= 0 New code: a.start >= b.end TextInfo.getTextInChunks has been rewritten to use these new properties.
Configuration menu - View commit details
-
Copy full SHA for 0efeee4 - Browse repository at this point
Copy the full SHA 0efeee4View commit details
Commits on Apr 7, 2021
-
UIA NvDAObject's selectionContainer property: protect against a NULL …
…selectionContainer on UIA's SelectionItemPattern, such as for Lutlook Attachment lists. (#12274) After merging of pr #12210 , The attachment list in Outlook no longer read with NVDA, and an error was produced in the log. It seems that Outlook's attachment list, gives back a NULL pointer for the SelectionContainer property on its UIA SelectionItemPattern. This commit Checks to see if CurrentSelectionContainer is NULL and returns None as there is nothing further we can do with that pattern. Fixes #12265
Configuration menu - View commit details
-
Copy full SHA for 62eaba5 - Browse repository at this point
Copy the full SHA 62eaba5View commit details
Commits on Apr 8, 2021
-
Ensure AppVeyor message is added for translation comment errors (#12283)
Post a relevant message to appveyor and the PR when a build fails due to translation comments missing or unexpectedly included
Configuration menu - View commit details
-
Copy full SHA for 1fdf8ec - Browse repository at this point
Copy the full SHA 1fdf8ecView commit details
Commits on Apr 9, 2021
-
Fix NVDA crash when formatting a timestamp of a log entry under some …
…versions of Universal CRT (#12250) Under some versions of Universal CRT Python can crash when formatting time with time.localtime and locale is set to a language which contains underscore it its name. For users this manifests in a crash of NVDA since default log formatter attempts to format current time with time.localtime when writing anything to the log. WX Python no longer tries to set Python locale to an nonexistent one when creating an instance of wx.app. While this is not necessary any longer when time.localtime is not used we are managing locale ourselves in languageHandler so it makes sense to do it just in one place. When formatting time of the log entries time.localtime is not used any more * Backport of `InitLocale` from Wx Python 4.1.2 to workaround crash encountered under particular versions of Universal CRT. * Custom implementation of `formatTime` for log formatter using win32 API calls to avoid crashes under Server 2019 and Windows 10 1809 * Lint for winKernel: - Remove star imports - Remove duplicate definition of openProcess * logHandler: move import of winKernel to the top of the file and remove unused imports. Co-authored-by: buddsean <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 911d712 - Browse repository at this point
Copy the full SHA 911d712View commit details -
Update espeak-ng to 1.51-dev commit cad1c8e8 (PR #12280)
Adds readme for espeak, including how to update espeak submodule, sourced from: https://github.com/nvaccess/nvda/wiki/Updating-eSpeak-NG
Configuration menu - View commit details
-
Copy full SHA for 49a8578 - Browse repository at this point
Copy the full SHA 49a8578View commit details
Commits on Apr 12, 2021
-
Bug issue template: Rewrote COM Reg. Fix Tool question, to make user …
…more likely to run it before submitting
Configuration menu - View commit details
-
Copy full SHA for db84870 - Browse repository at this point
Copy the full SHA db84870View commit details -
Merge pull request #12276 from XLTechie/bugTemplateCRFTLanguage
Bug issue template: Rewrote COM Reg. Fix Tool question, to make it more action-oriented
Configuration menu - View commit details
-
Copy full SHA for 626e9b9 - Browse repository at this point
Copy the full SHA 626e9b9View commit details
Commits on Apr 14, 2021
-
Configuration menu - View commit details
-
Copy full SHA for bd12c88 - Browse repository at this point
Copy the full SHA bd12c88View commit details
Commits on Apr 15, 2021
-
Improve logging of test for panel destruction (PR #12291)
* Reduces the log noise during destruction of SettingsDialogs * Makes the log easier to follow, objects and constants are now more clearly described. * Fixes a space in the import statement, this was a typo and is strange style.
Configuration menu - View commit details
-
Copy full SHA for 35ceac2 - Browse repository at this point
Copy the full SHA 35ceac2View commit details
Commits on Apr 16, 2021
-
Work around wxWidgets assertion (PR #12292)
See issue #12220 There was a wxAssertion error when closing braille or speech settings panels. ERROR - unhandled exception (09:33:35.263) - MainThread (7112): wx._core.wxAssertionError: C++ assertion ""GetWindow() != 0"" failed at ..\..\src\common\wincmn.cpp(3919) in wxWindowAccessible::GetDescription(): The above exception was the direct cause of the following exception: SystemError: <class 'wx._core.WindowDestroyEvent'> returned a result with an error set There is a lot more information about the investigation on the issue. This PR provides a workaround, the true cause of this assertion has not yet been determined. However in the meantime this PR will prevent the log error, and any additional instability in WX that may occur due to ending up in this situation.
Configuration menu - View commit details
-
Copy full SHA for 516706d - Browse repository at this point
Copy the full SHA 516706dView commit details
Commits on Apr 19, 2021
-
Configuration menu - View commit details
-
Copy full SHA for a17643f - Browse repository at this point
Copy the full SHA a17643fView commit details -
Fix for error on Chromium UIA combo-box when restoring Advanced Setti…
…ngs (#12302) Using .Selection on a combo-box rather than .GetSelection was causing an error when restoring Advanced settings to default. Modified .Selection to .GetSelection()
Configuration menu - View commit details
-
Copy full SHA for 1d038ff - Browse repository at this point
Copy the full SHA 1d038ffView commit details
Commits on Apr 20, 2021
-
Configuration menu - View commit details
-
Copy full SHA for f94aa03 - Browse repository at this point
Copy the full SHA f94aa03View commit details -
Fix reporting of superscript / subscript in Wordpad (#12262)
In IAccessible edit field such as WordPad, enabling "Superscript and subscript" reporting in Document formatting settings was not enough to have them reported. It was also required to have Font attributes reporting enabled. This is due to a forgotten part of the code when reporting of superscript/subscript has been separated from reporting of the other attributes in #10919. Description of how this pull request fixes the issue: Added the missing 'if' statement
Configuration menu - View commit details
-
Copy full SHA for ce28256 - Browse repository at this point
Copy the full SHA ce28256View commit details -
Downgrade to Python 3.7 due to stack corruption in Python 3.8+ (#12298)
Fixes #12152 Fixes #12154 Since upgrading to Python 3.8, several serious crashes in NVDA have been reported. Specifically: • NVDA crashing when using the SAPI4 speech synthesizer: #12152 • NVDA crashing when using Windows Explorer on Windows Server 2012: #12154 Both of these issues were traced to stack corruption after a Python callback of NVDA's was called from external libraries. In SAPI4's case, after calling NVDA's implementation of ITTSBufNotifySink::TextDataStarted, and in the Windows Server 2012 case: IUIAutomationPropertyChangedEventHandler::handlePropertyChangedEvent. It seems as though libFFI / Python ctypes is not cleaning the stack properly after executing a Python callback with the stdcall calling convention (ctypes WINFUNCTYPE), where the callback contained at least one argument larger than 4 bytes (E.g. a long long, or a VARIANT struct), and the arguments preceding it were such that this argument was not aligned to an 8 byte boundary. E.g. the callback might be: • callback(void*, long long) or • callback(void*, void*, int, VARIANT) See Python bug: https://bugs.python.org/issue38748 On that bug I have attached a minimal testcase. This bug affects both Python 3.8 and Python 3.9. The bug is most likely in the libFFI project used by Python's ctypes module. Python 3.8 switched to a much more recent and official version of libFFI I believe. Although we do really want to move to Python 3.8+ as soon as we can, right now this bug makes it impossible to do so. We could specifically work around the currently known manifestations by moving some of that code into C++, but that brings its own risks, and we still don't know where else this issue may appear in our code. The appropriate thing to do right now is stay on Python 3.7 until we can work with Python / libFFI to get this resolved. Description of how this pull request fixes the issue: Downgrades to Python 3.7 by referencing Python 3.7 (rather than 3.8) in NVDA's build system. The existing PRs that needed to be reverted were: • Updating brlAPI to a Python 3.8 build: nvaccess/nvda-misc-deps#20 • Switching to using Python's own pgettext: #12109 • calling os.add_dll_directory when loading liblouis: #12020 None of these PRs provided any user visible changes. The rest of the Python 3.8 work, including the switch to a virtual environment etc is all compatible with Python 3.7 and can remain.
Configuration menu - View commit details
-
Copy full SHA for e019a24 - Browse repository at this point
Copy the full SHA e019a24View commit details -
Fix Issue 12147: new focus target is not always announced (#12252)
fixes #12147 The new focus target is not always announced when: 1. The triggering button is activated while in browse mode 2. The triggering button is removed 3. The focus target is adjacent to where the triggering button was This is because of the overlapping logic for browse mode focus changes that is used to prevent duplicate announcements. That overlapping logic did not account for this scenario. See the linked codepens in #12147 for more examples. I can not specially point to an instance of this in the wild, as all of my use-cases are behind a firewall. However, I know that this behavior is not unusual in SPA-style web apps. Description of how this pull request fixes the issue: This PR fixes the issue by altering the overlapping detecting logic so that: 1. We look at the state of the previous focus object 2. If the state of the previous focus object is DEFUNCT (no longer available) and an overlap was detected, then continue as if there was not an overlap.
Configuration menu - View commit details
-
Copy full SHA for da3028a - Browse repository at this point
Copy the full SHA da3028aView commit details -
Add missing formatting information in MS Excel cells (strikethrough, …
…superscript/subscript) (#12264) Some formatting information is not reported when navigating from one cell to another in Excel, although the corresponding category is checked in Document formatting settings. - strikethrough is not reported even if font attributes is checked - superscript or subscript is not reported even if the corresponding option is checked Strikethrough, superscript and subscript are now reported when navigating through Excel cells if the corresponding option is enabled
Configuration menu - View commit details
-
Copy full SHA for 5de73c1 - Browse repository at this point
Copy the full SHA 5de73c1View commit details -
Fix up of 11738: Force UIA for Outlook messages list even though it d…
…oesn't support UIA natively (#12241) PR #11738 made it impossible to use UIA for controls which doesn't report as native UIA. This decreased accessibility of Outlook's messages list in some versions of Outlook (certainly for 2010 and possibly for 2013) which reports as non native UIA. Description of how this pull request fixes the issue: Similar to the fix in #11828 for these controls the fact that they're non native UIA is ignored.
Configuration menu - View commit details
-
Copy full SHA for 381c976 - Browse repository at this point
Copy the full SHA 381c976View commit details -
remove wx.CENTER_ON_SCREEN and wx.CENTRE_ON_SCREEN (#12309)
We included code to add backwards compatibility for addons for the following deprecated wxPython constants wx.CENTER_ON_SCREEN = wx.CENTRE_ON_SCREEN when used with Dialog.Center() Description of how this pull request fixes the issue: Remove the deprecated code, and it's only usage in AskAllowUsageStatsDialog, replace with self.CentreOnScreen()
Configuration menu - View commit details
-
Copy full SHA for 240f641 - Browse repository at this point
Copy the full SHA 240f641View commit details -
Add code owners and CONTRIBUTING (PR #12294)
With code owners we can automatically request a code review from a code owner when a PR is no longer a draft. Hopefully this helps contributors communicate they are ready for a review from core developers. To facilitate this, new contributions should start in draft state, and be converted to "ready for review" when initial checks are complete. This adds a code owners file, docs: https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners Docs for auto-assign code reviewer: https://docs.github.com/en/organizations/organizing-members-into-teams/managing-code-review-assignment-for-your-team Adds a CONTRIBUTING file which points to our full guide: https://github.com/nvaccess/nvda/wiki/Contributing
Configuration menu - View commit details
-
Copy full SHA for 4781002 - Browse repository at this point
Copy the full SHA 4781002View commit details -
comInterfaces_sconscript: correct case of MathPlayer.py string. (#12310)
Fixes #12281 Math can no longer be read in NVDA with mathPlayer. a regression introduced by pr #12201 comInterfaces_sconscript instructs comtypes to generate Python files from typelibs/mathPlayer.tlb. Comtypes produces MathPlayer.py (note the uppercase M). However, the sconscript target was hardcoded as "mathPlayer.py" (note the lowercase m). This has always been the case, and has not been a problem as scons and Windows is case insensitive and so Scons thought the target had been correctly created. However, pr #12201 makes use of the target's abspath property to rewrite the file with some extra imports. However, the path is made from the hardcoded target, so it has the lowercase m and therefore when the file is written out again, it has a lowercase m, and mathPres cannot then import MathPlayer with an uppercase M. Description of how this pull request fixes the issue: Correct the "mathPlayer.py" string in comInterfaces_sconscript to "MathPlayer.py".
Configuration menu - View commit details
-
Copy full SHA for 37d66a5 - Browse repository at this point
Copy the full SHA 37d66a5View commit details -
Move report formatting changes box to the correct parent (#12307)
In #12181, the setting "Report formatting changes after the cursor" in "Document Formatting" was incorrectly moved to the wrong parent, the static box grouping above it, making it invisible to the user. It was readable using NVDA but not graphically visible to the user. This has been corrected.
Configuration menu - View commit details
-
Copy full SHA for f3306af - Browse repository at this point
Copy the full SHA f3306afView commit details
Commits on Apr 21, 2021
-
Updated developer guide to clarify that the Remote Python Console is …
…unavailable in binary builds (#12316)
Configuration menu - View commit details
-
Copy full SHA for d1c8ccd - Browse repository at this point
Copy the full SHA d1c8ccdView commit details -
prevent Chrome losing focus during systests (#12293)
Our system tests randomly fail due to chrome not having focus, and so NVDA does not read the expected speech. Sometimes this is due to a Docker popup asking for feedback. Changes: - Log when the event postNvdaStartup fires - sleep for 2s before launching chrome Known issues with pull request: - Docker popups may still block the build - 2s of sleep might not be long enough (we have confidence that 10s is) - Lint checking occasionally blocks builds due to a failed merge (likely due to a rare GitHub issue)
Configuration menu - View commit details
-
Copy full SHA for 0703066 - Browse repository at this point
Copy the full SHA 0703066View commit details -
Ensure settings are scrolled to using tab navigation (#12300)
Navigating through settings using tabbing does not visually scroll to the focused control. wxPython ScrolledPanels calculate the position to scroll to based on the relative position to a focus elements parent, rather than the relative position to the ScrolledPanel itself. When fixing right-to-left issues in #12181, another layer of nesting was introduced for controls in our settings panels, which caused the controls to no longer get scrolled to. A patched version of ScrolledPanel is created, which calculates relative position to the ScrolledPanel
Configuration menu - View commit details
-
Copy full SHA for bc8eb11 - Browse repository at this point
Copy the full SHA bc8eb11View commit details -
WinVersion class follow-up: remove ease of access is supported flag (#…
…12222) NVDA requires Windows 7/Server 2008 R2 SP1 or later, therefore Ease of Access is available. This removes easeOfAccess.isSupported flag.
Configuration menu - View commit details
-
Copy full SHA for 6200a07 - Browse repository at this point
Copy the full SHA 6200a07View commit details -
Fix copy config from portable during installation. (PR #12076)
Related PR #9679 Fixes #12071 Fixes #12205 Co-authored-by: Reef Turner <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 46f66ac - Browse repository at this point
Copy the full SHA 46f66acView commit details -
Reuse FILETIME from winKernel. (PR #12312)
* Use FILETIME from winKernel in objidl and SAPI4 internal driver rather than defining it in every file. Follow up of PR #12250:
Configuration menu - View commit details
-
Copy full SHA for dd950eb - Browse repository at this point
Copy the full SHA dd950ebView commit details -
Correctly report accented letters after cap (PR #11977)
Fixes #11948 # Summary of the issue: As described in #11948, some letter with diacritic is not spelt correctly with some synth if "Say cap before capitale" is checked, e. g. 'À' is spelt 'cap A' instead of 'cap A grave'. Looking at getSpellingSpeech function in speech\__init__.py, it appears that this is due to the fact that the string 'cap À' is passed to the synth in the speech sequence in such a case. But the synth is only asked to use character mode for the strings whose length is 1. This is wrong in this case, because 'cap' should be spoken with character mode off, but 'À' should be spoken with character mode on. # Description of how this pull request fixes the issue: In getSpellingSpeech, in the string sequence, I have separated the 'cap' message string from the character to be spelt. If the character to be spelt is of length 1, i.e. not replaced by symbol description or modified pronunciation, character mode is activated. If a string in the speech sequence has a length > 1, because it is a capitalization message or because it corresponds to a character description or symbol replacement, character mode is disabled. Note that the 'cap' message can be of two types: - with 'cap' indication before as in English: 'cap %s' - with 'cap' indication after as in French: '%s majuscule' Co-authored-by: Reef Turner <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4d47375 - Browse repository at this point
Copy the full SHA 4d47375View commit details -
Fix readme typo/grammar (PR #12301)
In reading the README recently, I noticed several areas where minor grammar corrections could be made, and one or two where the grammar in certain paragraphs could be made to flow better for a more clear understanding. Mostly these are rather insignificant changes, and on their own wouldn't be worth a PR, but collected together I thought they might be considered. # Description of how this pull request fixes the issue: Thinking that improving the readability of the readme could aid new devs, I made the following changes: - Inserted a few missing words with my best guess as to what they should have been. - Fixed one capitalization error. - Converted indefinite articles to definite where appropriate. - Changed the format of a link to be like other links on the same site. - In one case, added a missing link. - Rephrased a couple small items, and the Get Support paragraph.
Configuration menu - View commit details
-
Copy full SHA for 330961c - Browse repository at this point
Copy the full SHA 330961cView commit details -
No longer fail to report content of unfocused text fields in Firefox (#…
…12319) Fixes #12114 PR #12025 started catching only very specific exceptions when getting selection of edit fields. However in Firefox attempting to get caret for non focused edit fields results in RuntimeError which made it impossible to speak these controls. Description of how this pull request fixes the issue: When getting content of edit fields in speech, we're now catching RuntimeError as well and treating this situation like no selection.
Configuration menu - View commit details
-
Copy full SHA for a94f5fe - Browse repository at this point
Copy the full SHA a94f5feView commit details
Commits on Apr 22, 2021
-
Fix up from #12210: Excel without UIA enabled: again allow typing and…
… editing in cells (#12321) Fixes #12303 After merging of pr #12210 editing cells in Excel without UIA enabled became im possible as NVDA did not report / track focus had ented the Cell Edit control. This was due to the EXCEL6 window accidentally being marked as having a good UIA implementation. This was testing code left over from the early implementation of #12210. Description of how this pull request fixes the issue: Remove EXCEL6 from the good UIA windows list. Also ensure that MSAA focus events on this window are ignored when using Excel with UIA enabled, as Excel will fire its own UIA focus event on an edit control within the active cell.
Configuration menu - View commit details
-
Copy full SHA for 03746a1 - Browse repository at this point
Copy the full SHA 03746a1View commit details -
refactor the exit of nvda and gui.terminate (#12286)
Summary of the issue: When restarting NVDA, WM_QUIT is posted as an event to the window, forcibly exiting the app. This leaves objects such as the system tray icon left behind. Additionally, changes introduced in #12183 - caused the braille viewer to be closed without saving state properly - lost code that destroyed the system tray and menu in some instances - made most of gui.terminate no longer necessary/redundant Description of how this pull request fixes the issue: - A windows event winUser.WM_EXIT_NVDA is registered that triggers safeAppExit and can be called across instances of NVDA. - move the safe destruction of the brailleviewer to safeAppExit so that it is exited properly before destruction - reintroduce the destruction of the system tray icon and menu, and remove the icon manually. - ensured safeAppExit is not called from gui.terminate if it has been called elsewhere to terminate the app. WM_QUIT is the other way to exit the MainLoop other than safeAppExit - removed restarting the MainLoop in gui.terminate to process pending events as this doesn't work. Known issues with pull request: - When starting a new instance of NVDA with an existing instance running, where one is version <2020.4, NVDA will not exit safely. Instead, the running NVDA copy will terminate directly using the behaviour of 2020.4. This is because WM_EXIT_NVDA won't be registered on the older instance. - Issues with terminating NVDA across instances cannot be logged properly as the loghandler hasn't been initialized
Configuration menu - View commit details
-
Copy full SHA for 60c0b76 - Browse repository at this point
Copy the full SHA 60c0b76View commit details
Commits on Apr 23, 2021
-
Configuration menu - View commit details
-
Copy full SHA for d9afe35 - Browse repository at this point
Copy the full SHA d9afe35View commit details
Commits on Apr 27, 2021
-
Configuration menu - View commit details
-
Copy full SHA for a0089a2 - Browse repository at this point
Copy the full SHA a0089a2View commit details
Commits on Apr 28, 2021
-
Suppressed the option to file a default issue on NVDA's Github new is…
…sue chooser page. (PR #12334) (#12334) The default issue is just a copy of the bug issue template with introductory text suggesting it not be used. Added a config.yml file to the Github issue config folder, which stops the option from being generated. Left the default issue template file in place, in case some Github quirk or error allows its filing in the future.
Configuration menu - View commit details
-
Copy full SHA for 260063b - Browse repository at this point
Copy the full SHA 260063bView commit details -
Create tool for comparing GUI and UI elements in copies of NVDA (#12308)
GUI and UI features for NVDA can become lost through code refactors. Generating screenshots and comparing text across copies of NVDA is an annoying process for developers. A tool is created using our system tests to generate screenshots and text of all the content in NVDA settings. This can be expanded upon to include other GUI and UI features of NVDA.
Configuration menu - View commit details
-
Copy full SHA for e8c32e3 - Browse repository at this point
Copy the full SHA e8c32e3View commit details -
Developer Guide: Fix not parsed headers (#12332)
The following two snippets can be found in the current Developer Guide as rendered in HTML format: `+++ An Example Manifest File +++` `++ Plugins and Drivers ++` These have been around for quite some time. It seems quite obvious they should be rendered as headers, respectively: `4.2.2. An Example Manifest File` `4.3. Plugins and Drivers`
Configuration menu - View commit details
-
Copy full SHA for badd390 - Browse repository at this point
Copy the full SHA badd390View commit details
Commits on Apr 29, 2021
-
Speech Viewer: allow to close with alt+F4 & add a close button on the…
… title bar for use with pointing devices (#10791) (#12330) The Speech Viewer currently has no close button nor can be closed with alt+F4. As described by @Qchristensen in #10791 (comment), most dialogs in NVDA can be closed with alt+F4. As argued by @bhavyashah in #10791 (comment), the Speech Viewer is especially useful for sighted testers who might be more familiar in using pointing devices than keyboard shortcuts. Description of how this pull request fixes the issue: Handle closing with alt+F4 & add a standard close button in the title bar of the dialog. Co-authored-by: Sean Budd <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f84a7d9 - Browse repository at this point
Copy the full SHA f84a7d9View commit details -
Braille Viewer: Add a close button on the title bar for use with poin…
…ting devices (#12328) The Braille Viewer currently presents no close control on its GUI. It can only be closed with alt+F4 or by means of the dedicated NVDA Tools menu entry. Description of how this pull request fixes the issue: Add a standard close button on the title bar of the Braille Viewer dialog.
Configuration menu - View commit details
-
Copy full SHA for e2d2696 - Browse repository at this point
Copy the full SHA e2d2696View commit details
Commits on Apr 30, 2021
-
Fix Sapi4 pitch change (PR #12354)
Fixes: #12311 Co-authored-by: Reef Turner <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a3af16e - Browse repository at this point
Copy the full SHA a3af16eView commit details -
Added guidance on where to provide info in github templates (PR #12333)
Added a new paragraph to the bug, feature, and default issue templates, explaining that comments should appear BENEATH the lines with hashmarks. Updated the COM Reg. Fix Tool question in the default issue template, to the current bug template's revision.
Configuration menu - View commit details
-
Copy full SHA for f392c23 - Browse repository at this point
Copy the full SHA f392c23View commit details
Commits on May 3, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 3f6bf0c - Browse repository at this point
Copy the full SHA 3f6bf0cView commit details
Commits on May 4, 2021
-
Elements List: Don't remove the label of a filled spin button input f…
…ield (#12317) (#12318) In browse mode documents, when a spin button input field is filled with a value, its label goes missing from the Elements List dialog. Description of how this pull request fixes the issue: Remove the role ROLE_SPINBUTTON from the set of exceptions for which the content replaces the label.
Configuration menu - View commit details
-
Copy full SHA for 86fe20f - Browse repository at this point
Copy the full SHA 86fe20fView commit details
Commits on May 5, 2021
-
Focus chrome after starting in system tests (#12352)
As discussed in #12293, our systems fail randomly. Usually this is due to another window stealing focus, such as the taskbar or Docker. As system tests are run locally, we shouldn't be killing these processes. Description of how this pull request fixes the issue: Use windows API to make the chrome window gain focus Adds logging that lists the foreground window and open windows if chrome doesn't gain focus Removes extra sleep time after starting NVDA
Configuration menu - View commit details
-
Copy full SHA for bacd1ab - Browse repository at this point
Copy the full SHA bacd1abView commit details -
Revert "Microsoft Word documents (both with UIA enabled and disabled)…
… now get a treeInterceptor created straight way, but with passThrough (focus mode) enabled. Thus, NVDA+f7 (elements list) is now available with out having to switch to browse mode in Microsoft Word first. (#12051)" (#12365) This reverts pr #12051 commit db664be. Fixes #12117 Summary of the issue: In both Outlook and Windows 10 Mail, a Microsoft Word document control is used to display content of received emails and emails currently being composed. In NVDA 2020.4, NVDA would use browse mode for reading emails, but not for writing emails. However, after merging of pr #12051 browse mode is no longer used by default when reading emails. This is because the base Microsoft Word document NVDAObject now creates a TreeInterceptor all the time, but set to focus mode, so that elements list is always available in Microsoft Word. But as hxMail and Outlook implementations assumed browse mode would be available for the TreeInterceptor always, and only created the TreeInterceptor in the reading pane, Windows 10 mail and Outlook ended up getting no treeInterceptor for writing email (ok) but for reading email it got a treeInterceptor but set to focus mode (not okay). Description of how this pull request fixes the issue: Reverts pr #12051 .
Configuration menu - View commit details
-
Copy full SHA for 5ce7545 - Browse repository at this point
Copy the full SHA 5ce7545View commit details
Commits on May 6, 2021
-
No startup sound for launcher --minimal (PR #12322)
Fixes #12289 Co-authored-by: Reef Turner <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 54e18f5 - Browse repository at this point
Copy the full SHA 54e18f5View commit details -
Fix wx assertion error (PR #12363)
Fixes: #12336 Fixes: #12220 # Summary of the issue: Issue#12220 Causes a wx assertion message when either the Braille or Speech settings panels are open. This seems to be related to the expando text control used on both panels. The assertion is in wx's accessibility code, which has been introduced in our latest upgrade of wxPython. The PR #12292 attempted to fix this by explicitly destroying the expando text control when closing. In #12292 it was missed that the onSave callback was also called for the apply button. # Description of how this pull request fixes the issue: While looking at adding an explicit close callback for panels, I noticed that Destroy was being called manually during the event handler. Scheduling a destroy call after the event handler seems to resolve this issue. As I understand, destroying children explicitly is not required. While here also: - Tidy onSave / onApply - Add type info for 'catIdToInstanceMap' and 'categoryClasses'
Configuration menu - View commit details
-
Copy full SHA for a3e983a - Browse repository at this point
Copy the full SHA a3e983aView commit details -
Recognize Windows 10 build 19043 as Version 21H1 (May 2021 Update) (PR …
…#12259) * WinVersion: recognize Windows 10 build 19043 as Version 21H1. Add WIN10_21H1 constant and 21H1 key to Windows 10 versions to builds map. * AppX: update max version tested key to 10.0.19043.0 (Version 21H1).
Configuration menu - View commit details
-
Copy full SHA for a7f9d47 - Browse repository at this point
Copy the full SHA a7f9d47View commit details
Commits on May 7, 2021
-
Increase AppVeyor git clone depth and lint try branch builds (#12346)
Up the clone depth to unlimited (by removing setting the value) Fetch master directly when performing a try-branch build so that lint checks can now run on try branch builds recursively fetch submodules on demand.
Configuration menu - View commit details
-
Copy full SHA for a110d14 - Browse repository at this point
Copy the full SHA a110d14View commit details -
refactor the exit of nvda and gui.terminate (#12342)
Summary of the issue: Changes introduced in #12183 - caused the braille viewer to be closed without saving state properly - lost code that destroyed the system tray and menu in some instances - made most of gui.terminate no longer necessary/redundant Description of how this pull request fixes the issue: - Creates `core.triggerNVDAExit` which terminates necessary modules safely and then closes all windows - Destroys the system tray icon and menu - Uses a parser error message if a new NVDA instance fails to end a running instance. - Uses an enum for ChangeWindowMessageFilter filters. Known issues with pull request: WM_QUIT will not exit the app safely (called from a new NVDA instance) when a dialog such as WelcomeDialog is still open
Configuration menu - View commit details
-
Copy full SHA for 9dc1f36 - Browse repository at this point
Copy the full SHA 9dc1f36View commit details -
move speech/__init__.py to speech/speech.py and move sayAllHandler.py…
… to speech/sayAll.py
Configuration menu - View commit details
-
Copy full SHA for 57f2791 - Browse repository at this point
Copy the full SHA 57f2791View commit details -
Python Console: Jump to previous/next result (PR #9785)
Fixes #9784 Summary of the issue: In the output pane of the Python Console, it can be tedious to inspect a series of lengthy output results. Description of how this pull request fixes the issue: Provide key bindings to jump to the previous/next result, select a whole result and clear the output pane. Co-authored-by: Reef Turner <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c22509b - Browse repository at this point
Copy the full SHA c22509bView commit details
Commits on May 9, 2021
-
Developer Guide: Minor fixes (#12384)
* Fix broken link to 7-zip * Add a missing internal link to the "Packaging code as NVDA Add-ons" section * Remove extraneous or trailing whitespace
Configuration menu - View commit details
-
Copy full SHA for f8c1826 - Browse repository at this point
Copy the full SHA f8c1826View commit details -
EditableText: Do not treat "\r\n" as two characters when
backspace
……is pressed (#12379) In Notepad++, when hitting backspace to delete a line break, NVDA announces "blank" instead of "new line". The TextInfo of the Scintilla implementation may contain "\r\n" instead of "\n". The current implementation of EditableText._backspaceScriptHelper treats it as two characters and thus fails to trigger a proper announce. Description of how this pull request fixes the issue: Replace "\r\n" by "\n" before further treatment of the deleted chunk.
Configuration menu - View commit details
-
Copy full SHA for ef53fb5 - Browse repository at this point
Copy the full SHA ef53fb5View commit details -
Elements List dialog: Remove the accelerator key on the "Activate" bu…
…tton (#6167) (#12369) Fixes #6167 Summary of the issue: In the English locale, there is an accelerator key collision between the "Annotation" element type and the "Activate" button, both set to the letter "A". In the French locale, there is collision between the element type "Form field" ("Champs de formulaire") and the same button ("Activer"), both set to the letter "C". This changes the behavior of the accelerator key that focuses the radio button but does not activate it. This is not a bug at all, but is not ergonomically optimum, especially for less advanced users. Description of how this pull request fixes the issue: As suggested by @Qchristensen, remove the accelerator key setting from the "Activate" button as it is, when available, the default action of the dialog upon pressing the enter key. In most locale, this change should not raise the need for a new translation, as the "Activate" label already exists without an accelerator marker as "a message reported when the action at the position of the review cursor or navigator object is performed.". Just to be sure, I also added a warning in the translators comment for the button label to ask them to beware of the risk of collision.
Configuration menu - View commit details
-
Copy full SHA for e2c206d - Browse repository at this point
Copy the full SHA e2c206dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8eff942 - Browse repository at this point
Copy the full SHA 8eff942View commit details -
Configuration menu - View commit details
-
Copy full SHA for 509b7fa - Browse repository at this point
Copy the full SHA 509b7faView commit details
Commits on May 10, 2021
-
Only run AppVeyor linting check on branches which aren't master (#12378)
Master builds are currently failing at the linting step such as https://ci.appveyor.com/project/NVAccess/nvda/builds/39046507 https://ci.appveyor.com/project/NVAccess/nvda/builds/39045879 Lint checking doesn't need to occur for master builds Description of how this pull request fixes the issue: Don't run the appveyor lint checking on master branches
Configuration menu - View commit details
-
Copy full SHA for a2a6e23 - Browse repository at this point
Copy the full SHA a2a6e23View commit details -
refactor of sayAllHandler into speech. (#12251)
SpeechWithoutPauses is only used by sayAllHandler, but the code lies in speech\__init__.py. Due to code changes sayAllHandler needs to instantiate a SpeechWithoutPauses instance, and would either introduce a circular dependency or require a singleton to be created when the instance is needed. Description of how this pull request fixes the issue: - sayAllHandler is moved to a new module - speech.sayAll. - SpeechWithoutPauses is moved to it's own module - speech\__init__.py has been moved to speech\speech.py so that speech.sayAll can import the necessary functions from speech. - sayAllHandler top level functions have been refactor into a class. An instance of SayAllHandler is initialised when NVDA is started in a consistent manner with other initialisations in the code base.
Configuration menu - View commit details
-
Copy full SHA for b95743d - Browse repository at this point
Copy the full SHA b95743dView commit details -
Merge pull request #12251 from nvaccess/sayAllHandler-refactor
refactor of sayAllHandler into speech
Configuration menu - View commit details
-
Copy full SHA for b60b974 - Browse repository at this point
Copy the full SHA b60b974View commit details -
Merge pull request #12388 from nvaccess/beta
Merge Beta (and translations) into master
Configuration menu - View commit details
-
Copy full SHA for fa708d7 - Browse repository at this point
Copy the full SHA fa708d7View commit details -
move changes to correct header (#12390)
A changes item was accidentally added to the wrong release header in PR #11598 Description of how this pull request fixes the issue: Move the changelog item to the correct release
Configuration menu - View commit details
-
Copy full SHA for 01605b6 - Browse repository at this point
Copy the full SHA 01605b6View commit details
Commits on May 11, 2021
-
In MS Word, fixed table quick navigation when include layout table op…
…tion is enabled (#11899) Summary of the issue: In MS Word/Outlook browse mode, layout tables (i.e. tables with no border) are skipped when using table quick navigation key (T and shift+T), even if "Include layout tables" options is enabled in Browse mode settings. Description of how this pull request fixes the issue: In NVDAObjects\window\winword, I have modified the TableWinWordCollectionQuicknavIterator filter method so that the iterator returns a table if borders are enabled or if layout tables should be included. I have checked in nvdaHelper\remote\winword.cpp that the presence or the absence of a border was already the criterion that defines if a table is a layout table or not. (so nothing done in this file) Co-authored-by: buddsean <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a794a4e - Browse repository at this point
Copy the full SHA a794a4eView commit details
Commits on May 12, 2021
-
always reset speechWithoutPauses instance when sayAll cancelled (#12396)
The function header for sayAllHandler is incorrect, and the behaviour of cancelling sayAll speech changed in #12251
Configuration menu - View commit details
-
Copy full SHA for 5d4e64f - Browse repository at this point
Copy the full SHA 5d4e64fView commit details -
improve state management in speech.py (#12395)
Summary of the issue: Using shift to resume speech after using shift to pause speech does not resume speech. This is because when isPaused is imported through speech\__init__.py it is does not reference the global variable used in speech.py Description of how this pull request fixes the issue: Removes the use of top level variables in speech.py in favour of a private dataclass to manage state, and an enum for certain modes. Constants (or rather, variables with names in all capitals) remain as is.
Configuration menu - View commit details
-
Copy full SHA for 8938ca4 - Browse repository at this point
Copy the full SHA 8938ca4View commit details -
Ensure not to maintain AccessibleTable2 when fetching child nodes whe…
…n the underlying table has neither rows nor columns (#12360) When creating a virtual buffer and NVDA encounters a table, it wil render the children of that table. It keeps a reference to the IAccessibleTable2 interface of the table until it has found a cell in that table. However, when a table contains no cells (i.e. when it has neither rows nor columns) and it encounters an inner table in that table, that inner table is ignored and table navigation does not work. Description of how this pull request fixes the issue: This pr ensures that when row and column count are 0, the IAccessibleTable2 reference isn't used when rendering children. Therefore, for every child, the logic that checks for IAccessibleTable2 will apply and issue #12359 no longer occurs. As a bonus, I removed support for IAccessibleTable2 support. This support was left in the VBuf code to support older versions of Seamonkey. I verified that Seamonkey now uses a version of Gecko that also uses IAccessibleTable2. Co-authored-by: buddsean <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 11b9950 - Browse repository at this point
Copy the full SHA 11b9950View commit details -
Move some helper functions from main IAccessibleHandler module to sat…
…isfy Linter and decrease likelihood of circular imports (#12367) Summary of the issue: Linter complains about various imports in IAccessibleHandler not being at the top of file. In the current situation moving them to the top causes errors about imports from not fully initialized module. Description of how this pull request fixes the issue: At first I thought this can be solved by not importing NVDAObjects.IAccessible in the api module which is unused there anyway. Unfortunately removing this import just delayed the error but NVDA still was unable to start. Therefore I've moved parts of IAccessibleHandler which are imported by various other files in this package to two new files: types.py contains typing information for IAccessibleHandler utils.py contains various utility functions mostly introduced in #11521 Co-authored-by: buddsean <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 60bf94e - Browse repository at this point
Copy the full SHA 60bf94eView commit details -
prevent ExitDialog from being destroyed twice (#12403)
the following error happens when exiting NVDA via NVDA+q exit dialog shows, then enter: DEBUG - core._closeAllWindows (18:25:34.959) - MainThread (8636): destroying main frame during exit process ERROR - unhandled exception (18:25:34.959) - MainThread (8636): Traceback (most recent call last): File "C:\work\repo\nvda\7\.venv\lib\site-packages\wx\core.py", line 3407, in <lambda> lambda event: event.callable(*event.args, **event.kw) ) RuntimeError: wrapped C/C++ object of type ExitDialog has been deleted Description of how this pull request fixes the issue: Prevents ExitDialog from being destroyed twice
Configuration menu - View commit details
-
Copy full SHA for 5603440 - Browse repository at this point
Copy the full SHA 5603440View commit details
Commits on May 13, 2021
-
Add 2021.1 release blurb (PR #12376)
Co-authored-by: Reef Turner <[email protected]> Co-authored-by: Bill Dengler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ea1b827 - Browse repository at this point
Copy the full SHA ea1b827View commit details
Commits on May 14, 2021
-
Safe screenshot names for system tests (#12410)
If a test has a name with special characters, and the test fails, a screenshot is not generated Example: "Robot.chromeTests.Table in style display: table" Also teardown failed: OSError: Bad path: nvdaTestRunLogs\Robot.chromeTests-Table_in_style_display:_table-failedTest.png Description of how this pull request fixes the issue: replace special characters using url-style escaping from the screenshot filename
Configuration menu - View commit details
-
Copy full SHA for 5cbaad2 - Browse repository at this point
Copy the full SHA 5cbaad2View commit details -
Lint changes for 2021.1 (#12411)
### Summary of the issue: - various code-fences are not formatted properly - inconsistent indentation on lists - inconsistent formatting of messages ### Description of how this pull request fixes the issue: - enforce `- Example changelog message. (#123[, #321])` format using the following regex to highlight conforming messages `(.*\. \((#[0-9]+(, )?)+\)$| -.*)` - replace all usages of single ` with `` - standarise indentation for second level lists to use the recommend two spaces
Configuration menu - View commit details
-
Copy full SHA for 6511aa0 - Browse repository at this point
Copy the full SHA 6511aa0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1007f9e - Browse repository at this point
Copy the full SHA 1007f9eView commit details