diff options
Diffstat (limited to 'src/plugins/qmljseditor/qmljshoverhandler.cpp')
-rw-r--r-- | src/plugins/qmljseditor/qmljshoverhandler.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/plugins/qmljseditor/qmljshoverhandler.cpp b/src/plugins/qmljseditor/qmljshoverhandler.cpp index 7e816cf397..c33c1d13cd 100644 --- a/src/plugins/qmljseditor/qmljshoverhandler.cpp +++ b/src/plugins/qmljseditor/qmljshoverhandler.cpp @@ -43,6 +43,7 @@ #include <qmljs/parser/qmljsast_p.h> #include <qmljs/parser/qmljsastfwd_p.h> #include <qmljs/qmljsutils.h> +#include <qmljs/qmljsqrcparser.h> #include <texteditor/itexteditor.h> #include <texteditor/basetexteditor.h> #include <texteditor/helpitem.h> @@ -134,9 +135,15 @@ static inline QString getModuleName(const ScopeChain &scopeChain, const Document } else if (importInfo.isValid() && importInfo.type() == ImportInfo::DirectoryImport) { const QString path = importInfo.path(); const QDir dir(qmlDocument->path()); + // should probably try to make it relatve to some import path, not to the document path QString relativeDir = dir.relativeFilePath(path); const QString name = relativeDir.replace(QLatin1Char('/'), QLatin1Char('.')); return name; + } else if (importInfo.isValid() && importInfo.type() == ImportInfo::QrcDirectoryImport) { + QString path = QrcParser::normalizedQrcDirectoryPath(importInfo.path()); + path = path.mid(1, path.size() - ((path.size() > 1) ? 2 : 1)); + const QString name = path.replace(QLatin1Char('/'), QLatin1Char('.')); + return name; } } return QString(); |