From 170a8e8e6a47d08bbe39b00b434777a710ba2737 Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Wed, 12 Jun 2024 11:49:29 +0200 Subject: [PATCH] QmlDesigner: Fix nested directory imports Task-number: QDS-12813 Task-number: QDS-12793 Change-Id: I95efb2704b60c07e1fd8b176db4ba5878765f3bf Reviewed-by: Miikka Heikkinen (cherry picked from commit 88f6f52cd421465c53133678a6466a4c32a473be) Reviewed-by: Thomas Hartmann --- .../qmldesigner/designercore/model/texttomodelmerger.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp b/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp index b66270dca12..6532d88bd76 100644 --- a/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp +++ b/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp @@ -778,6 +778,7 @@ bool skipModule(QStringView moduleName) } void collectPossibleFileImports(const QString &checkPath, + const QString &projectFolder, QSet usedImportsSet, QList &possibleImports) { @@ -796,11 +797,11 @@ void collectPossibleFileImports(const QString &checkPath, if (!dir.entryInfoList(qmlList, QDir::Files).isEmpty() && dir.entryInfoList(qmldirList, QDir::Files).isEmpty() && !usedImportsSet.contains(dirPath)) { - const QString importName = dir.path().mid(checkPath.size() + 1); + const QString importName = dir.path().mid(projectFolder.size() + 1); QmlDesigner::Import import = QmlDesigner::Import::createFileImport(importName); possibleImports.append(import); } - collectPossibleFileImports(dirPath, usedImportsSet, possibleImports); + collectPossibleFileImports(dirPath, projectFolder, usedImportsSet, possibleImports); } } @@ -815,7 +816,7 @@ QList generatePossibleFileImports(const QString &path, QStringList fileImportPaths; - collectPossibleFileImports(path, usedImportsSet, possibleImports); + collectPossibleFileImports(path, path, usedImportsSet, possibleImports); return possibleImports; }