Detect language on first boot on Windows (Vista+) and Android

This commit is contained in:
Henrik Rydgard 2013-09-04 12:07:42 +02:00
parent 8e6b031d9b
commit ad620e463a
6 changed files with 40 additions and 8 deletions

View file

@ -21,6 +21,7 @@
#include "Common/FileUtil.h"
#include "Config.h"
#include "file/ini_file.h"
#include "i18n/i18n.h"
#include "HLE/sceUtility.h"
#include "Common/CPUDetect.h"
@ -55,7 +56,16 @@ void Config::Load(const char *iniFileName, const char *controllerIniFilename)
general->Get("IgnoreBadMemAccess", &bIgnoreBadMemAccess, true);
general->Get("CurrentDirectory", &currentDirectory, "");
general->Get("ShowDebuggerOnLoad", &bShowDebuggerOnLoad, false);
general->Get("Language", &languageIni, "en_US");
std::string defaultLangRegion = "en_US";
if (bFirstRun) {
std::string langRegion = System_GetProperty(SYSPROP_LANGREGION);
if (i18nrepo.IniExists(langRegion))
defaultLangRegion = langRegion;
// TODO: Be smart about same language, different country
}
general->Get("Language", &languageIni, defaultLangRegion.c_str());
general->Get("NumWorkerThreads", &iNumWorkerThreads, cpu_info.num_cores);
general->Get("EnableCheats", &bEnableCheats, false);
general->Get("ScreenshotsAsPNG", &bScreenshotsAsPNG, false);