summaryrefslogtreecommitdiff
path: root/plugin/src
diff options
context:
space:
mode:
author2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>2025-09-03 18:55:05 +1000
committer2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>2025-09-03 18:55:05 +1000
commit1de24676bb80ce633a026f336242d486b40dd3c8 (patch)
treedbaff0e2ecfae215c64ea422a44b68c6b40af6bf /plugin/src
parentplugin/fsm: incremental updates (diff)
downloadcaelestia-shell-1de24676bb80ce633a026f336242d486b40dd3c8.tar.gz
caelestia-shell-1de24676bb80ce633a026f336242d486b40dd3c8.tar.bz2
caelestia-shell-1de24676bb80ce633a026f336242d486b40dd3c8.zip
internal: refactor Paths util
Diffstat (limited to 'plugin/src')
-rw-r--r--plugin/src/Caelestia/cutils.cpp9
-rw-r--r--plugin/src/Caelestia/cutils.hpp2
2 files changed, 11 insertions, 0 deletions
diff --git a/plugin/src/Caelestia/cutils.cpp b/plugin/src/Caelestia/cutils.cpp
index 29cf7ce..d64530d 100644
--- a/plugin/src/Caelestia/cutils.cpp
+++ b/plugin/src/Caelestia/cutils.cpp
@@ -337,3 +337,12 @@ qreal CUtils::findAverageLuminance(const QImage& image, int rescaleSize) const {
return count == 0 ? 0.0 : totalLuminance / count;
}
+
+QString CUtils::toLocalFile(const QUrl& url) const {
+ if (!url.isLocalFile()) {
+ qWarning() << "CUtils::toLocalFile: given url is not a local file" << url;
+ return QString();
+ }
+
+ return url.toLocalFile();
+}
diff --git a/plugin/src/Caelestia/cutils.hpp b/plugin/src/Caelestia/cutils.hpp
index cac5d7c..42d4418 100644
--- a/plugin/src/Caelestia/cutils.hpp
+++ b/plugin/src/Caelestia/cutils.hpp
@@ -31,6 +31,8 @@ public:
Q_INVOKABLE void getAverageLuminance(const QString& path, QJSValue callback);
Q_INVOKABLE void getAverageLuminance(const QString& path, int rescaleSize, QJSValue callback);
+ Q_INVOKABLE QString toLocalFile(const QUrl& url) const;
+
private:
QColor findDominantColour(const QImage& image, int rescaleSize) const;
qreal findAverageLuminance(const QImage& image, int rescaleSize) const;