refactor(web): pin abort button to end of composer left cluster#988
Open
junmo-kim wants to merge 1 commit into
Open
refactor(web): pin abort button to end of composer left cluster#988junmo-kim wants to merge 1 commit into
junmo-kim wants to merge 1 commit into
Conversation
Abort's position shifted with conditional siblings (terminal/switch/ schedule), making the destructive action's location unpredictable. Move it to the last child of the left button group so it's always immediately left of Send — pure JSX reorder, no markup/props/handler changes.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The abort (stop-generation) button in the composer's left action cluster sits mid-row — after Terminal, before Switch. The surrounding buttons (Terminal, Switch, voice mic, scratchlist, schedule) are all conditionally rendered, so the abort button's absolute position shifts depending on which of them happen to be present. For a destructive action you reach for while a turn is running, a target that moves around is easy to mis-click.
This pins the abort button to the last child of the left cluster, so whenever it is shown it renders immediately to the left of Send — a stable, predictable position regardless of which conditional siblings are visible.
Change
Pure JSX reorder in
ComposerButtons.tsx: theshowAbortButtonblock is relocated to the end of the left button group. No markup, props, handler, or i18n changes — behavior is identical, only render order changes. Single refactor commit.Before / After
Both captured with Terminal + Switch + Schedule present, to show the position is now stable against conditional siblings.
Before — abort is mid-cluster (3rd), shifting with its neighbors:
After — abort is last, immediately left of Send:
Test plan
bun typecheck— 0 errors (cli / web / hub)bun run test— all pass (cli / hub / web / shared)