From 99f5b8a0af32dcd7bab2a15593f91217adbc5a6d Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Thu, 8 Feb 2024 17:03:41 +0200 Subject: [PATCH] EffectComposer: Clear deleted effect if it is currently open Fixes: QDS-11787 Change-Id: Iecd177a153e88a49476dbea0241c31726d05a6a8 Reviewed-by: Mahmoud Badri --- src/plugins/effectcomposer/effectcomposerview.cpp | 8 +++++++- .../components/assetslibrary/assetslibrarywidget.cpp | 2 ++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/plugins/effectcomposer/effectcomposerview.cpp b/src/plugins/effectcomposer/effectcomposerview.cpp index ab7da90e1d7..e7a879bd8b0 100644 --- a/src/plugins/effectcomposer/effectcomposerview.cpp +++ b/src/plugins/effectcomposer/effectcomposerview.cpp @@ -69,9 +69,15 @@ void EffectComposerView::customNotification([[maybe_unused]] const AbstractView [[maybe_unused]] const QList &nodeList, const QList &data) { - if (identifier == "open_effectcomposer_composition" && data.count() > 0) { + if (data.size() < 1) + return; + + if (identifier == "open_effectcomposer_composition") { const QString compositionPath = data[0].toString(); m_widget->openComposition(compositionPath); + } else if (identifier == "effectcomposer_effects_deleted") { + if (data[0].toStringList().contains(m_widget->effectComposerModel()->currentComposition())) + m_widget->effectComposerModel()->clear(true); } } diff --git a/src/plugins/qmldesigner/components/assetslibrary/assetslibrarywidget.cpp b/src/plugins/qmldesigner/components/assetslibrary/assetslibrarywidget.cpp index 5f33036b40e..908fe7a15b4 100644 --- a/src/plugins/qmldesigner/components/assetslibrary/assetslibrarywidget.cpp +++ b/src/plugins/qmldesigner/components/assetslibrary/assetslibrarywidget.cpp @@ -334,6 +334,8 @@ void AssetsLibraryWidget::handleDeleteEffects(const QStringList &effectNames) // contain only unworkable states. if (clearStacks) document->clearUndoRedoStacks(); + + m_assetsView->emitCustomNotification("effectcomposer_effects_deleted", {}, {effectNames}); } void AssetsLibraryWidget::invalidateThumbnail(const QString &id)