AskUserQuestion dialog: top-right X cancels instead of minimizing, hiding the conversation needed to answer
What happens
When Claude asks a question through the multiple-choice
dialog in the VS Code extension, the dialog covers the
chat area. The only two exits are:
Esc(hint shown at the bottom of the dialog)- the
Xin the top-right corner
Both do the same thing: they cancel the question and the
turn stops. There is no way to set the dialog aside and
come back to it.
Why this is a problem
The question is usually about the work discussed in the
messages directly above it. To answer well, I need to
re-read those messages. But the dialog is covering them,
and the only way to see them is to destroy the question.
So the choice is: answer without re-reading, or cancel
and lose the prompt. Neither is good. This gets worse the
longer the answer options are, because a taller dialog
covers more of the conversation.
Why the X specifically
The bottom of the dialog already says Esc cancels. That
is enough, and it is discoverable. A second control that
does the identical thing is redundant.
An X in the top-right corner of a floating panel reads
as a window control. In almost every other context that
corner either closes a panel you can reopen, or minimizes
it. Here it silently ends the turn. I pressed it expecting
to tuck the question away and read the chat, and instead
the request was cancelled.
Suggested fix
Make the top-right control minimize or collapse the
dialog rather than cancel it:
- collapse the dialog to a small bar or badge
- leave the conversation fully readable and scrollable
- clicking the bar restores the dialog with the question
and any selection intact
- keep
Escas the real cancel, since it is already
labelled as such
If a minimize state is too much, a smaller version would
still help: make the dialog collapsible, or let it be
dragged, or dim-and-shrink it while the chat is scrolled.
Environment
- Claude Code: 2.1.235
- VS Code: 1.134.0
- OS: Linux Mint 22.3 (x64)