From 100c0af8e5a9a413243499b008421ec23d10836a Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Fri, 6 Jun 2025 03:58:59 +0000 Subject: [PATCH 1/3] Fixed options window --- source/ubl-settings-keyboard.c | 1 + ubl-settings-keyboard-layouts.glade | 1 + 2 files changed, 2 insertions(+) diff --git a/source/ubl-settings-keyboard.c b/source/ubl-settings-keyboard.c index 330f6ab..1d117a3 100644 --- a/source/ubl-settings-keyboard.c +++ b/source/ubl-settings-keyboard.c @@ -258,6 +258,7 @@ void on_options_open(GtkWidget *, main_window *widgets){ window->list = main_config.options_list; gtk_tree_view_set_model(GTK_TREE_VIEW(window->MainTree),GTK_TREE_MODEL(window->list)); dictionary *dict = NULL; + gtk_tree_view_remove_column(GTK_TREE_VIEW(window->MainTree),gtk_tree_view_get_column(GTK_TREE_VIEW(window->MainTree),0)); yon_dictionary_add_or_create_if_exists_with_data(dict,"widgets",widgets); yon_dictionary_add_or_create_if_exists_with_data(dict,"window",window); g_signal_connect(G_OBJECT(window->CancelButton),"clicked",G_CALLBACK(on_subwindow_close),NULL); diff --git a/ubl-settings-keyboard-layouts.glade b/ubl-settings-keyboard-layouts.glade index 5367d74..9e36f22 100644 --- a/ubl-settings-keyboard-layouts.glade +++ b/ubl-settings-keyboard-layouts.glade @@ -98,6 +98,7 @@ 2 + 3 -- 2.35.1 From ff4cc655810157cbe5532f9970673e342112c078 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Fri, 6 Jun 2025 11:31:08 +0000 Subject: [PATCH 2/3] Fixed checkbox saving --- source/ubl-settings-keyboard.c | 22 ++++++++++++++++++++++ ubl-settings-keyboard-layouts.glade | 3 +-- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-keyboard.c b/source/ubl-settings-keyboard.c index 1d117a3..ff78395 100644 --- a/source/ubl-settings-keyboard.c +++ b/source/ubl-settings-keyboard.c @@ -283,6 +283,7 @@ GList *yon_get_all_selected(GtkTreeView *tree, int column){ void on_layouts_accept(GtkWidget *self, dictionary *dict){ main_window *widgets = yon_dictionary_get_data(dict->first,main_window*); layouts_window *window = yon_dictionary_get_data(dict->first->next,layouts_window*); + gtk_list_store_clear(widgets->layoutsList); GtkTreeModel *model = GTK_TREE_MODEL(window->list); GList *list = yon_get_all_selected(GTK_TREE_VIEW(window->MainTree),2); char *name; @@ -320,6 +321,8 @@ void on_layouts_add(GtkWidget *, main_window *widgets){ gtk_tree_view_set_model(GTK_TREE_VIEW(window->MainTree), GTK_TREE_MODEL(window->list)); gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(window->MainTree)),GTK_SELECTION_MULTIPLE); + yon_gtk_window_setup(GTK_WINDOW(window->Window),GTK_WINDOW(widgets->Window),TITLE_LABEL,icon_path,"layout_window"); + 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); @@ -327,6 +330,25 @@ void on_layouts_add(GtkWidget *, main_window *widgets){ g_signal_connect(G_OBJECT(window->CancelButton),"clicked",G_CALLBACK(on_subwindow_close),NULL); g_signal_connect(G_OBJECT(window->AcceptButton),"clicked",G_CALLBACK(on_layouts_accept),dict); g_signal_connect(G_OBJECT(window->ChosenCell),"toggled",G_CALLBACK(on_layouts_chosen),window); + char *languages = config(keyboard_layout_parameter); + int size; + config_str parsed = yon_char_parse(languages,&size,","); + GtkTreeIter iter; + for_iter(window->list,&iter){ + int found = 0; + char *id; + gtk_tree_model_get(GTK_TREE_MODEL(window->list),&iter,0,&id,-1); + for (int i=0;ilist,&iter,2,1,-1); + found=1; + break; + } + } + if (!found) { + gtk_list_store_set(window->list,&iter,2,0,-1); + } + } } void on_layouts_remove(GtkWidget *, main_window *widgets){ diff --git a/ubl-settings-keyboard-layouts.glade b/ubl-settings-keyboard-layouts.glade index 9e36f22..f36fbe5 100644 --- a/ubl-settings-keyboard-layouts.glade +++ b/ubl-settings-keyboard-layouts.glade @@ -1,5 +1,5 @@ - + @@ -98,7 +98,6 @@ 2 - 3 -- 2.35.1 From 307c1494ee4be2c72561761a7d31eb3f4abc0d48 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 9 Jun 2025 10:33:05 +0000 Subject: [PATCH 3/3] Fixed status messages --- source/ubl-settings-keyboard.c | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/source/ubl-settings-keyboard.c b/source/ubl-settings-keyboard.c index ff78395..e160240 100644 --- a/source/ubl-settings-keyboard.c +++ b/source/ubl-settings-keyboard.c @@ -9,53 +9,53 @@ void on_save_done(main_window *, config_str output, int size){ free(final_output); } yon_char_parsed_free(output,size); - textdomain(template_ui_LocaleName); switch (main_config.save_config){ - case 0: - yon_ubl_status_box_render(GLOBAL_SAVE_SUCCESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE); + case YON_CONFIG_GLOBAL: + yon_ubl_status_box_render(yon_char_get_localised_from_lib(GLOBAL_SAVE_SUCCESS_LABEL),BACKGROUND_IMAGE_SUCCESS_TYPE); break; - case 1: - yon_ubl_status_box_render(LOCAL_SAVE_SUCCESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE); + case YON_CONFIG_LOCAL: + yon_ubl_status_box_render(yon_char_get_localised_from_lib(LOCAL_SAVE_SUCCESS_LABEL),BACKGROUND_IMAGE_SUCCESS_TYPE); break; - case 2: - yon_ubl_status_box_render(GLOBAL_LOCAL_SAVE_SUCCESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE); + case YON_CONFIG_BOTH: + yon_ubl_status_box_render(yon_char_get_localised_from_lib(GLOBAL_LOCAL_SAVE_SUCCESS_LABEL),BACKGROUND_IMAGE_SUCCESS_TYPE); break; } - textdomain(LocaleName); } void on_config_global_local_save(GtkWidget *, main_window *){ - main_config.save_config=3; + main_config.save_config=YON_CONFIG_BOTH; yon_save_proceed(NULL,YON_CONFIG_BOTH,config_get_global_command,NULL); } void on_config_local_save(GtkWidget *, main_window *){ - main_config.save_config=1; + main_config.save_config=YON_CONFIG_LOCAL; yon_save_proceed("system",YON_CONFIG_LOCAL,config_get_local_command,NULL); } void on_config_global_save(GtkWidget *, main_window *){ - main_config.save_config=0; + main_config.save_config=YON_CONFIG_GLOBAL; yon_save_proceed("global",YON_CONFIG_GLOBAL,config_get_global_command,NULL); } void on_config_custom_save(GtkWidget *, main_window *){ - main_config.save_config=1; + main_config.save_config=YON_CONFIG_LOCAL; template_saving_window *window = yon_save_proceed(NULL,YON_CONFIG_CUSTOM,yon_config_get_custom_command("system"),NULL); if (window){}; } void on_config_local_load(GtkWidget *,main_window *widgets){ yon_load_proceed(YON_CONFIG_LOCAL); + yon_ubl_status_box_render(yon_char_get_localised_from_lib(LOCAL_LOAD_SUCCESS_LABEL),BACKGROUND_IMAGE_SUCCESS_TYPE); yon_interface_update(widgets); main_config.load_mode=1; } void on_config_global_load(GtkWidget *,main_window *widgets){ yon_load_proceed(YON_CONFIG_GLOBAL); + yon_ubl_status_box_render(yon_char_get_localised_from_lib(GLOBAL_LOAD_SUCCESS_LABEL),BACKGROUND_IMAGE_SUCCESS_TYPE); yon_interface_update(widgets); main_config.load_mode=0; @@ -64,7 +64,7 @@ void on_config_global_load(GtkWidget *,main_window *widgets){ void on_config_custom_load(GtkWidget *,main_window *widgets){ yon_load_proceed(YON_CONFIG_CUSTOM); textdomain(template_ui_LocaleName); - yon_ubl_status_box_render(GLOBAL_LOAD_SUCCESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE); + yon_ubl_status_box_render(yon_char_get_localised_from_lib(LOCAL_LOAD_SUCCESS_LABEL),BACKGROUND_IMAGE_SUCCESS_TYPE); textdomain(LocaleName); main_config.load_mode=3; yon_interface_update(widgets); -- 2.35.1