Merge pull request 'master' (#8) from YanTheKaller/ubl-settings-keyboard:master into master

Reviewed-on: #8
pull/15/head^2
Dmitry Razumov 7 months ago
commit a23146e682

@ -50,13 +50,13 @@ void on_config_custom_save(GtkWidget *, main_window *){
void on_config_local_load(GtkWidget *,main_window *widgets){ void on_config_local_load(GtkWidget *,main_window *widgets){
yon_load_proceed(YON_CONFIG_LOCAL); yon_load_proceed(YON_CONFIG_LOCAL);
g_idle_add((GSourceFunc)yon_interface_update,widgets); yon_interface_update(widgets);
main_config.load_mode=1; main_config.load_mode=1;
} }
void on_config_global_load(GtkWidget *,main_window *widgets){ void on_config_global_load(GtkWidget *,main_window *widgets){
yon_load_proceed(YON_CONFIG_GLOBAL); yon_load_proceed(YON_CONFIG_GLOBAL);
g_idle_add((GSourceFunc)yon_interface_update,widgets); yon_interface_update(widgets);
main_config.load_mode=0; main_config.load_mode=0;
} }
@ -67,7 +67,7 @@ void on_config_custom_load(GtkWidget *,main_window *widgets){
yon_ubl_status_box_render(GLOBAL_LOAD_SUCCESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE); yon_ubl_status_box_render(GLOBAL_LOAD_SUCCESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
textdomain(LocaleName); textdomain(LocaleName);
main_config.load_mode=3; main_config.load_mode=3;
g_idle_add((GSourceFunc)yon_interface_update,widgets); yon_interface_update(widgets);
} }
void yon_load_proceed(YON_CONFIG_TYPE type){ void yon_load_proceed(YON_CONFIG_TYPE type){
@ -75,7 +75,7 @@ void yon_load_proceed(YON_CONFIG_TYPE type){
if (!yon_char_is_empty(config_get_default_command)) if (!yon_char_is_empty(config_get_default_command))
yon_config_load_config(YON_CONFIG_DEFAULT,config_get_default_command,NULL); yon_config_load_config(YON_CONFIG_DEFAULT,config_get_default_command,NULL);
if (type==YON_CONFIG_GLOBAL){ if (type==YON_CONFIG_GLOBAL){
yon_config_load_config(type,config_get_global_command,NULL); yon_config_load_config(type,yon_debug_output("%s\n",config_get_global_command),NULL);
} else if (type==YON_CONFIG_LOCAL){ } else if (type==YON_CONFIG_LOCAL){
yon_config_load_config(type,config_get_local_command,NULL); yon_config_load_config(type,config_get_local_command,NULL);
} else if (type==YON_CONFIG_CUSTOM){ } else if (type==YON_CONFIG_CUSTOM){
@ -106,6 +106,11 @@ void yon_load_proceed(YON_CONFIG_TYPE type){
} }
gboolean yon_interface_update(main_window *widgets){ gboolean yon_interface_update(main_window *widgets){
g_signal_handlers_block_by_func(G_OBJECT(widgets->ModelCombo),G_CALLBACK(on_model_changed),widgets);
g_signal_handlers_block_by_func(G_OBJECT(widgets->MoveDownButton),G_CALLBACK(on_move_down),widgets);
g_signal_handlers_block_by_func(G_OBJECT(widgets->MoveUpButton),G_CALLBACK(on_move_up),widgets);
g_signal_handlers_block_by_func(G_OBJECT(widgets->OptionsButton),G_CALLBACK(on_options_open),widgets);
g_signal_handlers_block_by_func(G_OBJECT(widgets->NumLockCombo),G_CALLBACK(on_num_lock_changed),widgets);
gtk_list_store_clear(widgets->layoutsList); gtk_list_store_clear(widgets->layoutsList);
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ModelCombo),0); gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ModelCombo),0);
@ -125,7 +130,6 @@ gboolean yon_interface_update(main_window *widgets){
} }
} }
} else gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ModelCombo),0); } else gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ModelCombo),0);
free(name);
} }
{ {
char *name = yon_config_get_by_key(options_parameter); char *name = yon_config_get_by_key(options_parameter);
@ -142,7 +146,6 @@ gboolean yon_interface_update(main_window *widgets){
} }
} }
} }
free(name);
} }
{ {
if (main_config.layouts_list){ if (main_config.layouts_list){
@ -156,7 +159,6 @@ gboolean yon_interface_update(main_window *widgets){
else if (!strcmp(name,"no")) gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->NumLockCombo),2); else if (!strcmp(name,"no")) gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->NumLockCombo),2);
} }
else gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->NumLockCombo),0); else gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->NumLockCombo),0);
free(name);
if (main_config.layouts_list){ if (main_config.layouts_list){
int size=0; int size=0;
name = yon_config_get_by_key(keyboard_layout_parameter); name = yon_config_get_by_key(keyboard_layout_parameter);
@ -175,6 +177,12 @@ gboolean yon_interface_update(main_window *widgets){
} }
} }
} }
g_signal_handlers_unblock_by_func(G_OBJECT(widgets->ModelCombo),G_CALLBACK(on_model_changed),widgets);
g_signal_handlers_unblock_by_func(G_OBJECT(widgets->MoveDownButton),G_CALLBACK(on_move_down),widgets);
g_signal_handlers_unblock_by_func(G_OBJECT(widgets->MoveUpButton),G_CALLBACK(on_move_up),widgets);
g_signal_handlers_unblock_by_func(G_OBJECT(widgets->OptionsButton),G_CALLBACK(on_options_open),widgets);
g_signal_handlers_unblock_by_func(G_OBJECT(widgets->NumLockCombo),G_CALLBACK(on_num_lock_changed),widgets);
return G_SOURCE_REMOVE; return G_SOURCE_REMOVE;
} }

Loading…
Cancel
Save