From fa8c4fa0f5a1c8c7e0a1c52a9ac80846332256f0 Mon Sep 17 00:00:00 2001 From: Aireil <33433913+Aireil@users.noreply.github.com> Date: Sat, 21 Nov 2020 23:23:24 +0100 Subject: [PATCH] Fix the language combo preview in settings if no override --- Dalamud/Interface/DalamudSettingsWindow.cs | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/Dalamud/Interface/DalamudSettingsWindow.cs b/Dalamud/Interface/DalamudSettingsWindow.cs index 4fdac8131..3a964fcb5 100644 --- a/Dalamud/Interface/DalamudSettingsWindow.cs +++ b/Dalamud/Interface/DalamudSettingsWindow.cs @@ -1,4 +1,5 @@ using System; +using System.Globalization; using System.Linq; using System.Numerics; using CheapLoc; @@ -28,7 +29,22 @@ namespace Dalamud.Interface this.doDalamudTest = this.dalamud.Configuration.DoDalamudTest; this.languages = Localization.ApplicableLangCodes.Prepend("en").ToArray(); - this.langIndex = string.IsNullOrEmpty(this.dalamud.Configuration.LanguageOverride) ? 0 : Array.IndexOf(this.languages, this.dalamud.Configuration.LanguageOverride); + try { + if (string.IsNullOrEmpty(this.dalamud.Configuration.LanguageOverride)) { + var currentUiLang = CultureInfo.CurrentUICulture; + + if (Localization.ApplicableLangCodes.Any(x => currentUiLang.TwoLetterISOLanguageName == x)) + this.langIndex = Array.IndexOf(this.languages, currentUiLang.TwoLetterISOLanguageName); + else + this.langIndex = 0; + } + else { + this.langIndex = Array.IndexOf(this.languages, this.dalamud.Configuration.LanguageOverride); + } + } + catch (Exception) { + this.langIndex = 0; + } } private string[] languages;