|
|
|
|
@ -131,12 +131,18 @@ int yon_char_parsed_compare(const void *a, const void *b){
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
gboolean on_languages_search_func(GtkTreeModel *model, gint ,const char *key, GtkTreeIter *iter, main_window *){
|
|
|
|
|
char *language, *language_localised;
|
|
|
|
|
gtk_tree_model_get(model,iter,1,&language,4,&language_localised,-1);
|
|
|
|
|
if (strstr(language,key)||strstr(language_localised,key)){
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
|
|
|
|
return 1;
|
|
|
|
|
char *target;
|
|
|
|
|
char *loc_target;
|
|
|
|
|
gtk_tree_model_get(model, iter, 1,&target, 4, &loc_target,-1);
|
|
|
|
|
char *string_utf = g_utf8_casefold(key,-1);
|
|
|
|
|
char *target_utf = g_utf8_casefold(target,-1);
|
|
|
|
|
char *loc_target_utf = g_utf8_casefold(loc_target,-1);
|
|
|
|
|
|
|
|
|
|
char *string_normalized = g_utf8_strdown(g_utf8_normalize(string_utf,-1,G_NORMALIZE_DEFAULT),-1);
|
|
|
|
|
char *target_normalized = g_utf8_strdown(g_utf8_normalize(target_utf,-1,G_NORMALIZE_DEFAULT),-1);
|
|
|
|
|
char *loc_target_normalized = g_utf8_strdown(g_utf8_normalize(loc_target_utf,-1,G_NORMALIZE_DEFAULT),-1);
|
|
|
|
|
|
|
|
|
|
return !(g_str_has_prefix(target_normalized,string_normalized) || g_str_has_prefix(loc_target_normalized,string_normalized));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void set_locales_list(main_window *widgets){
|
|
|
|
|
|