diff --git a/modules/bar/states/Idle/IdleState.qml b/modules/bar/states/Idle/IdleState.qml index bab2ae2..2dc9e60 100644 --- a/modules/bar/states/Idle/IdleState.qml +++ b/modules/bar/states/Idle/IdleState.qml @@ -2,11 +2,28 @@ pragma Singleton import QtQuick import Quickshell import Quickshell.Io +import Quickshell.Wayland import "../../../../config" Item { // true = inhibit idle (prevent hypridle/lock/dpms), false = allow idle property bool idle: false + property bool isIdle: idleMonitor.isIdle + + property PanelWindow panelWindow: null + + IdleInhibitor { + id: idleInhibitor + window: panelWindow + enabled: IdleState.idle + } + + IdleMonitor { + id: idleMonitor + enabled: true + timeout: 30 + respectInhibitors: true + } // may need this in hypridle.conf // general { diff --git a/modules/bar/widgets/IdleButton.qml b/modules/bar/widgets/IdleButton.qml index 44f93de..95e8236 100644 --- a/modules/bar/widgets/IdleButton.qml +++ b/modules/bar/widgets/IdleButton.qml @@ -1,7 +1,6 @@ import QtQuick import Quickshell import Quickshell.Hyprland -import Quickshell.Wayland import Quickshell.Io import "../../../config" import "../states/Idle" @@ -13,21 +12,6 @@ MouseArea { hoverEnabled: true cursorShape: Qt.PointingHandCursor - required property PanelWindow panelWindow - - IdleInhibitor { - id: idleInhibitor - window: panelWindow - enabled: IdleState.idle - } - - IdleMonitor { - id: idleMonitor - enabled: true - timeout: 30 - respectInhibitors: true - } - onClicked: { IdleState.idle = !IdleState.idle console.log("[IdleButton] Toggling idle: " + (IdleState.idle ? "enabled" : "disabled")) @@ -35,7 +19,7 @@ MouseArea { Rectangle { anchors.fill: parent - color: idleButton.containsMouse ? Colors.tertiary : idleMonitor.isIdle ? Qt.alpha(Colors.secondary, 0.25) : Qt.alpha(Colors.tertiaryContainer, 0.25) + color: idleButton.containsMouse ? Colors.tertiary : IdleState.isIdle ? Qt.alpha(Colors.secondary, 0.25) : Qt.alpha(Colors.tertiaryContainer, 0.25) radius: Config.radius_fun(idleButton.height) border.width: Config.border_width border.color: (