QmlDesigner: Fix nested directory imports

Task-number: QDS-12813
Task-number: QDS-12793
Change-Id: I95efb2704b60c07e1fd8b176db4ba5878765f3bf
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
This commit is contained in:
Thomas Hartmann
2024-06-12 11:49:29 +02:00
parent 99e5042732
commit 88f6f52cd4

View File

@@ -781,6 +781,7 @@ bool skipModule(QStringView moduleName)
}
void collectPossibleFileImports(const QString &checkPath,
const QString &projectFolder,
QSet<QString> usedImportsSet,
QList<QmlDesigner::Import> &possibleImports)
{
@@ -799,11 +800,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);
}
}
@@ -818,7 +819,7 @@ QList<QmlDesigner::Import> generatePossibleFileImports(const QString &path,
QStringList fileImportPaths;
collectPossibleFileImports(path, usedImportsSet, possibleImports);
collectPossibleFileImports(path, path, usedImportsSet, possibleImports);
return possibleImports;
}