From: Manuel Nickschas Date: Thu, 26 Jul 2018 20:58:40 +0000 (+0200) Subject: common: Initialize translations in Quassel::init() X-Git-Tag: test-travis-01~182 X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=commitdiff_plain;h=ce250a863bce3198096e65d4c7a68269495302dd common: Initialize translations in Quassel::init() In order to have localized strings during initialization, e.g. for command line options, the translation catalogue must be loaded early. Since at this point the UI configuration is not available yet, the system locale is used. QtUi will reload translations afterwards later if a language different from the system locale is configured for the UI. --- diff --git a/src/common/quassel.cpp b/src/common/quassel.cpp index b7a6fbfb..ee8876f3 100644 --- a/src/common/quassel.cpp +++ b/src/common/quassel.cpp @@ -70,6 +70,9 @@ void Quassel::init(RunMode runMode) setupEnvironment(); registerMetaTypes(); + // Initial translation (may be overridden in UI settings) + loadTranslation(QLocale::system()); + Network::setDefaultCodecForServer("UTF-8"); Network::setDefaultCodecForEncoding("UTF-8"); Network::setDefaultCodecForDecoding("ISO-8859-15"); @@ -536,11 +539,9 @@ void Quassel::loadTranslation(const QLocale &locale) qtTranslator = new QTranslator(qApp); qtTranslator->setObjectName("QtTr"); - qApp->installTranslator(qtTranslator); quasselTranslator = new QTranslator(qApp); quasselTranslator->setObjectName("QuasselTr"); - qApp->installTranslator(quasselTranslator); #ifndef Q_OS_MAC bool success = qtTranslator->load(locale, QString("qt_"), translationDirPath()); @@ -553,6 +554,9 @@ void Quassel::loadTranslation(const QLocale &locale) qtTranslator->load(QString("qt_%1").arg(locale.name()), QLibraryInfo::location(QLibraryInfo::TranslationsPath)); quasselTranslator->load(QString("%1").arg(locale.name()), translationDirPath()); #endif + + qApp->installTranslator(quasselTranslator); + qApp->installTranslator(qtTranslator); } diff --git a/src/core/core.cpp b/src/core/core.cpp index 2634dd28..db30b308 100644 --- a/src/core/core.cpp +++ b/src/core/core.cpp @@ -91,10 +91,6 @@ void Core::init() { _startTime = QDateTime::currentDateTime().toUTC(); // for uptime :) - if (Quassel::runMode() == Quassel::RunMode::CoreOnly) { - Quassel::loadTranslation(QLocale::system()); - } - // check settings version // so far, we only have 1 CoreSettings s;