Repository navigation
Fix fork CI: remove cmuxd refs, fix hashFiles glob - #3
Merged
Merged
Conversation
Jesssullivan
added a commit
that referenced
this pull request
Apr 18, 2026
Adds pane.resize to the v2 socket protocol on Linux. Walks the split
tree to find the innermost ancestor split node matching the requested
direction (left/right → horizontal, up/down → vertical) and adjusts
its ratio by amount * 0.05 per step, clamped to [0.1, 0.9].
New split_tree.zig helpers:
- containsPanel: check if a subtree contains a given panel id
- findResizeSplit: find the innermost matching split ancestor for a
given pane id, orientation, and first/second-child position
The handler resolves the target pane from pane_id (or focused), maps
direction to orientation + child position, finds the split, adjusts
its ratio, and in real GTK mode updates the GtkPaned widget position.
Returns {pane_id, direction, ratio} with the new ratio.
Adds tests_v2/test_pane_resize.py covering: ratio increase/decrease,
multi-step amount, clamping at 0.1/0.9 bounds, single-pane error,
bad direction error, and no-matching-split-ancestor error.
Refs #220 (Sprint A item #3).
This was referenced Apr 18, 2026
Jesssullivan
added a commit
that referenced
this pull request
Apr 18, 2026
* linux(socket): implement pane.resize via split tree divider ratio
Adds pane.resize to the v2 socket protocol on Linux. Walks the split
tree to find the innermost ancestor split node matching the requested
direction (left/right → horizontal, up/down → vertical) and adjusts
its ratio by amount * 0.05 per step, clamped to [0.1, 0.9].
New split_tree.zig helpers:
- containsPanel: check if a subtree contains a given panel id
- findResizeSplit: find the innermost matching split ancestor for a
given pane id, orientation, and first/second-child position
The handler resolves the target pane from pane_id (or focused), maps
direction to orientation + child position, finds the split, adjusts
its ratio, and in real GTK mode updates the GtkPaned widget position.
Returns {pane_id, direction, ratio} with the new ratio.
Adds tests_v2/test_pane_resize.py covering: ratio increase/decrease,
multi-step amount, clamping at 0.1/0.9 bounds, single-pane error,
bad direction error, and no-matching-split-ancestor error.
Refs #220 (Sprint A item #3).
* fix(socket): use .empty + alloc for ArrayList(u128) in close_variants
The close_left/close_right/close_others handler used the old
.init(alloc) and .deinit() API that doesn't exist in this Zig
version. Match the codebase pattern: .empty + .deinit(alloc) +
.append(alloc, id).
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.
Fixes fork-ci.yml failures: cmuxd doesn't exist in this repo, and hashFiles pattern was invalid for .git paths. Simplifies fork-release.yml to macOS-only (no Linux daemon).