diff options
-rw-r--r-- | src/qml/qml/qqmlapplicationengine.cpp | 4 | ||||
-rw-r--r-- | tools/qml/main.cpp | 7 | ||||
-rw-r--r-- | tools/qmlscene/main.cpp | 10 |
3 files changed, 10 insertions, 11 deletions
diff --git a/src/qml/qml/qqmlapplicationengine.cpp b/src/qml/qml/qqmlapplicationengine.cpp index a0517e4558..9ac2100eab 100644 --- a/src/qml/qml/qqmlapplicationengine.cpp +++ b/src/qml/qml/qqmlapplicationengine.cpp @@ -74,7 +74,7 @@ void QQmlApplicationEnginePrivate::init() q->connect(q, &QQmlApplicationEngine::exit, QCoreApplication::instance(), &QCoreApplication::exit); #if QT_CONFIG(translation) QTranslator* qtTranslator = new QTranslator; - if (qtTranslator->load(QLatin1String("qt_") + QLocale::system().name(), QLibraryInfo::location(QLibraryInfo::TranslationsPath))) + if (qtTranslator->load(QLocale(), QLatin1String("qt"), QLatin1String("_"), QLibraryInfo::location(QLibraryInfo::TranslationsPath))) QCoreApplication::installTranslator(qtTranslator); translators << qtTranslator; #endif @@ -91,7 +91,7 @@ void QQmlApplicationEnginePrivate::loadTranslations(const QUrl &rootFile) QFileInfo fi(rootFile.toLocalFile()); QTranslator *translator = new QTranslator; - if (translator->load(QLatin1String("qml_") + QLocale::system().name(), fi.path() + QLatin1String("/i18n"))) { + if (translator->load(QLocale(), QLatin1String("qml"), QLatin1String("_"), fi.path() + QLatin1String("/i18n"))) { QCoreApplication::installTranslator(translator); translators << translator; } else { diff --git a/tools/qml/main.cpp b/tools/qml/main.cpp index 6cf6ad3b2c..7dfae2b53d 100644 --- a/tools/qml/main.cpp +++ b/tools/qml/main.cpp @@ -535,10 +535,9 @@ int main(int argc, char *argv[]) verboseMode = false; #if QT_CONFIG(translation) - //qt_ translations loaded by QQmlApplicationEngine - QString sysLocale = QLocale::system().name(); - - if (!translationFile.isEmpty()) { //Note: installed before QQmlApplicationEngine's automatic translation loading + // Need to be installed before QQmlApplicationEngine's automatic translation loading + // (qt_ translations are loaded there) + if (!translationFile.isEmpty()) { QTranslator translator; if (translator.load(translationFile)) { diff --git a/tools/qmlscene/main.cpp b/tools/qmlscene/main.cpp index bc7fe72d4c..fab3dcce67 100644 --- a/tools/qmlscene/main.cpp +++ b/tools/qmlscene/main.cpp @@ -311,7 +311,7 @@ static void displayFileDialog(Options *options) #if QT_CONFIG(translation) static void loadTranslationFile(QTranslator &translator, const QString& directory) { - translator.load(QLatin1String("qml_" )+QLocale::system().name(), directory + QLatin1String("/i18n")); + translator.load(QLocale(), QLatin1String("qml"), QLatin1String("_"), directory + QLatin1String("/i18n")); QCoreApplication::installTranslator(&translator); } #endif @@ -549,12 +549,12 @@ int main(int argc, char ** argv) } #if QT_CONFIG(translation) - QTranslator translator; + QLocale locale; QTranslator qtTranslator; - QString sysLocale = QLocale::system().name(); - if (qtTranslator.load(QLatin1String("qt_") + sysLocale, QLibraryInfo::location(QLibraryInfo::TranslationsPath))) + if (qtTranslator.load(locale, QLatin1String("qt"), QLatin1String("_"), QLibraryInfo::location(QLibraryInfo::TranslationsPath))) app->installTranslator(&qtTranslator); - if (translator.load(QLatin1String("qmlscene_") + sysLocale, QLibraryInfo::location(QLibraryInfo::TranslationsPath))) + QTranslator translator; + if (translator.load(locale, QLatin1String("qmlscene"), QLatin1String("_"), QLibraryInfo::location(QLibraryInfo::TranslationsPath))) app->installTranslator(&translator); QTranslator qmlTranslator; |