Chip: on the web every Chip sets aria-selected on role button
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Facilidade para iniciantes
- 84/100
- Tipo de issue
- Bug
- Clareza
- Claramente especificada
- Status de atividade
- Ativa
- Stack de tecnologia
- react-native, typescript
- Domínio
- accessibility, frontend
Direção de pesquisa
Comece em Chip.tsx, onde a issue diz que aria-selected é passado e selected tem false como valor padrão; compare o comportamento na web com o nativo antes de alterá-lo. Confira o exemplo de Chip em /chip e execute axe-core no app web para confirmar que a violação foi eliminada e que um toggle selecionado expõe seu estado. O trabalho estará concluído quando chips de ação simples omitirem o estado de toggle e chips web selecionados usarem o estado de botão compatível.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Current behaviour
On the web, every Chip renders <button role="button" aria-selected="true|false"> (Chip.tsx passes aria-selected={selected}, and selected defaults to false). aria-selected is not allowed on role button, so screen readers ignore the selected state, and axe-core reports aria-allowed-attr (critical): "ARIA attribute is not allowed: aria-selected". The example app shows it on the Chip, Card, Floating Action Button, List.Section and Tooltip screens.
Expected behaviour
On the web a Chip used as a toggle exposes its state with aria-pressed, the state role button supports, and only when the app passes selected, so a plain action chip isn't announced as a toggle. Native keeps announcing the selected state as it does today. axe reports no aria-allowed-attr violation.
How to reproduce?
- Run the example app on the web from
main(yarn install, thennpx expo start --webinexample/). - Open the Chip example (
/chip). - Run axe-core on the page (for example with the axe DevTools extension).
Preview
What have you tried so far?
Your Environment
| software | version |
|---|---|
| react-native-paper | main (8cb344b) |
| browser | Chromium 153 |
- Linguagem predominante
- TypeScript
- Estrelas
- 14.5k
- Forks
- 2.3k
- Merge médio
- 2d 12h
- PRs com merge (30d)
- 22
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de callstack/react-native-paper
-
feature request
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
callstack/react-native-paper#5189 ·
Mantenedores costumam responder em até 1 dia
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
callstack/react-native-paper#5187 ·
Mantenedores costumam responder em até 1 dia
-
Accessibility example app good first task
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 86/100
callstack/react-native-paper#5182 ·
Mantenedores costumam responder em até 1 dia
-
Chip: accessibilityState passed by caller is discarded; aria-checked is never forwarded to the real rendered nodeTalvez já em andamento @bhumikabiyani assumiu há 2 dias. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
callstack/react-native-paper#5146 · 2 comentários ·
Mantenedores costumam responder em até 1 dia
-
Tooltip: onPress event object is not propagated to parent component on nativeTalvez já em andamento @aliyilmaztech assumiu há 86 dias. Abertabug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 74/100
callstack/react-native-paper#5003 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de callstack/react-native-paper
Issues semelhantes
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 88/100
Mantenedores costumam responder em até 1 dia
-
pending close triaging
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
anomalyco/opencode#62582 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
live-codes/livecodes#1079 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Add: ESP 2 ROAbertaapproved check:passed streams:add
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
Mantenedores costumam responder em até 1 dia