gui/pkg/window
Snider 8abfca31e7 feat(gui): 4 smart layout helpers + Good/Bad/Ugly coverage
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>
2026-04-24 07:26:22 +01:00
..
layout.go Harden layout persistence path handling 2026-04-18 08:55:14 +01:00
layout_test.go Harden layout persistence path handling 2026-04-18 08:55:14 +01:00
messages.go Add window opacity support 2026-04-15 18:41:31 +01:00
mock_platform.go Add window opacity support 2026-04-15 18:41:31 +01:00
mock_platform_test.go Add missing GUI unit coverage 2026-04-15 23:17:52 +01:00
mock_test.go Add window opacity support 2026-04-15 18:41:31 +01:00
options.go refine gui docs and local names for AX 2026-04-15 14:33:56 +01:00
options_test.go test: cover gui spec gaps 2026-04-15 19:31:12 +01:00
persistence_test.go Implement chat, preload shims, and smart layouts 2026-04-15 13:39:13 +01:00
platform.go Add window opacity support 2026-04-15 18:41:31 +01:00
register.go Merge feat/wails-submodule: Wails v3 submodule + Core v0.8.0 migration 2026-04-15 12:41:55 +01:00
service.go Harden window task payload validation 2026-04-17 18:16:20 +01:00
service_config_test.go Add missing GUI unit coverage 2026-04-15 17:44:05 +01:00
service_screen_test.go Implement chat, preload shims, and smart layouts 2026-04-15 13:39:13 +01:00
service_test.go Harden window task payload validation 2026-04-17 18:16:20 +01:00
smart_layout.go Implement chat, preload shims, and smart layouts 2026-04-15 13:39:13 +01:00
smart_layout_test.go Implement chat, preload shims, and smart layouts 2026-04-15 13:39:13 +01:00
state.go Harden window state path configuration 2026-04-18 08:49:04 +01:00
state_test.go Harden window state path configuration 2026-04-18 08:49:04 +01:00
tiling.go feat(gui): 4 smart layout helpers + Good/Bad/Ugly coverage 2026-04-24 07:26:22 +01:00
tiling_example_test.go feat(gui): 4 smart layout helpers + Good/Bad/Ugly coverage 2026-04-24 07:26:22 +01:00
tiling_test.go feat(gui): 4 smart layout helpers + Good/Bad/Ugly coverage 2026-04-24 07:26:22 +01:00
wails.go feat(gui): InjectPreload — storage polyfills + Electron shim + app preloads 2026-04-24 06:17:34 +01:00
wails_test.go Add missing GUI unit coverage 2026-04-15 23:17:52 +01:00
window.go refine gui docs and local names for AX 2026-04-15 14:33:56 +01:00
window_test.go test: add missing GUI coverage 2026-04-15 20:59:45 +01:00