1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2025-12-06 21:45:38 -05:00

create lock screen singleton

This commit is contained in:
bbedward
2025-08-13 21:01:35 -04:00
parent c3cccda37e
commit c9be03ddaf
3 changed files with 490 additions and 382 deletions

View File

@@ -5,6 +5,7 @@ import Quickshell
import Quickshell.Io
import Quickshell.Wayland
import qs.Common
import qs.Services
Item {
id: root
@@ -54,6 +55,7 @@ Item {
onStreamFinished: {
if (text.includes("true")) {
console.log("Session is locked on startup, activating lock screen")
LockScreenService.resetState();
loader.activeAsync = true
}
}
@@ -77,12 +79,14 @@ Item {
onRead: (line) => {
if (line.includes("org.freedesktop.login1.Session.Lock")) {
console.log("login1: Lock signal received -> show lock")
LockScreenService.resetState();
loader.activeAsync = true
} else if (line.includes("org.freedesktop.login1.Session.Unlock")) {
console.log("login1: Unlock signal received -> hide lock")
loader.active = false
} else if (line.includes("LockedHint") && line.includes("true")) {
console.log("login1: LockedHint=true -> show lock")
LockScreenService.resetState();
loader.activeAsync = true
} else if (line.includes("LockedHint") && line.includes("false")) {
console.log("login1: LockedHint=false -> hide lock")
@@ -135,6 +139,7 @@ Item {
function lock(): void {
console.log("Lock screen requested via IPC")
LockScreenService.resetState();
loader.activeAsync = true
}