[ Bug] Some elements are not being reported by screen readers

Aberta
#6,633 1 comentário 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
35/100
Tipo de issue
Bug
Clareza
Precisa de esclarecimento
Status de atividade
Estagnada
Stack de tecnologia
python
Domínio
accessibility

Direção de pesquisa

Comece reproduzindo o problema com PySimpleGUIWx no Windows 11 e no NVDA, comparando os botões, campos de entrada e popups relatados com os menus suspensos e elementos de texto. Identifique quais elementos não são expostos ao leitor de tela e rastreie sua implementação em Wx; considera-se concluído quando os elementos afetados são relatados de forma consistente.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Type of Issue (Enhancement, Error, Bug, Question)

Bug


Operating System

Windows 11

PySimpleGUI Port (tkinter, Qt, Wx, Web)

Wx


Versions

Version information can be obtained by calling sg.main_get_debug_data()
Or you can print each version shown in ()

Python version (sg.sys.version)

Python 3.9.13 (tags/v3.9.13:6de2ca5, May 17 2022, 16:36:42) [MSC v.1929 64bit (AMD64)]

PySimpleGUI Version (sg.__version__)

4.60.5

GUI Version (tkinter (sg.tclversion_detailed), PySide2, WxPython, Remi)

4.2.1


Your Experience In Months or Years (optional)

Years Python programming experience
About 4 Months I guess...
Years Programming experience overall
About 2.5 years now
Have used another Python GUI Framework? (tkinter, Qt, etc) (yes/no is fine)
Nope


Troubleshooting

These items may solve your problem. Please check those you've done by changing - [ ] to - [X]

  • Searched main docs for your problem www.PySimpleGUI.org
  • Looked for Demo Programs that are similar to your goal. It is recommend you use the Demo Browser! Demos.PySimpleGUI.org
  • None of your GUI code was generated by an AI algorithm like GPT
  • If not tkinter - looked for Demo Programs for specific port
  • For non tkinter - Looked at readme for your specific port if not PySimpleGUI (Qt, WX, Remi)
  • Run your program outside of your debugger (from a command line)
  • Searched through Issues (open and closed) to see if already reported Issues.PySimpleGUI.org
  • Have upgraded to the latest release of PySimpleGUI on PyPI (lastest official version)
  • Tried using the PySimpleGUI.py file on GitHub. Your problem may have already been fixed but not released
Detailed Description

I'm using PySimpleGUIWx, and, while working with it, I noticed that some elements are not being reported by screen readers (I tested with NVDA at least). I know buttons, input fields and popups do get reported, but some other elements like dropdowns and texts don't. I don't know the full list of unreported elements, because I didn't test all of them. As discussed in:
https://nvda.groups.io/g/nvda/topic/how_does_nvda_make_its_gui/87411360?p=
According to one of NVDA developers, Wx elements are accessible, so I don't exactly know why using the Wx port to "communicate" with Wx doesn't produce the same output. I know that it may be the way PySimpleGUIWx is implemented, but I didn't take a look at the code, nor I think I have enough experience and knowledge, neither in python nor in Wx to discover or even guess why this happens. If I were to suggest something, I would tell you to test which elements don't get reported. I also will try doing the same tests with other screen readers and post here, but to be honest, NVDA does a very good job most of the time, and if something is not being reported by NVDA, it's very unlikely that it will get reported by other screen readers in most of cases.

Anyway, I hope this contribution will be useful somehow and will help devs create accessible apps really easy.

Code To Duplicate

A short program that isolates and demonstrates the problem (Do not paste your massive program, but instead 10-20 lines that clearly show the problem)

This pre-formatted code block is all set for you to paste in your bit of code:


# Paste your code here

There's no relevant code to show i guess...
Screenshot, Sketch, or Drawing

Watcha Makin?

If you care to share something about your project, it would be awesome to hear what you're building.
Just a chess client...

Linguagem predominante
Python
Estrelas
13.8k
Forks
1.8k
Métricas de merge de PRs
Nenhum PR com merge em 30d

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de PySimpleGUI/PySimpleGUI

Todas as issues de PySimpleGUI/PySimpleGUI

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.