feat: serial:/size: external matching, exclude Hyprland FALLBACK output
- external list now accepts serial: and size: prefixes; desc: matches serial too. Fixes docked-mode deadlock where Hyprland's synthetic FALLBACK output (created when the built-in is disabled by a stale docked config) was treated as a real external monitor, leaving the daemon stuck in docked after undocking. - modes name resolution gains serial: prefix (resolveSerial). - add -log-level flag for observability. - add unit tests for external matching and name resolution. - update README and example config.
This commit is contained in:
@@ -25,7 +25,10 @@ restore_on_exit: true
|
||||
|
||||
# External monitors that trigger docked mode.
|
||||
# Plain name: matches the connector name (e.g. DP-1, HDMI-A-1).
|
||||
# desc: prefix: matches by monitor description (survives rename).
|
||||
# desc: prefix: matches by monitor description or serial (survives rename).
|
||||
# serial: prefix: matches by serial number (e.g. serial:3342300033911).
|
||||
# size: prefix: matches by resolution, optionally with refresh
|
||||
# (e.g. size:2560x1440 or size:2560x1440@165).
|
||||
# Optional — if omitted or left empty, the daemon auto-detects external
|
||||
# monitors: any display whose connector is not eDP-/LVDS-/DSI- is treated
|
||||
# as external.
|
||||
@@ -33,13 +36,16 @@ external:
|
||||
- DP-1
|
||||
- DP-2
|
||||
- desc:Dell Inc. DELL U2723QE
|
||||
- serial:3342300033911
|
||||
- size:3440x1440@120
|
||||
|
||||
# Monitor layouts for each mode.
|
||||
# "portable" and "docked" are required.
|
||||
# Monitors connected but not listed in the mode are automatically disabled.
|
||||
#
|
||||
# Fields:
|
||||
# name — connector name, desc:description, size:WxH, or size:WxH@R
|
||||
# name — connector name, desc:description, serial:XXXX, size:WxH,
|
||||
# or size:WxH@R
|
||||
# enabled — true to show, false to disable
|
||||
# mode — "preferred" (auto-detect), "1920x1080@60", etc.
|
||||
# position — "auto", "0x0", "1920x0", etc.
|
||||
|
||||
Reference in New Issue
Block a user