diff --git a/changelog/next.md b/changelog/next.md index b65b83fe..40da6fec 100644 --- a/changelog/next.md +++ b/changelog/next.md @@ -3,3 +3,4 @@ - Fixed ScriptModel not sending role updates on changed data that compares equal by key or structure. - Fixed Hyprland workspaces keeping their old id after Hyprland changes it. - Fixed desktop entries being parsed incorrectly with trailing whitespace or CRLF line endings. +- Fixed `WlSessionLock.locked` changes not being emitted on unlock. diff --git a/src/wayland/session_lock.cpp b/src/wayland/session_lock.cpp index 43d80e2b..4ced8449 100644 --- a/src/wayland/session_lock.cpp +++ b/src/wayland/session_lock.cpp @@ -179,8 +179,9 @@ void WlSessionLock::unlock() { this->surfaces.clear(); + auto wasLocked = this->isLocked(); if (this->manager) this->manager->unlock(); - if (this->isLocked()) emit this->lockStateChanged(); + if (wasLocked) emit this->lockStateChanged(); } void WlSessionLock::onScreensChanged() {