Blob Blame History Raw
--- a/usr/lib/linuxmint/mintlocale/mintlocale.py
+++ b/usr/lib/linuxmint/mintlocale/mintlocale.py
@@ -268,7 +268,7 @@
                 vbox = Gtk.VBox()
                 vbox.pack_start(image, False, False, 2)
                 label = Gtk.Label()
-                label.set_markup(title)
+                label.set_text(title)
                 vbox.pack_start(label, False, False, 2)
                 menuitem.add(vbox)
             else:
@@ -713,7 +713,10 @@
                     vars[var_name] = value
             if "LANG" in vars:
                 locale = vars['LANG'].replace('"', '').replace("'", "")
-                locale = locale.split(".")[0].strip()
+                locale = locale.replace("utf8", "UTF-8")
+                locale = locale.replace("UTF-8", "")
+                locale = locale.replace(".", "")
+                locale = locale.strip()
                 if "_" in locale:
                     split = locale.split("_")
                     if len(split) == 2:
@@ -738,7 +741,10 @@
 
             if "LC_NUMERIC" in vars:
                 locale = vars['LC_NUMERIC'].replace('"', '').replace("'", "")
-                locale = locale.split(".")[0].strip()
+                locale = locale.replace("utf8", "UTF-8")
+                locale = locale.replace("UTF-8", "")
+                locale = locale.replace(".", "")
+                locale = locale.strip()
                 if "_" in locale:
                     split = locale.split("_")
                     if len(split) == 2:
@@ -766,7 +772,7 @@
         self.system_label.set_markup("<b>%s</b>\n<small>%s <i>%s</i>\n%s <i>%s</i></small>" % (_("System locale"), language_prefix, language_str, region_prefix, region_str))
 
     def set_num_installed(self):
-        num_installed = int(subprocess.check_output("localedef --list-archive | wc -l", shell=True))
+        num_installed = int(subprocess.check_output("localedef --list-archive | grep utf8 | wc -l", shell=True))
         self.install_label.set_markup("<b>%s</b>\n<small>%s</small>" % (_("Language support"), gettext.ngettext("%d language installed", "%d languages installed", num_installed) % num_installed))
 
     def accountservice_ready(self, user, param):
@@ -819,11 +825,12 @@
 
         for line in locales.split("\n"):
             line = line.replace("utf8", "UTF-8")
-            cur_index += 1
-            locale_code = line.split(".")[0].strip()
-            charmap = None
-            if len(line.split(".")) > 1:
-                charmap = line.split(".")[1].strip()
+            if "UTF-8" not in line:
+                continue            
+            cur_index += 1        
+            locale_code = line.replace("UTF-8", "")
+            locale_code = locale_code.replace(".", "")
+            locale_code = locale_code.strip()
 
             if "_" in locale_code:
                 split = locale_code.split("_")
@@ -835,16 +842,13 @@
                     else:
                         language = language_code
 
-                    country_code = split[1].lower().split('@')[0].strip()
+                    country_code = split[1].lower()
                     if country_code in self.countries:
                         country = self.countries[country_code]
                     else:
                         country = country_code
 
-                    if '@' in split[1]:
-                        language_label = u"%s (@%s), %s" % (language, split[1].split('@')[1].strip(), country)
-                    else:
-                        language_label = u"%s, %s" % (language, country)
+                    language_label = u"%s, %s" % (language, country)
 
                     flag_path = FLAG_PATH % country_code
             else:
@@ -856,9 +860,6 @@
 
             flag_path = self.set_minority_language_flag_path(locale_code, flag_path)
 
-            if charmap is not None and not all_locales_are_utf8:
-                language_label = u"%s  <small><span foreground='#3c3c3c'>%s</span></small>" % (language_label, charmap)
-
             if os.path.exists(flag_path):
                 flag = flag_path
             else:
@@ -880,7 +881,7 @@
 
     def set_user_locale(self, path, locale):
         self.locale_button.set_button_label(locale.name)
-        print(u"Setting language to %s" % locale.id)
+        print(u"Setting language to '%s' '%s'" % (locale.name, locale.id))
         # Set it in Accounts Service
         try:
             self.accountService.set_language(locale.id)
@@ -904,7 +905,7 @@
 
     def set_user_region(self, path, locale):
         self.region_button.set_button_label(locale.name)
-        print("Setting region to %s" % locale.id)
+        print("Setting region to '%s' '%s'" % (locale.name, locale.id))
 
         # We don't call self.accountService.set_formats_locale(locale.id) here...
         # First, we don't really use AccountsService, we're only doing this to be nice to LightDM and all..