diff --git a/src/plugins/qmlpreview/qmlpreviewplugin.cpp b/src/plugins/qmlpreview/qmlpreviewplugin.cpp index 6c92c12b0a1..f0643955922 100644 --- a/src/plugins/qmlpreview/qmlpreviewplugin.cpp +++ b/src/plugins/qmlpreview/qmlpreviewplugin.cpp @@ -53,6 +53,7 @@ #include #include +#include #include using namespace ProjectExplorer; @@ -412,6 +413,10 @@ void QmlPreviewPluginPrivate::setDirty() void QmlPreviewPluginPrivate::addPreview(ProjectExplorer::RunControl *preview) { m_runningPreviews.append(preview); + if (auto multiLanguageAspect = preview->aspect()) { + connect(multiLanguageAspect, &QmlProjectManager::QmlMultiLanguageAspect::changed, + preview, &ProjectExplorer::RunControl::initiateStop); + } emit q->runningPreviewsChanged(m_runningPreviews); } diff --git a/src/plugins/qmlprojectmanager/qmlmultilanguageaspect.cpp b/src/plugins/qmlprojectmanager/qmlmultilanguageaspect.cpp index 39f79339640..94e36919fe6 100644 --- a/src/plugins/qmlprojectmanager/qmlmultilanguageaspect.cpp +++ b/src/plugins/qmlprojectmanager/qmlmultilanguageaspect.cpp @@ -97,7 +97,6 @@ void QmlMultiLanguageAspect::setLastUsedLanguage(const QString &language) previewPlugin->setProperty("locale", language); if (m_lastUsedLanguage != language) { m_lastUsedLanguage = language; - emit changed(); } }