-
-
Notifications
You must be signed in to change notification settings - Fork 621
/
changes.t2t
3331 lines (2896 loc) · 350 KB
/
changes.t2t
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
What's New in NVDA
%!includeconf: ../changes.t2tconf
= 2021.3 =
== New Features ==
- Adds an input gesture for toggling settings for reporting the style of cell borders. (#10408)
- Support for the new HID Braille specification which aims to standardise support for Braille Displays. (#12523)
- Devices that support this specification will be auto detected by NVDA.
- For technical details on NVDA's implementation of this specification, see https://github.com/nvaccess/nvda/blob/master/devDocs/hidBrailleTechnicalNotes.md
-
== Changes ==
- Espeak-ng has been updated to 1.51-dev commit ``74068b91bcd578bd7030a7a6cde2085114b79b44``. (#12665)
- NVDA will default to eSpeak if no installed OneCore voices support the NVDA preferred language. (#10451)
- If OneCore voices consistently fail to speak, revert to eSpeak as a synthesizer. (#11544)
- By default, every symbol is now spoken when navigating by word.
This can be toggled in the Preferences dialog or with a new (unassigned) command. (#11779)
-
== Bug Fixes ==
- Tracking keyboard modifiers (such as Control, or Insert) is more robust when watchdog is recovering. (#12609)
-
== Changes for Developers ==
- ``NVDAObjects.UIA.winConsoleUIA.WinConsoleUIA.isImprovedTextRangeAvailable`` has been deprecated for removal in 2022.1. (#12660)
- Instead use ``apiLevel`` (see the comments at ``_UIAConstants.WinConsoleAPILevel`` for details).
-
- Transparency of text background color sourced from GDI applications (via the display model), is now exposed for add-ons or appModules. (#12658)
- New 'Atomic' speech commands have been introduced. (#12710)
- 'Symbol' speech command, encapsulates symbol descriptions.
- `UserInterface` speech command, encapsulates NVDA's user interface messages.
-
= 2021.2 =
== Important notes ==
- Screen Curtain on previous releases of NVDA is no longer compatible with versions of Windows newer than Windows 10 21H2 (10.0.19044).
This includes Windows 10 Insiders and Windows 11.
This is due to a change in the Windows Magnification API.
When using previous NVDA releases and Windows newer than Windows 10 21H2, screen curtain may fail to work without warning.
To ensure security, confirm that screen curtain works properly with new or experimental versions of Windows.
(#12491, #12684)
-
== New Features ==
- Support for ARIA annotations:
- adds a command to read a summary of details of an object with aria-details. (#12364)
- adds an option in advanced to report if an object has details in browse mode. (#12439)
-
- In Windows 10 Version 1909 and later (including Windows 11), NVDA will announce suggestion count when performing searches in File Explorer. (#10341, #12628)
- In Microsoft Word, NVDA now announces the result of indent and hanging indent shortcuts when executed. (#6269)
-
== Changes ==
- Espeak-ng has been updated to 1.51-dev commit ``ab11439b18238b7a08b965d1d5a6ef31cbb05cbb``. (#12449, #12202, #12280, #12568)
- If article is enabled in the user preferences for document formatting, NVDA announces "article" after the content. (#11103)
- Updated liblouis braille translator to [3.18.0 https://github.com/liblouis/liblouis/releases/tag/v3.18.0]. (#12526)
- New braille tables: Bulgarian grade 1, Burmese grade 1, Burmese grade 2, Kazakh grade 1, Khmer grade 1, Northern Kurdish grade 0, Sepedi grade 1, Sepedi grade 2, Sesotho grade 1, Sesotho grade 2, Setswana grade 1, Setswana grade 2, Tatar grade 1, Vietnamese grade 0, Vietnamese grade 2, Southern Vietnamese grade 1, Xhosa grade 1, Xhosa grade 2, Yakut grade 1, Zulu grade 1, Zulu grade 2
-
-
== Bug Fixes ==
- In Windows 10 Calculator, NVDA will announce calculator expressions on a braille display. (#12268)
- In terminal programs on Windows 10 version 1607 and later, when inserting or deleting characters in the middle of a line, the characters to the right of the caret are no longer read out. (#3200)
- Diff Match Patch now enabled by default. (#12485)
-
- The braille input works properly with the following contracted tables: Arabic grade 2, Spanish grade 2, Urdu grade 2, Chinese (China, Mandarin) grade 2. (#12541)
- The COM Registration Fixing Tool now resolves more issues, especially on 64 bit Windows. (#12560)
- Improvements to button handling for the Seika Notetaker braille device from Nippon Telesoft. (#12598)
- Improvements to announcing the Windows emoji panel and clipboard history. (#11485)
- Updated the Bengali alphabet character descriptions. (#12502)
- NVDA exits safely when a new process is started. (#12605)
- Reselecting the Handy Tech braille display driver from the Select Braille Display dialog no longer causes errors. (#12618)
- Windows version 10.0.22000 or later is recognized as Windows 11, not Windows 10. (#12626)
- Screen curtain support has been fixed and tested for Windows versions up until 10.0.22000. (#12684)
- If no results are shown when filtering input gestures, the input gesture configuration dialog continues to work as expected. (#12673)
-
== Changes for Developers ==
- ``characterProcessing.SYMLVL_*`` constants should be replaced using their equivalent ``SymbolLevel.*`` before 2022.1. (#11856, #12636)
- ``controlTypes`` has been split up into various submodules, symbols marked for deprecation must be replaced before 2022.1. (#12510)
- ``ROLE_*`` and ``STATE_*`` constants should be replaced to their equivalent ``Role.*`` and ``State.*``.
- ``roleLabels``, ``stateLabels`` and ``negativeStateLabels`` have been deprecated, usages such as ``roleLabels[ROLE_*]`` should be replaced to their equivalent ``Role.*.displayString`` or ``State.*.negativeDisplayString``.
- ``processPositiveStates`` and ``processNegativeStates`` have been deprecated for removal.
-
- On Windows 10 Version 1511 and later (including Insider Preview builds), the current Windows feature update release name is obtained from Windows Registry. (#12509)
- Deprecated: winVersion.WIN10_RELEASE_NAME_TO_BUILDS will be removed in 2022.1, there is no direct replacement. (#12544)
-
= 2021.1 =
This release includes optional experimental support for UIA in Excel and Chromium browsers.
There are fixes for several languages, and for accessing links in Braille.
There are updates to Unicode CLDR, mathematical symbols, and LibLouis.
As well as many bug fixes and improvements, including in Office, Visual Studio, and several languages.
Note:
- This release breaks compatibility with existing add-ons.
- This release also drops support for Adobe Flash.
-
== New Features ==
- Early support for UIA with Chromium based browsers (such as Edge). (#12025)
- Optional experimental support for Microsoft Excel via UI Automation. Only recommended for Microsoft Excel build 16.0.13522.10000 or higher. (#12210)
- Easier navigation of output in NVDA Python Console. (#9784)
- alt+up/down jumps to the previous/next output result (add shift for selecting).
- control+l clears the output pane.
- NVDA now reports the categories assigned to an appointment in Microsoft Outlook, if any. (#11598)
- Support for the Seika Notetaker braille display from Nippon Telesoft. (#11514)
== Changes ==
- In browse mode, controls can now be activated with braille cursor routing on their descriptor (ie. "lnk" for a link). This is especially useful for activating eg. check-boxes with no labels. (#7447)
- NVDA now prevents the user from performing Windows 10 OCR if screen curtain is enabled. (#11911)
- Updated Unicode Common Locale Data Repository (CLDR) to 39.0. (#11943, #12314)
- Added more mathematical symbols to the symbols dictionary. (#11467)
- The user guide, changes file, and key commands listing now have a refreshed appearance. (#12027)
- "Unsupported" now reported when attempting to toggle screen layout in applications that do not support it, such as Microsoft Word. (#7297)
- 'Attempt to cancel speech for expired focus events' option in the advanced settings panel now enabled by default. (#10885)
- This behaviour can be disabled by setting this option to "No".
- Web applications (E.G. Gmail) no longer speak outdated information when moving focus rapidly.
- Updated liblouis braille translator to [3.17.0 https://github.com/liblouis/liblouis/releases/tag/v3.17.0]. (#12137)
- New braille tables: Belarusian literary braille, Belarusian computer braille, Urdu grade 1, Urdu grade 2.
- Support for Adobe Flash content has been removed from NVDA due to the use of Flash being actively discouraged by Adobe. (#11131)
- NVDA will exit even with windows still open, the exit process now closes all NVDA windows and dialogs. (#1740)
- The Speech Viewer can now be closed with ``alt+F4`` and has a standard close button for easier interaction with users of pointing devices. (#12330)
- The Braille Viewer now has a standard close button for easier interaction with users of pointing devices. (#12328)
- In the Elements List dialog, the accelerator key on the "Activate" button has been removed in some locales to avoid collision with an element type radio button label. When available, the button is still the default of the dialog and as such can still be invoked by simply pressing enter from the elements list itself. (#6167)
== Bug Fixes ==
- The list of messages in Outlook 2010 is once again readable. (#12241)
- In terminal programs on Windows 10 version 1607 and later, when inserting or deleting characters in the middle of a line, the characters to the right of the caret are no longer read out. (#3200)
- This experimental fix must be manually enabled in NVDA's advanced settings panel by changing the diff algorithm to Diff Match Patch.
- In MS Outlook, inappropriate distance reporting when shift+tabbing from the message body to the subject field should not occur anymore. (#10254)
- In the Python Console, inserting a tab for indentation at the beginning of a non-empty input line and performing tab-completion in the middle of an input line are now supported. (#11532)
- Formatting information and other browseable messages no longer present unexpected blank lines when screen layout is turned off. (#12004)
- It is now possible to read comments in MS Word with UIA enabled. (#9285)
- Performance when interacting with Visual Studio has been improved. (#12171)
- Fix graphical bugs such as missing elements when using NVDA with a right-to-left layout. (#8859)
- Respect the GUI layout direction based on the NVDA language, not the system locale. (#638)
- known issue for right-to-left languages: the right border of groupings clips with labels/controls. (#12181)
- The python locale is set to match the language selected in preferences consistently, and will occur when using the default language. (#12214)
- TextInfo.getTextInChunks no longer freezes when called on Rich Edit controls such as the NVDA log viewer. (#11613)
- It is once again possible to use NVDA in languages containing underscores in the locale name such as de_CH on Windows 10 1803 and 1809. (#12250)
- In WordPad, configuration of superscript/subscript reporting works as expected. (#12262)
- NVDA no longer fails to announce the newly focused content on a web page if the old focus disappears and is replaced by the new focus in the same position. (#12147)
- Strikethrough, superscript and subscript formatting for entire Excel cells are now reported if the corresponding option is enabled. (#12264)
- Fixed copying config during installation from a portable copy when default destination config directory is empty. (#12071, #12205)
- Fixed incorrect announcement of some letters with accents or diacritic when 'Say cap before capitals' option is checked. (#11948)
- Fixed the pitch change failure in SAPI4 speech synthesizer. (#12311)
- The NVDA installer now also honors the ``--minimal`` command line parameter and does not play the start-up sound, following the same documented behavior as an installed or portable copy NVDA executable. (#12289)
- In MS Word or Outlook, the table quick navigation key can now jump to layout table if "Include layout tables" option is enabled in Browse mode settings. (#11899)
- NVDA will no longer announce "↑↑↑" for emojis in particular languages. (#11963)
- Espeak now supports Cantonese and Mandarin again. (#10418)
- In the new Chromium based Microsoft Edge, text fields such as the address bar are now announced when empty. (#12474)
- Fix Seika Braille driver. (#10787)
== Changes for Developers ==
- Note: this is an Add-on API compatibility breaking release. Add-ons will need to be re-tested and have their manifest updated.
- NVDA's build system now fetches all Python dependencies with pip and stores them in a Python virtual environment. This is all done 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/nvda.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>``
- Please refer to readme.md for more details.
- The following Python dependencies have also been upgraded:
- comtypes updated to 1.1.8.
- pySerial updated to 3.5.
- wxPython updated to 4.1.1.
- Py2exe updated to 0.10.1.0.
- ``LiveText._getTextLines`` has been removed. (#11639)
- Instead, override ``_getText`` which returns a string of all text in the object.
- ``LiveText`` objects can now calculate diffs by character. (#11639)
- To alter the diff behaviour for some object, override the ``diffAlgo`` property (see the docstring for details).
- When defining a script with the script decorator, the 'allowInSleepMode' boolean argument can be specified to control if a script is available in sleep mode or not. (#11979)
- The following functions are removed from the config module. (#11935)
- canStartOnSecureScreens - use config.isInstalledCopy instead.
- hasUiAccess and execElevated - use them from the systemUtils module.
- getConfigDirs - use globalVars.appArgs.configPath instead.
- Module level REASON_* constants are removed from controlTypes - please use controlTypes.OutputReason instead. (#11969)
- REASON_QUICKNAV has been removed from browseMode - use controlTypes.OutputReason.QUICKNAV instead. (#11969)
- ``NVDAObject`` (and derivatives) property ``isCurrent`` now strictly returns Enum class ``controlTypes.IsCurrent``. (#11782)
- ``isCurrent`` is no longer Optional, and thus will not return None.
- When an object is not current ``controlTypes.IsCurrent.NO`` is returned.
- The ``controlTypes.isCurrentLabels`` mapping has been removed. (#11782)
- Instead use the ``displayString`` property on a ``controlTypes.IsCurrent`` enum value.
- For example: ``controlTypes.IsCurrent.YES.displayString``.
- ``winKernel.GetTimeFormat`` has been removed - use ``winKernel.GetTimeFormatEx`` instead. (#12139)
- ``winKernel.GetDateFormat`` has been removed - use ``winKernel.GetDateFormatEx`` instead. (#12139)
- ``gui.DriverSettingsMixin`` has been removed - use ``gui.AutoSettingsMixin``. (#12144)
- ``speech.getSpeechForSpelling`` has been removed - use ``speech.getSpellingSpeech``. (#12145)
- Commands cannot be directly imported from speech as ``import speech; speech.ExampleCommand()`` or ``import speech.manager; speech.manager.ExampleCommand()`` - use ``from speech.commands import ExampleCommand`` instead. (#12126)
- ``speakTextInfo`` will no longer send speech through ``speakWithoutPauses`` if reason is ``SAYALL``, as ``SayAllHandler`` does this manually now. (#12150)
- The ``synthDriverHandler`` module is no longer star imported into ``globalCommands`` and ``gui.settingsDialogs`` - use ``from synthDriverHandler import synthFunctionExample`` instead. (#12172)
- ``ROLE_EQUATION`` has been removed from controlTypes - use ``ROLE_MATH`` instead. (#12164)
- ``autoSettingsUtils.driverSetting`` classes are removed from ``driverHandler`` - please use them from ``autoSettingsUtils.driverSetting``. (#12168)
- ``autoSettingsUtils.utils`` classes are removed from ``driverHandler`` - please use them from ``autoSettingsUtils.utils``. (#12168)
- Support of ``TextInfo``s that do not inherit from ``contentRecog.BaseContentRecogTextInfo`` is removed. (#12157)
- ``speech.speakWithoutPauses`` has been removed - please use ``speech.speechWithoutPauses.SpeechWithoutPauses(speakFunc=speech.speak).speakWithoutPauses`` instead. (#12195, #12251)
- ``speech.re_last_pause`` has been removed - please use ``speech.speechWithoutPauses.SpeechWithoutPauses.re_last_pause`` instead. (#12195, #12251)
- ``WelcomeDialog``, ``LauncherDialog`` and ``AskAllowUsageStatsDialog`` are moved to the ``gui.startupDialogs``. (#12105)
- ``getDocFilePath`` has been moved from ``gui`` to the ``documentationUtils`` module. (#12105)
- The gui.accPropServer module as well as the AccPropertyOverride and ListCtrlAccPropServer classes from the gui.nvdaControls module have been removed in favor of WX native support for overriding accessibility properties. When enhancing accessibility of WX controls, implement wx.Accessible instead. (#12215)
- Files in ``source/comInterfaces/`` are now more easily consumable by developer tools such as IDEs. (#12201)
- Convenience methods and types have been added to the winVersion module for getting and comparing Windows versions. (#11909)
- 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.
- IAccessibleHandler no longer star imports everything from IAccessible and IA2 COM interfaces - please use them directly. (#12232)
- TextInfo objects now have start and end properties which can be compared mathematically with operators such as < <= == != >= >. (#11613)
- E.g. ti1.start <= ti2.end
- This usage is now prefered instead of ti1.compareEndPoints(ti2,"startToEnd") <= 0
- TextInfo start and end properties can also be set to each other. (#11613)
- E.g. ti1.start = ti2.end
- This usage is prefered instead of ti1.SetEndPoint(ti2,"startToEnd")
- ``wx.CENTRE_ON_SCREEN`` and ``wx.CENTER_ON_SCREEN`` are removed, use ``self.CentreOnScreen()`` instead. (#12309)
- ``easeOfAccess.isSupported`` has been removed, NVDA only supports versions of Windows where this evaluates to ``True``. (#12222)
- ``sayAllHandler`` has been moved to ``speech.sayAll``. (#12251)
- ``speech.sayAll.SayAllHandler`` exposes the functions ``stop``, ``isRunning``, ``readObjects``, ``readText``, ``lastSayAllMode``.
- ``SayAllHandler.stop`` also resets the ``SayAllHandler`` ``SpeechWithoutPauses`` instance.
- ``CURSOR_REVIEW`` and ``CURSOR_CARET`` has been replaced with ``CURSOR.REVIEW`` and ``CURSOR.CARET``.
- ``speech.SpeechWithoutPauses`` has been moved to ``speech.speechWithoutPauses.SpeechWithoutPauses``. (#12251)
- ``speech.curWordChars`` has been renamed ``speech._curWordChars``. (#12395)
- the following have been removed from ``speech`` and can be accessed through ``speech.getState()``. These are readonly values now. (#12395)
- speechMode
- speechMode_beeps_ms
- beenCanceled
- isPaused
- to update ``speech.speechMode`` use ``speech.setSpeechMode``. (#12395)
- the following have been moved to ``speech.SpeechMode``. (#12395)
- ``speech.speechMode_off`` becomes ``speech.SpeechMode.off``
- ``speech.speechMode_beeps`` becomes ``speech.SpeechMode.beeps``
- ``speech.speechMode_talk`` becomes ``speech.SpeechMode.talk``
- ``IAccessibleHandler.IAccessibleObjectIdentifierType`` is now ``IAccessibleHandler.types.IAccessibleObjectIdentifierType``. (#12367)
- The following in ``NVDAObjects.UIA.WinConsoleUIA`` have been changed (#12094)
- ``NVDAObjects.UIA.winConsoleUIA.is21H1Plus`` renamed ``NVDAObjects.UIA.winConsoleUIA.isImprovedTextRangeAvailable``.
- ``NVDAObjects.UIA.winConsoleUIA.consoleUIATextInfo`` renamed to start class name with upper case.
- ``NVDAObjects.UIA.winConsoleUIA.consoleUIATextInfoPre21H1`` renamed ``NVDAObjects.UIA.winConsoleUIA.ConsoleUIATextInfoWorkaroundEndInclusive``
- The implementation works around both end points being inclusive (in text ranges) before [microsoft/terminal PR 4018 https://github.com/microsoft/terminal/pull/4018]
- Workarounds for ``expand``, ``collapse``, ``compareEndPoints``, ``setEndPoint``, etc
= 2020.4 =
This release includes new Chinese Input methods, an update to Liblouis and the elements list (NVDA+f7) now works in focus mode.
Context sensitive help is now available when pressing F1 in NVDA dialogs.
Improvements to symbol pronunciation rules, speech dictionary, Braille message and skim reading.
Bug fixes and improvements to Mail, Outlook, Teams, Visual Studio, Azure Data Studio, Foobar2000.
On the web, there are improvements to Google Docs, and greater support for ARIA.
Plus many other important bug fixes and improvements.
== New Features ==
- Pressing F1 inside NVDA dialogs will now open the help file to most relevant section. (#7757)
- Support for auto complete suggestions (IntelliSense) in Microsoft SQL Server Management Studio plus Visual Studio 2017 and higher. (#7504)
- Symbol pronunciation: Support for grouping in a complex symbol definition and support group references in a replacement rule making them simpler and more powerful. (#11107)
- Users are now notified when attempting to create Speech Dictionary entries with invalid regular expression substitutions. (#11407)
- Specifically grouping errors are now detected.
- Added support for the new chinese Traditional Quick and Pinyin Input methods in Windows 10. (#11562)
- Tab headers are now considered form fields with quick navigation f key. (#10432)
- Added a command to toggle reporting of marked (highlighted) text; There is no default associated gesture. (#11807)
- Added the --copy-portable-config command line parameter that allows you to automatically copy the provided configuration to the user account when silently installing NVDA. (#9676)
- Braille routing is now supported with the Braille Viewer for mouse users, hover to route to a braille cell. (#11804)
- NVDA will now automatically detect the Humanware Brailliant BI 40X and 20X devices via both USB and Bluetooth. (#11819)
== Changes ==
- Updated liblouis braille translator to version 3.16.1:
- Addresses multiple crashes
- Adds Bashkir grade 1 Braille table
- Adds Coptic 8 dot computer braille table
- Adds Russian literary braille and Russian literary braille (detailed) tables
- Adds Added Afrikaans grade 2 braille table
- Removes the Russian grade 1 Braille table
- When reading with say all in browse mode, the find next and find previous commands do not stop reading anymore if Allow skim reading option is enabled; say all rather resumes from after the next or previous found term. (#11563)
- For HIMS braille displays F3 has been remapped to Space + dots 148. (#11710)
- Improvements to the UX of the "braille message timeout" and "Show messages indefinitely" options. (#11602)
- In web browsers and other applications that support browse mode, the Elements List dialog (NVDA+F7) can now be invoked when in focus mode. (#10453)
- Updates to ARIA live regions are now suppressed when reporting of dynamic content changes is disabled. (#9077)
- NVDA will now report "Copied to clipboard" before the copied text. (#6757)
- Presentation of graphical view table in disk management has been improved. (#10048)
- Labels for controls are now disabled (greyed out) when the control is disabled. (#11809)
- Updated CLDR emoji annotation to version 38. (#11817)
- The inbuilt "Focus Highlight" feature has been renamed "Vision Highlight". (#11700)
== Bug Fixes ==
- NVDA once again works correctly with edit fields when using the Fast Log Entry application. (#8996)
- Report elapsed time in Foobar2000 if no total time is available (e.g. when playing a live stream). (#11337)
- NVDA now honors the aria-roledescription attribute on elements in editable content in web pages. (#11607)
- 'list' is no longer announced on every line of a list in Google Docs or other editable content in Google Chrome. (#7562)
- When arrowing by character or word from one list item to another in editable content on the web, entering the new list item is now announced. (#11569)
- NVDA now reads the correct line when the caret is placed at the end of a link on the end of a list item in Google Docs or other editable content on the web. (#11606)
- On Windows 7, opening and closing the start menu from the desktop now sets focus correctly. (#10567)
- When "attempt to cancel expired focus events" is enabled, the title of the tab is now announced again when switching tabs in Firefox. (#11397)
- NVDA no longer fails to announce a list item after typing a character in a list when speaking with the SAPI5 Ivona voices. (#11651)
- It is again possible to use browse mode when reading emails in Windows 10 Mail 16005.13110 and later. (#11439)
- When using the SAPI5 Ivona voices from harposoftware.com, NVDA is now able to save configuration, switch synthesizers, and no longer will stay silent after restarting. (#11650)
- It is now possible to enter number 6 in computer braille from a braille keyboard on HIMS displays. (#11710)
- Major performance improvements in Azure Data Studio. (#11533, #11715)
- With "Attempt to Cancel speech for expired focus events" enabled the title of the NVDA Find dialog is announced again. (#11632)
- NVDA should no longer freeze when waking the computer and focus lands in a Microsoft Edge document. (#11576)
- It is no longer necessary to press tab or move focus after closing a context menu in MS Edge for browse mode to be functional again. (#11202)
- NVDA no longer fails to read items in list views within a 64-bit application such as Tortoise SVN. (#8175)
- ARIA treegrids are now exposed as normal tables in browse mode in both Firefox and Chrome. (#9715)
- A reverse search can now be initiated with 'find previous' via NVDA+shift+F3 (#11770)
- An NVDA script is no longer treated as being repeated if an unrelated key press happens in between the two executions of the script. (#11388)
- Strong and emphasis tags in Internet Explorer can again be suppressed from being reported by turning off Report Emphasis in NVDA's Document Formatting settings. (#11808)
- A freeze of several seconds experienced by a small amount of users when arrowing between cells in Excel should no longer occur. (#11818)
- In Microsoft Teams builds with version numbers like 1.3.00.28xxx, NVDA no longer fails reading messages in chats or Teams channels due to an incorrectly focused menu. (#11821)
- Text marked both as being a spelling and grammar error at the same time in Google Chrome will be appropriately announced as both a spelling and grammar error by NVDA. (#11787)
- When using Outlook (French locale), the shortcut for 'Reply all' (control+shift+R) works again. (#11196)
- In Visual Studio, IntelliSense tool tips that provide additional details about the currently selected IntelliSense item are now only reported once. (#11611)
- In Windows 10 Calculator, NVDA will not announce progress of calculations if speak typed characters is disabled. (#9428)
- NVDA no longer crashes when using English US grade 2 and expand to computer Braille at the cursor is on, when displaying certain content such as a URL in Braille. (#11754)
- It is again possible to report formatting information for the focused Excel cell using NVDA+F. (#11914)
- QWERTY input on Papenmeier braille displays that support it again works and no longer causes NVDA to randomly freeze. (#11944)
- In Chromium based browsers, several cases were solved where table navigation didn't work and NVDA didn't report the number of rows/columns of the table. (#12359)
== Changes for Developers ==
- System tests can now send keys using spy.emulateKeyPress, which takes a key identifier that conforms to NVDA's own key names, and by default also blocks until the action is executed. (#11581)
- NVDA no longer requires the current directory to be the NVDA application directory in order to function. (#6491)
- The aria live politeness setting for live regions can now be found on NVDA Objects using the liveRegionPoliteness property. (#11596)
- It is now possible to define separate gestures for Outlook and Word document. (#11196)
= 2020.3 =
This release includes several large improvements to stability and performance particularly in Microsoft Office applications. There are new settings to toggle touchscreen support and graphics reporting.
The existence of marked (highlighted) content can be reported in browsers, and there are new German braille tables.
== New Features ==
- You can now toggle reporting of graphics from NVDA's document formatting settings. Note that disabling this option will still read the alternative texts of graphics. (#4837)
- You can now toggle NVDA's touchscreen support. An option has been added to the Touch Interaction panel of NVDA's settings. The default gesture is NVDA+control+alt+t. (#9682)
- Added new German braille tables. (#11268)
- NVDA now detects read-only text UIA controls. (#10494)
- The existence of marked (highlighted) content is reported in both speech and braille in all web browsers. (#11436)
- This can be toggled on and off by a new NVDA Document Formatting option for Highlighting.
- New emulated system keyboard keys can be added from NVDA's Input gestures dialog. (#6060)
- To do this, press the add button after you selected the Emulated system keyboard keys category.
- Handy Tech Active Braille with joystick is now supported. (#11655)
- "Automatic focus mode for caret movement" setting is now compatible with disabling "Automatically set focus to focusable elements". (#11663)
== Changes ==
- The Report formatting script (NVDA+f) has now been changed to report the formatting at the system caret rather than at the review cursor position. To report formatting at the review cursor position now use NVDA+shift+f. (#9505)
- NVDA no longer automatically sets the system focus to focusable elements by default in browse mode, improving performance and stability. (#11190)
- CLDR updated from version 36.1 to version 37. (#11303)
- Updated eSpeak-NG to 1.51-dev, commit 1fb68ffffea4
- You can now utilize table navigation in list boxes with checkable list items when the particular list has multiple columns. (#8857)
- In the Add-ons manager, when prompted to confirm removal of an add-on, "No" is now the default. (#10015)
- In Microsoft Excel, the Elements List dialog now presents formulas in their localized form. (#9144)
- NVDA now reports the correct terminology for notes in MS Excel. (#11311)
- When using the "move review cursor to focus" command in browse mode, the review cursor is now set at the position of the virtual caret. (#9622)
- Information reported in browse mode, such as the formatting info with NVDA+F, are now displayed in a slightly bigger window centered on screen. (#9910)
== Bug Fixes ==
- NVDA now always speaks when navigating by word and landing on any single symbol followed by white space, whatever the verbosity settings. (#5133)
- In applications using QT 5.11 or newer, object descriptions are again reported. (#8604)
- When deleting a word with control+delete, NVDA no longer remains silent. (#3298, #11029)
- Now the word to the right of the deleted word is announced.
- In general settings panel, the language list is now sorted correctly. (#10348)
- In the Input Gestures dialog, significantly improved performance while filtering. (#10307)
- You can now send Unicode characters beyond U+FFFF from a braille display. (#10796)
- NVDA will announce Open With dialog content in Windows 10 May 2020 Update. (#11335)
- A new experimental option in Advanced settings (Enable selective registration for UI Automation events and property changes) can provide major performance improvements in Microsoft Visual Studio and other UIAutomation based applications if enabled. (#11077, #11209)
- For checkable list items, the selected state is no longer announced redundantly, and if applicable, the unselected state is announced instead. (#8554)
- On Windows 10 May 2020 Update, NVDA now shows the Microsoft Sound Mapper when viewing output devices from synthesizer dialog. (#11349)
- In Internet Explorer, numbers are now announced correctly for ordered lists if the list does not start with 1. (#8438)
- In Google chrome, NVDA will now report not checked for all checkable controls (not just check boxes) that are currently not checked. (#11377)
- It is once again possible to navigate in various controls when NVDA's language is set to Aragonese. (#11384)
- NVDA should no longer sometimes freeze in Microsoft Word when rapidly arrowing up and down or typing characters with Braille enabled. (#11431, #11425, #11414)
- NVDA no longer appends nonexistent trailing space when copying the current navigator object to the clipboard. (#11438)
- NVDA no longer activates the Say All profile if there is nothing to read. (#10899, #9947)
- NVDA is no longer unable to read the features list in Internet Information Services (IIS) Manager. (#11468)
- NVDA now keeps the audio device open improving performance on some sound cards (#5172, #10721)
- NVDA will no longer freeze or exit when holding down control+shift+downArrow in Microsoft Word. (#9463)
- The expanded / collapsed state of directories in the navigation treeview on drive.google.com is now always reported by NVDA. (#11520)
- NVDA will auto detect the NLS eReader Humanware braille display via Bluetooth as its Bluetooth name is now "NLS eReader Humanware". (#11561)
- Major performance improvements in Visual Studio Code. (#11533)
== Changes For Developers ==
- The GUI Helper's BoxSizerHelper.addDialogDismissButtons supports a new "separated" keyword argument, for adding a standard horizontal separator to dialogs (other than messages and single input dialogs). (#6468)
- Additional properties were added to app modules, including path for the executable (appPath), is a Windows Store app (isWindowsStoreApp), and machine architecture for the app (appArchitecture). (#7894)
- It is now possible to create app modules for apps hosted inside wwahost.exe on Windows 8 and later. (#4569)
- A fragment of the log can now be delimited and then copied to clipboard using NVDA+control+shift+F1. (#9280)
- NVDA-specific objects that are found by Python's cyclic garbage collector are now logged when being deleted by the collector to aide in removing reference cycles from NVDA. (#11499)
- The majority of NVDA's classes are tracked including NVDAObjects, appModules, GlobalPlugins, SynthDrivers, and TreeInterceptors.
- A class that needs to be tracked should inherit from garbageHandler.TrackedObject.
- Significant debug logging for MSAA events can be now enabled in NVDA's Advanced settings. (#11521)
- MSAA winEvents for the currently focused object are no longer filtered out along with other events if the event count for a given thread is exceeded. (#11520)
= 2020.2 =
Highlights of this release include support for a new braille display from Nattiq, better support for ESET antivirus GUI and Windows Terminal, performance improvements in 1Password, and with Windows OneCore synthesizer. Plus many other important bug fixes and improvements.
== New Features ==
- Support for new braille displays:
- Nattiq nBraille (#10778)
- Added script to open NVDA configuration directory (no default gesture). (#2214)
- Better support for ESET antivirus GUI. (#10894)
- Added support for Windows Terminal. (#10305)
- Added a command to report the active configuration profile (no default gesture). (#9325)
- Added a command to toggle reporting of subscripts and superscripts (no default gesture). (#10985)
- Web applications (E.G. Gmail) no longer speak outdated information when moving focus rapidly. (#10885)
- This experimental fix must be manually enabled via the 'Attempt to cancel speech for expired focus events' option in the advanced settings panel.
- Many more symbols have been added to the default symbols dictionary. (#11105)
== Changes ==
- Updated liblouis braille translator from 3.12 to [3.14.0 https://github.com/liblouis/liblouis/releases/tag/v3.14.0]. (#10832, #11221)
- The reporting of superscripts and subscripts is now controlled separately to the reporting of font attributes. (#10919)
- Due to changes made in VS Code, NVDA no longer disables browse mode in Code by default. (#10888)
- NVDA no longer reports "top" and "bottom" messages when moving the review cursor directly to the first or last line of the current navigator object with the move to top and move to bottom review cursor scripts respectively. (#9551)
- NVDA no longer reports "left" and "right" messages when directly moving the review cursor to the first or last character of the line for the current navigator object with the move to beginning of line and move to end of line review cursor scripts respectively. (#9551)
== Bug Fixes ==
- NVDA now starts correctly when the log file cannot be created. (#6330)
- In recent releases of Microsoft Word 365, NVDA will no longer announce "delete back word" when Control+Backspace is pressed while editing a document. (#10851)
- In Winamp, NVDA will once again announce toggle status of shuffle and repeat. (#10945)
- NVDA is no longer extremely sluggish when moving within the list of items in 1Password. (#10508)
- The Windows OneCore speech synthesizer no longer lags between utterances. (#10721)
- NVDA no longer freezes when you open the context menu for 1Password in the system notification area. (#11017)
- In Office 2013 and older:
- Ribbons are announced when focus moves to them for the first time. (#4207)
- Context menu items are once again reported properly. (#9252)
- Ribbon sections are consistently announced when navigating with Control+arrows. (#7067)
- In browse mode in Mozilla Firefox and Google Chrome, text no longer incorrectly appears on a separate line when web content uses CSS display: inline-flex. (#11075)
- In browse mode with Automatically set system focus to focusable elements disabled, it is now possible to activate elements that aren't focusable.
- In browse mode with Automatically set system focus to focusable elements disabled, it is now possible to activate elements reached by pressing the tab key. (#8528)
- In browse mode with Automatically set system focus to focusable elements disabled, activating certain elements no longer clicks in an incorrect location. (#9886)
- NVDA error sounds are no longer heard when accessing DevExpress text controls. (#10918)
- The tool-tips of the icons in the system tray are no longer reported upon keyboard navigation if their text is equal to the name of the icons, to avoid double announcing. (#6656)
- In browse mode with 'Automatically set system focus to focusable elements' disabled, switching to focus mode with NVDA+space now focuses the element under the caret. (#11206)
- It is once again possible to check for NVDA updates on certain systems; e.g. clean Windows installs. (#11253)
- Focus is not moved in Java application when the selection is changed in an unfocused tree, table or list. (#5989)
== Changes For Developers ==
- execElevated and hasUiAccess have moved from config module to systemUtils module. Usage via config module is deprecated. (#10493)
- Updated configobj to 5.1.0dev commit f9a265c4. (#10939)
- Automated testing of NVDA with Chrome and a HTML sample is now possible. (#10553)
- IAccessibleHandler has been converted into a package, OrderedWinEventLimiter has been extracted to a module and unit tests added (#10934)
- Updated BrlApi to version 0.8 (BRLTTY 6.1). (#11065)
- Status bar retrieval may now be customized by an AppModule. (#2125, #4640)
- NVDA no longer listens for IAccessible EVENT_OBJECT_REORDER. (#11076)
- A broken ScriptableObject (such as a GlobalPlugin missing a call to its base class' __init__ method) no longer breaks NVDA's script handling. (#5446)
= 2020.1 =
Highlights of this release include support for several new braille displays from HumanWare and APH, plus many other important bug fixes such as the ability to again read math in Microsoft Word using MathPlayer / MathType.
== New Features ==
- The currently selected item in listboxes is again presented in browse mode in Chrome, similar to NVDA 2019.1. (#10713)
- You can now perform right mouse clicks on touch devices by doing a one finger tap and hold. (#3886)
- Support for New braille displays: APH Chameleon 20, APH Mantis Q40, HumanWare BrailleOne, BrailleNote Touch v2, and NLS eReader. (#10830)
== Changes ==
- NVDA will prevent the system from locking or going to sleep when in say all. (#10643)
- Support for out-of-process iframes in Mozilla Firefox. (#10707)
- Updated liblouis braille translator to version 3.12. (#10161)
== Bug Fixes ==
- Fixed NVDA not announcing Unicode minus symbol (U+2212). (#10633)
- When installing add-on from add-ons manager, names of files and folders in the browse window are no longer reported twice. (#10620, #2395)
- In Firefox, when loading Mastodon with the advanced web interface enabled, all timelines now render correctly in browse mode. (#10776)
- In browse mode, NVDA now reports "not checked" for unchecked check boxes where it sometimes didn't previously. (#10781)
- ARIA switch controls no longer report confusing information such as "not pressed checked" or "pressed checked". (#9187)
- SAPI4 voices should no longer refuse to speak certain text. (#10792)
- NVDA can again read and interact with math equations in Microsoft Word. (#10803)
- NVDA will again announce text being unselected in browse mode if pressing an arrow key while text is selected. (#10731).
- NVDA no longer exits if there is an error initializing eSpeak. (#10607)
- Errors caused by unicode in translations for shortcuts no longer stop the installer, mitigated by falling back to the English text. (#5166, #6326)
- Arrowing out and away from lists and tables in sayAll with skim reading enabled no longer continuously announces exiting the list or table. (#10706)
- Fix mouse tracking for some MSHTML elements in Internet Explorer. (#10736)
== Changes for Developers ==
- Developer documentation is now build using sphinx. (#9840)
- Several speech functions have been split into two. (#10593)
The speakX version remains, but now depends on a getXSpeech function which returns a speech sequence.
- speakObjectProperties now relies on getObjectPropertiesSpeech
- speakObject now relies on getObjectSpeech
- speakTextInfo now relies on getTextInfoSpeech
- speakWithoutPauses has been converted into a class, and refactored, but should not break compatibility.
- getSpeechForSpelling is deprecated (though still available) use getSpellingSpeech instead.
Private changes that should not affect addon developers:
- _speakPlaceholderIfEmpty is now _getPlaceholderSpeechIfTextEmpty
- _speakTextInfo_addMath is now _extendSpeechSequence_addMathForTextInfo
- Speech 'reason' has been converted to an Enum, see controlTypes.OutputReason class. (#10703)
- Module level 'REASON_*' constants are deprecated.
- Compiling NVDA dependencies now requires Visual Studio 2019 (16.2 or newer). (#10169)
- Updated SCons to version 3.1.1. (#10169)
- Again allow behaviors._FakeTableCell to have no location defined (#10864)
= 2019.3 =
NVDA 2019.3 is a very significant release containing many under-the-hood changes including the upgrade of Python 2 to Python 3, and a major re-write of NVDA's speech subsystem.
Although these changes do break compatibility with older NVDA add-ons, the upgrade to Python 3 is necessary for security, and the changes to speech allow for some exciting innovations in the near future.
Other highlights in this release include 64 bit support for Java VMs, Screen Curtain and Focus Highlight functionality, support for more braille displays and a new Braille viewer, and many many other bug fixes.
== New Features ==
- The accuracy of the move mouse to navigator object command has been improved in text fields in Java applications. (#10157)
- Added support for the following Handy Tech Braille displays (#8955):
- Basic Braille Plus 40
- Basic Braille Plus 32
- Connect Braille
- All user-defined gestures can now be removed via a new "Reset to factory defaults" button in the Input Gestures dialog. (#10293)
- Font reporting in Microsoft Word now includes if text is marked as hidden. (#8713)
- Added a command to move the review cursor to the position previously set as start marker for selection or copy: NVDA+shift+F9. (#1969)
- In Internet Explorer, Microsoft Edge and recent versions of Firefox and Chrome, landmarks are now reported in focus mode and object navigation. (#10101)
- In Internet Explorer, Google Chrome and Mozilla Firefox, You can now navigate by article and grouping using quick navigation scripts. These scripts are unbound by default and can be assigned in the Input Gestures dialog when the dialog is opened from a browse mode document. (#9485, #9227)
- Figures are also reported. They are considered objects and therefore navigable with the o quick navigation key.
- In Internet Explorer, Google Chrome and Mozilla Firefox, article elements are now reported with object navigation, and optionally in browse mode if turned on in Document Formatting settings. (#10424)
- Added screen curtain, which when enabled, makes the whole screen black on Windows 8 and later. (#7857)
- Added a script to enable screen curtain (until next restart with one press, or always while NVDA is running with two presses), no default gesture is assigned.
- Can be enabled and configured via the 'vision' category in NVDA's settings dialog.
- Added screen highlight functionality to NVDA. (#971, #9064)
- Highlighting of the focus, navigator object, and browse mode caret position can be enabled and configured via the 'vision' category in NVDA's settings dialog.
- Note: This feature is incompatible with the focus highlight add-on, however, the add-on can still be used while the built-in highlighter is disabled.
- Added Braille Viewer tool, allows viewing braille output via an on-screen window. (#7788)
== Changes ==
- The user guide now describes how to use NVDA in the Windows Console. (#9957)
- Running nvda.exe now defaults to replacing an already running copy of NVDA. The -r|--replace command line parameter is still accepted, but ignored. (#8320)
- On Windows 8 and later, NVDA will now report product name and version information for hosted apps such as apps downloaded from Microsoft Store using information provided by the app. (#4259, #10108)
- When toggling track changes on and off with the keyboard in Microsoft Word, NVDA will announce the state of the setting. (#942)
- The NVDA version number is now logged as the first message in the log. This occurs even if logging has been disabled from the GUI. (#9803)
- The settings dialog no longer allows for changing the configured log level if it has been overridden from the command line. (#10209)
- In Microsoft Word, NVDA now announces the display state of non printable characters when pressing the toggle shortcut Ctrl+Shift+8 . (#10241)
- Updated Liblouis braille translator to commit 58d67e63. (#10094)
- When CLDR characters (including emojis) reporting is enabled, they are announced at all punctuation levels. (#8826)
- Third party python packages included in NVDA, such as comtypes, now log their warnings and errors to the NVDA log. (#10393)
- Updated Unicode Common Locale Data Repository emoji annotations to version 36.0. (#10426)
- When focussing a grouping in browse mode, the description is now also read. (#10095)
- The Java Access Bridge is now included with NVDA to enable access to Java applications, including for 64 bit Java VMs. (#7724)
- If the Java Access Bridge is not enabled for the user, NVDA automatically enables it at NVDA startup. (#7952)
- Updated eSpeak-NG to 1.51-dev, commit ca65812ac6019926f2fbd7f12c92d7edd3701e0c. (#10581)
== Bug Fixes ==
- Emoji and other 32 bit unicode characters now take less space on a braille display when they are shown as hexadecimal values. (#6695)
- In Windows 10, NVDA will announce tooltips from universal apps if NVDA is configured to report tooltips in object presentation dialog. (#8118)
- On Windows 10 Anniversary Update and later, typed text is now reported in Mintty. (#1348)
- On Windows 10 Anniversary Update and later, output in the Windows Console that appears close to the caret is no longer spelled out. (#513)
- Controls in Audacitys compressor dialog are now announced when navigating the dialog. (#10103)
- NVDA no longer treats spaces as words in object review in Scintilla based editors such as Notepad++. (#8295)
- NVDA will prevent the system from entering sleep mode when scrolling through text with braille display gestures. (#9175)
- On Windows 10, braille will now follow when editing cell contents in Microsoft Excel and in other UIA text controls where it was lagging behind. (#9749)
- NVDA will once again report suggestions in the Microsoft Edge address bar. (#7554)
- NVDA is no longer silent when focusing an HTML tab control header in Internet Explorer. (#8898)
- In Microsoft Edge based on EdgeHTML, NVDA will no longer play search suggestion sound when the window becomes maximized. (#9110, #10002)
- ARIA 1.1 combo boxes are now supported in Mozilla Firefox and Google Chrome. (#9616)
- NVDA will no longer report content of visually hidden columns for list items in SysListView32 controls. (#8268)
- The settings dialog no longer shows "info" as the current log level when in secure mode. (#10209)
- In Start menu for Windows 10 Anniversary Update and later, NVDA will announce details of search results. (#10340)
- In browse mode, if moving the cursor or using quick navigation causes the document to change, NVDA no longer speaks incorrect content in some cases. (#8831, #10343)
- Some bullet names in Microsoft Word have been corrected. (#10399)
- In Windows 10 May 2019 Update and later, NVDA will once again announce first selected emoji or clipboard item when emoji panel and clipboard history opens, respectively. (#9204)
- In Poedit, it is once again possible to view some translations for right to left languages. (#9931)
- In the Settings app in Windows 10 April 2018 Update and later, NVDA will no longer announce progress bar information for volume meters found in the System/Sound page. (#10412)
- Invalid regular expressions in speech dictionaries no longer completely break speech in NVDA. (#10334)
- When reading bulleted items in Microsoft Word with UIA enabled, the bullet from the next list item is no longer inappropriately announced. (#9613)
- Some rare braille translation issues and errors with liblouis have been resolved. (#9982)
- Java applications started before NVDA are now accessible without the need to restart the Java app. (#10296)
- In Mozilla Firefox, when the focused element becomes marked as current (aria-current), this change is no longer spoken multiple times. (#8960)
- NVDA will now treat certain composit unicode characters such as e-acute as one single character when moving through text. (#10550)
- Spring Tool Suite Version 4 is now supported. (#10001)
- Don't double speak name when aria-labelledby relation target is an inner element. (#10552)
- On Windows 10 version 1607 and later, typed characters from Braille keyboards are spoken in more situations. (#10569)
- When changing the audio output device, tones played by NVDA will now play through the newly selected device. (#2167)
- In Mozilla Firefox, moving focus in browse mode is faster. This makes moving the cursor in browse mode more responsive in many cases. (#10584)
== Changes for Developers ==
- Updated Python to 3.7. (#7105)
- Updated pySerial to version 3.4. (#8815)
- Updated wxPython to 4.0.3 to support Python 3.5 and later. (#9630)
- Updated six to version 1.12.0. (#9630)
- Updated py2exe to version 0.9.3.2 (in development, commit b372a8e from albertosottile/py2exe#13). (#9856)
- Updated UIAutomationCore.dll comtypes module to version 10.0.18362. (#9829)
- The tab-completion in the Python console only suggests attributes starting with an underscore if the underscore is first typed. (#9918)
- Flake8 linting tool has been integrated with SCons reflecting code requirements for Pull Requests. (#5918)
- As NVDA no longer depends on pyWin32, modules such as win32api and win32con are no longer available to add-ons. (#9639)
- win32api calls can be replaced with direct calls to win32 dll functions via ctypes.
- win32con constants should be defined in your files.
- The "async" argument in nvwave.playWaveFile has been renamed to "asynchronous". (#8607)
- speakText and speakCharacter methods on synthDriver objects are no longer supported.
- This functionality is handled by SynthDriver.speak.
- SynthSetting classes in synthDriverHandler have been removed. Now use driverHandler.DriverSetting classes instead.
- SynthDriver classes should no longer expose index via the lastIndex property.
- Instead, they should notify the synthDriverHandler.synthIndexReached action with the index, once all previous audio has finished playing before that index.
- SynthDriver classes must now notify the synthDriverHandler.synthDoneSpeaking action, once all audio from a SynthDriver.speak call has completed playing.
- SynthDriver classes must support the speech.PitchCommand in their speak method, as changes in pitch for speak spelling now depends on this functionality.
- The speech function getSpeechTextForProperties has been renamed to getPropertiesSpeech. (#10098)
- The braille function getBrailleTextForProperties has been renamed to getPropertiesBraille. (#10469)
- Several speech functions have been changed to return speech sequences. (#10098)
- getControlFieldSpeech
- getFormatFieldSpeech
- getSpeechTextForProperties now called getPropertiesSpeech
- getIndentationSpeech
- getTableInfoSpeech
- Added a textUtils module to simplify string differences between Python 3 strings and Windows unicode strings. (#9545)
- See the module documentation and textInfos.offsets module for example implementations.
- Deprecated functionality now removed. (#9548)
- AppModules removed:
- Windows XP sound recorder.
- Klango Player, which is abandoned software.
- configobj.validate wrapper removed.
- New code should use from configobj import validate instead of import validate
- textInfos.Point and textInfos.Rect replaced by locationHelper.Point and locationHelper.RectLTRB respectively.
- braille.BrailleHandler._get_tether and braille.BrailleHandler.set_tether have been removed.
- config.getConfigDirs has been removed.
- config.ConfigManager.getConfigValidationParameter has been replaced by getConfigValidation
- inputCore.InputGesture.logIdentifier property has been removed.
- Use _get_identifiers in inputCore.InputGesture instead.
- synthDriverHandler.SynthDriver.speakText/speakCharacter have been removed.
- Removed several synthDriverHandler.SynthSetting classes.
- Previously kept for backwards compatibility (#8214), now considered obsolete.
- Drivers that used the SynthSetting classes should be updated to use the DriverSetting classes.
- Some legacy code has been removed, particularly:
- Support for the Outlook pre 2003 message list.
- An overlay class for the classic start menu, only found in Windows Vista and earlier.
- Dropped support for Skype 7, as it is definitely not working any more.
- Added a framework to create vision enhancement providers; modules that can change screen contents, optionally based on input from NVDA about object locations. (#9064)
- Add-ons can bundle their own providers in a visionEnhancementProviders folder.
- See the vision and visionEnhancementProviders modules for the implementation of the framework and examples, respectively.
- Vision enhancement providers are enabled and configured via the 'vision' category in NVDA's settings dialog.
- Abstract class properties are now supported on objects that inherit from baseObject.AutoPropertyObject (e.g. NVDAObjects and TextInfos). (#10102)
- Introduced displayModel.UNIT_DISPLAYCHUNK as a textInfos unit constant specific to DisplayModelTextInfo. (#10165)
- This new constant allows walking over the text in a DisplayModelTextInfo in a way that more closely resembles how the text chunks are saved in the underlying model.
- displayModel.getCaretRect now returns an instance of locationHelper.RectLTRB. (#10233)
- The UNIT_CONTROLFIELD and UNIT_FORMATFIELD constants have been moved from virtualBuffers.VirtualBufferTextInfo to the textInfos package. (#10396)
- For every entry in the NVDA log, information about the originating thread is now included. (#10259)
- UIA TextInfo objects can now be moved/expanded by the page, story and formatField text units. (#10396)
- External modules (appModules and globalPlugins) are now less likely to be able to break the creation of NVDAObjects.
- Exceptions caused by the "chooseNVDAObjectOverlayClasses" and "event_NVDAObject_init" methods are now properly caught and logged.
- The aria.htmlNodeNameToAriaLandmarkRoles dictionary has been renamed to aria.htmlNodeNameToAriaRoles. It now also contains roles that aren't landmarks.
- scriptHandler.isCurrentScript has been removed due to lack of use. There is no replacement. (#8677)
= 2019.2.1 =
This is a minor release to fix several crashes present in 2019.2. Fixes include:
- Addressed several crashes in Gmail seen in both Firefox and Chrome when interacting with particular popup menus such as when creating filters or changing certain Gmail settings. (#10175, #9402, #8924)
- In Windows 7, NVDA no longer causes Windows Explorer to crash when the mouse is used in the start menu. (#9435)
- Windows Explorer on Windows 7 no longer crashes when accessing metadata edit fields. (#5337)
- NVDA no longer freezes when interacting with images with a base64 URI in Mozilla Firefox or Google Chrome. (#10227)
= 2019.2 =
Highlights of this release include auto detection of Freedom Scientific braille displays, an experimental setting in the Advanced panel to stop browse mode from automatically moving focus (which may provide performance improvements), a rate boost option for the Windows OneCore synthesizer to achieve very fast rates, and many other bug fixes.
== New Features ==
- NVDA's Miranda NG support works with newer versions of the client. (#9053)
- You can now disable browse mode by default by disabling the new "Enable browse mode on page load" option in NVDA's browse mode settings. (#8716)
- Note that when this option is disabled, you can still enable browse mode manually by pressing NVDA+space.
- You can now filter symbols in the punctuation/symbol pronunciation dialog, similar to how filtering works in the elements list and input gestures dialog. (#5761)
- A command has been added to change the mouse text unit resolution (how much text will be spoken when the mouse moves), it has not been assigned a default gesture. (#9056)
- The windows OneCore synthesizer now has a rate boost option, which allows for significantly faster speech. (#7498)
- The Rate Boost option is now configurable from the Synth Settings Ring for supported speech synthesizers. (Currently eSpeak-NG and Windows OneCore). (#8934)
- Configuration profiles can now be manually activated with gestures. (#4209)
- The gesture must be configured in the "Input gestures" dialog.
- In Eclipse, added support for autocompletion in code editor. (#5667)
- Additionally, Javadoc information can be read from the editor when it is present by using NVDA+d.
- Added an experimental option to the Advanced Settings panel that allows you to stop the system focus from following the browse mode cursor (Automatically set system focus to focusable elements). (#2039) Although this may not be suitable to turn off for all websites, this may fix:
- Rubber band effect: NVDA sporadically undoes the last browse mode keystroke by jumping to the previous location.
- Edit boxes steal system focus when arrowing down through them on some websites.
- Browse mode keystrokes are slow to respond.
- For braille display drivers that support it, driver settings can now be changed from the braille settings category in NVDA's settings dialog. (#7452)
- Freedom Scientific braille displays are now supported by braille display auto detection. (#7727)
- Added a command to show the replacement for the symbol under the review cursor. (#9286)
- Added an experimental option to the Advanced Settings panel that allows you to try out a new, work-in-progress rewrite of NVDA's Windows Console support using the Microsoft UI Automation API. (#9614)
- In the Python Console, the input field now supports pasting multiple lines from the clipboard. (#9776)
== Changes ==
- Synthesizer volume is now increased and decreased by 5 instead of 10 when using the settings ring. (#6754)
- Clarified the text in the add-on manager when NVDA is launched with the --disable-addons flag. (#9473)
- Updated Unicode Common Locale Data Repository emoji annotations to version 35.0. (#9445)
- The hotkey for the filter field in the elements list in browse mode has changed to alt+y. (#8728)
- When an auto detected braille display is connected via Bluetooth, NVDA will keep searching for USB displays supported by the same driver and switch to a USB connection if it becomes available. (#8853)
- Updated eSpeak-NG to commit 67324cc.
- Updated liblouis braille translator to version 3.10.0. (#9439, #9678)
- NVDA will now report the word 'selected' after reporting the text a user has just selected.(#9028, #9909)
- In Microsoft Visual Studio Code, NVDA is in focus mode by default. (#9828)
== Bug Fixes ==
- NVDA no longer crashes when an add-on directory is empty. (#7686)
- LTR and RTL marks are no longer reported in Braille or per-character speech when accessing the properties window. (#8361)
- When jumping to form fields with Browse Mode quick navigation, the entire form field is now announced rather than just the first line. (#9388)
- NVDA will no longer become silent after exiting the Windows 10 Mail app. (#9341)
- NVDA no longer fails to start when the users regional settings are set to a locale unknown to NVDA, such as English (Netherlands). (#8726)
- When browse mode is enabled in Microsoft Excel and you switch to a browser in focus mode or vice versa, browse mode state is now reported appropriately. (#8846)
- NVDA now properly reports the line at the mouse cursor in Notepad++ and other Scintilla based editors. (#5450)
- In Google Docs (and other web-based editors), braille no longer sometimes incorrectly shows "lst end" before the cursor in the middle of a list item. (#9477)
- In the Windows 10 May 2019 Update, NVDA no longer speaks many volume notifications if changing the volume with hardware buttons when File Explorer has focus. (#9466)
- Loading the punctuation/symbol pronunciation dialog is now much faster when using symbol dictionaries containing over 1000 entries. (#8790)
- In Scintilla controls such as Notepad++, NVDA can read the correct line when wordwrap is enabled. (#9424)
- In Microsoft Excel, the cell location is announced after it changes due to the shift+enter or shift+numpadEnter gestures. (#9499)
- In Visual Studio 2017 and up, in the Objects Explorer window, the selected item in objects tree or members tree with categories is now reported correctly. (#9311)
- Add-ons with names that only differ in capitalization are no longer treated as separate add-ons. (#9334)
- For Windows OneCore voices, the rate set in NVDA is no longer affected by the rate set in Windows 10 Speech Settings. (#7498)
- The log can now be opened with NVDA+F1 when there is no developer info for the current navigator object. (#8613)
- It is again possible to use NVDA's table navigation commands in Google Docs, in Firefox and Chrome. (#9494)
- The bumper keys now work correctly on Freedom Scientific braille displays. (#8849)
- When reading the first character of a document in Notepad++ 7.7 X64, NVDA no longer freezes for up to ten seconds. (#9609)
- HTCom can now be used with a Handy Tech Braille display in combination with NVDA. (#9691)
- In Mozilla Firefox, updates to a live region are no longer reported if the live region is in a background tab. (#1318)
- NVDA's browse mode Find dialog no longer fails to function if NVDA's About dialog is currently open in the background. (#8566)
== Changes for Developers ==
- You can now set the "disableBrowseModeByDefault" property on app modules to leave browse mode off by default. (#8846)
- The extended window style of a window is now exposed using the `extendedWindowStyle` property on Window objects and their derivatives. (#9136)
- Updated comtypes package to 1.1.7. (#9440, #8522)
- When using the report module info command, the order of information has changed to present the module first. (#7338)
- Added an example to demonstrate using nvdaControllerClient.dll from C#. (#9600)
- Added a new isWin10 function to the winVersion module which returns whether or not this copy of NVDA is running on (at least) the supplied release version of Windows 10 (such as 1903). (#9761)
- The NVDA Python console now contains more useful modules in its namespace (such as appModules, globalPlugins, config and textInfos). (#9789)
- The result of the last executed command in the NVDA Python console is now accessible from the _ (line) variable. (#9782)
- Note that this shadows the gettext translation function also called "_". To access the translation function: del _
= 2019.1.1 =
This point release fixes the following bugs:
- NVDA no longer causes Excel 2007 to crash or refuses to report if a cell has a formula. (#9431)
- Google Chrome no longer crashes when interacting with certain listboxes. (#9364)
- An issue has been fixed which prevented copying a users configuration to the system configuration profile. (#9448)
- In Microsoft Excel, NVDA again uses the localized message when reporting the location of merged cells. (#9471)
= 2019.1 =
Highlights of this release include performance improvements when accessing both Microsoft word and Excel, stability and security improvements such as support for add-ons with version compatibility information, and many other bug fixes.
Please note that starting from this release of NVDA, custom appModules, globalPlugins, braille display drivers and synth drivers will no longer be automatically loaded from your NVDA user configuration directory.
Rather these should be installed as part of an NVDA add-on. For those developing code for an add-on, code for testing can be placed in a new developer scratchpad directory in the NVDA user configuration directory, if the Developer scratchpad option is turned on in NVDA's new Advanced settings panel.
These changes are necessary to better ensure compatibility of custom code, so that NVDA does not break when this code becomes incompatible with newer releases.
Please refer to the list of changes further down for more details on this and how add-ons are now better versioned.
== New Features ==
- New braille tables: Afrikaans, Arabic 8 dot computer braille, Arabic grade 2, Spanish grade 2. (#4435, #9186)
- Added an option to NVDA's mouse settings to make NVDA handle situations where the mouse is controlled by another application. (#8452)
- This will allow NVDA to track the mouse when a system is controlled remotely using TeamViewer or other remote control software.
- Added the `--enable-start-on-logon` command line parameter to allow configuring whether silent installations of NVDA set NVDA to start at Windows logon or not. Specify true to start at logon or false to not start at logon. If the --enable-start-on-logon argument is not specified at all then NVDA will default to starting at logon, unless it was already configured not to by a previous installation. (#8574)
- It is possible to turn NVDA's logging features off by setting logging level to "disabled" from General settings panel. (#8516)
- The presence of formulae in LibreOffice and Apache OpenOffice spreadsheets is now reported. (#860)
- In Mozilla Firefox and Google Chrome, browse mode now reports the selected item in list boxes and trees.
- This works in Firefox 66 and later.
- This does not work for certain list boxes (HTML select controls) in Chrome.
- Early support for apps such as Mozilla Firefox on computers with ARM64 (e.g. Qualcomm Snapdragon) processors. (#9216)
- A new Advanced Settings category has been added to NVDA's Settings dialog, including an option to try out NVDA's new support for Microsoft Word via the Microsoft UI Automation API. (#9200)
- Added support for the graphical view in Windows Disk Management. (#1486)
- Added support for Handy Tech Connect Braille and Basic Braille 84. (#9249)
== Changes ==
- Updated liblouis braille translator to version 3.8.0. (#9013)
- Add-on authors now can enforce a minimum required NVDA version for their add-ons. NVDA will refuse to install or load an add-on whose minimum required NVDA version is higher than the current NVDA version. (#6275)
- Add-on authors can now specify the last version of NVDA the add-on has been tested against. If an add-on has been only tested against a version of NVDA lower than the current version, then NVDA will refuse to install or load the add-on. (#6275)
- This version of NVDA will allow installing and loading of add-ons that do not yet contain Minimum and Last Tested NVDA version information, but upgrading to future versions of NVDA (E.g. 2019.2) may automatically cause these older add-ons to be disabled.
- The move mouse to navigator object command is now available in Microsoft Word as well as for UIA controls, particularly Microsoft Edge. (#7916, #8371)
- Reporting of text under the mouse has been improved within Microsoft Edge and other UIA applications. (#8370)
- When NVDA is started with the `--portable-path` command line parameter, the provided path is automatically filled in when trying to create a portable copy of NVDA using the NVDA menu. (#8623)
- Updated the path to the Norwegian braille table to reflect the standard from the year 2015. (#9170)
- When navigating by paragraph (control+up or down arrows) or navigating by table cell (control+alt+arrows), the existence of spelling errors will no longer be announced, even if NVDA is configured to announce these automatically. This is because paragraphs and table cells can be quite large, and detecting spelling errors in some applications can be very costly. (#9217)
- NVDA no longer automatically loads custom appModules, globalPlugins and braille and synth drivers from the NVDA user configuration directory. This code should be instead packaged as an add-on with correct version information, ensuring that incompatible code is not run with current versions of NVDA. (#9238)
- For developers who need to test code as it is being developed, enable NVDA's developer scratchpad directory in the Advanced category of NVDA settings, and place your code in the 'scratchpad' directory found in the NVDA user configuration directory when this option is enabled.
== Bug Fixes ==
- When using OneCore speech synthesizer on Windows 10 April 2018 Update and later, large chunks of silence are no longer inserted between speech utterances. (#8985)
- When moving by character in plain text controls (such as Notepad) or browse mode, 32 bit emoji characters consisting of two UTF-16 code points (such as 🤦) will now read properly. (#8782)
- Improved restart confirmation dialog after changing NVDA's interface language. The text and the button labels are now more concise and less confusing. (#6416)
- If a 3rd party speech synthesizer fails to load, NVDA will fall back to Windows OneCore speech synthesizer on Windows 10, rather than espeak. (#9025)
- Removed the "Welcome Dialog" entry in the NVDA menu while on secure screens. (#8520)
- When tabbing or using quick navigation in browse mode, legends on tab panels are now reported more consistently. (#709)
- NVDA will now announce selection changes for certain time pickers such as in the Alarms and Clock app in Windows 10. (#5231)
- In Windows 10's Action Center, NVDA will announce status messages when toggling quick actions such as brightness and focus assist. (#8954)
- In action Center in Windows 10 October 2018 Update and earlier, NVDA will recognize brightness quick action control as a button instead of a toggle button. (#8845)
- NVDA will again track cursor and announce deleted characters in the Microsoft Excel go to and find edit fields. (#9042)
- Fixed a rare browse mode crash in Firefox. (#9152)
- NVDA no longer fails to report the focus for some controls in the Microsoft Office 2016 ribbon when collapsed.
- NVDA no longer fails to report the suggested contact when entering addresses in new messages in Outlook 2016. (#8502)
- The last few cursor routing keys on 80 cell eurobraille displays no longer route the cursor to a position at or just after the start of the braille line. (#9160)
- Fixed table navigation in threaded view in Mozilla Thunderbird. (#8396)
- In Mozilla Firefox and Google Chrome, switching to focus mode now works correctly for certain list boxes and trees (where the list box/tree is not itself focusable but its items are) . (#3573, #9157)
- Browse mode is now correctly turned on by default when reading messages in Outlook 2016/365 if using NVDA's experimental UI Automation support for Word Documents. (#9188)
- NVDA is now less likely to freeze in such a way that the only way to escape is signing out from your current windows session. (#6291)
- In Windows 10 October 2018 Update and later, when opening cloud clipboard history with clipboard empty, NVDA will announce clipboard status. (#9103)
- In Windows 10 October 2018 Update and later, when searching for emojis in emoji panel, NVDA will announce top search result. (#9105)
- NVDA no longer freezes in the main window of Oracle VirtualBox 5.2 and above. (#9202)
- Responsiveness in Microsoft Word when navigating by line, paragraph or table cell may be significantly improved in some documents. A reminder that for best performance, set Microsoft Word to Draft view with alt+w,e after opening a document. (#9217)
- In Mozilla Firefox and Google Chrome, empty alerts are no longer reported. (#5657)
- Significant performance improvements when navigating cells in Microsoft Excel, particularly when the spreadsheet contains comments and or validation dropdown lists. (#7348)
- It should be no longer necessary to turn off in-cell editing in Microsoft Excel's options to access the cell edit control with NVDA in Excel 2016/365. (#8146).
- Fixed a freeze in Firefox sometimes seen when quick navigating by landmarks, if the Enhanced Aria add-on is in use. (#8980)
== Changes for Developers ==
- NVDA can now be built with all editions of Microsoft Visual Studio 2017 (not just the Community edition). (#8939)
- You can now include log output from liblouis into the NVDA log by setting the louis boolean flag in the debugLogging section of the NVDA configuration. (#4554)
- Add-on authors are now able to provide NVDA version compatibility information in add-on manifests. (#6275, #9055)
- minimumNVDAVersion: The minimum required version of NVDA for an add-on to work properly.
- lastTestedNVDAVersion: The last version of NVDA an add-on has been tested with.
- OffsetsTextInfo objects can now implement the _getBoundingRectFromOffset method to allow retrieval of bounding rectangles per characters instead of points. (#8572)
- Added a boundingRect property to TextInfo objects to retrieve the bounding rectangle of a range of text. (#8371)
- Properties and methods within classes can now be marked as abstract in NVDA. These classes will raise an error if instantiated. (#8294, #8652, #8658)
- NVDA can log the time since input when text is spoken, which helps in measuring perceived responsiveness. This can be enabled by setting the timeSinceInput setting to True in the debugLog section of the NVDA configuration. (#9167)
= 2018.4.1 =
This release fixes a crash at start up if NVDA's user interface language is set to Aragonese. (#9089)
= 2018.4 =
Highlights of this release include performance improvements in recent Mozilla Firefox versions, announcement of emojis with all synthesizers, reporting of replied/forwarded status in Outlook, reporting the distance of the cursor to the edge of a Microsoft Word page, and many bug fixes.
== New Features ==
- New braille tables: Chinese (China, Mandarin) grade 1 and grade 2. (#5553)
- Replied / Forwarded status is now reported on mail items in the Microsoft Outlook message list. (#6911)
- NVDA is now able to read descriptions for emoji as well as other characters that are part of the Unicode Common Locale Data Repository. (#6523)
- In Microsoft Word, the cursor's distance from the top and left edges of the page can be reported by pressing NVDA+numpadDelete. (#1939)
- In Google Sheets with braille mode enabled, NVDA no longer announces 'selected' on every cell when moving focus between cells. (#8879)
- Added support for Foxit Reader and Foxit Phantom PDF. (#8944)
- Added support for the DBeaver database tool. (#8905)
== Changes ==
- "Report help balloons" in the Object Presentations dialog has been renamed to "Report notifications" to include reporting of toast notifications in Windows 8 and later. (#5789)
- In NVDA's keyboard settings, the checkboxes to enable or disable NVDA modifier keys are now displayed in a list rather than as separate checkboxes.
- NVDA will no longer present redundant information when reading clock system tray on some versions of Windows. (#4364)
- Updated liblouis braille translator to version 3.7.0. (#8697)
- Updated eSpeak-NG to commit 919f3240cbb.
== Bug Fixes ==
- In Outlook 2016/365, the category and flag status are reported for messages. (#8603)
- When NVDA is set to languages such as Kirgyz, Mongolian or Macedonian, it no longer shows a dialog on start-up warning that the language is not supported by the Operating System. (#8064)
- Moving the mouse to the navigator object will now much more accurately move the mouse to the browse mode position in Mozilla Firefox, Google Chrome and Acrobat Reader DC. (#6460)
- Interacting with combo boxes on the web in Firefox, Chrome and Internet Explorer has been improved. (#8664)
- If running on the Japanese version of Windows XP or Vista, NVDA now displays OS version requirements message as expected. (#8771)
- Performance improvements when navigating large pages with lots of dynamic changes in Mozilla Firefox. (#8678)
- Braille no longer shows font attributes if they have been disabled in Document Formatting settings. (#7615)
- NVDA no longer fails to track focus in File Explorer and other applications using UI Automation when another app is busy (such as batch processing audio). (#7345)
- In ARIA menus on the web, the Escape key will now be passed through to the menu and no longer turn off focus mode unconditionally. (#3215)
- In the new Gmail web interface, when using quick navigation inside messages while reading them, the entire body of the message is no longer reported after the element to which you just navigated. (#8887)
- After updating NVDA, Browsers such as Firefox and google Chrome should no longer crash, and browse mode should continue to correctly reflect updates to any currently loaded documents. (#7641)
- NVDA no longer reports clickable multiple times in a row when navigating clickable content in Browse Mode. (#7430)
- Gestures performed on baum Vario 40 braille displays will no longer fail to execute. (#8894)
- In Google Slides with Mozilla Firefox, NVDA no longer reports selected text on every control with focus. (#8964)
== Changes for Developers ==
- gui.nvdaControls now contains two classes to create accessible lists with check boxes. (#7325)
- CustomCheckListBox is an accessible subclass of wx.CheckListBox.
- AutoWidthColumnCheckListCtrl adds accessible check boxes to an AutoWidthColumnListCtrl, which itself is based on wx.ListCtrl.
- If you need to make a wx widget accessible which isn't already, it is possible to do so by using an instance of gui.accPropServer.IAccPropServer_impl. (#7491)
- See the implementation of gui.nvdaControls.ListCtrlAccPropServer for more info.
- Updated configobj to 5.1.0dev commit 5b5de48a. (#4470)
- The config.post_configProfileSwitch action now takes the optional prevConf keyword argument, allowing handlers to take action based on differences between configuration before and after the profile switch. (#8758)
= 2018.3.2 =
This is a minor release to work around a crash in Google Chrome when navigating tweetts on www.twitter.com. (#8777)
= 2018.3.1 =
This is a minor release to fix a critical bug in NVDA which caused 32 bit versions of Mozilla Firefox to crash. (#8759)
= 2018.3 =
Highlights of this release include automatic detection of many Braille displays, support for new Windows 10 features including the Windows 10 Emoji input panel, and many other bug fixes.
== New Features ==
- NVDA will report grammar errors when appropriately exposed by web pages in Mozilla Firefox and Google Chrome. (#8280)
- Content marked as being either inserted or deleted in web pages is now reported in Google Chrome. (#8558)
- Added support for BrailleNote QT and Apex BT's scroll wheel when BrailleNote is used as a braille display with NVDA. (#5992, #5993)
- Added scripts for reporting elapsed and total time of current track in Foobar2000. (#6596)
- The Mac command key symbol (⌘) is now announced when reading text with any synthesizer. (#8366)
- Custom roles via the aria-roledescription attribute are now supported in all web browsers. (#8448)
- New braille tables: Czech 8 dot, Central Kurdish, Esperanto, Hungarian, Swedish 8 dot computer braille. (#8226, #8437)
- Support has been added to automatically detect braille displays in the background. (#1271)
- ALVA, Baum/HumanWare/APH/Orbit, Eurobraille, Handy Tech, Hims, SuperBraille and HumanWare BrailleNote and Brailliant BI/B displays are currently supported.
- You can enable this feature by selecting the automatic option from the list of braille displays in NVDA's braille display selection dialog.
- Please consult the documentation for additional details.
- Added support for various modern input features introduced in recent Windows 10 releases. These include emoji panel (Fall Creators Update), dictation (Fall Creators Update), hardware keyboard input suggestions (April 2018 Update), and cloud clipboard paste (October 2018 Update). (#7273)
- Content marked as a block quote using ARIA (role blockquote) is now supported in Mozilla Firefox 63. (#8577)
== Changes ==
- The list of available languages in NVDA's General Settings is now sorted based on language names instead of ISO 639 codes. (#7284)
- Added default gestures for Alt+Shift+Tab and Windows+Tab with all supported Freedom Scientific braille displays. (#7387)
- For ALVA BC680 and protocol converter displays, it is now possible to assign different functions to the left and right smart pad, thumb and etouch keys. (#8230)
- For ALVA BC6 displays, the key combination sp2+sp3 will now announce the current date and time, whereas sp1+sp2 emulates the Windows key. (#8230)
- The user is asked once when NVDA starts if they are happy sending usage statistics to NV Access when checking for NVDA updates. (#8217)
- When checking for updates, if the user has agreed to allow sending usage statistics to NV Access, NVDA will now send the name of the current synth driver and braille display in use, to aide in better prioritization for future work on these drivers. (#8217)
- Updated liblouis braille translator to version 3.6.0. (#8365)
- Updated the path to the correct Russian eight-dots Braille table. (#8446)
- Updated eSpeak-ng to 1.49.3dev commit 910f4c2. (#8561)
== Bug Fixes ==
- Accessible labels for controls in Google Chrome are now more readily reported in browse mode when the label does not appear as content itself. (#4773)
- Notifications are now supported in Zoom. For example, this includes mute/unmute status, and incoming messages. (#7754)
- Switching braille context presentation when in browse mode no longer causes braille output to stop following browse mode cursor. (#7741)
- ALVA BC680 braille displays no longer intermittently fail to initialize. (#8106)
- By default, ALVA BC6 displays will no longer execute emulated system keyboard keys when pressing key combinations involving sp2+sp3 to trigger internal functionality. (#8230)
- Pressing sp2 on an ALVA BC6 display to emulate the alt key now works as advertised. (#8360)
- NVDA no longer announces redundant keyboard layout changes. (#7383, #8419)
- Mouse tracking is now much more accurate in Notepad and other plain text edit controls when in a document with more than 65535 characters. (#8397)
- NVDA will recognize more dialogs in Windows 10 and other modern applications. (#8405)
- On Windows 10 October 2018 Update and Server 2019 and above, NVDA no longer fails to track the system focus when an application freezes or floods the system with events. (#7345, #8535)
- Users are now informed when attempting to read or copy an empty status bar. (#7789)
- Fixed an issue where the "not checked" state on controls is not reported in speech if the control has previously been half checked. (#6946)
- In the list of languages in NVDA's General Settings, language name for Burmese is displayed correctly on Windows 7. (#8544)
- In Microsoft Edge, NVDA will announce notifications such as reading view availability and page load progress. (#8423)
- When navigating into a list on the web, NVDA will now report its label if the web author has provided one. (#7652)
- When manually assigning functions to gestures for a particular braille display, these gestures now always show up as being assigned to that display. Previously, they showed up as if they were assigned to the currently active display. (#8108)
- The 64-bit version of Media Player Classic is now supported. (#6066)
- Several improvements to braille support in Microsoft Word with UI Automation enabled:
- Similar to other multiline text fields, When positioned at the start of a document in Braille, the display is now panned such that the first character of the document is at the start of the display. (#8406)
- Reduced overly verbose focus presentation in both speech and braille when focusing a Word document. (#8407)
- Cursor routing in braille now works correctly when in a list in a Word document. (#7971)
- Newly inserted bullets/numbers in a Word document are correctly reported in both speech and braille. (#7970)
- In Windows 10 1803 and later, it is now possible to install add-ons if the "Use Unicode UTF-8 for worldwide language support" feature is enabled. (#8599)
- NVDA will no longer make iTunes 12.9 and newer completely unusable to interact with. (#8744)
== Changes for Developers ==
- Added scriptHandler.script, which can function as a decorator for scripts on scriptable objects. (#6266)
- A system test framework has been introduced for NVDA. (#708)
- Some changes have been made to the hwPortUtils module: (#1271)
- listUsbDevices now yields dictionaries with device information including hardwareID and devicePath.
- Dictionaries yielded by listComPorts now also contain a usbID entry for COM ports with USB VID/PID information in their hardware ID.
- Updated wxPython to 4.0.3. (#7077)
- As NVDA now only supports Windows 7 SP1 and later, the key "minWindowsVersion" used to check if UIA should be enabled for a particular release of Windows has been removed. (#8422)
- You can now register to be notified about configuration saves/reset actions via new config.pre_configSave, config.post_configSave, config.pre_configReset, and config.post_configReset actions. (#7598)
- config.pre_configSave is used to be notified when NVDA's configuration is about to be saved, and config.post_configSave is called after configuration has been saved.
- config.pre_configReset and config.post_configReset includes a factory defaults flag to specify if settings are reloaded from disk (false) or reset to defaults (true).
- config.configProfileSwitch has been renamed to config.post_configProfileSwitch to reflect the fact that this action is called after profile switch takes place. (#7598)
- UI Automation interfaces updated to Windows 10 October 2018 Update and Server 2019 (IUIAutomation6 / IUIAutomationElement9). (#8473)
= 2018.2.1 =
This release includes translation updates due to last-minute removal of a feature which caused problems.
= 2018.2 =
Highlights of this release include Support for tables in Kindle for PC, support for HumanWare BrailleNote Touch and BI14 Braille displays, Improvements to both Onecore and Sapi5 speech synthesizers, improvements in Microsoft Outlook and much more.
== New Features ==
- row and column span for table cells is now reported in speech and braille. (#2642)
- NVDA table navigation commands are now supported in Google Docs (with Braille mode enabled). (#7946)
- Added ability to read and navigate tables in Kindle for PC. (#7977)
- Support for HumanWare BrailleNote touch and Brailliant BI 14 braille displays via both USB and bluetooth. (#6524)
- In Windows 10 Fall Creators Update and later, NVDA can announce notifications from apps such as Calculator and Windows Store. (#7984)
- New braille translation tables: Lithuanian 8 dot, Ukrainian, Mongolian grade 2. (#7839)
- Added a script to report formatting information for the text under a specific braille cell. (#7106)
- When updating NVDA, it is now possible to postpone the installation of the update to a later moment. (#4263)
- New languages: Mongolian, Swiss German.
- You can now toggle control, shift, alt, windows and NVDA from your braille keyboard and combine these modifiers with braille input (e.g. press control+s). (#7306)
- You can assign these new modifier toggles using the commands found under Emulated system keyboard keys in the Input gestures dialog.
- Restored support for Handy Tech Braillino and Modular (with old firmware) displays. (#8016)
- Date and time for supported Handy Tech devices (such as Active Braille and Active Star) will now automatically be synchronized by NVDA when out of sync more than five seconds. (#8016)
- An input gesture can be assigned to temporarily disable all configuration profile triggers. (#4935)
== Changes ==
- The status column in the addons manager has been changed to indicate if the addon is enabled or disabled rather than running or suspended. (#7929)
- Updated liblouis braille translator to 3.5.0. (#7839)
- The Lithuanian braille table has been renamed to Lithuanian 6 dot to avoid confusion with the new 8 dot table. (#7839)
- The French (Canada) grade 1 and grade 2 tables have been removed. Instead, the French (unified) 6 dot computer braille and Grade 2 tables will be used respectively. (#7839)
- The secondary routing buttons on Alva BC6, EuroBraille and Papenmeier braille displays now report formatting information for the text under the braille cell of that button. (#7106)
- Contracted braille input tables will automatically fall back to uncontracted mode in non-editable cases (i.e. controls where there is no cursor or in browse mode). (#7306)
- NVDA is now less verbose when an appointment or time slot in the Outlook calendar covers an entire day. (#7949)
- All of NVDA's Preferences can now be found in one settings dialog under NVDA Menu -> Preferences -> Settings, rather than scattered throughout many dialogs. (#577)
- The default speech synthesizer when running on Windows 10 is now oneCore speech rather than eSpeak. (#8176)