From b324ff0fb5cbc13a038ce2e5a2a4af69598bb91a Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Wed, 7 Oct 2026 18:57:23 +0200 Subject: fix(island): review findings in the pill components - The flag switches once per wheel notch; a touchpad's stream of small deltas switched an erratic number of times. - The flick decides on resolved icon paths, so a name the icon theme lacks falls back to the workspace number instead of a blank slot. - Layout switching uses Hyprland's 'current' keyboard rather than looking up the main device in a subshell. - The capsule radius reaches half the rest height, a real capsule. - privacy.sh exits non-zero when pw-dump fails, so Privacy keeps its last reading instead of reporting nothing captured. Co-Authored-By: Claude Opus 5.5 --- desktop/island/Keyboard.qml | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'desktop/island/Keyboard.qml') diff --git a/desktop/island/Keyboard.qml b/desktop/island/Keyboard.qml index 1cbe9bc..0cd73c8 100644 --- a/desktop/island/Keyboard.qml +++ b/desktop/island/Keyboard.qml @@ -26,9 +26,6 @@ Singleton { property string keymap: "" readonly property string flag: Logic.flagFor(keymap) - readonly property string mainKeyboard: - "hyprctl devices -j | jq -r '.keyboards[] | select(.main) | .name'" - Process { id: query running: true @@ -46,8 +43,8 @@ Singleton { // dir is "next" or "prev", from the caller's own literal, never user text. function cycle(dir) { - switcher.command = ["sh", "-c", - `hyprctl switchxkblayout "$(${root.mainKeyboard})" ${dir}`]; + // "current" is Hyprland's own name for the main keyboard. + switcher.command = ["hyprctl", "switchxkblayout", "current", dir]; switcher.running = false; switcher.running = true; } -- cgit v1.2.3