summaryrefslogtreecommitdiff
path: root/accounts/gkleen@sif/shell/quickshell/WaylandInhibitorWidget.qml
diff options
context:
space:
mode:
Diffstat (limited to 'accounts/gkleen@sif/shell/quickshell/WaylandInhibitorWidget.qml')
-rw-r--r--accounts/gkleen@sif/shell/quickshell/WaylandInhibitorWidget.qml55
1 files changed, 55 insertions, 0 deletions
diff --git a/accounts/gkleen@sif/shell/quickshell/WaylandInhibitorWidget.qml b/accounts/gkleen@sif/shell/quickshell/WaylandInhibitorWidget.qml
new file mode 100644
index 00000000..0633f350
--- /dev/null
+++ b/accounts/gkleen@sif/shell/quickshell/WaylandInhibitorWidget.qml
@@ -0,0 +1,55 @@
1import Quickshell
2import QtQuick
3import Quickshell.Widgets
4import Quickshell.Wayland
5import qs.Services
6
7Item {
8 id: root
9
10 required property var window
11
12 width: icon.width + 8
13 height: parent.height
14 anchors.verticalCenter: parent.verticalCenter
15
16 IdleInhibitor {
17 id: inhibitor
18 enabled: InhibitorState.waylandIdleInhibited
19 window: root.window
20 }
21
22 WrapperMouseArea {
23 id: widgetMouseArea
24
25 anchors.fill: parent
26
27 hoverEnabled: true
28
29 onClicked: InhibitorState.waylandIdleInhibited = !InhibitorState.waylandIdleInhibited
30
31 Rectangle {
32 anchors.fill: parent
33 color: {
34 if (widgetMouseArea.containsMouse) {
35 return "#33808080";
36 }
37 return "transparent";
38 }
39
40 Item {
41 anchors.fill: parent
42
43 MaterialDesignIcon {
44 id: icon
45
46 implicitSize: 14
47 anchors.centerIn: parent
48
49 icon: inhibitor.enabled ? "eye" : "eye-off"
50 color: inhibitor.enabled ? "white" : "#555"
51 }
52 }
53 }
54 }
55}