mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2026-06-21 10:35:26 -04:00
fix(lock): dismiss fade-to-lock overlay when using a custom lock command (#2653)
When a custom lock command is configured, Lock.lock() runs the command and
returns early without engaging WlSessionLock, so IdleService.isShellLocked
never transitions true->false. That transition is the only trigger that
dismisses a completed FadeToLockWindow, so the fully-faded black overlay stays
on screen and the desktop is unusable after re-login (regression from b8f4c35,
which added the _completed guard and tied dismissal solely to isShellLocked).
Add a dedicated dismissFadeToLock signal that the custom-lock branch emits
after launching the external locker, mirroring the existing fade signal wiring,
so the overlay is handed off and torn down. The built-in WlSessionLock path is
unchanged and still dismisses on unlock.
Fixes #2595
This commit is contained in:
@@ -116,6 +116,12 @@ Item {
|
|||||||
fadeWindowLoader.item.cancelFade();
|
fadeWindowLoader.item.cancelFade();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function onDismissFadeToLock() {
|
||||||
|
if (fadeWindowLoader.item) {
|
||||||
|
fadeWindowLoader.item.dismiss();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -60,6 +60,10 @@ Scope {
|
|||||||
function lock() {
|
function lock() {
|
||||||
if (SettingsData.customPowerActionLock?.length > 0) {
|
if (SettingsData.customPowerActionLock?.length > 0) {
|
||||||
Quickshell.execDetached(["sh", "-c", SettingsData.customPowerActionLock]);
|
Quickshell.execDetached(["sh", "-c", SettingsData.customPowerActionLock]);
|
||||||
|
// The custom locker manages its own surface; DMS never engages
|
||||||
|
// WlSessionLock here, so isShellLocked stays false and the fade
|
||||||
|
// overlay would never be dismissed. Hand off by dismissing it now.
|
||||||
|
IdleService.dismissFadeToLock();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (shouldLock || pendingLock)
|
if (shouldLock || pendingLock)
|
||||||
|
|||||||
@@ -53,6 +53,7 @@ Singleton {
|
|||||||
signal lockRequested
|
signal lockRequested
|
||||||
signal fadeToLockRequested
|
signal fadeToLockRequested
|
||||||
signal cancelFadeToLock
|
signal cancelFadeToLock
|
||||||
|
signal dismissFadeToLock
|
||||||
signal fadeToDpmsRequested
|
signal fadeToDpmsRequested
|
||||||
signal cancelFadeToDpms
|
signal cancelFadeToDpms
|
||||||
signal requestMonitorOff
|
signal requestMonitorOff
|
||||||
|
|||||||
Reference in New Issue
Block a user