From 07e96c299a514628c541ccfd8957a8b14a07b27a Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Wed, 23 Nov 2022 12:55:12 +0100 Subject: [PATCH] QmlDesigner: Allow to disable possible imports Getting all possible imports can be slow and is not required in every context. Change-Id: I75c50e0f6600dfa8fca7dfec26382783b084bdb9 Reviewed-by: Vikas Pachdha --- .../qmldesigner/designercore/include/rewriterview.h | 4 ++++ .../qmldesigner/designercore/model/rewriterview.cpp | 10 ++++++++++ .../designercore/model/texttomodelmerger.cpp | 3 +++ 3 files changed, 17 insertions(+) diff --git a/src/plugins/qmldesigner/designercore/include/rewriterview.h b/src/plugins/qmldesigner/designercore/include/rewriterview.h index d95d811261c..56dc01c215d 100644 --- a/src/plugins/qmldesigner/designercore/include/rewriterview.h +++ b/src/plugins/qmldesigner/designercore/include/rewriterview.h @@ -167,6 +167,9 @@ public: void resetPossibleImports(); + bool possibleImportsEnabled() const; + void setPossibleImportsEnabled(bool b); + signals: void modelInterfaceProjectUpdated(); @@ -212,6 +215,7 @@ private: //variables bool m_restoringAuxData = false; bool m_modelAttachPending = false; bool m_allowComponentRoot = false; + bool m_possibleImportsEnabled = true; mutable QHash m_canonicalIntModelNode; mutable QHash m_canonicalModelNodeInt; diff --git a/src/plugins/qmldesigner/designercore/model/rewriterview.cpp b/src/plugins/qmldesigner/designercore/model/rewriterview.cpp index 89ad9c0ab92..4a9ab62814c 100644 --- a/src/plugins/qmldesigner/designercore/model/rewriterview.cpp +++ b/src/plugins/qmldesigner/designercore/model/rewriterview.cpp @@ -693,6 +693,16 @@ void RewriterView::resetPossibleImports() m_textToModelMerger->clearPossibleImportKeys(); } +bool RewriterView::possibleImportsEnabled() const +{ + return m_possibleImportsEnabled; +} + +void RewriterView::setPossibleImportsEnabled(bool b) +{ + m_possibleImportsEnabled = b; +} + Internal::ModelNodePositionStorage *RewriterView::positionStorage() const { return m_positionStorage.data(); diff --git a/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp b/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp index 3990eee76ee..5ae83880fe4 100644 --- a/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp +++ b/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp @@ -984,6 +984,9 @@ static QList generatePossibleLibraryImports(const QHashpossibleImportsEnabled()) + return; + static QUrl lastProjectUrl; auto &externalDependencies = m_rewriterView->externalDependencies(); auto projectUrl = externalDependencies.projectUrl();