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
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗