Skip to content

🟠 [RGAA 12.8] Tab order is inconsistent #612

@jbpenrath

Description

@jbpenrath

Bug Report

Problematic behavior
Tab order is inconsistent across the application:

  • Focus does not return to the trigger button after closing modals
  • Non-interactive elements incorrectly receive focus (tabindex="0" on content areas like .c__modal__content and .attachment-uploader)
  • DOM order does not match visual order in some cases

Expected behavior/code
Tab order must follow a logical reading sequence. Focus must return to the trigger element on modal close. Only interactive elements should be focusable.

Steps to Reproduce

  1. Open any modal, then close it — focus does not return to the trigger button
  2. Tab through the import modal — .c__modal__content receives focus
  3. Tab through the compose view — .attachment-uploader receives focus

Environment

  • RGAA Criterion: 12.8
  • Severity: 🟠 Major

Possible Solution

  • Return focus to trigger button on every modal close
  • Remove tabindex="0" from .c__modal__content and .attachment-uploader
  • On thread selection activation (inbox), move focus to "select all" checkbox via element.focus()
  • In compose/reply view, reorder DOM so subject title appears before thread action buttons bar
  • Reorder DOM so mobile menu button and its dropdown are adjacent

Additional context/Screenshots
RGAA reference: Criterion 12.8

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions