Open c469591 opened 1 year ago
I believe it's QT based. QT has been very slow to implement accessibility, and I don't know how well PySimpleGUI implements even the accessible parts of QT.
Complain to the PySimpleGUI developers about this.
PySimpleGUI uses Tkinter which is way worse than Qt. It's completely, fully inaccessible. NVDA reads nothing.
As far as I know, ZDSR, a screen reader software from China, has already supported the operation of this GUI. Through ZDSR, it is possible to operate UVR and other similar software. Therefore, I believe that NVDA should also find a way to achieve the same functionality.
In addition, this new feature is currently only implemented in the beta version of ZDSR, the effect is very good
Hi,
This is an interesting data point - perhaps ZDSR might be using a recognition engine or something to recognize and work with elements drawn to the screen for which accessibility API information is not defined (or if defined, done incorrectly). The ideal fix should come from ap developers, more specifically developers of GUI toolkits as exposing accessibility information can benefit more than one screen reader (a good example is QT where toolkit developers realized benefits of improving accessibility at the toolkit level). As others noted (directly or not), I advise getting app developers involved and explain the benefits of using a more accessible GUI toolkit and/or strategies to persuade Tkinter folks about accessibility.
Thanks.
Hi. I know that screen readers such as JAWS, SuperNova, Cobra, and Window Eyes all are able to access text in Tkinter applications using their display model, unlike NVDA and ZDSR as of ZDSR version 1.6.2.2. Even when you configure JAWS to use GDI hooking instead of its graphicks driver, it can access the text, so it should be possible to make NVDA do the same.
Hi, let us not forget Narrator, as Narrator has become a “gold standard” (with qualifiers) on Windows 10 and later. Thanks.
I took UVR to test, the windows narrator can not read aloud any controls on UVR
We are unable to process this issue as it stands.
This is a problem with the implementation of the framework, as a starting point please submit feedback to the authors to let them know about the problem.
Kind Regards, NV Access Software Developers
I created a dll that hooks ExtTextOutW, and prints the text given to it to a file. I injected the dll into idle, an application written in tkinter, and got this result. Of note is that NVDA's display model only finds the text of the menu bar. If NVDA's display model gets improved in such a way that it can find the text in tkinter applications, it is at least possible to use them. idleText.txt
Is your feature request related to a problem? Please describe.
no
Describe the solution you'd like
Allow me to smoothly operate software developed using the PySimpleGUI library.
Describe alternatives you've considered
no
Additional context
I hope to be able to smoothly use software developed using PySimpleGUI for GUI, for example UVR → https://github.com/Anjok07/ultimatevocalremovergui. Nowadays, more and more software is being developed using PySimpleGUI instead of WxPython, which means that I am completely unable to operate an increasing number of software applications using NVDA. Thank you!