diff --git a/quickshell/DMSShell.qml b/quickshell/DMSShell.qml index 9052fbc0..6ca5d5cd 100644 --- a/quickshell/DMSShell.qml +++ b/quickshell/DMSShell.qml @@ -878,10 +878,19 @@ Item { ProcessListModal { id: processListModal + property bool wasShown: false Component.onCompleted: { PopoutService.processListModal = processListModal; } + + onVisibleChanged: { + if (visible) { + wasShown = true; + } else if (wasShown) { + PopoutService.unloadProcessListModal(); + } + } } } diff --git a/quickshell/Services/PopoutService.qml b/quickshell/Services/PopoutService.qml index c6e8a096..691d0f88 100644 --- a/quickshell/Services/PopoutService.qml +++ b/quickshell/Services/PopoutService.qml @@ -631,6 +631,13 @@ Singleton { processListModal?.hide(); } + function unloadProcessListModal() { + if (processListModalLoader) { + processListModal = null; + processListModalLoader.active = false; + } + } + function toggleProcessListModal() { if (processListModal) { processListModal.toggle();