Accessibility: New Topic/Reply form not accessible to screen reader

A screen reader user on iOS reported that several buttons on the New Topic/Reply form are not correctly labelled.

Image%20from%20iOS(3)

  • The reply button in the bottom-left is being read as “Or press Ctrl+Enter”, not “Reply” as expected
  • The hamburger button in the top-right is not labelled
  • The upload image button in the bottom-right is read as “link”
9 « J'aime »

Is this specific to mobile?

1 « J'aime »

Of the buttons listed, I think only the Reply button appears on the desktop version but it’s still labelled “Or press Ctrl+Enter”

2 « J'aime »

@owlish I would love to get this sorted, can you provide us with a quick start of how to test this? What software do we install locally?

5 « J'aime »

The Chrome Vox screenreader was recommended for accessibility testing.

NVDA is another free option for Windows.

3 « J'aime »

Just wanted to check in to see if there’s been any movement on this or if you need any more information

1 « J'aime »

Hi @sam, is there any other information you need for this?

1 « J'aime »

I think we have what we need, its just a question of resources at the moment.

I am adding a pr-welcome on this in case someone from the community wants to help out.

5 « J'aime »

The issue with the reply button was fixed by commit 31ffcf989ce63e. I just tested this on iOS with VoiceOver.

Now I’ll investigate the other two issues.

7 « J'aime »

I verified that the hamburger button in the composer isn’t labeled. Specifically, this is the toggle-toolbar button in the composer-toggles component. This button is only rendered in the mobile view.

What would be a reasonable label for this button? Maybe “Formatting”, since many of the toolbar options are formatting related? Not all of them are, though. Maybe the more generic “Tools” would be better.

5 « J'aime »

It occurred to me that, to enable accessibility fixes to reach Discourse’s worldwide user base without imposing too much on translators, we should use existing strings for unlabeled controls when it makes sense. So, for the hamburger button, would it make sense to use “show more” as the title? We could use “options”, and I think that would be a better fit, except that there’s already an “options” button in the toolbar itself. I think that would be confusing.

6 « J'aime »

I’ve added labels to the upload and preview buttons as well as the toolbar toggle.

https://github.com/discourse/discourse/commit/13c9d7e70431c91d03e206e2f04121bc8cb69db7

@Matt_Campbell You’re right about the benefits of using existing text where possible, but I ended up adding two new strings so the label can say “[Show/hide] composer toolbar”. I considered using “options,” but it didn’t seem descriptive enough, especially considering that the button is a toggle.

6 « J'aime »

@owlish @Matt_Campbell @awesomerobot , quelle est la situation ces jours-ci ?
La demande originale concernait la correction du titre « Ou appuyez sur Ctrl+Entrée » sur le bouton de réponse. Peut-être pouvons-nous simplement ajouter aria-label="reply" à ce bouton ?

2 « J'aime »

VoiceOver sur iOS lit l’étiquette du bouton « répondre », puis le titre, et c’est également le cas avec NVDA sur ordinateur, donc je pense que tout a été couvert ici, mais je peux examiner de plus près si quelque chose manque encore.

Une amélioration mineure pourrait être de supprimer le titre sur mobile car les raccourcis clavier ne sont généralement pas pertinents là-bas.

3 « J'aime »

Génial, je vais mettre un délai de 2 semaines pour le fermer.

N’hésitez pas à ouvrir des suivis si vous en trouvez @owlish

Ce sujet a été automatiquement fermé après 9 jours. De nouvelles réponses ne sont plus autorisées.