novità NVDA 2021.1
Questa versione include un supporto sperimentale opzionale per la tecnologia UIA in Excel e nei browser basati su Chromium.
Sono state effettuate numerose correzioni su diverse lingue e per l'accesso ai collegamenti in Braille.
Aggiornamenti anche per le Emoji Unicode CLDR, per i simboli matematici, e alle tabelle braille di LibLouis.
Naturalmente sono stati risolti numerosi bug , specie in Office, Visual Studio, e molto altro.
Nota:
- Questa versione non risulta più compatibile con numerosi componenti aggiuntivi esistenti, che dovranno essere aggiornati.
- Viene anche eliminato qualsiasi supporto ad Adobe Flash.
Novità
- supporto sperimentale alla tecnologia UIA con i browser basati su Chromium (come Edge). (#12025)
- Supporto sperimentale opzionale per Microsoft Excel tramite UI Automation. Raccomandato solo per Microsoft Excel build 16.0.13522.10000 o superiore. (#12210)
- Esplorazione semplificata dell'output relativo alla Console Python . (#9784)
- alt+su/giù va al risultato output successivo o precedente (aggiungere Shift per selezionare).
- control+l cancella il riquadro di output.
- NVDA ora annuncia le categorie assegnate a un appuntamento in Microsoft Outlook, se presenti. (#11598)
- Supporto per i display braille e i Notetaker Seika prodotti dalla Nippon Telesoft. (#11514)
Cambiamenti
- In modalità navigazione, è possibile usare i cursor routing di un display braille per attivare i controlli, premendo sulla descrizione del controllo stesso (ad esempio "lnk" per un link). Ciò risulta molto utile anche per attivare caselle di controllo senza un'etichetta specifica. (#7447)
- NVDA non permette l'utilizzo dell'OCR di Windows10 nel caso in cui la tenda schermo sia attiva. (#11911)
- Aggiornato Unicode Common Locale Data Repository (CLDR) alla versione 39.0. (#11943, #12314)
- Aggiunti diversi simboli matematici al dizionario simboli. Per l'Italia si ringrazia il Dipartimento di Matematica "Tullio Levi Civita", Università di Padova, nelle persone delle prof.sse Ombretta Gaggi ed Alessandra Buratto. (#11467)
- Migliorato l'aspetto della guida utente, del file delle novità e dei comandi di scelta rapida. (#12027)
- Se si cerca di usare la funzione di modifica layout schermo (NVDA+v) in applicazioni che non la gestiscono come Microsoft Word, NVDA ora lo segnalerà dicendo "non supportato". (#7297)
- Viene attivata per impostazione predefinita la funzione 'Tenta di non leggere informazioni obsolete concernenti il focus', presente nella finestra "avanzate" delle impostazioni di NVDA. (#10885)
- Questo comportamento può essere disabilitato impostando l'opzione su "No".
- Applicazioni web (come Gmail) non forniscono più informazioni obsolete quando si sposta velocemente il focus.
- Aggiornate le tabelle di traduzione Braille Liblouis braille translator alla versione 3.17.0. (#12137)
- Nuove tabelle braille: Braille letterario bielorusso, computer braille bielorusso, urdu grado 1, urdu grado 2.
- Cessato il supporto per i contenuti Adobe Flash, la stessa Adobe non ne consiglia più l'uso. (#11131)
- NVDA ora è in grado di chiudersi correttamente anche nel caso vi siano finestre di dialogo dello screen reader ancora aperte; all'uscita, queste saranno chiuse automaticamente. (#1740)
- è possibile chiudere il visualizzatore sintesi vocale con
alt+F4
, inoltre è stato aggiunto un pulsante di chiusura per agevolare chi utilizza mouse o dispositivi di puntamento. (#12330) - Il visualizzatore Braille ora dispone di un pulsante di chiusura per agevolare chi utilizza mouse o dispositivi di puntamento. (#12328)
- Nell'elenco elementi, il tasto di scelta rapida sul pulsante "Attiva" è stato rimosso per alcune lingue per evitare conflitti con l'etichetta di un pulsante radio di tipo elemento. Quando disponibile, si potrà comunque attivare il pulsante semplicemente premendo invio sempre dall'elenco elementi. (#6167)
Bug corretti
- Risulta nuovamente leggibile l'elenco messaggi in Outlook 2010. (#12241)
- Nei programmi di tipo terminale in Windows 10 versione 1607 e successive, all'inserimento o alla cancellazione dei caratteri nel mezzo di una riga, non saranno più letti anche i caratteri alla destra del cursore. (#3200)
- Questa correzione sperimentale deve essere abilitata manualmente nel pannello delle impostazioni avanzate di NVDA modificando l'algoritmo diff in Diff Match Patch.
- In MS Outlook, non dovrebbe più essere annunciata la distanza quando si preme Shift+tab per andare dal corpo del messaggio all'oggetto (#10254)
- Nella Console Python, vengono supportate operazioni quali l'inserimento di tabulazioni per effettuare rientri all'inizio di una riga non vuota, oltre alla possibilità di gestire l'autocompletamento nel mezzo di una riga. (#11532)
- Quando il layout dello schermo è disattivato, le informazioni di formattazione e altri messaggi navigabili non presentano più righe vuote. (#12004)
- Ora è possibile leggere i commenti in MS Word con UIA abilitato. (#9285)
- Migliorate le prestazioni durante l'interazione con Visual Studio. (#12171)
- Risolti bug grafici come elementi mancanti quando si utilizza NVDA con un layout da destra a sinistra. (#8859)
- Per quel che concerne la direzione del layout dell'interfaccia utente di NVDA, Viene rispettata la scelta dell'utente effettuata in base alla lingua dello screen reader piuttosto che fare riferimento a quella di sistema. (#638)
- problema noto per le lingue da destra a sinistra: il bordo destro dei raggruppamenti non è ben gestito con etichette/controlli. (#12181)
- La localizzazione di Python è impostata per corrispondere alla lingua selezionata nelle preferenze in modo coerente. (#12214)
- TextInfo.getTextInChunks non si blocca più quando incontrato sui controlli Rich Edit come il visualizzatore di log di NVDA. (#11613)
- È nuovamente possibile utilizzare NVDA nelle lingue che contengono caratteri di sottolineatura nel nome, come de_CH su Windows 10 1803 e 1809. (#12250)
- In WordPad, ora funziona come previsto la lettura degli apici e pedici. (#12262)
- NVDA legge ora correttamente il nuovo contenuto appena focalizzato in una pagina web in cui il vecchio focus viene sostituito dal nuovo. (#12147)
- Viene letta correttamente la formattazione di tipo barrato, apice e pedice nelle celle intere di Excel se l'opzione corrispondente è abilitata. (#12264)
- Risolto il problema con la copia della configurazione durante l'installazione da una versione portable quando la directory di di destinazione predefinita è vuota. (#12071, #12205)
- Risolto un problema che provocava la lettura non corretta di alcune lettere con accenti o diacritici quando l'opzione 'Leggi Cap prima delle maiuscole' è selezionata. (#11948)
- risolto il problema con il cambio pitch nelle sintesi vocali Sapi4.. (#12311)
- Il programma di installazione di NVDA ora rispetta anche il parametro della riga di comando
--minimal
e non riproduce il suono di avvio, seguendo lo stesso comportamento documentato di una copia dell'eseguibile NVDA installato o portatile. (#12289) - In MS Word o Outlook, il tasto di navigazione rapida della tabella può ora passare alla tabella di layout se l'opzione "Includi tabelle di layout" è abilitata nelle impostazioni della modalità di navigazione. (#11899)
- NVDA non dirà più "↑↑↑" per le emoji in alcune lingue particolari. (#11963)
- Espeak ora supporta nuovamente il cantonese e il mandarino. (#10418)
- Nel nuovo Microsoft Edge basato su Chromium, vengono letti correttamente i campi di testo come la barra degli indirizzi quando vuoti. (#12474)
- Sistemati i problemi con il driver Seika per le barre braille. (#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, andscons.py
has also been removed. - To run NVDA from source, rather than executing
source/nvda.pyw
directly, the developer should now userunnvda.bat
in the root of the repository. If you do try to executesource/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.
- 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
- 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.
- Instead, override
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).
- To alter the diff behaviour for some object, override the
- 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) propertyisCurrent
now strictly returns Enum classcontrolTypes.IsCurrent
. (#11782)isCurrent
is no longer Optional, and thus will not return None.- When an object is not current
controlTypes.IsCurrent.NO
is returned.
- When an object is not current
- The
controlTypes.isCurrentLabels
mapping has been removed. (#11782)- Instead use the
displayString
property on acontrolTypes.IsCurrent
enum value.- For example:
controlTypes.IsCurrent.YES.displayString
.
- For example:
- Instead use the
winKernel.GetTimeFormat
has been removed - usewinKernel.GetTimeFormatEx
instead. (#12139)winKernel.GetDateFormat
has been removed - usewinKernel.GetDateFormatEx
instead. (#12139)gui.DriverSettingsMixin
has been removed - usegui.AutoSettingsMixin
. (#12144)speech.getSpeechForSpelling
has been removed - usespeech.getSpellingSpeech
. (#12145)- Commands cannot be directly imported from speech as
import speech; speech.ExampleCommand()
orimport speech.manager; speech.manager.ExampleCommand()
- usefrom speech.commands import ExampleCommand
instead. (#12126) speakTextInfo
will no longer send speech throughspeakWithoutPauses
if reason isSAYALL
, asSayAllHandler
does this manually now. (#12150)- The
synthDriverHandler
module is no longer star imported intoglobalCommands
andgui.settingsDialogs
- usefrom synthDriverHandler import synthFunctionExample
instead. (#12172) ROLE_EQUATION
has been removed from controlTypes - useROLE_MATH
instead. (#12164)autoSettingsUtils.driverSetting
classes are removed fromdriverHandler
- please use them fromautoSettingsUtils.driverSetting
. (#12168)autoSettingsUtils.utils
classes are removed fromdriverHandler
- please use them fromautoSettingsUtils.utils
. (#12168)- Support of
TextInfo
s that do not inherit fromcontentRecog.BaseContentRecogTextInfo
is removed. (#12157) speech.speakWithoutPauses
has been removed - please usespeech.speechWithoutPauses.SpeechWithoutPauses(speakFunc=speech.speak).speakWithoutPauses
instead. (#12195, #12251)speech.re_last_pause
has been removed - please usespeech.speechWithoutPauses.SpeechWithoutPauses.re_last_pause
instead. (#12195, #12251)WelcomeDialog
,LauncherDialog
andAskAllowUsageStatsDialog
are moved to thegui.startupDialogs
. (#12105)getDocFilePath
has been moved fromgui
to thedocumentationUtils
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
andwx.CENTER_ON_SCREEN
are removed, useself.CentreOnScreen()
instead. (#12309)easeOfAccess.isSupported
has been removed, NVDA only supports versions of Windows where this evaluates toTrue
. (#12222)sayAllHandler
has been moved tospeech.sayAll
. (#12251)speech.sayAll.SayAllHandler
exposes the functionsstop
,isRunning
,readObjects
,readText
,lastSayAllMode
.SayAllHandler.stop
also resets theSayAllHandler
SpeechWithoutPauses
instance.CURSOR_REVIEW
andCURSOR_CARET
has been replaced withCURSOR.REVIEW
andCURSOR.CARET
.
speech.SpeechWithoutPauses
has been moved tospeech.speechWithoutPauses.SpeechWithoutPauses
. (#12251)speech.curWordChars
has been renamedspeech._curWordChars
. (#12395)- the following have been removed from
speech
and can be accessed throughspeech.getState()
. These are readonly values now. (#12395)- speechMode
- speechMode_beeps_ms
- beenCanceled
- isPaused
- to update
speech.speechMode
usespeech.setSpeechMode
. (#12395) - the following have been moved to
speech.SpeechMode
. (#12395)speech.speechMode_off
becomesspeech.SpeechMode.off
speech.speechMode_beeps
becomesspeech.SpeechMode.beeps
speech.speechMode_talk
becomesspeech.SpeechMode.talk
IAccessibleHandler.IAccessibleObjectIdentifierType
is nowIAccessibleHandler.types.IAccessibleObjectIdentifierType
. (#12367)- The following in
NVDAObjects.UIA.WinConsoleUIA
have been changed (#12094)NVDAObjects.UIA.winConsoleUIA.is21H1Plus
renamedNVDAObjects.UIA.winConsoleUIA.isImprovedTextRangeAvailable
.NVDAObjects.UIA.winConsoleUIA.consoleUIATextInfo
renamed to start class name with upper case.NVDAObjects.UIA.winConsoleUIA.consoleUIATextInfoPre21H1
renamedNVDAObjects.UIA.winConsoleUIA.ConsoleUIATextInfoWorkaroundEndInclusive
- The implementation works around both end points being inclusive (in text ranges) before microsoft/terminal PR 4018
- Workarounds for
expand
,collapse
,compareEndPoints
,setEndPoint
, etc