Repository navigation
fix(app): keep the agent picker on touch devices - #62333
patricksmms wants to merge 2 commits into
Conversation
|
Thanks for updating your PR! It now meets our contributing guidelines. 👍 |
There was a problem hiding this comment.
I reproduced the bug on the base branch and the fix works. In a 390×844 touch viewport with Show agent off and two primary agents, the base composer has no agent picker and the new e2e test fails. With this change, the picker appears, opens in the bottom-sheet drawer and switches Build to Plan. All tests in mobile-model-pickers.spec.ts pass, as do the related unit tests and tsc -b in packages/app.
The public API is unchanged.
No blocking concerns. list() already leaves out subagents and hidden agents, so list().length > 1 only counts real choices, and the touch check matches the one in editor.tsx. One small note: the drawer itself is gated on (max-width: 767px), so a touch tablet wider than that now shows the picker as the desktop popover rather than the drawer. That is still usable.
There was a problem hiding this comment.
The new commit only merges dev. This pull request's own changes are unchanged, and none of my earlier points were open. On the updated head, the touch composer picker e2e tests pass, including the new agent picker test, and tsc -b in packages/app passes. The public API is unchanged. No new concerns.


Issue for this PR
Closes #62332
Type of change
What does this PR do?
The composer's agent picker was hidden on a phone whenever Settings → General → "Show agent" was off. That preference is per browser, so turning it on in the desktop app does not carry to the phone, and the agent-cycle keybind is unavailable on touch. A session left in Plan mode could not be switched back to Build.
On a coarse pointer with more than one primary agent, the picker now always shows. It also opens in the same bottom-sheet drawer as the model and variant pickers instead of a desktop popover.
How did you verify your code works?
bun run typecheckinpackages/app.touch composer pickers › agent picker stays available when Show agent is off; it fails before the change.Visual
Screenshots / recordings
390×844, Show agent off, two primary agents.
Checklist
Added by the opencode bot (AI-generated).
Related: #57812, #50269, #59069