aboutsummaryrefslogtreecommitdiffstats
path: root/desktop/shell.qml
diff options
context:
space:
mode:
Diffstat (limited to 'desktop/shell.qml')
-rw-r--r--desktop/shell.qml11
1 files changed, 11 insertions, 0 deletions
diff --git a/desktop/shell.qml b/desktop/shell.qml
index 6a37827..1149124 100644
--- a/desktop/shell.qml
+++ b/desktop/shell.qml
@@ -12,18 +12,25 @@
import Quickshell
import Quickshell.Io
import Quickshell.Wayland
+import QtQuick
import "modules/appearance"
import "modules/bluetooth"
import "modules/kdeconnect"
import "modules/mail"
import "modules/network"
import "modules/sound"
+import "modules/status"
import "modules/vm"
ShellRoot {
// Quickshell exits once no window is visible, and the drawer is closed
// most of the time. See AGENTS.md.
+ //
+ // It is also the window the idle inhibitor attaches to: IdleInhibitor
+ // needs a non-null window, and this is the one window that exists for
+ // the whole life of the shell.
PanelWindow {
+ id: keepalive
visible: true
implicitWidth: 1
implicitHeight: 1
@@ -31,6 +38,9 @@ ShellRoot {
exclusionMode: ExclusionMode.Ignore
mask: Region {}
WlrLayershell.keyboardFocus: WlrKeyboardFocus.None
+
+ // The singleton has no window of its own and IdleInhibitor needs one.
+ Component.onCompleted: Status.inhibitWindow = keepalive
}
Drawer {
@@ -42,6 +52,7 @@ ShellRoot {
KdeConnectModule {},
MailModule {},
AppearanceModule {},
+ StatusModule {},
VmModule {},
]
}