From 234241052583619463e8fcafa4965791531b1b76 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Latner?= <matyas.latner@nic.cz>
Date: Tue, 10 Mar 2015 15:42:59 +0100
Subject: [PATCH] #1 Unknown system locale selection fix

---
 core/src/cz/nic/tablexia/TablexiaSettings.java | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/core/src/cz/nic/tablexia/TablexiaSettings.java b/core/src/cz/nic/tablexia/TablexiaSettings.java
index 4abedf9bd..c488a05c6 100644
--- a/core/src/cz/nic/tablexia/TablexiaSettings.java
+++ b/core/src/cz/nic/tablexia/TablexiaSettings.java
@@ -22,7 +22,7 @@ public class TablexiaSettings {
     private final           BuildType   BUILD_TYPE;
 
     private                 Preferences         preferences;
-    private                 Locale              systemLocale;
+    private                 LocaleDefinition    systemLocale;
     private                 LocaleDefinition    selectedLocale;
 
 
@@ -85,7 +85,7 @@ public class TablexiaSettings {
         }
 
         public Locale getLocale() {
-            return locale != null ? locale : instance.systemLocale;
+            return locale != null ? locale : instance.systemLocale.locale;
         }
 
         @Override
@@ -105,6 +105,15 @@ public class TablexiaSettings {
             }
             return FALLBACK_VARIANT;
         }
+
+        public static LocaleDefinition getLocaleDefinitionForLocale(Locale locale) {
+            for(LocaleDefinition localeDefinition: LocaleDefinition.values()) {
+                if (localeDefinition.locale != null && localeDefinition.locale.equals(locale)) {
+                    return localeDefinition;
+                }
+            }
+            return DEFAULT_LOCALE;
+        }
     }
 
 
@@ -114,7 +123,7 @@ public class TablexiaSettings {
 
     private TablexiaSettings(BuildType buildType, Locale systemLocale) {
         BUILD_TYPE          = buildType;
-        this.systemLocale   = systemLocale;
+        this.systemLocale   = LocaleDefinition.getLocaleDefinitionForLocale(systemLocale);
     }
 
     public static TablexiaSettings getInstance() {
-- 
GitLab