From 2b2ef52d806b1e63eeebec972ea0c8b06836a835 Mon Sep 17 00:00:00 2001 From: Sami Shalayel Date: Wed, 20 Nov 2024 16:01:33 +0100 Subject: [PATCH] qmlls: apply settings after the qt version change Restart qmlls when the qt kit was changed for a project, as different qt kits require different qmlls binaries and commandline. Fixes: QTCREATORBUG-32044 Change-Id: Ia234c496ea9b18ef3c7077376b6c9f2253fe209c Reviewed-by: David Schulz Reviewed-by: hjk --- src/plugins/qmljseditor/qmljseditorplugin.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/plugins/qmljseditor/qmljseditorplugin.cpp b/src/plugins/qmljseditor/qmljseditorplugin.cpp index b95c19f0689..f75ad084d89 100644 --- a/src/plugins/qmljseditor/qmljseditorplugin.cpp +++ b/src/plugins/qmljseditor/qmljseditorplugin.cpp @@ -30,6 +30,8 @@ #include +#include + #include #include #include @@ -101,6 +103,12 @@ QmlJSEditorPluginPrivate::QmlJSEditorPluginPrivate() // recompute messages when project data changes (files added or removed) connect(modelManager, &QmlJS::ModelManagerInterface::projectInfoUpdated, &m_qmlTaskManager, &QmlTaskManager::updateMessages); + // restart qmlls when project data changes (qt kit changed, for example) + connect( + modelManager, + &QmlJS::ModelManagerInterface::projectInfoUpdated, + LanguageClient::LanguageClientManager::instance(), + []() { LanguageClient::LanguageClientManager::applySettings(qmllsSettings()); }); connect(modelManager, &QmlJS::ModelManagerInterface::aboutToRemoveFiles, &m_qmlTaskManager,