summaryrefslogtreecommitdiffstats
path: root/src/sdk/installerbase.cpp
diff options
context:
space:
mode:
authorKatja Marttila <katja.marttila@qt.io>2020-05-25 10:10:25 +0300
committerKatja Marttila <katja.marttila@qt.io>2020-05-25 12:04:25 +0000
commit298fd64d3ddbe6de3607b51c4b71b221de07ce2a (patch)
treeda231fda8d652d0a3b5b7283b3d657e86eb5851b /src/sdk/installerbase.cpp
parent4811c094a0f15fffbf3016f69bbba57a0ffe0cbe (diff)
parenteb500c4b5b810198acb1f32602a20a84a460aeb9 (diff)
Merge remote-tracking branch 'origin/3.2' into master
Diffstat (limited to 'src/sdk/installerbase.cpp')
-rw-r--r--src/sdk/installerbase.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/sdk/installerbase.cpp b/src/sdk/installerbase.cpp
index 8a3d18327..5b513e7a6 100644
--- a/src/sdk/installerbase.cpp
+++ b/src/sdk/installerbase.cpp
@@ -90,12 +90,18 @@ int InstallerBase::run()
dumpResourceTree();
const QString directory = QLatin1String(":/translations");
+ // Check if there is a modified translation first to enable people
+ // to easily provide corrected translations to Qt/IFW for their installers
+ const QString newDirectory = QLatin1String(":/translations_new");
const QStringList translations = m_core->settings().translations();
if (translations.isEmpty()) {
foreach (const QLocale locale, QLocale().uiLanguages()) {
QScopedPointer<QTranslator> qtTranslator(new QTranslator(QCoreApplication::instance()));
- const bool qtLoaded = qtTranslator->load(locale, QLatin1String("qt"),
+ bool qtLoaded = qtTranslator->load(locale, QLatin1String("qt"),
+ QLatin1String("_"), newDirectory);
+ if (!qtLoaded)
+ qtLoaded = qtTranslator->load(locale, QLatin1String("qt"),
QLatin1String("_"), directory);
if (qtLoaded || locale.language() == QLocale::English) {
@@ -103,7 +109,10 @@ int InstallerBase::run()
QCoreApplication::instance()->installTranslator(qtTranslator.take());
QScopedPointer<QTranslator> ifwTranslator(new QTranslator(QCoreApplication::instance()));
- if (ifwTranslator->load(locale, QLatin1String("ifw"), QLatin1String("_"), directory))
+ bool ifwLoaded = ifwTranslator->load(locale, QLatin1String("ifw"), QLatin1String("_"), newDirectory);
+ if (!ifwLoaded)
+ ifwLoaded = ifwTranslator->load(locale, QLatin1String("ifw"), QLatin1String("_"), directory);
+ if (ifwLoaded)
QCoreApplication::instance()->installTranslator(ifwTranslator.take());
// To stop loading other translations it's sufficient that