nova-shell/modules/IdleInhibitor.qml
2026-04-12 00:49:58 +02:00

31 lines
736 B
QML

import QtQuick
import Quickshell.Io
import QtQuick.Controls
import "." as M
M.BarIcon {
id: root
property bool active: false
icon: root.active ? "\uF06E" : "\uF070"
Process {
id: toggle
command: ["sh", "-c", root.active ? "pkill -x systemd-inhibit || true" : "systemd-inhibit --what=idle --who=nova-shell --why=user sleep infinity &"]
}
MouseArea {
anchors.fill: parent
cursorShape: Qt.PointingHandCursor
onClicked: {
root.active = !root.active;
toggle.running = true;
}
}
HoverHandler { id: hover }
ToolTip {
visible: hover.hovered
text: "Idle inhibition: " + (root.active ? "active" : "inactive")
}
}