From cd6f32dfcffda6410e2dd0f40d39b754f87df400 Mon Sep 17 00:00:00 2001 From: Damocles Date: Tue, 21 Apr 2026 23:15:50 +0200 Subject: [PATCH 1/2] fix lock screen re-capturing screenshot on wake from suspend --- shell/lock/Lock.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shell/lock/Lock.qml b/shell/lock/Lock.qml index ff76589..554b419 100644 --- a/shell/lock/Lock.qml +++ b/shell/lock/Lock.qml @@ -31,7 +31,7 @@ Scope { target: S.LockService function onLockRequested() { - if (!S.LockService.enabled) + if (!S.LockService.enabled || _lock.locked) return; S.ScreenshotService.capture(Quickshell.screens.length); _lockTimeout.start(); From df2bc487fdaed37d13d80eb0f53633d0864ff8b5 Mon Sep 17 00:00:00 2001 From: Damocles Date: Tue, 21 Apr 2026 23:24:57 +0200 Subject: [PATCH 2/2] fix lock surface background opacity to prevent compositor fallback bleedthrough --- shell/lock/LockSurface.qml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/shell/lock/LockSurface.qml b/shell/lock/LockSurface.qml index f98d502..66efacd 100644 --- a/shell/lock/LockSurface.qml +++ b/shell/lock/LockSurface.qml @@ -15,6 +15,14 @@ WlSessionLockSurface { property real _unlockFade: 1 + // Solid background - WlSessionLockSurface.color can be unreliable with + // Wayland compositors, so paint an explicit opaque rect to prevent the + // compositor fallback color (niri red) from bleeding through. + Rectangle { + anchors.fill: parent + color: S.Theme.base00 + } + // Clear desktop screenshot from ScreenshotService - visible immediately Image { anchors.fill: parent