Desktop app (Mac): VoiceOver announces the dictation button twice with the same name and moves through the controls out of order

Status Open
Maintainer reply None cached
Activity 0 comments · opened Oct 9, 2026

Where: Claude desktop app for Mac, Code tab, the microphone (dictation) controls in the message box.

Assistive technology: VoiceOver on macOS, navigating with Control-Option and the arrow keys.

Steps to reproduce

  1. Turn on VoiceOver.
  2. Put the VoiceOver cursor on the Add button in the message box.
  3. Press Control-Option-Right Arrow to move through the dictation controls.
  4. Start dictating, then repeat step 3.

What VoiceOver says when you are not dictating

  1. "Press and hold to record"
  2. "Press and hold to record"
  3. "Dictation settings"

What VoiceOver says while you are dictating

  1. "Stop dictation"
  2. "Stop dictation, selected, toggle button"
  3. "Dictation settings"

Problems

  1. Duplicate stop. One control is announced twice. The first stop has no role, so it seems to be a container around the button that has the same name as the button. A VoiceOver user hears two identical items and can't tell which one actually works.
  2. Navigation order is wrong. Pressing Control-Option-Right Arrow moves the VoiceOver cursor to the second of the two identical items and then back to the first, instead of moving forward through them in order.
  3. A hint is used as the name. "Press and hold to record" is being used as the control's name. It describes how to use the control, not what the control is. VoiceOver users hear the instruction where they expect the name.

What should happen

  • One stop for the record button, named "Dictate" while you're not dictating and "Stop dictation" while you are.
  • "Press and hold to record" given as a hint, which VoiceOver reads after a short pause, not as the name.
  • The container either hidden from VoiceOver or given no name of its own, so it doesn't repeat the button.
  • Control-Option-Right Arrow moving forward through the controls in visual order.
  • "Dictation settings" kept as it is. That label is clear.

Which accessibility rules this breaks

  • WCAG 4.1.2, Name, Role, Value: a control should have one name that says what it is, and its role should be announced.
  • WCAG 2.4.3, Focus Order: moving through the controls should follow a logical order.
  • WCAG 2.4.6, Headings and Labels: labels should describe what each control does.

View original on GitHub ↗