From 5ca59da1af343cf79d6e92bc72b3d9226f595dda Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Fri, 15 Sep 2023 13:23:00 +0200 Subject: [PATCH] McuSupport: Do not regularly restet code mode in QDS context Resetting the code model on a regular base has quite a negative performance impact and also generates unexpected code paths and updates. Change-Id: I5a62166d714beb6cc6c9a64333abf093a5a87ac6 Reviewed-by: Thomas Hartmann Reviewed-by: Yasser Grimes --- src/plugins/mcusupport/mcusupportplugin.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/plugins/mcusupport/mcusupportplugin.cpp b/src/plugins/mcusupport/mcusupportplugin.cpp index 05f457689d8..c0548554627 100644 --- a/src/plugins/mcusupport/mcusupportplugin.cpp +++ b/src/plugins/mcusupport/mcusupportplugin.cpp @@ -114,6 +114,13 @@ McuSupportPlugin::~McuSupportPlugin() dd = nullptr; } +static bool isQtDesignStudio() +{ + QSettings *settings = Core::ICore::settings(); + const QString qdsStandaloneEntry = "QML/Designer/StandAloneMode"; + return settings->value(qdsStandaloneEntry, false).toBool(); +} + void McuSupportPlugin::initialize() { setObjectName("McuSupportPlugin"); @@ -125,7 +132,10 @@ void McuSupportPlugin::initialize() // Temporary fix for CodeModel/Checker race condition // Remove after https://bugreports.qt.io/browse/QTCREATORBUG-29269 is closed - connect(QmlJS::ModelManagerInterface::instance(), + + if (!isQtDesignStudio()) { + connect( + QmlJS::ModelManagerInterface::instance(), &QmlJS::ModelManagerInterface::documentUpdated, [lasttime = QTime::currentTime()](QmlJS::Document::Ptr doc) mutable { // Prevent inifinite recall loop @@ -157,6 +167,7 @@ void McuSupportPlugin::initialize() ->action() ->trigger(); }); + } dd->m_options.registerQchFiles(); dd->m_options.registerExamples();