fix: handle monitor hotplug to survive suspend/resume (v0.6.9)

moonlock crashed with segfault in libgtk-4.so after suspend/resume when
HDMI monitors disconnected and reconnected, invalidating GDK monitor
objects that statically created windows still referenced.

Replace manual monitor iteration with connect_monitor signal (v1_2) that
fires both at lock time and on hotplug. Windows are now created on demand
per monitor event and auto-unmap when their monitor disappears.
This commit is contained in:
2026-04-09 14:48:06 +02:00
parent b89435b810
commit b621b4e9fe
5 changed files with 93 additions and 42 deletions
+2 -2
View File
@@ -1,13 +1,13 @@
[package]
name = "moonlock"
version = "0.6.8"
version = "0.6.9"
edition = "2024"
description = "A secure Wayland lockscreen with GTK4, PAM and fingerprint support"
license = "MIT"
[dependencies]
gtk4 = { version = "0.11", features = ["v4_10"] }
gtk4-session-lock = { version = "0.4", features = ["v1_1"] }
gtk4-session-lock = { version = "0.4", features = ["v1_2"] }
glib = "0.22"
gdk4 = "0.11"
gdk-pixbuf = "0.22"