Problem
The StatusBar "⋯" menu closes on outside mousedown (it has a document listener), but the composer mode menu has no outside-click or Escape handler — opening it and tapping elsewhere (e.g. a tool card) leaves it open (confirmed in the demo). Inconsistent and a keyboard/AT trap.
Suggested fix
Mirror the StatusBar pattern: close the mode menu on outside-click and Escape, and make it arrow-key navigable per the ARIA menu pattern.
Where
mobile/src/components/Composer.tsx (mode menu, ~75–95) vs StatusBar.tsx (~41–48).
Filed from a UI research sweep of the Helm mobile app (landing + live demo session) using Playwright + full source review, cross-referenced against Claude, ChatGPT, GitHub Copilot Chat, and Codex/Claude Code UIs.
Problem
The StatusBar "⋯" menu closes on outside mousedown (it has a document listener), but the composer mode menu has no outside-click or Escape handler — opening it and tapping elsewhere (e.g. a tool card) leaves it open (confirmed in the demo). Inconsistent and a keyboard/AT trap.
Suggested fix
Mirror the StatusBar pattern: close the mode menu on outside-click and Escape, and make it arrow-key navigable per the ARIA menu pattern.
Where
mobile/src/components/Composer.tsx(mode menu, ~75–95) vsStatusBar.tsx(~41–48).Filed from a UI research sweep of the Helm mobile app (landing + live demo session) using Playwright + full source review, cross-referenced against Claude, ChatGPT, GitHub Copilot Chat, and Codex/Claude Code UIs.