feat: support named switchable layouts

This commit is contained in:
Steve Cliff
2026-08-20 09:06:37 +01:00
parent 6ddecad74d
commit 45ee82692d
7 changed files with 172 additions and 30 deletions
+4 -2
View File
@@ -231,8 +231,10 @@ to bypass that boundary or request elevation through a manifest.
### Configuration reload
The YAML decoder rejects unknown fields. Semantic validation checks the schema
version, gap range, unique monitor entries, zone bounds, hotkey action syntax,
and required values.
version, gap range, active-layout existence, unique layout-name/monitor pairs,
zone bounds, hotkey action syntax, and required values. Legacy files in which
all layouts are unnamed and `active_layout` is absent are normalized to a
single layout name of `default` before validation.
The message-loop timer checks the configuration modification time. A valid new
configuration replaces the active one and re-registers hotkeys. If parsing,