diff --git a/src/duckstation-qt/CMakeLists.txt b/src/duckstation-qt/CMakeLists.txt index f468a1bbe1..b54e83051a 100644 --- a/src/duckstation-qt/CMakeLists.txt +++ b/src/duckstation-qt/CMakeLists.txt @@ -120,6 +120,7 @@ set(TS_FILES translations/duckstation-qt_de.ts translations/duckstation-qt_en.ts translations/duckstation-qt_es.ts + translations/duckstation-qt_es-es.ts translations/duckstation-qt_fr.ts translations/duckstation-qt_he.ts translations/duckstation-qt_it.ts diff --git a/src/duckstation-qt/duckstation-qt.vcxproj b/src/duckstation-qt/duckstation-qt.vcxproj index 893712e97d..a8ffd9aac9 100644 --- a/src/duckstation-qt/duckstation-qt.vcxproj +++ b/src/duckstation-qt/duckstation-qt.vcxproj @@ -1,7 +1,6 @@  - @@ -255,6 +254,7 @@ + Document @@ -264,7 +264,6 @@ - false @@ -274,23 +273,17 @@ - {28F14272-0EC4-41BB-849F-182ADB81AF70} - - - $(RootBuildDir)frontend-common\frontend-common.lib;%(AdditionalDependencies) - - - + \ No newline at end of file diff --git a/src/duckstation-qt/duckstation-qt.vcxproj.filters b/src/duckstation-qt/duckstation-qt.vcxproj.filters index ace3fb4aa8..d5903bf500 100644 --- a/src/duckstation-qt/duckstation-qt.vcxproj.filters +++ b/src/duckstation-qt/duckstation-qt.vcxproj.filters @@ -182,6 +182,9 @@ translations + + translations + diff --git a/src/duckstation-qt/mainwindow.cpp b/src/duckstation-qt/mainwindow.cpp index c76c47979b..9740afb1a1 100644 --- a/src/duckstation-qt/mainwindow.cpp +++ b/src/duckstation-qt/mainwindow.cpp @@ -964,7 +964,17 @@ void MainWindow::setupAdditionalUi() QAction* action = language_group->addAction(it.first); action->setCheckable(true); action->setChecked(current_language == it.second); - action->setIcon(QIcon(QStringLiteral(":/icons/flags/%1.png").arg(it.second))); + + QString icon_filename(QStringLiteral(":/icons/flags/%1.png").arg(it.second)); + if (!QFile::exists(icon_filename)) + { + // try without the suffix (e.g. es-es -> es) + const int pos = it.second.lastIndexOf('-'); + if (pos >= 0) + icon_filename = QStringLiteral(":/icons/flags/%1.png").arg(it.second.left(pos)); + } + action->setIcon(QIcon(icon_filename)); + m_ui.menuSettingsLanguage->addAction(action); action->setData(it.second); connect(action, &QAction::triggered, [this, action]() { diff --git a/src/duckstation-qt/qthostinterface.cpp b/src/duckstation-qt/qthostinterface.cpp index 7caa802497..4cc3e1ef65 100644 --- a/src/duckstation-qt/qthostinterface.cpp +++ b/src/duckstation-qt/qthostinterface.cpp @@ -72,7 +72,8 @@ std::vector> QtHostInterface::getAvailableLanguageLi { return {{QStringLiteral("English"), QStringLiteral("en")}, {QStringLiteral("Deutsch"), QStringLiteral("de")}, - {QStringLiteral("Español"), QStringLiteral("es")}, + {QStringLiteral("español de Hispanoamérica"), QStringLiteral("es")}, + {QStringLiteral("español de España"), QStringLiteral("es-es")}, {QStringLiteral("Français"), QStringLiteral("fr")}, {QStringLiteral("עברית"), QStringLiteral("he")}, {QStringLiteral("日本語"), QStringLiteral("ja")},