Scenario
I keep several panes open side by side. When a pane is narrow, bb collapses its
composer to a single line. In that state the pane no longer shows which model
the thread runs on, so with Opus, Sonnet and a Codex thread open at once there
is no way to tell them apart without expanding each one or opening the picker.
Current behaviour
On a collapsed composer the model row is hidden entirely, and the line shows the
placeholder text instead. Widening the pane or opening the model picker is the
only way to see the model.
Expected
A collapsed composer keeps a compact, read-only model label on its single line.
It replaces the placeholder rather than sharing the line with it: both are drawn
on the same row, so printing them together makes the letters overlap.
Prototype
Implemented in my fork on top of desktop-v0.42.1, in
apps/app/src/components/promptbox/PromptBoxInternal.tsx: the collapsed pane
renders a summary node with the thread's model, and the effective placeholder
becomes empty while that summary is shown. A regression test asserts the
editor's data-placeholder is empty in the collapsed state — asserting on the
form attribute passes even while the two strings visually overlap, which is how
the overlap survived the first attempt.
Happy to open a PR if that is the preferred route.
Scenario
I keep several panes open side by side. When a pane is narrow, bb collapses its
composer to a single line. In that state the pane no longer shows which model
the thread runs on, so with Opus, Sonnet and a Codex thread open at once there
is no way to tell them apart without expanding each one or opening the picker.
Current behaviour
On a collapsed composer the model row is hidden entirely, and the line shows the
placeholder text instead. Widening the pane or opening the model picker is the
only way to see the model.
Expected
A collapsed composer keeps a compact, read-only model label on its single line.
It replaces the placeholder rather than sharing the line with it: both are drawn
on the same row, so printing them together makes the letters overlap.
Prototype
Implemented in my fork on top of
desktop-v0.42.1, inapps/app/src/components/promptbox/PromptBoxInternal.tsx: the collapsed panerenders a summary node with the thread's model, and the effective placeholder
becomes empty while that summary is shown. A regression test asserts the
editor's
data-placeholderis empty in the collapsed state — asserting on theform attribute passes even while the two strings visually overlap, which is how
the overlap survived the first attempt.
Happy to open a PR if that is the preferred route.