QmlDesigner: Fix subfolder imports

Recursion for possible imports was interrupted when an incompatible
folder was detected, even though that folder could have compatible
subfolders.

Fixes: QDS-13067
Change-Id: I61f0ac6265e922c515dcd380a481434a1ddfcc93
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
This commit is contained in:
Miikka Heikkinen
2024-06-25 16:59:41 +03:00
parent 7947b18d87
commit 576e3b7acd

View File

@@ -806,12 +806,11 @@ void collectPossibleFileImports(const QString &checkPath,
// Omit all imports that would be just "../", "../../" etc. without additional subfolder,
// as we don't want to encourage bad design. "../MySharedComps" is a legitimate
// use, though.
if (importName.startsWith(upDir) && importName.lastIndexOf(upDir) == importName.size() - 3)
continue;
if (!importName.startsWith(upDir) || importName.lastIndexOf(upDir) != importName.size() - 3) {
QmlDesigner::Import import = QmlDesigner::Import::createFileImport(importName);
possibleImports.append(import);
}
}
collectPossibleFileImports(dirPath, docDir, usedImportsSet, possibleImports);
}
}