diff options
author | Dominik Holland <dominik.holland@pelagicore.com> | 2018-11-23 15:42:24 +0100 |
---|---|---|
committer | Daniel d'Andrada <daniel.dandrada@luxoft.com> | 2018-11-26 11:42:28 +0000 |
commit | 9584536403f9870086e41027a3e3f1bb26d5ea8f (patch) | |
tree | de10832bfcee03619f76bbf555d9d7ec332f808f /plugins/style | |
parent | bb6a321756a96f9072aacf9e65f5f4a9d3c8f1b0 (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.cpp | 6 | ||||
-rw-r--r-- | plugins/style/Style.h | 2 | ||||
-rw-r--r-- | plugins/style/StyleDefaults.cpp | 2 | ||||
-rw-r--r-- | plugins/style/StyleDefaults.h | 3 |
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; }; |