Added layout primitives to pkg/window/tiling.go:
- BesideEditor — position a window beside an editor, same height,
on the side with more empty space
- SuggestLayout — layout N windows on screen (golden-ratio split
for 2, grid for 3+)
- FindEmptySpace — find the largest rectangular empty region that
fits a minimum size; return (rect, ok)
- ArrangePair — 60/40 or 50/50 split based on aspect ratios
Plus Rect/Size aliases and a WindowPlacement type. Good/Bad/Ugly
test coverage + godoc examples.
pkg/mcp/tools_layout.go left unchanged — this branch already
registers layout_beside_editor / layout_suggest / screen_find_space
/ window_arrange_pair on top of the new helpers.
go vet clean. go test pkg/window/... passes under HOME override
(legacy layout-save tests need writeable ~/Library on non-sandbox).
Closes tasks.lthn.sh/view.php?id=30
Co-authored-by: Codex <noreply@openai.com>
Co-Authored-By: Virgil <virgil@lethean.io>