refactor(registry): use xor for focus targets

This commit is contained in:
2026-10-11 12:22:43 -04:00
parent 7cd05d219b
commit 3e3eba515b

View File

@@ -12,13 +12,9 @@
entry:
let
action = entry.value.action;
focusTargets = lib.filter (target: target != null) [
action.direction
action.workspace
];
in
(action.kind == "exec" && action.command != null)
|| (action.kind == "focus" && builtins.length focusTargets == 1)
|| (action.kind == "focus" && lib.xor (action.direction != null) (action.workspace != null))
) entries;
message = "Desktop keybind actions must set the fields their kind requires.";
}