43 QList<QLspSpecification::Location> results;
46 auto itemsFound = itemsForRequest(request);
48 if (guard.setErrorFrom(itemsFound))
51 auto &front = std::get<QList<QQmlLSUtils::ItemLocation>>(itemsFound).front();
53 const QByteArray shortestRootUrl =
54 m_codeModelManager->shortestRootUrlForFile(request->m_parameters.textDocument.uri);
56 const QStringList headerDirectories = shortestRootUrl.isEmpty()
58 : QStringList{ QUrl::fromEncoded(shortestRootUrl).toLocalFile() };
60 const auto location = QQmlLSUtils::findDefinitionOf(front.domItem, headerDirectories);
64 QLspSpecification::Location l;
65 l.uri = QUrl::fromLocalFile(location->filename()).toEncoded();
66 l.range = QQmlLSUtils::qmlLocationToLspLocation(*location);