diff --git a/src/libs/utils/filepath.h b/src/libs/utils/filepath.h index 541a9555f74..484201383f4 100644 --- a/src/libs/utils/filepath.h +++ b/src/libs/utils/filepath.h @@ -234,9 +234,10 @@ public: [[nodiscard]] static int rootLength(const QStringView path); // Assumes no scheme and host [[nodiscard]] static int schemeAndHostLength(const QStringView path); + static QString calcRelativePath(const QString &absolutePath, const QString &absoluteAnchorPath); + private: friend class ::tst_fileutils; - static QString calcRelativePath(const QString &absolutePath, const QString &absoluteAnchorPath); void setPath(QStringView path); void setFromString(const QString &filepath); DeviceFileAccess *fileAccess() const; diff --git a/src/plugins/coreplugin/corejsextensions.cpp b/src/plugins/coreplugin/corejsextensions.cpp index 68a44dd7076..a7934e2ede4 100644 --- a/src/plugins/coreplugin/corejsextensions.cpp +++ b/src/plugins/coreplugin/corejsextensions.cpp @@ -16,8 +16,9 @@ #include #include -namespace Core { -namespace Internal { +using namespace Utils; + +namespace Core::Internal { QString UtilsJsExtension::qtVersion() const { @@ -83,7 +84,9 @@ QString UtilsJsExtension::absoluteFilePath(const QString &in) const QString UtilsJsExtension::relativeFilePath(const QString &path, const QString &base) const { - return QDir(base).relativeFilePath(path); + const FilePath basePath = FilePath::fromString(base).cleanPath(); + const FilePath filePath = FilePath::fromString(path).cleanPath(); + return FilePath::calcRelativePath(filePath.toFSPathString(), basePath.toFSPathString()); } bool UtilsJsExtension::exists(const QString &in) const @@ -175,5 +178,4 @@ QString UtilsJsExtension::qtQuickVersion(const QString &filePath) const return QLatin1String("2.15"); } -} // namespace Internal -} // namespace Core +} // Core::Internal diff --git a/src/plugins/coreplugin/corejsextensions.h b/src/plugins/coreplugin/corejsextensions.h index 4c97aa18ad9..dbb4b94ec9a 100644 --- a/src/plugins/coreplugin/corejsextensions.h +++ b/src/plugins/coreplugin/corejsextensions.h @@ -8,9 +8,7 @@ #include #include -namespace Core { - -namespace Internal { +namespace Core::Internal { class UtilsJsExtension : public QObject { @@ -59,5 +57,4 @@ public: Q_INVOKABLE QString qtQuickVersion(const QString &filePath) const; }; -} // namespace Internal -} // namespace Core +} // Core::Internal