diff --git a/quickshell/Services/LabwcService.qml b/quickshell/Services/LabwcService.qml new file mode 100644 index 00000000..d6c8e77b --- /dev/null +++ b/quickshell/Services/LabwcService.qml @@ -0,0 +1,15 @@ +pragma Singleton +pragma ComponentBehavior: Bound + +import QtQuick +import Quickshell + +Singleton { + id: root + + // Exit the labwc session. Used by SessionService when the user + // triggers logout and no custom logout command is configured. + function quit() { + Quickshell.execDetached(["labwc", "--exit"]); + } +} diff --git a/quickshell/Services/SessionService.qml b/quickshell/Services/SessionService.qml index 7f5a1ede..5c7a4f2d 100644 --- a/quickshell/Services/SessionService.qml +++ b/quickshell/Services/SessionService.qml @@ -320,6 +320,11 @@ Singleton { return; } + if (CompositorService.isLabwc) { + LabwcService.quit(); + return; + } + if (CompositorService.isSway || CompositorService.isScroll || CompositorService.isMiracle) { try { I3.dispatch("exit");