diff options
| author | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-06-22 20:56:13 +1000 |
|---|---|---|
| committer | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-06-22 20:56:13 +1000 |
| commit | 3a66c4941ecf14994c7d5cae4c6e0cb674cbf5e6 (patch) | |
| tree | d46d8bb07bc0415c9dea172f352f28a1e7fb3d61 | |
| parent | feat: lock screen (diff) | |
| download | caelestia-shell-3a66c4941ecf14994c7d5cae4c6e0cb674cbf5e6.tar.gz caelestia-shell-3a66c4941ecf14994c7d5cae4c6e0cb674cbf5e6.tar.bz2 caelestia-shell-3a66c4941ecf14994c7d5cae4c6e0cb674cbf5e6.zip | |
lock: lazy load locker
| -rw-r--r-- | modules/lock/Lock.qml | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/modules/lock/Lock.qml b/modules/lock/Lock.qml index 1eca886..a5b6cfc 100644 --- a/modules/lock/Lock.qml +++ b/modules/lock/Lock.qml @@ -6,18 +6,29 @@ import Quickshell.Io import Quickshell.Wayland Scope { - WlSessionLock { - id: lock + LazyLoader { + id: loader - LockSurface { - lock: lock + WlSessionLock { + id: lock + + locked: true + + onLockedChanged: { + if (!locked) + loader.active = false; + } + + LockSurface { + lock: lock + } } } CustomShortcut { name: "lock" description: "Lock the current session" - onPressed: lock.locked = true + onPressed: loader.activeAsync = true } CustomShortcut { @@ -30,7 +41,7 @@ Scope { target: "lock" function lock(): void { - lock.locked = true; + loader.activeAsync = true; } } } |