Skip to content

Conversation

iff
Copy link

@iff iff commented Oct 15, 2025

Draft as a base for continuing the discussion in #8008 : adds a SplitBehavior enum to support bindings like ["pane::SplitLeft", {"behavior": "Empty"}]

To be discussed @MrSubidubi and others:

  • Naming: Generally not happy with names yet and specifically Empty is unclear, e.g., what does this mean for terminal panes? Added placeholder code to split without cloning, but unsure what users would expect in this case.
  • I removed SplitAndMoveXyz actions but I guess we should keep them for backwards compatibility?
  • May have missed details in the move implementation. Will check the code again for opportunities to refactor more code after we agree on the approach.
  • Tests should go to crates/collab/src/tests/integration_tests.rs?

Closes #8008

Release Notes:

  • Add pane::Split behavior ({Clone,Empty,Move}) to allow creating an empty buffer.

- adding an enum for SplitBehavior (naming not final) to support bindings like `["pane::SplitLeft", {"behavior": "Empty"}]`
- subsuming SplitAndMoveDirection actions but probably have to keep them (?)
- empty behavior for terminal panes: unclear what this means. Currently split but does not clone.
@cla-bot cla-bot bot added the cla-signed The user has signed the Contributor License Agreement label Oct 15, 2025
@iff iff marked this pull request as draft October 15, 2025 11:09
@MrSubidubi MrSubidubi self-assigned this Oct 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla-signed The user has signed the Contributor License Agreement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Optionally open empty splits instead of copying split window

2 participants