diff --git a/app/lattecorona.cpp b/app/lattecorona.cpp index a33e6dae9..88da62a6b 100644 --- a/app/lattecorona.cpp +++ b/app/lattecorona.cpp @@ -168,21 +168,6 @@ Corona::~Corona() m_layoutsManager->synchronizer()->hideAllViews(); m_viewSettingsFactory->deleteLater(); - //! Don't delay the destruction under wayland in any case - //! because it creates a crash with kwin effects - //! https://bugs.kde.org/show_bug.cgi?id=392890 - if (!KWindowSystem::isPlatformWayland()) { - QTimer::singleShot(400, [this]() { - m_quitTimedEnded = true; - }); - - while (!m_quitTimedEnded) { - QGuiApplication::processEvents(QEventLoop::AllEvents, 50); - } - } - - //! END: slide-out views when closing - m_viewsScreenSyncTimer.stop(); if (m_layoutsManager->memoryUsage() == MemoryUsage::SingleLayout) { @@ -190,8 +175,8 @@ Corona::~Corona() } qDebug() << "Latte Corona - unload: containments ..."; - m_layoutsManager->unload(); + m_plasmaGeometries->deleteLater(); m_wm->deleteLater(); m_dialogShadows->deleteLater(); diff --git a/app/layouts/manager.cpp b/app/layouts/manager.cpp index ee25da89d..01c08d93b 100644 --- a/app/layouts/manager.cpp +++ b/app/layouts/manager.cpp @@ -319,6 +319,7 @@ void Manager::clearUnloadedContainmentsFromLinkedFile(QStringList containmentsId qDebug() << "unloads ::: " << conId; KConfigGroup containment = containments.group(conId); containment.deleteGroup(); + containment.sync(); } containments.sync(); diff --git a/app/layouts/storage.cpp b/app/layouts/storage.cpp index 157f96fbd..c5e7d6e3c 100644 --- a/app/layouts/storage.cpp +++ b/app/layouts/storage.cpp @@ -559,8 +559,9 @@ void Storage::syncToLayoutFile(const Layout::GenericLayout *layout, bool removeL if (!removeLayoutId) { newGroup.writeEntry("layoutId", ""); - newGroup.sync(); } + + newGroup.sync(); } oldContainments.sync();