diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index f1149e8..cdac32e 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -176,14 +176,11 @@ void yon_interface_update(main_window *widgets){ int valid = gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->languagelist),&iter); for(;valid;valid=gtk_tree_model_iter_next(GTK_TREE_MODEL(widgets->languagelist),&iter)){ gtk_tree_model_get(GTK_TREE_MODEL(widgets->languagelist),&iter,0,&loc_name,1,&code,2,&is_active,-1); - for (int i=0;ilanguagelist,&iter,2,1,-1); - char *temp = yon_char_unite(yon_char_is_empty(locale_string)?"":locale_string,yon_char_is_empty(locale_string)?"":"; ",loc_name,NULL); - if (!yon_char_is_empty(locale_string)) free(locale_string); - locale_string = temp; - // locale_string = yon_char_unite(yon_char_is_empty(locale_string) ? yon_char_append(locale_string,"; ") : locale_string, loc_name,NULL); - } + if (yon_char_parsed_check_exist(locale_parsed,locsize,code)>-1){ + gtk_list_store_set(widgets->languagelist,&iter,2,1,-1); + char *temp = yon_char_unite(yon_char_is_empty(locale_string)?"":locale_string,yon_char_is_empty(locale_string)?"":"; ",loc_name,NULL); + if (!yon_char_is_empty(locale_string)) free(locale_string); + locale_string = temp; } } if (strcmp(locale_string,"")) gtk_entry_set_text(GTK_ENTRY(widgets->LocaleEntry),locale_string); @@ -800,12 +797,14 @@ main_window *yon_main_window_complete(main_window *widgets){ gtk_list_store_append(widgets->languagelist,&iter); gtk_list_store_set(widgets->languagelist,&iter,0,_(loc_parsed[1]),1,loc_parsed[0],2,0,-1); } + yon_char_parsed_free(locales,size); config_str fonts = yon_resource_open_file(get_fonts_command,&size); for (int i=1;ifontlist,&iter); gtk_list_store_set(widgets->fontlist,&iter,0,fonts[i],-1); } + yon_char_parsed_free(fonts,size); if (main_config.lock_load_global == 1){ gtk_widget_set_sensitive(widgets->LoadGlobalMenuItem,0); }