aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/style
diff options
context:
space:
mode:
authorDominik Holland <dominik.holland@pelagicore.com>2018-11-23 15:42:24 +0100
committerDaniel d'Andrada <daniel.dandrada@luxoft.com>2018-11-26 11:42:28 +0000
commit9584536403f9870086e41027a3e3f1bb26d5ea8f (patch)
treede10832bfcee03619f76bbf555d9d7ec332f808f /plugins/style
parentbb6a321756a96f9072aacf9e65f5f4a9d3c8f1b0 (diff)
[style] Make sure the imagePaths don't contain double slashes...
... as this doesn't work on android. Change-Id: Ib512d1863ebc8dca76af259ffc0d96d1d8dcab3a Reviewed-by: Daniel d'Andrada <daniel.dandrada@luxoft.com>
Diffstat (limited to 'plugins/style')
-rw-r--r--plugins/style/Style.cpp6
-rw-r--r--plugins/style/Style.h2
-rw-r--r--plugins/style/StyleDefaults.cpp2
-rw-r--r--plugins/style/StyleDefaults.h3
4 files changed, 8 insertions, 5 deletions
diff --git a/plugins/style/Style.cpp b/plugins/style/Style.cpp
index 7d198e37..319baa8a 100644
--- a/plugins/style/Style.cpp
+++ b/plugins/style/Style.cpp
@@ -213,11 +213,9 @@ QJSValue Style::image()
return m_image;
}
-QString Style::imageHelper(QString value)
+QString Style::imageHelper(const QString &value)
{
- static QString basePath = QString("%1/%2/images/").arg(QQuickStyle::path()).arg(QQuickStyle::name());
- QString result = basePath;
- result.append(value);
+ QString result = StyleDefaults::instance()->imagePath() + QDir::separator() + value;
if (m_theme == StyleData::Dark) {
QString darkResult = result;
diff --git a/plugins/style/Style.h b/plugins/style/Style.h
index d7f55193..5cd5ec2c 100644
--- a/plugins/style/Style.h
+++ b/plugins/style/Style.h
@@ -79,7 +79,7 @@ public:
// Not really public API. This is a helper method for the image property (which is a javascript Function,
// ie. a callable object). Q_INVOKABLE as it's called from the javascript side (the QJSValue Function in
// the image property)
- Q_INVOKABLE QString imageHelper(QString value);
+ Q_INVOKABLE QString imageHelper(const QString &value);
enum Theme { Light=StyleData::Light, Dark=StyleData::Dark };
Q_ENUM(Theme)
diff --git a/plugins/style/StyleDefaults.cpp b/plugins/style/StyleDefaults.cpp
index 7b3a3bca..821687be 100644
--- a/plugins/style/StyleDefaults.cpp
+++ b/plugins/style/StyleDefaults.cpp
@@ -68,6 +68,8 @@ StyleDefaults::StyleDefaults()
return;
}
+ m_imagePath = chosenStyleDir.absoluteFilePath(QStringLiteral("images"));
+
if (!chosenStyleDir.exists(confFileName)) {
qCritical() << "Style: Missing file" << chosenStyleDir.absoluteFilePath(confFileName);
return;
diff --git a/plugins/style/StyleDefaults.h b/plugins/style/StyleDefaults.h
index e9ad6101..9fbb7bd2 100644
--- a/plugins/style/StyleDefaults.h
+++ b/plugins/style/StyleDefaults.h
@@ -43,11 +43,14 @@ public:
const StyleData::ThemeData dataFromTheme(StyleData::Theme theme) const;
+ const QString imagePath() const { return m_imagePath; }
+
private:
StyleDefaults();
static void loadTheme(StyleData::ThemeData &data, QSettings &settings);
StyleData m_data;
+ QString m_imagePath;
static StyleDefaults *m_instance;
};