diff --git a/.config/quickshell/modules/sidebarRight/quickToggles/GameMode.qml b/.config/quickshell/modules/sidebarRight/quickToggles/GameMode.qml index 2f7693735..79c1eba7b 100644 --- a/.config/quickshell/modules/sidebarRight/quickToggles/GameMode.qml +++ b/.config/quickshell/modules/sidebarRight/quickToggles/GameMode.qml @@ -6,19 +6,27 @@ import Quickshell.Io import Quickshell.Hyprland QuickToggleButton { - property bool enabled: false + id: root buttonIcon: "gamepad" - toggled: enabled + toggled: toggled onClicked: { - enabled = !enabled - if (enabled) { + root.toggled = !root.toggled + if (root.toggled) { Quickshell.execDetached(["bash", "-c", `hyprctl --batch "keyword animations:enabled 0; keyword decoration:shadow:enabled 0; keyword decoration:blur:enabled 0; keyword general:gaps_in 0; keyword general:gaps_out 0; keyword general:border_size 1; keyword decoration:rounding 0; keyword general:allow_tearing 1"`]) } else { Quickshell.execDetached(["hyprctl", "reload"]) } } - + Process { + id: fetchActiveState + running: true + command: ["bash", "-c", `test "$(hyprctl getoption animations:enabled -j | jq ".int")" -ne 0`] + onExited: (exitCode, exitStatus) => { + console.log("Game mode toggle exited with code:", exitCode, "and status:", exitStatus) + root.toggled = exitCode !== 0 // Inverted because enabled = nonzero exit + } + } StyledToolTip { content: qsTr("Game mode") }