From 4e8c4fb552eb27ba5631e691acdc1d7fe1294929 Mon Sep 17 00:00:00 2001 From: Ivan Dmitrievich Yartsev Date: Mon, 27 Apr 2026 13:51:11 +0600 Subject: [PATCH] Translation functions rename; Fixed startup configuration resetting --- source/ubinstall-gtk-saving.c | 2 +- source/ubinstall-gtk-ui-lang.c | 8 ++++---- source/ubinstall-gtk.c | 20 +++++++++++--------- source/ubinstall-gtk.h | 8 +++++--- 4 files changed, 21 insertions(+), 17 deletions(-) diff --git a/source/ubinstall-gtk-saving.c b/source/ubinstall-gtk-saving.c index a8ecb58..b339704 100644 --- a/source/ubinstall-gtk-saving.c +++ b/source/ubinstall-gtk-saving.c @@ -359,7 +359,7 @@ int yon_config_save(main_window *widgets){ } void yon_config_restore(main_window *){ - if (yon_char_is_empty(main_config.config_load_path)) return; + if (yon_char_is_empty(main_config.config_load_path)||!main_config.block_restore) return; char *remove_command = yon_char_unite("ubconfig --source ",main_config.config_load_path," remove [autoinstall]",NULL); yon_launch(yon_debug_output("%s\n",remove_command)); yon_config_custom_apply(&main_config.startup_config); diff --git a/source/ubinstall-gtk-ui-lang.c b/source/ubinstall-gtk-ui-lang.c index 5765abe..031f7bd 100644 --- a/source/ubinstall-gtk-ui-lang.c +++ b/source/ubinstall-gtk-ui-lang.c @@ -114,7 +114,7 @@ void yon_main_window_update_locale(main_window *widgets){ // gtk_widget_destroy(widgets->MainWindow); textdomain(LocaleName); g_setenv("LANGUAGE",(char *)locale,1); - yon_update_translation(widgets); + yon_installer_update_translation(widgets); // yon_main_window_create(widgets); char *path = yon_char_unite(yon_ubl_user_get_home_directory(),"/.config/",LocaleName,"/",LocaleName,".conf",NULL); yon_window_config_setup(GTK_WINDOW(widgets->MainWindow)); @@ -234,7 +234,7 @@ gboolean on_country_filter(GtkTreeModel *self, GtkTreeIter *iter, main_window *w } -void yon_gtk_widget_set_translation(GtkWidget *target){ +void yon_installer_widget_set_translation(GtkWidget *target){ GObject *cur_widget = NULL; char *widget_text = NULL; if (GTK_IS_BUTTON(target)){ @@ -261,7 +261,7 @@ void yon_gtk_widget_set_translation(GtkWidget *target){ g_object_set_data(G_OBJECT(cur_widget),"original_label",(void*)widget_text); } -void yon_translation_init(GtkBuilder *builder){ +void yon_installer_translation_init(GtkBuilder *builder){ GSList *list = gtk_builder_get_objects(builder); GSList *iter; @@ -300,7 +300,7 @@ void yon_translation_init(GtkBuilder *builder){ } } -void yon_update_translation(main_window *widgets){ +void yon_installer_update_translation(main_window *widgets){ GtkBuilder *builder = widgets->builder; GSList *list = gtk_builder_get_objects(builder); list = g_slist_append(list,g_object_get_data(G_OBJECT(widgets->DocumentationMenuItem),"Label")); diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index ad995c2..51bfc3e 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -418,7 +418,7 @@ void yon_main_window_create(main_window *widgets){ __attribute__((unused)) char *locale = setlocale(LC_ALL, "en_US.UTF-8"); GtkBuilder *builder = gtk_builder_new_from_resource(glade_path); yon_scroll_block_for_builder(builder); - yon_translation_init(builder); + yon_installer_translation_init(builder); gtk_builder_add_callback_symbol(builder,"yon_gtk_widget_set_sensitive_from_toggle_button",G_CALLBACK(yon_gtk_widget_set_sensitive_from_toggle_button)); gtk_builder_add_callback_symbol(builder,"on_toggle_button_switch_on",G_CALLBACK(on_toggle_button_switch_on)); // Custom widgets configuration @@ -959,7 +959,7 @@ void yon_main_window_create(main_window *widgets){ { widgets->debug_button = yon_debug_button_new(); GtkWidget *Label = g_object_get_data(G_OBJECT(widgets->debug_button),"Label"); - yon_gtk_widget_set_translation(Label); + yon_installer_widget_set_translation(Label); gtk_style_context_add_class(gtk_widget_get_style_context(widgets->debug_button),"menuitemmiddle"); gtk_style_context_remove_class(gtk_widget_get_style_context(widgets->debug_button),"menuitemtop"); gtk_menu_shell_prepend(GTK_MENU_SHELL(gtk_widget_get_parent(widgets->AboutMenuItem)),widgets->debug_button); @@ -970,7 +970,7 @@ void yon_main_window_create(main_window *widgets){ GtkWidget *Box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL,5); GtkWidget *Label = gtk_label_new(ENABLE_RDP_LABEL); GtkWidget *Check = gtk_check_button_new(); - yon_gtk_widget_set_translation(Label); + yon_installer_widget_set_translation(Label); g_object_set_data(G_OBJECT(widgets->EnableRDPMenuItem),"Label",Label); gtk_box_pack_start(GTK_BOX(Box),Check,0,0,0); gtk_box_pack_start(GTK_BOX(Box),Label,0,0,0); @@ -985,7 +985,7 @@ void yon_main_window_create(main_window *widgets){ GtkWidget *Box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL,5); GtkWidget *Label = gtk_label_new(ENABLE_VNC_LABEL); GtkWidget *Check = gtk_check_button_new(); - yon_gtk_widget_set_translation(Label); + yon_installer_widget_set_translation(Label); g_object_set_data(G_OBJECT(widgets->EnableVNCMenuItem),"Label",Label); gtk_box_pack_start(GTK_BOX(Box),Check,0,0,0); gtk_box_pack_start(GTK_BOX(Box),Label,0,0,0); @@ -999,7 +999,7 @@ void yon_main_window_create(main_window *widgets){ widgets->ConfigurationModeMenuItem = gtk_menu_item_new(); GtkWidget *Box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL,5); GtkWidget *Label = gtk_label_new(CONFIGURATION_MODE_LABEL); - yon_gtk_widget_set_translation(Label); + yon_installer_widget_set_translation(Label); g_object_set_data(G_OBJECT(widgets->ConfigurationModeMenuItem),"Label",Label); widgets->ConfigurationModeCheck = gtk_check_button_new(); gtk_box_pack_start(GTK_BOX(Box),widgets->ConfigurationModeCheck,0,0,0); @@ -1016,7 +1016,7 @@ void yon_main_window_create(main_window *widgets){ { widgets->root_button = yon_root_button_new(main_config.argv,main_config.argc); GtkWidget *Label = g_object_get_data(G_OBJECT(widgets->root_button),"Label"); - yon_gtk_widget_set_translation(Label); + yon_installer_widget_set_translation(Label); gtk_style_context_add_class(gtk_widget_get_style_context(widgets->root_button),"menuitemtop"); gtk_menu_shell_prepend(GTK_MENU_SHELL(gtk_widget_get_parent(widgets->AboutMenuItem)),widgets->root_button); @@ -1027,7 +1027,7 @@ void yon_main_window_create(main_window *widgets){ dictionary *iter = NULL; for_dictionaries (iter,widgets->PackagesMenu->buttons){ - yon_gtk_widget_set_translation(g_object_get_data(G_OBJECT(iter->data),"Label")); + yon_installer_widget_set_translation(g_object_get_data(G_OBJECT(iter->data),"Label")); } yon_startup_language_init(); yon_locale_init(); @@ -1053,13 +1053,13 @@ void yon_main_window_create(main_window *widgets){ gtk_window_set_icon_name(GTK_WINDOW(widgets->MainWindow),icon_path); } gtk_builder_connect_signals(builder,NULL); - if (getuid()){ + if (getuid()&&!main_config.autoinstall){ gtk_menu_item_activate(GTK_MENU_ITEM(widgets->ConfigurationModeMenuItem)); if (yon_char_is_empty(main_config.config_save_path)){ exit (1); } } - if (main_config.force_ini){ + if (main_config.force_ini&&!main_config.autoinstall){ while(gtk_events_pending()) gtk_main_iteration(); if (!yon_configuration_path_check(main_config.config_save_path)){ exit (1); @@ -1115,6 +1115,7 @@ main_window *yon_main_window_complete(){ } int main(int argc, char *argv[]){ + main_config.block_restore=1; config_str unfound = NULL; int size=0; opterr=0; @@ -1163,6 +1164,7 @@ int main(int argc, char *argv[]){ main_config.launch_arguments=yon_char_parsed_copy(argv,argc); main_config.launch_size=argc; + main_config.block_restore=0; gtk_main(); return 0; } \ No newline at end of file diff --git a/source/ubinstall-gtk.h b/source/ubinstall-gtk.h index d5f4b36..a2509e0 100755 --- a/source/ubinstall-gtk.h +++ b/source/ubinstall-gtk.h @@ -501,6 +501,8 @@ typedef struct config_str modules; int modules_size; + int block_restore; + config_str argv; int argc; @@ -1551,8 +1553,8 @@ gboolean yon_progress_bar_start(main_window *widgets); void *yon_progress_file_buzyfy(void *); void yon_startup_language_init(); gboolean on_languages_search_func(GtkTreeModel *model, gint col, const char *key, GtkTreeIter *iter, main_window *widgets); -void yon_update_translation(main_window *widgets); -void yon_translation_init(GtkBuilder *builder); +void yon_installer_update_translation(main_window *widgets); +void yon_installer_translation_init(GtkBuilder *builder); void yon_licence_load(main_window *widgets); void on_network_removed(GtkWidget *, network_info *info); char *yon_bootloader_get_os_name(char *parameter); @@ -1610,7 +1612,7 @@ gboolean yon_advanced_part_save_part(advanced_part_data *data); void yon_advanced_part_remove_for_part(const char *part_name, main_window *widgets); int yon_software_check_packages_size(GtkWidget *, main_window *widgets); void yon_user_admin_check(GtkWidget *self, main_window *widgets); -void yon_gtk_widget_set_translation(GtkWidget *target); +void yon_installer_widget_set_translation(GtkWidget *target); void on_bootloader_user_edit(GtkWidget *, main_window *widgets); void on_bootloader_admin_toggled(GtkWidget *, char *path, main_window *widgets); void on_bootloader_user_remove(GtkWidget *, main_window *widgets);