a11y-review skill: update focus management guidance for Compose Navigation 2.9+

Resolved 💬 2 comments Opened Mar 10, 2026 by Honga1 Closed Mar 13, 2026

Context

The a11y-review skill currently recommends aggressive FocusRequester + LaunchedEffect(Unit) patterns to auto-focus the first element on screen entry. This causes poor UX:

  • Triggers TalkBack to immediately announce the focused element, which can be disorienting
  • Fights with Compose Navigation's own focus restoration on back navigation
  • As of Navigation 2.9+ (and Compose BOM 2026.02.01), there is no built-in auto-focus API, so the recommendation should be to not force focus on screen entry

Suggested update

  • Remove or soften the recommendation to auto-focus on screen entry
  • Clarify that Compose Navigation does not provide built-in focus handling
  • Recommend letting the system handle focus naturally unless there's a specific a11y requirement (e.g., a modal dialog or error state)
  • Focus management should be reserved for live regions, error announcements, and explicit user-triggered focus changes

References

  • AndroidX Navigation Compose source (no auto-focus API exists as of 2.9.x)
  • Material Design 3 accessibility guidelines

🤖 Generated with Claude Code

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗