aboutsummaryrefslogtreecommitdiffstats
path: root/desktop
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-09-15 12:14:05 +0200
committerDanilo M. <danix@danix.xyz>2026-09-15 12:14:05 +0200
commit405905dcd2308763114f8e479847f238243f2d6f (patch)
tree4aaee8fdd00044a0c12de6635cafbd495bc3fe7f /desktop
parent48e7b7b75971b3932c30053a56c3b00f63233bd7 (diff)
downloadquickshell-405905dcd2308763114f8e479847f238243f2d6f.tar.gz
quickshell-405905dcd2308763114f8e479847f238243f2d6f.zip
feat(desktop): add the status page and register the module
One row per mode. Adding a mode is one file in the singleton and one row here, which is what a registry buys over two separate toggles.
Diffstat (limited to 'desktop')
-rw-r--r--desktop/modules/status/StatusPage.qml43
-rw-r--r--desktop/shell.qml2
2 files changed, 45 insertions, 0 deletions
diff --git a/desktop/modules/status/StatusPage.qml b/desktop/modules/status/StatusPage.qml
new file mode 100644
index 0000000..850cc73
--- /dev/null
+++ b/desktop/modules/status/StatusPage.qml
@@ -0,0 +1,43 @@
+// Copyright (C) 2026 Danilo M. <danix@danix.xyz>
+//
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License version 2 as
+// published by the Free Software Foundation.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+import QtQuick
+import "../.."
+
+// One row per mode. Adding a mode is one file in the singleton and one row
+// here, which is the point of a registry rather than two toggles.
+Column {
+ id: page
+
+ spacing: 4
+
+ StatusRow {
+ width: page.width
+ mode: "dnd"
+ label: "Do not disturb"
+ description: "Silences notification popups. Critical ones still appear."
+ value: Status.dnd
+ }
+
+ Rectangle {
+ width: page.width
+ height: 1
+ color: Qt.alpha(Theme.text, 0.08)
+ }
+
+ StatusRow {
+ width: page.width
+ mode: "presentation"
+ label: "Presentation"
+ description: "Do not disturb, no screen lock, breaktimer paused."
+ value: Status.presentation
+ }
+}
diff --git a/desktop/shell.qml b/desktop/shell.qml
index 304716a..1149124 100644
--- a/desktop/shell.qml
+++ b/desktop/shell.qml
@@ -19,6 +19,7 @@ import "modules/kdeconnect"
import "modules/mail"
import "modules/network"
import "modules/sound"
+import "modules/status"
import "modules/vm"
ShellRoot {
@@ -51,6 +52,7 @@ ShellRoot {
KdeConnectModule {},
MailModule {},
AppearanceModule {},
+ StatusModule {},
VmModule {},
]
}