From f28e706f8e7cb31f1772ffe6431cf8ff9d0470e5 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 26 Aug 2024 17:26:08 +0600 Subject: [PATCH] Fixed languages combo and window --- source/ubinstall-gtk.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 41f4790..694b3b7 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -746,6 +746,11 @@ void on_language_window_accept(GtkWidget *,dictionary *dict){ ubinstall_language_window *window = yon_dictionary_get_data(dict->first->next,ubinstall_language_window*); if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->DefaultCheck))){ gtk_entry_set_text(GTK_ENTRY(widgets->AvailableLanguagesEntry),""); + GtkTreeIter iter; + for_iter(widgets->LanguagesList,&iter){ + gtk_list_store_set(widgets->LanguagesList,&iter,0,0,-1); + } + gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->LanguagesCombo),-1); } else { yon_gtk_list_store_copy_full(widgets->LanguagesList,window->liststore1); gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(widgets->LanguagesFilter)); @@ -761,6 +766,9 @@ void on_language_window_accept(GtkWidget *,dictionary *dict){ } char *final = yon_char_parsed_to_string(parsed,size,"; "); gtk_entry_set_text(GTK_ENTRY(widgets->AvailableLanguagesEntry),!yon_char_is_empty(final)?final:""); + if (yon_char_is_empty(final)) { + gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->LanguagesCombo),-1); + } if (final) free(final); yon_char_parsed_free(parsed,size); } @@ -796,6 +804,10 @@ void on_language_clicked(GtkWidget *, main_window *widgets){ gtk_tree_view_set_model(GTK_TREE_VIEW(window->LanguagesTree),GTK_TREE_MODEL(window->liststore1)); yon_gtk_window_setup(GTK_WINDOW(window->MainWindow),GTK_WINDOW(widgets->MainWindow),TITLE_LABEL,icon_path,"language-chooser-window"); + if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->AvailableLanguagesEntry)))){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->DefaultCheck),1); + } + dictionary *dict=NULL; yon_dictionary_add_or_create_if_exists_with_data(dict,"widgets",widgets); yon_dictionary_add_or_create_if_exists_with_data(dict,"window",window);