diff --git a/src/desktop/LayerSurface.cpp b/src/desktop/LayerSurface.cpp index c9750dc9..8bff5850 100644 --- a/src/desktop/LayerSurface.cpp +++ b/src/desktop/LayerSurface.cpp @@ -73,8 +73,6 @@ void CLayerSurface::onDestroy() { const auto PMONITOR = g_pCompositor->getMonitorFromID(monitorID); - popupHead.reset(); - if (!g_pCompositor->getMonitorFromID(monitorID)) Debug::log(WARN, "Layersurface destroyed on an invalid monitor (removed?)"); @@ -90,6 +88,8 @@ void CLayerSurface::onDestroy() { } } + popupHead.reset(); + noProcess = true; // rearrange to fix the reserved areas