feat(ui): start-chat modal and pane close controls, retire the sidebar-swap flow - #418
Merged
Conversation
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.
The M3-closing UI task (M4 pull-forward): main's Start Chat modal built natively on the M3.5 runtimes backend, plus main's pane close control — the walking-skeleton sidebar-swap new-chat flow is deleted.
What it does
start_chat.rs: GPUI modal opened by ⌘T / New tab / empty-pane New chat (preselecting the focused chat's runner, like main): runner and runtime modes with persisted preference, runtime dropdown from the discovery-backed selectable catalog with availability states, model + effort fields per runtime, title auto-derive-until-edited, cwd field with a folder picker — via GPUI'scx.prompt_for_paths(review round 1 caughtrfdblocking the main thread inside an entity lease;rfdis fully removed), spawn through the override-aware ops, rename-after-spawn.modal_text_input.rs: reusable IME-capable text field (pulsetext_inputpattern +text_util), the seed of the M4.2 widget set.ChatPaneGroupsemantics, including empty panes; layout-tree rebuild ported with tests.new_chat_target,begin_pane_chatpicker branch) is gone.Also in this PR
Verification
make verifyexit 0; terminal fixtures 10/10; 36 runner-app tests.🤖 Generated with Claude Code