Summary
Enable users to detach a pane from one workspace and attach it to another via mouse interaction, plus a corresponding set of WebSocket API methods for programmatic pane movement.
Proposed Features
Mouse Interaction
- Drag a pane title bar to detach it from its current workspace
- Drop target indicators show available workspaces
- Visual feedback during drag operation
WebSocket API Methods
pane.preview_transfer — show transfer preview without committing
pane.commit_transfer — execute the pane transfer
pane.detach_target_picker — enumerate available detach targets
pane.make_transfer_detached — detach a pane for reattachment
Motivation
- Currently moving a pane between workspaces requires closing and re-opening the pane
- For users with many workspaces, this disrupts workflow and loses pane state
- Mouse-based drag-and-drop is a natural interaction model that users expect from terminal multiplexers
Notes
This is a feature request only — no PR attached. The implementation involves mouse handling in src/app/input/mouse.rs, runtime mutations in src/app/runtime_mutations.rs, and new API schema entries. Open to discussion on whether this overlaps with or supersedes any in-progress work (e.g. #3411 transfer handoff).
Summary
Enable users to detach a pane from one workspace and attach it to another via mouse interaction, plus a corresponding set of WebSocket API methods for programmatic pane movement.
Proposed Features
Mouse Interaction
WebSocket API Methods
pane.preview_transfer— show transfer preview without committingpane.commit_transfer— execute the pane transferpane.detach_target_picker— enumerate available detach targetspane.make_transfer_detached— detach a pane for reattachmentMotivation
Notes
This is a feature request only — no PR attached. The implementation involves mouse handling in
src/app/input/mouse.rs, runtime mutations insrc/app/runtime_mutations.rs, and new API schema entries. Open to discussion on whether this overlaps with or supersedes any in-progress work (e.g. #3411 transfer handoff).