From 32a2df4b590aa605a953ffcf163b90a7d2764dd3 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 9 Sep 2024 09:25:45 +0600 Subject: [PATCH 01/20] Localisation fixes --- ubinstall-gtk_ru.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ubinstall-gtk_ru.po b/ubinstall-gtk_ru.po index fa83994..e687ffe 100644 --- a/ubinstall-gtk_ru.po +++ b/ubinstall-gtk_ru.po @@ -47,7 +47,7 @@ msgstr "Показать версию пакета" #: source/ubl-strings.h:2 msgid "Lock this help menu" -msgstr "Заблокировать эту подсазку" +msgstr "Заблокировать эту подсказку" #: source/ubl-strings.h:2 msgid "Lock configuration saving" -- 2.35.1 From 081eaa73431bae46b04f58788cf870ef25c30cb5 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 9 Sep 2024 10:50:51 +0600 Subject: [PATCH 02/20] Test fix for crash --- source/ubinstall-gtk.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 0bad52b..44115db 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -1781,9 +1781,9 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ if (!main_config.configure_mode){ yon_debug_output("%s\n","Entered saving"); - if (!main_config.install_complete){ - gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION); - } + // if (!main_config.install_complete){ + // gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION); + // } if (gtk_progress_bar_get_fraction(GTK_PROGRESS_BAR(widgets->InstallationProgress))>0.9){ yon_debug_output("%s\n","Entered saving before installation done"); gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION); -- 2.35.1 From 400352e0312d1d8954761db62c3d315a263194be Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 9 Sep 2024 12:06:05 +0600 Subject: [PATCH 03/20] Test fix for crash --- source/ubinstall-gtk.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 44115db..170dc3e 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -1792,8 +1792,8 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ yon_debug_output("%s\n","installation ending configuration startup"); pthread_create(&tid,NULL,on_setup_system_configuration,widgets); } else { - pthread_t tid; - pthread_create(&tid,NULL,on_save_system_configuration,widgets); + // pthread_t tid; + // pthread_create(&tid,NULL,on_save_system_configuration,widgets); yon_debug_output("%s\n","installation process configuration startup"); } main_config.save_done=1; -- 2.35.1 From 42aebe18efec2eaa1f9aa25aefdb982acca20e3c Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 9 Sep 2024 12:18:18 +0600 Subject: [PATCH 04/20] Test removal of saving parameters for tests --- source/ubinstall-gtk.c | 202 ++++++++++++++++++++--------------------- 1 file changed, 101 insertions(+), 101 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 170dc3e..86abd05 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -1672,112 +1672,112 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ case YON_PAGE_USERS:{ //users - if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->UserNameEntry)))||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->UsernameSensitiveCheck))){ - yon_config_remove_by_key(user_gecos_parameter); - } else { - char *username = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->UserNameEntry)); - yon_config_register(user_gecos_parameter,user_gecos_parameter_command,username); - } - - if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->LoginEntry)))||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LoginSensitiveCheck))){ - yon_config_remove_by_key(user_name_parameter); - } else { - char *login = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->LoginEntry)); - yon_config_register(user_name_parameter,user_name_parameter_command,login); - - } - - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->PasswordSensitiveCheck))){ - if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->PasswordCombo))==1){ - if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->PasswordEntry)))){ - yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),EMPTY_IMPORTANT_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - yon_ubl_status_highlight_incorrect(widgets->PasswordEntry); - return; - } else { - char *password = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->PasswordEntry)); + // if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->UserNameEntry)))||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->UsernameSensitiveCheck))){ + // yon_config_remove_by_key(user_gecos_parameter); + // } else { + // char *username = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->UserNameEntry)); + // yon_config_register(user_gecos_parameter,user_gecos_parameter_command,username); + // } + + // if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->LoginEntry)))||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LoginSensitiveCheck))){ + // yon_config_remove_by_key(user_name_parameter); + // } else { + // char *login = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->LoginEntry)); + // yon_config_register(user_name_parameter,user_name_parameter_command,login); + + // } + + // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->PasswordSensitiveCheck))){ + // if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->PasswordCombo))==1){ + // if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->PasswordEntry)))){ + // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),EMPTY_IMPORTANT_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + // yon_ubl_status_highlight_incorrect(widgets->PasswordEntry); + // return; + // } else { + // char *password = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->PasswordEntry)); - yon_config_register(user_password_parameter,user_password_parameter_command,password); + // yon_config_register(user_password_parameter,user_password_parameter_command,password); - } - } else { - yon_config_remove_by_key(user_password_parameter); - } - }else { - yon_config_remove_by_key(user_password_parameter); - - } - - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->RootPasswordSensitiveCheck))){ - if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->AdminPasswordCombo))==1){ - if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->AdminPasswordEntry)))){ - yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),EMPTY_IMPORTANT_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - yon_ubl_status_highlight_incorrect(widgets->AdminPasswordEntry); - return; - } else { - char *root_password = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->AdminPasswordEntry)); - yon_config_register(root_password_parameter,root_password_parameter_command,root_password); + // } + // } else { + // yon_config_remove_by_key(user_password_parameter); + // } + // }else { + // yon_config_remove_by_key(user_password_parameter); + + // } + + // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->RootPasswordSensitiveCheck))){ + // if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->AdminPasswordCombo))==1){ + // if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->AdminPasswordEntry)))){ + // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),EMPTY_IMPORTANT_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + // yon_ubl_status_highlight_incorrect(widgets->AdminPasswordEntry); + // return; + // } else { + // char *root_password = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->AdminPasswordEntry)); + // yon_config_register(root_password_parameter,root_password_parameter_command,root_password); - } - } else { - yon_config_remove_by_key(root_password_parameter); - } - } else { - yon_config_remove_by_key(root_password_parameter); - } - - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->HostnameSensitiveCheck))){ - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutoHostnameCheck))){ - yon_config_register(hostname_parameter,hostname_parameter_command,"auto"); - } else { - if (!yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->HotnameEntry)))){ - char *hostname = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->HotnameEntry)); - yon_config_register(hostname_parameter,hostname_parameter_command,hostname); - - } else { - yon_config_remove_by_key(hostname_parameter); + // } + // } else { + // yon_config_remove_by_key(root_password_parameter); + // } + // } else { + // yon_config_remove_by_key(root_password_parameter); + // } + + // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->HostnameSensitiveCheck))){ + // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutoHostnameCheck))){ + // yon_config_register(hostname_parameter,hostname_parameter_command,"auto"); + // } else { + // if (!yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->HotnameEntry)))){ + // char *hostname = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->HotnameEntry)); + // yon_config_register(hostname_parameter,hostname_parameter_command,hostname); + + // } else { + // yon_config_remove_by_key(hostname_parameter); - } - } - } else { - yon_config_remove_by_key(hostname_parameter); - } + // } + // } + // } else { + // yon_config_remove_by_key(hostname_parameter); + // } - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutologinSensitiveCheck))){ - char *autologin = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutologinCheck))?"yes":"no"; - yon_config_register(autologin_parameter,autologin_parameter_command,autologin); - } else { - yon_config_remove_by_key(autologin_parameter); - } - - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LayoutSensitiveCheck))){ - GtkTreeIter iter; - if (gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->LayoutsFilter),&iter)){ - char *locales=""; - for_iter (GTK_TREE_MODEL(widgets->LayoutsFilter),&iter){ - char *id; - int status; - gtk_tree_model_get(GTK_TREE_MODEL(widgets->LayoutsFilter),&iter,0,&id,3,&status,-1); - if (status){ - char *temp = yon_char_unite(locales,!yon_char_is_empty(locales)?",":"",id,NULL); - locales=temp; - } - } - if (!yon_char_is_empty(locales)){ - yon_config_register(xkblayout_parameter,xkblayout_parameter_command,locales); - } else { - yon_config_remove_by_key(xkblayout_parameter); - } - } - } else { - yon_config_remove_by_key(xkblayout_parameter); - } - - if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->LayoutBindingCombo))&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->OptionsSensitiveCheck))){ - char *options = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->LayoutBindingCombo)); - yon_config_register(xkboptions_parameter,xkboptions_parameter_command,options); - } else { - yon_config_remove_by_key(xkboptions_parameter); - } + // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutologinSensitiveCheck))){ + // char *autologin = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutologinCheck))?"yes":"no"; + // yon_config_register(autologin_parameter,autologin_parameter_command,autologin); + // } else { + // yon_config_remove_by_key(autologin_parameter); + // } + + // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LayoutSensitiveCheck))){ + // GtkTreeIter iter; + // if (gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->LayoutsFilter),&iter)){ + // char *locales=""; + // for_iter (GTK_TREE_MODEL(widgets->LayoutsFilter),&iter){ + // char *id; + // int status; + // gtk_tree_model_get(GTK_TREE_MODEL(widgets->LayoutsFilter),&iter,0,&id,3,&status,-1); + // if (status){ + // char *temp = yon_char_unite(locales,!yon_char_is_empty(locales)?",":"",id,NULL); + // locales=temp; + // } + // } + // if (!yon_char_is_empty(locales)){ + // yon_config_register(xkblayout_parameter,xkblayout_parameter_command,locales); + // } else { + // yon_config_remove_by_key(xkblayout_parameter); + // } + // } + // } else { + // yon_config_remove_by_key(xkblayout_parameter); + // } + + // if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->LayoutBindingCombo))&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->OptionsSensitiveCheck))){ + // char *options = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->LayoutBindingCombo)); + // yon_config_register(xkboptions_parameter,xkboptions_parameter_command,options); + // } else { + // yon_config_remove_by_key(xkboptions_parameter); + // } if (!main_config.configure_mode){ yon_debug_output("%s\n","Entered saving"); -- 2.35.1 From 9193aba2c46042d5c239ce1916a4da59cc0ac8d6 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 9 Sep 2024 14:40:34 +0600 Subject: [PATCH 05/20] Test removal of saving parameters for tests --- source/ubinstall-gtk.c | 362 ++++++++++++++++++++--------------------- 1 file changed, 181 insertions(+), 181 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 86abd05..ddebd1f 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -1443,84 +1443,84 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ } }break; case YON_PAGE_REGION:{ //region - gtk_widget_set_sensitive(widgets->BackButton,1); - if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->RegionCombo))==-1){ - yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),REGION_EMPTY_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - yon_ubl_status_highlight_incorrect(widgets->RegionCombo); - return; - } else if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->ZoneCombo))==-1){ - yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),ZONE_EMPTY_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - yon_ubl_status_highlight_incorrect(widgets->ZoneCombo); - return; - } - char *languages = ""; - GtkTreeIter iter; - GtkTreeModel *model = GTK_TREE_MODEL(widgets->LanguagesFilter); - char *lang_code=NULL; - for_iter(model,&iter){ - gtk_tree_model_get(model,&iter,2,&lang_code,-1); - languages = yon_char_unite(languages,!yon_char_is_empty(languages)?",":"",lang_code,NULL); - } - if (yon_char_is_empty(languages)||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->MainLanguageSensitiveCheck))){ - yon_config_remove_by_key(locale_parameter); - } else { - yon_config_register(locale_parameter,locale_parameter_command,languages); - free(languages); - } - if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->LanguagesCombo))==-1||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LanguagesSensitiveCheck))){ - yon_config_remove_by_key(lang_parameter); - } else { - char *language = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->LanguagesCombo)); - yon_config_register(lang_parameter,lang_parameter_command,language); - } - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->RegionSensitiveCheck))){ - char *region = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->RegionCombo)); - char *zone = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->ZoneCombo)); - yon_debug_output("%s",region); - yon_debug_output("/%s\n\n",zone); - yon_config_register(zone_parameter,zone_parameter_command,yon_char_unite(region,"/",zone,NULL)); - } else { - yon_config_remove_by_key(zone_parameter); - } + // gtk_widget_set_sensitive(widgets->BackButton,1); + // if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->RegionCombo))==-1){ + // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),REGION_EMPTY_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + // yon_ubl_status_highlight_incorrect(widgets->RegionCombo); + // return; + // } else if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->ZoneCombo))==-1){ + // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),ZONE_EMPTY_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + // yon_ubl_status_highlight_incorrect(widgets->ZoneCombo); + // return; + // } + // char *languages = ""; + // GtkTreeIter iter; + // GtkTreeModel *model = GTK_TREE_MODEL(widgets->LanguagesFilter); + // char *lang_code=NULL; + // for_iter(model,&iter){ + // gtk_tree_model_get(model,&iter,2,&lang_code,-1); + // languages = yon_char_unite(languages,!yon_char_is_empty(languages)?",":"",lang_code,NULL); + // } + // if (yon_char_is_empty(languages)||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->MainLanguageSensitiveCheck))){ + // yon_config_remove_by_key(locale_parameter); + // } else { + // yon_config_register(locale_parameter,locale_parameter_command,languages); + // free(languages); + // } + // if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->LanguagesCombo))==-1||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LanguagesSensitiveCheck))){ + // yon_config_remove_by_key(lang_parameter); + // } else { + // char *language = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->LanguagesCombo)); + // yon_config_register(lang_parameter,lang_parameter_command,language); + // } + // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->RegionSensitiveCheck))){ + // char *region = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->RegionCombo)); + // char *zone = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->ZoneCombo)); + // yon_debug_output("%s",region); + // yon_debug_output("/%s\n\n",zone); + // yon_config_register(zone_parameter,zone_parameter_command,yon_char_unite(region,"/",zone,NULL)); + // } else { + // yon_config_remove_by_key(zone_parameter); + // } gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),page+1); }break; case YON_PAGE_KEYBOARD: { //keyboard - gtk_widget_set_sensitive(widgets->BackButton,1); - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->ManualLayoutRadio))){ - GtkTreeIter iter; - if (!gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->LayoutList),&iter)){ - yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),LAYOUTS_CHOSEN_BUT_EMPTY_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - yon_ubl_status_highlight_incorrect(widgets->ManualLayoutRadio); - yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->LayoutTree)); - } - } - char *layouts_list=""; - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->ManualLayoutRadio))&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LayoutSensitiveCheck))){ - GtkTreeModel *layouts_model=GTK_TREE_MODEL(widgets->LayoutList); - GtkTreeIter iter; - char *cur_layout=NULL; - for_iter(layouts_model,&iter){ - int chosen=0; - gtk_tree_model_get(layouts_model,&iter,0,&cur_layout,3,&chosen,-1); - if (chosen) - layouts_list = yon_char_unite(layouts_list,yon_char_is_empty(layouts_list)?"":",",cur_layout,NULL); - } - } else { - yon_config_remove_by_key(xkblayout_parameter); - } - if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->KeyboardModelCombo))&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->KeyboardModelSensitiveCheck))){ - char *model = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->KeyboardModelCombo)); - // char *layout_switch; - if (!yon_char_is_empty(model)) - yon_config_register(xkbmodel_parameter,xkbmodel_parameter_command,model); - } else{ - yon_config_remove_by_key(xkbmodel_parameter); - } - if (yon_char_is_empty(layouts_list)&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LayoutSensitiveCheck))) - yon_config_register(xkblayout_parameter,xkblayout_parameter_command,layouts_list); - else - yon_config_remove_by_key(xkblayout_parameter); + // gtk_widget_set_sensitive(widgets->BackButton,1); + // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->ManualLayoutRadio))){ + // GtkTreeIter iter; + // if (!gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->LayoutList),&iter)){ + // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),LAYOUTS_CHOSEN_BUT_EMPTY_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + // yon_ubl_status_highlight_incorrect(widgets->ManualLayoutRadio); + // yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->LayoutTree)); + // } + // } + // char *layouts_list=""; + // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->ManualLayoutRadio))&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LayoutSensitiveCheck))){ + // GtkTreeModel *layouts_model=GTK_TREE_MODEL(widgets->LayoutList); + // GtkTreeIter iter; + // char *cur_layout=NULL; + // for_iter(layouts_model,&iter){ + // int chosen=0; + // gtk_tree_model_get(layouts_model,&iter,0,&cur_layout,3,&chosen,-1); + // if (chosen) + // layouts_list = yon_char_unite(layouts_list,yon_char_is_empty(layouts_list)?"":",",cur_layout,NULL); + // } + // } else { + // yon_config_remove_by_key(xkblayout_parameter); + // } + // if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->KeyboardModelCombo))&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->KeyboardModelSensitiveCheck))){ + // char *model = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->KeyboardModelCombo)); + // // char *layout_switch; + // if (!yon_char_is_empty(model)) + // yon_config_register(xkbmodel_parameter,xkbmodel_parameter_command,model); + // } else{ + // yon_config_remove_by_key(xkbmodel_parameter); + // } + // if (yon_char_is_empty(layouts_list)&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LayoutSensitiveCheck))) + // yon_config_register(xkblayout_parameter,xkblayout_parameter_command,layouts_list); + // else + // yon_config_remove_by_key(xkblayout_parameter); gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),page+1); } break; @@ -1829,116 +1829,116 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ return; break; - case YON_PAGE_INSTALL_OPTIONS: { - int mode = -1; - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->GrubInstallRadio))){ - mode = 0; - } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->GrubUpdateRadio))){ - mode = 1; - } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->SeparateRadio))){ - mode = 2; - } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->OSRadio))){ - mode = 3; - } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->UserDataOnlyRadio))){ - mode = 4; - } - switch(mode){ - case 0: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_GRUB_INSTALL); - break; - case 1: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_GRUB_UPDATE); - break; - case 2: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_SEPARATE); - break; - case 3: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_OS_ONLY); - break; - case 4: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_USRDATA_ONLY); - break; - } - } break; - - case YON_PAGE_OPTIONS_GRUB_INSTALL:{ - GtkTreeIter iter; - GtkTreeModel *model; - if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubInstallDevicesTree)),&model,&iter)){ - char *cur_device; - gtk_tree_model_get(model,&iter,0,&cur_device,-1); - yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device); - yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_install"); - yon_config_remove_by_key(part_parameter); - if (!main_config.configure_mode) - gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); - else - gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION); - } else { - yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - yon_ubl_status_highlight_incorrect(widgets->GrubInstallDevicesTree); - } - } break; - - case YON_PAGE_OPTIONS_GRUB_UPDATE:{ - GtkTreeIter iter; - GtkTreeModel *model; - if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubUpdateDevicesTree)),&model,&iter)){ - char *cur_device; - gtk_tree_model_get(model,&iter,0,&cur_device,-1); - yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device); - yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_update"); - yon_config_remove_by_key(part_parameter); - if (!main_config.configure_mode) - gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); - else - gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION); - } else { - yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - yon_ubl_status_highlight_incorrect(widgets->GrubUpdateDevicesTree); - } - }break; - - case YON_PAGE_OPTIONS_SEPARATE:{ - GtkTreeModel *model; - GtkTreeIter iter; - if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateSysSectionTree)),&model,&iter)){ - yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->SeparateSysSectionTree)); - return; - } - gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_SEPARATE_USRDATA); - }break; - - case YON_PAGE_OPTIONS_SEPARATE_USRDATA:{ - GtkTreeIter iter,itar; - GtkTreeModel *model,*model2; - if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateDevicesTree)),&model,&iter)){ - if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateSysSectionTree)),&model2,&itar)){ - char *cur_device, *system_section, *user_section; - gtk_tree_model_get(model,&iter,0,&cur_device,-1); - gtk_tree_model_get(model2,&itar,0,&system_section,-1); - if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateUserSysSectionTree)),&model2,&itar)){ - gtk_tree_model_get(model2,&itar,0,&user_section,-1); - yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device); - yon_config_register(part_parameter,part_parameter_command,yon_char_unite(system_section,",",user_section,NULL)); - yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"custom"); - gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); - return; - } else { - - } - } else { - - } - } else { - - } + // case YON_PAGE_INSTALL_OPTIONS: { + // int mode = -1; + // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->GrubInstallRadio))){ + // mode = 0; + // } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->GrubUpdateRadio))){ + // mode = 1; + // } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->SeparateRadio))){ + // mode = 2; + // } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->OSRadio))){ + // mode = 3; + // } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->UserDataOnlyRadio))){ + // mode = 4; + // } + // switch(mode){ + // case 0: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_GRUB_INSTALL); + // break; + // case 1: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_GRUB_UPDATE); + // break; + // case 2: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_SEPARATE); + // break; + // case 3: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_OS_ONLY); + // break; + // case 4: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_USRDATA_ONLY); + // break; + // } + // } break; + + // case YON_PAGE_OPTIONS_GRUB_INSTALL:{ + // GtkTreeIter iter; + // GtkTreeModel *model; + // if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubInstallDevicesTree)),&model,&iter)){ + // char *cur_device; + // gtk_tree_model_get(model,&iter,0,&cur_device,-1); + // yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device); + // yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_install"); + // yon_config_remove_by_key(part_parameter); + // if (!main_config.configure_mode) + // gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); + // else + // gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION); + // } else { + // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + // yon_ubl_status_highlight_incorrect(widgets->GrubInstallDevicesTree); + // } + // } break; + + // case YON_PAGE_OPTIONS_GRUB_UPDATE:{ + // GtkTreeIter iter; + // GtkTreeModel *model; + // if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubUpdateDevicesTree)),&model,&iter)){ + // char *cur_device; + // gtk_tree_model_get(model,&iter,0,&cur_device,-1); + // yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device); + // yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_update"); + // yon_config_remove_by_key(part_parameter); + // if (!main_config.configure_mode) + // gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); + // else + // gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION); + // } else { + // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + // yon_ubl_status_highlight_incorrect(widgets->GrubUpdateDevicesTree); + // } + // }break; + + // case YON_PAGE_OPTIONS_SEPARATE:{ + // GtkTreeModel *model; + // GtkTreeIter iter; + // if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateSysSectionTree)),&model,&iter)){ + // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + // yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->SeparateSysSectionTree)); + // return; + // } + // gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_SEPARATE_USRDATA); + // }break; + + // case YON_PAGE_OPTIONS_SEPARATE_USRDATA:{ + // GtkTreeIter iter,itar; + // GtkTreeModel *model,*model2; + // if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateDevicesTree)),&model,&iter)){ + // if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateSysSectionTree)),&model2,&itar)){ + // char *cur_device, *system_section, *user_section; + // gtk_tree_model_get(model,&iter,0,&cur_device,-1); + // gtk_tree_model_get(model2,&itar,0,&system_section,-1); + // if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateUserSysSectionTree)),&model2,&itar)){ + // gtk_tree_model_get(model2,&itar,0,&user_section,-1); + // yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device); + // yon_config_register(part_parameter,part_parameter_command,yon_char_unite(system_section,",",user_section,NULL)); + // yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"custom"); + // gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); + // return; + // } else { + + // } + // } else { + + // } + // } else { + + // } - } break; + // } break; - case YON_PAGE_OPTIONS_OS_ONLY:{ - yon_install_options_save(widgets->OSDevicesTree,widgets->OSSysSectionTree,"system_only",widgets); - } break; + // case YON_PAGE_OPTIONS_OS_ONLY:{ + // yon_install_options_save(widgets->OSDevicesTree,widgets->OSSysSectionTree,"system_only",widgets); + // } break; - case YON_PAGE_OPTIONS_USRDATA_ONLY:{ - yon_install_options_save(widgets->UserdataDevicesTree,widgets->UserdataSysSectionTree,"data_only",widgets); - } break; + // case YON_PAGE_OPTIONS_USRDATA_ONLY:{ + // yon_install_options_save(widgets->UserdataDevicesTree,widgets->UserdataSysSectionTree,"data_only",widgets); + // } break; } } break; case -1: { // Previous -- 2.35.1 From 2bebe565584ab141d681f95b2c7c1e77bcf8a753 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 9 Sep 2024 15:57:51 +0600 Subject: [PATCH 06/20] Test removal of saving parameters for tests --- source/ubinstall-gtk.c | 124 ++++++++++++++++++++--------------------- 1 file changed, 62 insertions(+), 62 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index ddebd1f..c26944b 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -90,25 +90,25 @@ void _yon_saving_threaded(char *final_command){ file_return = yon_char_parsed_append(file_return,&file_save,final_command); char *result = yon_char_parsed_to_string(file_return,file_save,""); yon_debug_output("%s\n",result); - yon_char_parsed_free(file_return,file_save); - free(result); + // yon_char_parsed_free(file_return,file_save); + // free(result); } char *yon_save_command_prepare(char *command, char *target){ int size; config_str parsed = yon_char_parse(command,&size," "); - free(parsed[2]); + // free(parsed[2]); parsed[2]=yon_char_new(target); - free(parsed[3]); + // free(parsed[3]); parsed[3]=yon_char_new("set"); for (int i=5;iAvailableLanguagesEntry),chosen_langs); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->LanguagesSensitiveCheck),1); - free(chosen_langs); + // free(chosen_langs); } else { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->LanguagesSensitiveCheck),0); gtk_entry_set_text(GTK_ENTRY(widgets->AvailableLanguagesEntry),""); @@ -362,9 +362,9 @@ void yon_interface_update(main_window *widgets){ } else { gtk_list_store_set(widgets->LanguagesList,&iter,0,0,-1); } - if (cur) free(cur); + // if (cur) free(cur); } - if (langsize) yon_char_parsed_free(lang,langsize); + // if (langsize) yon_char_parsed_free(lang,langsize); // gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(widgets->LanguagesFilter)); } @@ -595,14 +595,14 @@ void on_config_custom_save(GtkWidget *, main_window *widgets){ } } path = yon_char_unite("'",file,"'",NULL); - free(file); + // free(file); gtk_widget_destroy(dialog); } else { gtk_widget_destroy(dialog); return; } yon_save_proceed(path,YON_CONFIG_CUSTOM); - if (path) free(path); + // if (path) free(path); gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_COMPLETED); } @@ -767,7 +767,7 @@ void on_language_window_accept(GtkWidget *,dictionary *dict){ if (yon_char_parsed_check_exist(lang_parsed,size,code)!=-1){ gtk_list_store_set(widgets->LanguagesList,&iter,0,1,-1); char *tmp = yon_char_unite(final,!yon_char_is_empty(final)?";":"",labl,NULL); - if (!yon_char_is_empty(final)) free(final); + // if (!yon_char_is_empty(final)) free(final); final = tmp; } else gtk_list_store_set(widgets->LanguagesList,&iter,0,0,-1); @@ -796,8 +796,8 @@ void on_language_window_accept(GtkWidget *,dictionary *dict){ 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); + // if (final) free(final); + // yon_char_parsed_free(parsed,size); } else gtk_entry_set_text(GTK_ENTRY(widgets->AvailableLanguagesEntry),""); @@ -993,13 +993,13 @@ void *on_config_save(void *data){ if (file) fclose(file); char *command = save_config_command(yon_char_parsed_to_string(parameters,size," ")); - yon_char_parsed_free(parameters,size); + // yon_char_parsed_free(parameters,size); yon_debug_output("%s\n","Entered installation"); if (system(yon_debug_output("%s\n",command))){ yon_debug_output("%s\n","Entered installation failed"); g_thread_new("success func",(GThreadFunc)on_install_error,widgets); - free(command); + // free(command); main_config.config_save_thread=NULL; main_config.install_thread=0; main_config.install_complete=1; @@ -1008,7 +1008,7 @@ void *on_config_save(void *data){ return 0; }; yon_debug_output("%s\n","Entered installation success"); - free(command); + // free(command); main_config.install_thread=0; main_config.install_complete=1; yon_debug_output("Install set to: %s\n",yon_char_from_int(main_config.install_complete)); @@ -1055,13 +1055,13 @@ gboolean yon_installation_progress_update(void *data) { gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(widgets->PackageInstallationProgress), fraction); gtk_label_set_text(GTK_LABEL(widgets->PackageInstallationLabel), yon_char_parsed_to_string(parsed, size, " ")); } - yon_char_parsed_free(parsed, size); + // yon_char_parsed_free(parsed, size); } - free(current_copy); - free(percentage); + // free(current_copy); + // free(percentage); } - yon_char_parsed_free(text, size); + // yon_char_parsed_free(text, size); } if (main_config.install_thread) { @@ -1252,9 +1252,9 @@ void *on_setup_system_configuration(void * data){ char *parameter_string = yon_char_parsed_to_string(all_parameters,size," "); char *command = set_user_config_command(parameter_string); if (system(yon_debug_output("%s\n",command))){}; - yon_char_parsed_free(all_parameters,size); - free(command); - if (parameter_string) free(parameter_string); + // yon_char_parsed_free(all_parameters,size); + // free(command); + // if (parameter_string) free(parameter_string); } g_thread_new("success func",(GThreadFunc)on_install_success,widgets); return NULL; @@ -1268,7 +1268,7 @@ void on_log_closed(GtkWidget *, dictionary *dict){ gtk_widget_set_sensitive(widgets->ReadFullLogButton,1); gtk_widget_set_sensitive(widgets->ReadShortLogButton,1); - free(window->command); + // free(window->command); window->Window=NULL; } @@ -1296,9 +1296,9 @@ void *on_save_system_configuration(void * data){ char *parameter_string = yon_char_parsed_to_string(all_parameters,size," "); char *command = save_additional_config_command(parameter_string); if (system(yon_debug_output("%s\n",command))){}; - yon_char_parsed_free(all_parameters,size); - free(command); - if (parameter_string) free(parameter_string); + // yon_char_parsed_free(all_parameters,size); + // free(command); + // if (parameter_string) free(parameter_string); } return NULL; } @@ -1332,8 +1332,8 @@ gboolean yon_read_log(void *data){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->ScrollToEndCheck))){ gtk_adjustment_set_value(gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(window->ScrollWindow)),gtk_adjustment_get_upper(gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(window->ScrollWindow)))); } - free(final); - yon_char_parsed_free(parsed,size); + // free(final); + // yon_char_parsed_free(parsed,size); } yon_debug_output("%s\n","Log read"); if (!main_config.install_complete){ @@ -1387,8 +1387,8 @@ void yon_install_options_save(GtkWidget *device_tree, GtkWidget *part_tree,char yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,mode); yon_config_register(part_parameter,part_parameter_command,cur_section); - if(cur_section) free(cur_section); - if(cur_device) free(cur_device); + // if(cur_section) free(cur_section); + // if(cur_device) free(cur_device); if (!main_config.configure_mode) gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); else @@ -2012,10 +2012,10 @@ void on_region_changed(GtkComboBox *self, main_window *widgets){ for (int i=0;iZoneCombo),parsed[i],_(parsed[i])); } - if (size) yon_char_parsed_free(parsed,size); + // if (size) yon_char_parsed_free(parsed,size); gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ZoneCombo),0); } - free(active); + // free(active); } void on_locale_changed(GtkWidget *,main_window *); @@ -2204,7 +2204,7 @@ void on_near_installation_device_changed(GtkWidget *self, main_window *widgets){ gtk_list_store_append(widgets->PartitionsList,&iter); gtk_list_store_set(widgets->PartitionsList,&iter,0,json_object_get_string(path),1,json_object_get_string(size),2,free_space_string,3,json_object_get_string(fstype),-1); } - yon_char_parsed_free(parsed,size); + // yon_char_parsed_free(parsed,size); } } @@ -2243,7 +2243,7 @@ void on_same_installation_device_changed(GtkWidget *, main_window *widgets){ gtk_list_store_append(widgets->PartitionsList,&iter); gtk_list_store_set(widgets->PartitionsList,&iter,0,json_object_get_string(path),1,json_object_get_string(model),2,json_object_get_string(serial),3,json_object_get_string(size),4,json_object_get_string(vendor),-1); } - yon_char_parsed_free(parsed,size); + // yon_char_parsed_free(parsed,size); } } @@ -2263,9 +2263,9 @@ void on_exit_accepted(GtkWidget *,dictionary *dict){ } main_config.exit_accepted=1; g_signal_emit_by_name(G_OBJECT(widgets->MainWindow),"delete-event",widgets->MainWindow,NULL); - free(window); - yon_dictionary_free_all(dict,NULL); - free(dict); + // free(window); + // yon_dictionary_free_all(dict,NULL); + // free(dict); gtk_widget_destroy(widgets->MainWindow); } @@ -2552,8 +2552,8 @@ main_window *yon_main_window_complete(){ if (size){ char *licence = yon_char_parsed_to_string(parsed,size,""); gtk_label_set_text(GTK_LABEL(widgets->LicenceLabel),licence); - free(licence); - yon_char_parsed_free(parsed,size); + // free(licence); + // yon_char_parsed_free(parsed,size); } config_str slides = yon_char_parsed_new(&size,slide_repeat_path); @@ -2564,7 +2564,7 @@ main_window *yon_main_window_complete(){ for (int i=1;islides_original[i] = gdk_pixbuf_new_from_resource(slides[i-1],NULL); } - yon_char_parsed_free(slides,size); + // yon_char_parsed_free(slides,size); int width = gdk_pixbuf_get_width(widgets->regions_original); int height = gdk_pixbuf_get_height(widgets->regions_original); widgets->region_height_mult = (float)height/width; @@ -2592,11 +2592,11 @@ main_window *yon_main_window_complete(){ gtk_list_store_append(widgets->LanguagesList,&iter); gtk_list_store_set(widgets->LanguagesList,&iter,0,0,1,_(cur[1]),2,cur[0],-1); } - yon_char_parsed_free(cur,cur_size); + // yon_char_parsed_free(cur,cur_size); } - yon_char_parsed_free(parsed,size); + // yon_char_parsed_free(parsed,size); if (lang) - yon_char_parsed_free(lang,langsize); + // yon_char_parsed_free(lang,langsize); parsed = yon_dir_get_contents(zone_path,&size); for (int i=0;iRegionCombo),parsed[i],_(parsed[i])); } - free(path); + // free(path); } } gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->RegionCombo),0); - yon_char_parsed_free(parsed,size); + // yon_char_parsed_free(parsed,size); parsed = yon_config_load(get_layouts_command,&size); GtkTreeIter itar; for (int i=0;iLayoutList,&iter,NULL); gtk_tree_store_set(widgets->LayoutList,&iter,0,layout[0],1,_(layout[1]),2,1,-1); - yon_char_parsed_free(layout,layout_size); + // yon_char_parsed_free(layout,layout_size); char *command = get_layouts_local_command(layout_id); config_str layout_local = yon_config_load(command,&layout_size); - free(command); - free(layout_id); + // free(command); + // free(layout_id); for (int j=0;jLayoutList,&itar,&iter); gtk_tree_store_set(widgets->LayoutList,&itar,0,layouts_parsed[0],1,_(layouts_parsed[1]),2,1,3,0,-1); - yon_char_parsed_free(layouts_parsed,parsed_size); + // yon_char_parsed_free(layouts_parsed,parsed_size); } } if (layout_size==-1) { gtk_tree_store_set(widgets->LayoutList,&iter,2,1,-1); } - yon_char_parsed_free(layout_local,layout_size); + // yon_char_parsed_free(layout_local,layout_size); } } - yon_char_parsed_free(parsed,size); + // yon_char_parsed_free(parsed,size); { parsed = yon_config_load(get_devices_command,&size); char *string = yon_char_parsed_to_string(parsed,size,""); struct json_object *root; struct json_object *blockdevices; root = json_tokener_parse(string); - free(string); + // free(string); json_object_object_get_ex(root, "blockdevices", &blockdevices); for (long unsigned int i = 0; i < json_object_array_length(blockdevices); i++) { struct json_object *device = json_object_array_get_idx(blockdevices, i); @@ -2664,7 +2664,7 @@ main_window *yon_main_window_complete(){ gtk_list_store_set(widgets->DevicesList,&iter,0,json_object_get_string(path),1,json_object_get_string(model),2,json_object_get_string(serial),3,json_object_get_string(size),4,json_object_get_string(vendor),-1); } - yon_char_parsed_free(parsed,size); + // yon_char_parsed_free(parsed,size); } parsed = yon_resource_open_file(additional_software_path,&size); @@ -2674,10 +2674,10 @@ main_window *yon_main_window_complete(){ if (module_size){ gtk_list_store_append(widgets->AdditionalSoftwareList,&iter); gtk_list_store_set(widgets->AdditionalSoftwareList,&iter,0,1,1,module_parsed[0],3,module_parsed[1],-1); //2,module_parsed[2] - yon_char_parsed_free(module_parsed,module_size); + // yon_char_parsed_free(module_parsed,module_size); } } - if (size) yon_char_parsed_free(parsed,size); + // if (size) yon_char_parsed_free(parsed,size); config_str models = yon_config_load(get_models_command,&size); for (int i=0;iKeyboardModelCombo),models[i],_(models[i+1])); } - if (size) yon_char_parsed_free(models,size); + // if (size) yon_char_parsed_free(models,size); gtk_builder_connect_signals(builder,NULL); yon_load_proceed(YON_CONFIG_DEFAULT); yon_interface_update(widgets); @@ -2776,12 +2776,12 @@ int main(int argc, char *argv[]){ yon_window_config_setup(GTK_WINDOW(widgets->MainWindow)); char *window_config_path = config_path; yon_window_config_load(window_config_path); - free(window_config_path); + // free(window_config_path); GtkCssProvider *css=gtk_css_provider_new(); gtk_css_provider_load_from_resource(css,CssPath); gtk_style_context_add_provider_for_screen(gdk_screen_get_default(), GTK_STYLE_PROVIDER(css), -1); gtk_main(); - free(widgets); + // free(widgets); } \ No newline at end of file -- 2.35.1 From cac13237d2c840d102ccc384347d6f9a8212fc13 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 9 Sep 2024 16:03:40 +0600 Subject: [PATCH 07/20] Test removal of saving parameters for tests --- source/ubinstall-gtk.c | 1 + 1 file changed, 1 insertion(+) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index c26944b..6262fbb 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -2266,6 +2266,7 @@ void on_exit_accepted(GtkWidget *,dictionary *dict){ // free(window); // yon_dictionary_free_all(dict,NULL); // free(dict); + if (window){}; gtk_widget_destroy(widgets->MainWindow); } -- 2.35.1 From d947a402cb2eceda74c4353bec699972ed2fd59c Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 9 Sep 2024 17:26:59 +0600 Subject: [PATCH 08/20] Test removal of saving parameters for tests --- source/ubinstall-gtk.c | 82 +++++++++++++++++++++--------------------- 1 file changed, 41 insertions(+), 41 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 6262fbb..7f047dd 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -904,26 +904,26 @@ int cur_slide=0; int yon_image_resize_from_container(GtkImage *target, GdkPixbuf *pixbuf_unscaled); int yon_image_resize_from_container(GtkImage *target, GdkPixbuf *pixbuf_unscaled) { - int width = gtk_widget_get_allocated_width((gtk_widget_get_parent(GTK_WIDGET(target)))); - int height = gtk_widget_get_allocated_height((gtk_widget_get_parent(GTK_WIDGET(target)))); + // int width = gtk_widget_get_allocated_width((gtk_widget_get_parent(GTK_WIDGET(target)))); + // int height = gtk_widget_get_allocated_height((gtk_widget_get_parent(GTK_WIDGET(target)))); - int newImgWidthDef = (width <= 217) ? width : width - 30; - int newImgHeightDef = (height <= 120) ? height : height - 80; + // int newImgWidthDef = (width <= 217) ? width : width - 30; + // int newImgHeightDef = (height <= 120) ? height : height - 80; - int originalWidth = gdk_pixbuf_get_width(pixbuf_unscaled); - int originalHeight = gdk_pixbuf_get_height(pixbuf_unscaled); - int newImgHeight = (int)(originalHeight / ((double) originalWidth / newImgWidthDef)); + // int originalWidth = gdk_pixbuf_get_width(pixbuf_unscaled); + // int originalHeight = gdk_pixbuf_get_height(pixbuf_unscaled); + // int newImgHeight = (int)(originalHeight / ((double) originalWidth / newImgWidthDef)); - if (newImgHeight > newImgHeightDef) { - newImgHeight = newImgHeightDef; - newImgWidthDef = (int)(originalWidth / ((double) originalHeight / newImgHeight)); - } - int newImageWidth = (int)(originalWidth / ((double) originalHeight / newImgHeight)); + // if (newImgHeight > newImgHeightDef) { + // newImgHeight = newImgHeightDef; + // newImgWidthDef = (int)(originalWidth / ((double) originalHeight / newImgHeight)); + // } + // int newImageWidth = (int)(originalWidth / ((double) originalHeight / newImgHeight)); - GdkPixbuf *scaledPixBuf = gdk_pixbuf_scale_simple(pixbuf_unscaled, newImageWidth, newImgHeight, GDK_INTERP_BILINEAR); - gtk_image_set_from_pixbuf(target, scaledPixBuf); + // GdkPixbuf *scaledPixBuf = gdk_pixbuf_scale_simple(pixbuf_unscaled, newImageWidth, newImgHeight, GDK_INTERP_BILINEAR); + // gtk_image_set_from_pixbuf(target, scaledPixBuf); - g_object_unref(scaledPixBuf); + // g_object_unref(scaledPixBuf); return 1; } @@ -1531,30 +1531,30 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ }break; case YON_PAGE_INSTALL_COMMON: { - GtkTreeModel *model; - GtkTreeIter iter; - if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->CommonInstallationDevicesTree)),&model,&iter)){ - yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->CommonInstallationDevicesTree)); - return; - } - char *file_system_type = (char*)gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(widgets->CommonInstallationFilesystemTypeCombo)); - char *device_name = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->CommonInstallationSectionNameEntry)); - char *device; - yon_config_remove_by_key(part_parameter); - gtk_tree_model_get(model,&iter,0,&device,-1); - yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"fast"); - yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,device); - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->CommonSectionSensitiveCheck))){ - yon_config_register(device_label_parameter,device_label_parameter_command,device_name); - } else { - yon_config_remove_by_key(device_label_parameter); - } - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->CommonFilesystemSensitiveCheck))){ - yon_config_register(part_type_parameter,part_type_parameter_command,file_system_type); - } else { - yon_config_remove_by_key(part_type_parameter); - } + // GtkTreeModel *model; + // GtkTreeIter iter; + // if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->CommonInstallationDevicesTree)),&model,&iter)){ + // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + // yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->CommonInstallationDevicesTree)); + // return; + // } + // char *file_system_type = (char*)gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(widgets->CommonInstallationFilesystemTypeCombo)); + // char *device_name = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->CommonInstallationSectionNameEntry)); + // char *device; + // yon_config_remove_by_key(part_parameter); + // gtk_tree_model_get(model,&iter,0,&device,-1); + // yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"fast"); + // yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,device); + // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->CommonSectionSensitiveCheck))){ + // yon_config_register(device_label_parameter,device_label_parameter_command,device_name); + // } else { + // yon_config_remove_by_key(device_label_parameter); + // } + // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->CommonFilesystemSensitiveCheck))){ + // yon_config_register(part_type_parameter,part_type_parameter_command,file_system_type); + // } else { + // yon_config_remove_by_key(part_type_parameter); + // } if (!main_config.configure_mode) gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); @@ -2688,8 +2688,8 @@ main_window *yon_main_window_complete(){ } // if (size) yon_char_parsed_free(models,size); gtk_builder_connect_signals(builder,NULL); - yon_load_proceed(YON_CONFIG_DEFAULT); - yon_interface_update(widgets); + // yon_load_proceed(YON_CONFIG_DEFAULT); + // yon_interface_update(widgets); return widgets; } -- 2.35.1 From 51cdc2d9a1600cd5c8dbb9649682a811c8f32c85 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 9 Sep 2024 17:46:42 +0600 Subject: [PATCH 09/20] Test removal of saving parameters for tests --- source/ubinstall-gtk.c | 269 +++++++++++++++++++++-------------------- 1 file changed, 135 insertions(+), 134 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 7f047dd..e262892 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -904,6 +904,7 @@ int cur_slide=0; int yon_image_resize_from_container(GtkImage *target, GdkPixbuf *pixbuf_unscaled); int yon_image_resize_from_container(GtkImage *target, GdkPixbuf *pixbuf_unscaled) { + if (target&&pixbuf_unscaled){}; // int width = gtk_widget_get_allocated_width((gtk_widget_get_parent(GTK_WIDGET(target)))); // int height = gtk_widget_get_allocated_height((gtk_widget_get_parent(GTK_WIDGET(target)))); @@ -2548,144 +2549,144 @@ main_window *yon_main_window_complete(){ gtk_window_set_title(GTK_WINDOW(widgets->MainWindow),TITLE_LABEL); gtk_window_set_icon_name(GTK_WINDOW(widgets->MainWindow),icon_path); - int size; - config_str parsed = yon_file_open(licence_path,&size); - if (size){ - char *licence = yon_char_parsed_to_string(parsed,size,""); - gtk_label_set_text(GTK_LABEL(widgets->LicenceLabel),licence); - // free(licence); - // yon_char_parsed_free(parsed,size); - } - - config_str slides = yon_char_parsed_new(&size,slide_repeat_path); - widgets->regions_original = gdk_pixbuf_new_from_resource(regions_path,NULL); - widgets->keyboard_original = gdk_pixbuf_new_from_resource(keyboard_path,NULL); - widgets->slides_original = malloc(sizeof(GdkPixbuf*)*size); - widgets->slides_original[0] = gdk_pixbuf_new_from_resource(slide_0_path,NULL); - for (int i=1;islides_original[i] = gdk_pixbuf_new_from_resource(slides[i-1],NULL); - } - // yon_char_parsed_free(slides,size); - int width = gdk_pixbuf_get_width(widgets->regions_original); - int height = gdk_pixbuf_get_height(widgets->regions_original); - widgets->region_height_mult = (float)height/width; - GdkPixbuf *pix = gdk_pixbuf_scale_simple(widgets->regions_original,600,400,GDK_INTERP_BILINEAR); - gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->RegionImage),pix); - g_object_unref(pix); - pix = gdk_pixbuf_scale_simple(widgets->keyboard_original,600,400,GDK_INTERP_BILINEAR); - gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->KeyboardImage),pix); - g_object_unref(pix); - pix = gdk_pixbuf_scale_simple(widgets->slides_original[0],600,400,GDK_INTERP_BILINEAR); - gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->SlidesImage),pix); - g_object_unref(pix); - - int langsize; - config_str lang = default_langs(&langsize); - - GtkTreeIter iter; - gtk_list_store_clear(widgets->LanguagesList); - parsed = yon_file_open(languages_path,&size); - for (int i=0;iLanguagesList,&iter); - gtk_list_store_set(widgets->LanguagesList,&iter,0,0,1,_(cur[1]),2,cur[0],-1); - } - // yon_char_parsed_free(cur,cur_size); - } - // yon_char_parsed_free(parsed,size); - if (lang) - // yon_char_parsed_free(lang,langsize); - - parsed = yon_dir_get_contents(zone_path,&size); - for (int i=0;iRegionCombo),parsed[i],_(parsed[i])); - } - // free(path); - } - } - gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->RegionCombo),0); - // yon_char_parsed_free(parsed,size); - parsed = yon_config_load(get_layouts_command,&size); - GtkTreeIter itar; - for (int i=0;iLayoutList,&iter,NULL); - gtk_tree_store_set(widgets->LayoutList,&iter,0,layout[0],1,_(layout[1]),2,1,-1); - // yon_char_parsed_free(layout,layout_size); - char *command = get_layouts_local_command(layout_id); - config_str layout_local = yon_config_load(command,&layout_size); - // free(command); - // free(layout_id); - for (int j=0;jLayoutList,&itar,&iter); - gtk_tree_store_set(widgets->LayoutList,&itar,0,layouts_parsed[0],1,_(layouts_parsed[1]),2,1,3,0,-1); - // yon_char_parsed_free(layouts_parsed,parsed_size); - } - } - if (layout_size==-1) { - gtk_tree_store_set(widgets->LayoutList,&iter,2,1,-1); - } - // yon_char_parsed_free(layout_local,layout_size); - } - } - // yon_char_parsed_free(parsed,size); - { - parsed = yon_config_load(get_devices_command,&size); - char *string = yon_char_parsed_to_string(parsed,size,""); - struct json_object *root; - struct json_object *blockdevices; - root = json_tokener_parse(string); - // free(string); - json_object_object_get_ex(root, "blockdevices", &blockdevices); - for (long unsigned int i = 0; i < json_object_array_length(blockdevices); i++) { - struct json_object *device = json_object_array_get_idx(blockdevices, i); - struct json_object *path, *size, *model, *vendor, *serial; - - json_object_object_get_ex(device, "path", &path); - json_object_object_get_ex(device, "size", &size); - json_object_object_get_ex(device, "model", &model); - json_object_object_get_ex(device, "vendor", &vendor); - json_object_object_get_ex(device, "serial", &serial); + // int size; + // config_str parsed = yon_file_open(licence_path,&size); + // if (size){ + // char *licence = yon_char_parsed_to_string(parsed,size,""); + // gtk_label_set_text(GTK_LABEL(widgets->LicenceLabel),licence); + // // free(licence); + // // yon_char_parsed_free(parsed,size); + // } - gtk_list_store_append(widgets->DevicesList,&iter); - gtk_list_store_set(widgets->DevicesList,&iter,0,json_object_get_string(path),1,json_object_get_string(model),2,json_object_get_string(serial),3,json_object_get_string(size),4,json_object_get_string(vendor),-1); + // config_str slides = yon_char_parsed_new(&size,slide_repeat_path); + // widgets->regions_original = gdk_pixbuf_new_from_resource(regions_path,NULL); + // widgets->keyboard_original = gdk_pixbuf_new_from_resource(keyboard_path,NULL); + // widgets->slides_original = malloc(sizeof(GdkPixbuf*)*size); + // widgets->slides_original[0] = gdk_pixbuf_new_from_resource(slide_0_path,NULL); + // for (int i=1;islides_original[i] = gdk_pixbuf_new_from_resource(slides[i-1],NULL); + // } + // // yon_char_parsed_free(slides,size); + // int width = gdk_pixbuf_get_width(widgets->regions_original); + // int height = gdk_pixbuf_get_height(widgets->regions_original); + // widgets->region_height_mult = (float)height/width; + // GdkPixbuf *pix = gdk_pixbuf_scale_simple(widgets->regions_original,600,400,GDK_INTERP_BILINEAR); + // gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->RegionImage),pix); + // g_object_unref(pix); + // pix = gdk_pixbuf_scale_simple(widgets->keyboard_original,600,400,GDK_INTERP_BILINEAR); + // gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->KeyboardImage),pix); + // g_object_unref(pix); + // pix = gdk_pixbuf_scale_simple(widgets->slides_original[0],600,400,GDK_INTERP_BILINEAR); + // gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->SlidesImage),pix); + // g_object_unref(pix); + + // int langsize; + // config_str lang = default_langs(&langsize); + + // GtkTreeIter iter; + // gtk_list_store_clear(widgets->LanguagesList); + // parsed = yon_file_open(languages_path,&size); + // for (int i=0;iLanguagesList,&iter); + // gtk_list_store_set(widgets->LanguagesList,&iter,0,0,1,_(cur[1]),2,cur[0],-1); + // } + // // yon_char_parsed_free(cur,cur_size); + // } + // // yon_char_parsed_free(parsed,size); + // if (lang) + // // yon_char_parsed_free(lang,langsize); + + // parsed = yon_dir_get_contents(zone_path,&size); + // for (int i=0;iRegionCombo),parsed[i],_(parsed[i])); + // } + // // free(path); + // } + // } + // gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->RegionCombo),0); + // // yon_char_parsed_free(parsed,size); + // parsed = yon_config_load(get_layouts_command,&size); + // GtkTreeIter itar; + // for (int i=0;iLayoutList,&iter,NULL); + // gtk_tree_store_set(widgets->LayoutList,&iter,0,layout[0],1,_(layout[1]),2,1,-1); + // // yon_char_parsed_free(layout,layout_size); + // char *command = get_layouts_local_command(layout_id); + // config_str layout_local = yon_config_load(command,&layout_size); + // // free(command); + // // free(layout_id); + // for (int j=0;jLayoutList,&itar,&iter); + // gtk_tree_store_set(widgets->LayoutList,&itar,0,layouts_parsed[0],1,_(layouts_parsed[1]),2,1,3,0,-1); + // // yon_char_parsed_free(layouts_parsed,parsed_size); + // } + // } + // if (layout_size==-1) { + // gtk_tree_store_set(widgets->LayoutList,&iter,2,1,-1); + // } + // // yon_char_parsed_free(layout_local,layout_size); + // } + // } + // // yon_char_parsed_free(parsed,size); + // { + // parsed = yon_config_load(get_devices_command,&size); + // char *string = yon_char_parsed_to_string(parsed,size,""); + // struct json_object *root; + // struct json_object *blockdevices; + // root = json_tokener_parse(string); + // // free(string); + // json_object_object_get_ex(root, "blockdevices", &blockdevices); + // for (long unsigned int i = 0; i < json_object_array_length(blockdevices); i++) { + // struct json_object *device = json_object_array_get_idx(blockdevices, i); + // struct json_object *path, *size, *model, *vendor, *serial; + + // json_object_object_get_ex(device, "path", &path); + // json_object_object_get_ex(device, "size", &size); + // json_object_object_get_ex(device, "model", &model); + // json_object_object_get_ex(device, "vendor", &vendor); + // json_object_object_get_ex(device, "serial", &serial); + + // gtk_list_store_append(widgets->DevicesList,&iter); + // gtk_list_store_set(widgets->DevicesList,&iter,0,json_object_get_string(path),1,json_object_get_string(model),2,json_object_get_string(serial),3,json_object_get_string(size),4,json_object_get_string(vendor),-1); - } - // yon_char_parsed_free(parsed,size); - } + // } + // // yon_char_parsed_free(parsed,size); + // } - parsed = yon_resource_open_file(additional_software_path,&size); - for (int i=1;iAdditionalSoftwareList,&iter); - gtk_list_store_set(widgets->AdditionalSoftwareList,&iter,0,1,1,module_parsed[0],3,module_parsed[1],-1); //2,module_parsed[2] - // yon_char_parsed_free(module_parsed,module_size); - } - } - // if (size) yon_char_parsed_free(parsed,size); + // parsed = yon_resource_open_file(additional_software_path,&size); + // for (int i=1;iAdditionalSoftwareList,&iter); + // gtk_list_store_set(widgets->AdditionalSoftwareList,&iter,0,1,1,module_parsed[0],3,module_parsed[1],-1); //2,module_parsed[2] + // // yon_char_parsed_free(module_parsed,module_size); + // } + // } + // // if (size) yon_char_parsed_free(parsed,size); - config_str models = yon_config_load(get_models_command,&size); - for (int i=0;iKeyboardModelCombo),models[i],_(models[i+1])); - } + // config_str models = yon_config_load(get_models_command,&size); + // for (int i=0;iKeyboardModelCombo),models[i],_(models[i+1])); + // } // if (size) yon_char_parsed_free(models,size); gtk_builder_connect_signals(builder,NULL); // yon_load_proceed(YON_CONFIG_DEFAULT); -- 2.35.1 From 7de5ead404037d7994eb0976869d3738fd09734e Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 9 Sep 2024 17:51:28 +0600 Subject: [PATCH 10/20] Test removal of saving parameters for tests --- source/ubinstall-gtk.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index e262892..2e87cae 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -1121,7 +1121,7 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){ if (main_config.config_save_thread&&!main_config.configure_mode) g_thread_join(main_config.config_save_thread); if (!main_config.progress_thread&&!main_config.configure_mode) - main_config.progress_thread = gdk_threads_add_timeout(500,(GSourceFunc)yon_installation_progress_update,widgets); + // main_config.progress_thread = gdk_threads_add_timeout(500,(GSourceFunc)yon_installation_progress_update,widgets); if (!main_config.slider_thread&&!main_config.configure_mode) main_config.slider_thread = g_timeout_add(5000,(GSourceFunc)on_image_slide,widgets); -- 2.35.1 From c94567682fe15bc276f42b1b677796711dbfb6d1 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 9 Sep 2024 17:53:04 +0600 Subject: [PATCH 11/20] Test removal of saving parameters for tests --- source/ubinstall-gtk.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 2e87cae..8aa5415 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -1124,7 +1124,7 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){ // main_config.progress_thread = gdk_threads_add_timeout(500,(GSourceFunc)yon_installation_progress_update,widgets); if (!main_config.slider_thread&&!main_config.configure_mode) - main_config.slider_thread = g_timeout_add(5000,(GSourceFunc)on_image_slide,widgets); + // main_config.slider_thread = g_timeout_add(5000,(GSourceFunc)on_image_slide,widgets); gtk_widget_show(gtk_widget_get_parent(widgets->InstallationProgress)); } break; -- 2.35.1 From da1d57f1fad1bfce3c1eca2cbc205ad7deafb8dd Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 10 Sep 2024 18:19:07 +0600 Subject: [PATCH 12/20] Test remove of some functions - crash fix WIP --- source/ubinstall-gtk.c | 1014 ++++++++++++++++++++-------------------- 1 file changed, 506 insertions(+), 508 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 8aa5415..1cf125b 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -90,25 +90,25 @@ void _yon_saving_threaded(char *final_command){ file_return = yon_char_parsed_append(file_return,&file_save,final_command); char *result = yon_char_parsed_to_string(file_return,file_save,""); yon_debug_output("%s\n",result); - // yon_char_parsed_free(file_return,file_save); - // free(result); + yon_char_parsed_free(file_return,file_save); + free(result); } char *yon_save_command_prepare(char *command, char *target){ int size; config_str parsed = yon_char_parse(command,&size," "); - // free(parsed[2]); + free(parsed[2]); parsed[2]=yon_char_new(target); - // free(parsed[3]); + free(parsed[3]); parsed[3]=yon_char_new("set"); for (int i=5;iAvailableLanguagesEntry),chosen_langs); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->LanguagesSensitiveCheck),1); - // free(chosen_langs); + free(chosen_langs); } else { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->LanguagesSensitiveCheck),0); gtk_entry_set_text(GTK_ENTRY(widgets->AvailableLanguagesEntry),""); @@ -362,9 +362,9 @@ void yon_interface_update(main_window *widgets){ } else { gtk_list_store_set(widgets->LanguagesList,&iter,0,0,-1); } - // if (cur) free(cur); + if (cur) free(cur); } - // if (langsize) yon_char_parsed_free(lang,langsize); + if (langsize) yon_char_parsed_free(lang,langsize); // gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(widgets->LanguagesFilter)); } @@ -595,14 +595,14 @@ void on_config_custom_save(GtkWidget *, main_window *widgets){ } } path = yon_char_unite("'",file,"'",NULL); - // free(file); + free(file); gtk_widget_destroy(dialog); } else { gtk_widget_destroy(dialog); return; } yon_save_proceed(path,YON_CONFIG_CUSTOM); - // if (path) free(path); + if (path) free(path); gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_COMPLETED); } @@ -767,7 +767,7 @@ void on_language_window_accept(GtkWidget *,dictionary *dict){ if (yon_char_parsed_check_exist(lang_parsed,size,code)!=-1){ gtk_list_store_set(widgets->LanguagesList,&iter,0,1,-1); char *tmp = yon_char_unite(final,!yon_char_is_empty(final)?";":"",labl,NULL); - // if (!yon_char_is_empty(final)) free(final); + if (!yon_char_is_empty(final)) free(final); final = tmp; } else gtk_list_store_set(widgets->LanguagesList,&iter,0,0,-1); @@ -796,8 +796,8 @@ void on_language_window_accept(GtkWidget *,dictionary *dict){ 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); + if (final) free(final); + yon_char_parsed_free(parsed,size); } else gtk_entry_set_text(GTK_ENTRY(widgets->AvailableLanguagesEntry),""); @@ -904,27 +904,26 @@ int cur_slide=0; int yon_image_resize_from_container(GtkImage *target, GdkPixbuf *pixbuf_unscaled); int yon_image_resize_from_container(GtkImage *target, GdkPixbuf *pixbuf_unscaled) { - if (target&&pixbuf_unscaled){}; - // int width = gtk_widget_get_allocated_width((gtk_widget_get_parent(GTK_WIDGET(target)))); - // int height = gtk_widget_get_allocated_height((gtk_widget_get_parent(GTK_WIDGET(target)))); + int width = gtk_widget_get_allocated_width((gtk_widget_get_parent(GTK_WIDGET(target)))); + int height = gtk_widget_get_allocated_height((gtk_widget_get_parent(GTK_WIDGET(target)))); - // int newImgWidthDef = (width <= 217) ? width : width - 30; - // int newImgHeightDef = (height <= 120) ? height : height - 80; + int newImgWidthDef = (width <= 217) ? width : width - 30; + int newImgHeightDef = (height <= 120) ? height : height - 80; - // int originalWidth = gdk_pixbuf_get_width(pixbuf_unscaled); - // int originalHeight = gdk_pixbuf_get_height(pixbuf_unscaled); - // int newImgHeight = (int)(originalHeight / ((double) originalWidth / newImgWidthDef)); + int originalWidth = gdk_pixbuf_get_width(pixbuf_unscaled); + int originalHeight = gdk_pixbuf_get_height(pixbuf_unscaled); + int newImgHeight = (int)(originalHeight / ((double) originalWidth / newImgWidthDef)); - // if (newImgHeight > newImgHeightDef) { - // newImgHeight = newImgHeightDef; - // newImgWidthDef = (int)(originalWidth / ((double) originalHeight / newImgHeight)); - // } - // int newImageWidth = (int)(originalWidth / ((double) originalHeight / newImgHeight)); + if (newImgHeight > newImgHeightDef) { + newImgHeight = newImgHeightDef; + newImgWidthDef = (int)(originalWidth / ((double) originalHeight / newImgHeight)); + } + int newImageWidth = (int)(originalWidth / ((double) originalHeight / newImgHeight)); - // GdkPixbuf *scaledPixBuf = gdk_pixbuf_scale_simple(pixbuf_unscaled, newImageWidth, newImgHeight, GDK_INTERP_BILINEAR); - // gtk_image_set_from_pixbuf(target, scaledPixBuf); + GdkPixbuf *scaledPixBuf = gdk_pixbuf_scale_simple(pixbuf_unscaled, newImageWidth, newImgHeight, GDK_INTERP_BILINEAR); + gtk_image_set_from_pixbuf(target, scaledPixBuf); - // g_object_unref(scaledPixBuf); + g_object_unref(scaledPixBuf); return 1; } @@ -968,10 +967,10 @@ gboolean on_image_slide(void *data){ main_window *widgets = (main_window*)data; int size; config_str target = yon_char_parsed_new(&size,slide_repeat_path); - if (size) - yon_char_parsed_free(target,size); + // if (size) + // yon_char_parsed_free(target,size); gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->SlidesImage),widgets->slides_original[cur_slide]); - gtk_widget_queue_draw(widgets->SlidesImage); + // gtk_widget_queue_draw(widgets->SlidesImage); if (cur_slidePackageInstallationProgress), fraction); gtk_label_set_text(GTK_LABEL(widgets->PackageInstallationLabel), yon_char_parsed_to_string(parsed, size, " ")); } - // yon_char_parsed_free(parsed, size); + yon_char_parsed_free(parsed, size); } - // free(current_copy); - // free(percentage); + free(current_copy); + free(percentage); } - // yon_char_parsed_free(text, size); + yon_char_parsed_free(text, size); } if (main_config.install_thread) { @@ -1097,14 +1096,14 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){ } break; case YON_PAGE_REGION: { - yon_image_resize_from_container(GTK_IMAGE(widgets->RegionImage), widgets->regions_original); + // yon_image_resize_from_container(GTK_IMAGE(widgets->RegionImage), widgets->regions_original); yon_switch_page_render(widgets,4); } break; case YON_PAGE_KEYBOARD: { yon_switch_page_render(widgets,5); - yon_image_resize_from_container(GTK_IMAGE(widgets->KeyboardImage), widgets->keyboard_original); + // yon_image_resize_from_container(GTK_IMAGE(widgets->KeyboardImage), widgets->keyboard_original); } break; case YON_PAGE_OS_COMPONENTS: @@ -1121,7 +1120,7 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){ if (main_config.config_save_thread&&!main_config.configure_mode) g_thread_join(main_config.config_save_thread); if (!main_config.progress_thread&&!main_config.configure_mode) - // main_config.progress_thread = gdk_threads_add_timeout(500,(GSourceFunc)yon_installation_progress_update,widgets); + main_config.progress_thread = gdk_threads_add_timeout(500,(GSourceFunc)yon_installation_progress_update,widgets); if (!main_config.slider_thread&&!main_config.configure_mode) // main_config.slider_thread = g_timeout_add(5000,(GSourceFunc)on_image_slide,widgets); @@ -1253,9 +1252,9 @@ void *on_setup_system_configuration(void * data){ char *parameter_string = yon_char_parsed_to_string(all_parameters,size," "); char *command = set_user_config_command(parameter_string); if (system(yon_debug_output("%s\n",command))){}; - // yon_char_parsed_free(all_parameters,size); - // free(command); - // if (parameter_string) free(parameter_string); + yon_char_parsed_free(all_parameters,size); + free(command); + if (parameter_string) free(parameter_string); } g_thread_new("success func",(GThreadFunc)on_install_success,widgets); return NULL; @@ -1269,7 +1268,7 @@ void on_log_closed(GtkWidget *, dictionary *dict){ gtk_widget_set_sensitive(widgets->ReadFullLogButton,1); gtk_widget_set_sensitive(widgets->ReadShortLogButton,1); - // free(window->command); + free(window->command); window->Window=NULL; } @@ -1297,9 +1296,9 @@ void *on_save_system_configuration(void * data){ char *parameter_string = yon_char_parsed_to_string(all_parameters,size," "); char *command = save_additional_config_command(parameter_string); if (system(yon_debug_output("%s\n",command))){}; - // yon_char_parsed_free(all_parameters,size); - // free(command); - // if (parameter_string) free(parameter_string); + yon_char_parsed_free(all_parameters,size); + free(command); + if (parameter_string) free(parameter_string); } return NULL; } @@ -1333,8 +1332,8 @@ gboolean yon_read_log(void *data){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->ScrollToEndCheck))){ gtk_adjustment_set_value(gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(window->ScrollWindow)),gtk_adjustment_get_upper(gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(window->ScrollWindow)))); } - // free(final); - // yon_char_parsed_free(parsed,size); + free(final); + yon_char_parsed_free(parsed,size); } yon_debug_output("%s\n","Log read"); if (!main_config.install_complete){ @@ -1388,8 +1387,8 @@ void yon_install_options_save(GtkWidget *device_tree, GtkWidget *part_tree,char yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,mode); yon_config_register(part_parameter,part_parameter_command,cur_section); - // if(cur_section) free(cur_section); - // if(cur_device) free(cur_device); + if(cur_section) free(cur_section); + if(cur_device) free(cur_device); if (!main_config.configure_mode) gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); else @@ -1444,84 +1443,84 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ } }break; case YON_PAGE_REGION:{ //region - // gtk_widget_set_sensitive(widgets->BackButton,1); - // if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->RegionCombo))==-1){ - // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),REGION_EMPTY_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - // yon_ubl_status_highlight_incorrect(widgets->RegionCombo); - // return; - // } else if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->ZoneCombo))==-1){ - // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),ZONE_EMPTY_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - // yon_ubl_status_highlight_incorrect(widgets->ZoneCombo); - // return; - // } - // char *languages = ""; - // GtkTreeIter iter; - // GtkTreeModel *model = GTK_TREE_MODEL(widgets->LanguagesFilter); - // char *lang_code=NULL; - // for_iter(model,&iter){ - // gtk_tree_model_get(model,&iter,2,&lang_code,-1); - // languages = yon_char_unite(languages,!yon_char_is_empty(languages)?",":"",lang_code,NULL); - // } - // if (yon_char_is_empty(languages)||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->MainLanguageSensitiveCheck))){ - // yon_config_remove_by_key(locale_parameter); - // } else { - // yon_config_register(locale_parameter,locale_parameter_command,languages); - // free(languages); - // } - // if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->LanguagesCombo))==-1||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LanguagesSensitiveCheck))){ - // yon_config_remove_by_key(lang_parameter); - // } else { - // char *language = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->LanguagesCombo)); - // yon_config_register(lang_parameter,lang_parameter_command,language); - // } - // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->RegionSensitiveCheck))){ - // char *region = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->RegionCombo)); - // char *zone = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->ZoneCombo)); - // yon_debug_output("%s",region); - // yon_debug_output("/%s\n\n",zone); - // yon_config_register(zone_parameter,zone_parameter_command,yon_char_unite(region,"/",zone,NULL)); - // } else { - // yon_config_remove_by_key(zone_parameter); - // } + gtk_widget_set_sensitive(widgets->BackButton,1); + if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->RegionCombo))==-1){ + yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),REGION_EMPTY_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + yon_ubl_status_highlight_incorrect(widgets->RegionCombo); + return; + } else if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->ZoneCombo))==-1){ + yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),ZONE_EMPTY_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + yon_ubl_status_highlight_incorrect(widgets->ZoneCombo); + return; + } + char *languages = ""; + GtkTreeIter iter; + GtkTreeModel *model = GTK_TREE_MODEL(widgets->LanguagesFilter); + char *lang_code=NULL; + for_iter(model,&iter){ + gtk_tree_model_get(model,&iter,2,&lang_code,-1); + languages = yon_char_unite(languages,!yon_char_is_empty(languages)?",":"",lang_code,NULL); + } + if (yon_char_is_empty(languages)||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->MainLanguageSensitiveCheck))){ + yon_config_remove_by_key(locale_parameter); + } else { + yon_config_register(locale_parameter,locale_parameter_command,languages); + free(languages); + } + if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->LanguagesCombo))==-1||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LanguagesSensitiveCheck))){ + yon_config_remove_by_key(lang_parameter); + } else { + char *language = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->LanguagesCombo)); + yon_config_register(lang_parameter,lang_parameter_command,language); + } + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->RegionSensitiveCheck))){ + char *region = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->RegionCombo)); + char *zone = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->ZoneCombo)); + yon_debug_output("%s",region); + yon_debug_output("/%s\n\n",zone); + yon_config_register(zone_parameter,zone_parameter_command,yon_char_unite(region,"/",zone,NULL)); + } else { + yon_config_remove_by_key(zone_parameter); + } gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),page+1); }break; case YON_PAGE_KEYBOARD: { //keyboard - // gtk_widget_set_sensitive(widgets->BackButton,1); - // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->ManualLayoutRadio))){ - // GtkTreeIter iter; - // if (!gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->LayoutList),&iter)){ - // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),LAYOUTS_CHOSEN_BUT_EMPTY_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - // yon_ubl_status_highlight_incorrect(widgets->ManualLayoutRadio); - // yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->LayoutTree)); - // } - // } - // char *layouts_list=""; - // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->ManualLayoutRadio))&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LayoutSensitiveCheck))){ - // GtkTreeModel *layouts_model=GTK_TREE_MODEL(widgets->LayoutList); - // GtkTreeIter iter; - // char *cur_layout=NULL; - // for_iter(layouts_model,&iter){ - // int chosen=0; - // gtk_tree_model_get(layouts_model,&iter,0,&cur_layout,3,&chosen,-1); - // if (chosen) - // layouts_list = yon_char_unite(layouts_list,yon_char_is_empty(layouts_list)?"":",",cur_layout,NULL); - // } - // } else { - // yon_config_remove_by_key(xkblayout_parameter); - // } - // if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->KeyboardModelCombo))&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->KeyboardModelSensitiveCheck))){ - // char *model = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->KeyboardModelCombo)); - // // char *layout_switch; - // if (!yon_char_is_empty(model)) - // yon_config_register(xkbmodel_parameter,xkbmodel_parameter_command,model); - // } else{ - // yon_config_remove_by_key(xkbmodel_parameter); - // } - // if (yon_char_is_empty(layouts_list)&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LayoutSensitiveCheck))) - // yon_config_register(xkblayout_parameter,xkblayout_parameter_command,layouts_list); - // else - // yon_config_remove_by_key(xkblayout_parameter); + gtk_widget_set_sensitive(widgets->BackButton,1); + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->ManualLayoutRadio))){ + GtkTreeIter iter; + if (!gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->LayoutList),&iter)){ + yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),LAYOUTS_CHOSEN_BUT_EMPTY_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + yon_ubl_status_highlight_incorrect(widgets->ManualLayoutRadio); + yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->LayoutTree)); + } + } + char *layouts_list=""; + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->ManualLayoutRadio))&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LayoutSensitiveCheck))){ + GtkTreeModel *layouts_model=GTK_TREE_MODEL(widgets->LayoutList); + GtkTreeIter iter; + char *cur_layout=NULL; + for_iter(layouts_model,&iter){ + int chosen=0; + gtk_tree_model_get(layouts_model,&iter,0,&cur_layout,3,&chosen,-1); + if (chosen) + layouts_list = yon_char_unite(layouts_list,yon_char_is_empty(layouts_list)?"":",",cur_layout,NULL); + } + } else { + yon_config_remove_by_key(xkblayout_parameter); + } + if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->KeyboardModelCombo))&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->KeyboardModelSensitiveCheck))){ + char *model = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->KeyboardModelCombo)); + // char *layout_switch; + if (!yon_char_is_empty(model)) + yon_config_register(xkbmodel_parameter,xkbmodel_parameter_command,model); + } else{ + yon_config_remove_by_key(xkbmodel_parameter); + } + if (yon_char_is_empty(layouts_list)&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LayoutSensitiveCheck))) + yon_config_register(xkblayout_parameter,xkblayout_parameter_command,layouts_list); + else + yon_config_remove_by_key(xkblayout_parameter); gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),page+1); } break; @@ -1532,30 +1531,30 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ }break; case YON_PAGE_INSTALL_COMMON: { - // GtkTreeModel *model; - // GtkTreeIter iter; - // if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->CommonInstallationDevicesTree)),&model,&iter)){ - // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - // yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->CommonInstallationDevicesTree)); - // return; - // } - // char *file_system_type = (char*)gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(widgets->CommonInstallationFilesystemTypeCombo)); - // char *device_name = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->CommonInstallationSectionNameEntry)); - // char *device; - // yon_config_remove_by_key(part_parameter); - // gtk_tree_model_get(model,&iter,0,&device,-1); - // yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"fast"); - // yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,device); - // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->CommonSectionSensitiveCheck))){ - // yon_config_register(device_label_parameter,device_label_parameter_command,device_name); - // } else { - // yon_config_remove_by_key(device_label_parameter); - // } - // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->CommonFilesystemSensitiveCheck))){ - // yon_config_register(part_type_parameter,part_type_parameter_command,file_system_type); - // } else { - // yon_config_remove_by_key(part_type_parameter); - // } + GtkTreeModel *model; + GtkTreeIter iter; + if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->CommonInstallationDevicesTree)),&model,&iter)){ + yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->CommonInstallationDevicesTree)); + return; + } + char *file_system_type = (char*)gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(widgets->CommonInstallationFilesystemTypeCombo)); + char *device_name = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->CommonInstallationSectionNameEntry)); + char *device; + yon_config_remove_by_key(part_parameter); + gtk_tree_model_get(model,&iter,0,&device,-1); + yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"fast"); + yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,device); + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->CommonSectionSensitiveCheck))){ + yon_config_register(device_label_parameter,device_label_parameter_command,device_name); + } else { + yon_config_remove_by_key(device_label_parameter); + } + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->CommonFilesystemSensitiveCheck))){ + yon_config_register(part_type_parameter,part_type_parameter_command,file_system_type); + } else { + yon_config_remove_by_key(part_type_parameter); + } if (!main_config.configure_mode) gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); @@ -1673,112 +1672,112 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ case YON_PAGE_USERS:{ //users - // if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->UserNameEntry)))||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->UsernameSensitiveCheck))){ - // yon_config_remove_by_key(user_gecos_parameter); - // } else { - // char *username = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->UserNameEntry)); - // yon_config_register(user_gecos_parameter,user_gecos_parameter_command,username); - // } - - // if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->LoginEntry)))||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LoginSensitiveCheck))){ - // yon_config_remove_by_key(user_name_parameter); - // } else { - // char *login = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->LoginEntry)); - // yon_config_register(user_name_parameter,user_name_parameter_command,login); - - // } - - // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->PasswordSensitiveCheck))){ - // if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->PasswordCombo))==1){ - // if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->PasswordEntry)))){ - // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),EMPTY_IMPORTANT_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - // yon_ubl_status_highlight_incorrect(widgets->PasswordEntry); - // return; - // } else { - // char *password = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->PasswordEntry)); + if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->UserNameEntry)))||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->UsernameSensitiveCheck))){ + yon_config_remove_by_key(user_gecos_parameter); + } else { + char *username = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->UserNameEntry)); + yon_config_register(user_gecos_parameter,user_gecos_parameter_command,username); + } + + if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->LoginEntry)))||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LoginSensitiveCheck))){ + yon_config_remove_by_key(user_name_parameter); + } else { + char *login = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->LoginEntry)); + yon_config_register(user_name_parameter,user_name_parameter_command,login); + + } + + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->PasswordSensitiveCheck))){ + if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->PasswordCombo))==1){ + if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->PasswordEntry)))){ + yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),EMPTY_IMPORTANT_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + yon_ubl_status_highlight_incorrect(widgets->PasswordEntry); + return; + } else { + char *password = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->PasswordEntry)); - // yon_config_register(user_password_parameter,user_password_parameter_command,password); + yon_config_register(user_password_parameter,user_password_parameter_command,password); - // } - // } else { - // yon_config_remove_by_key(user_password_parameter); - // } - // }else { - // yon_config_remove_by_key(user_password_parameter); - - // } - - // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->RootPasswordSensitiveCheck))){ - // if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->AdminPasswordCombo))==1){ - // if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->AdminPasswordEntry)))){ - // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),EMPTY_IMPORTANT_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - // yon_ubl_status_highlight_incorrect(widgets->AdminPasswordEntry); - // return; - // } else { - // char *root_password = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->AdminPasswordEntry)); - // yon_config_register(root_password_parameter,root_password_parameter_command,root_password); + } + } else { + yon_config_remove_by_key(user_password_parameter); + } + }else { + yon_config_remove_by_key(user_password_parameter); + + } + + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->RootPasswordSensitiveCheck))){ + if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->AdminPasswordCombo))==1){ + if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->AdminPasswordEntry)))){ + yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),EMPTY_IMPORTANT_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + yon_ubl_status_highlight_incorrect(widgets->AdminPasswordEntry); + return; + } else { + char *root_password = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->AdminPasswordEntry)); + yon_config_register(root_password_parameter,root_password_parameter_command,root_password); - // } - // } else { - // yon_config_remove_by_key(root_password_parameter); - // } - // } else { - // yon_config_remove_by_key(root_password_parameter); - // } - - // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->HostnameSensitiveCheck))){ - // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutoHostnameCheck))){ - // yon_config_register(hostname_parameter,hostname_parameter_command,"auto"); - // } else { - // if (!yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->HotnameEntry)))){ - // char *hostname = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->HotnameEntry)); - // yon_config_register(hostname_parameter,hostname_parameter_command,hostname); - - // } else { - // yon_config_remove_by_key(hostname_parameter); + } + } else { + yon_config_remove_by_key(root_password_parameter); + } + } else { + yon_config_remove_by_key(root_password_parameter); + } + + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->HostnameSensitiveCheck))){ + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutoHostnameCheck))){ + yon_config_register(hostname_parameter,hostname_parameter_command,"auto"); + } else { + if (!yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->HotnameEntry)))){ + char *hostname = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->HotnameEntry)); + yon_config_register(hostname_parameter,hostname_parameter_command,hostname); + + } else { + yon_config_remove_by_key(hostname_parameter); - // } - // } - // } else { - // yon_config_remove_by_key(hostname_parameter); - // } + } + } + } else { + yon_config_remove_by_key(hostname_parameter); + } - // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutologinSensitiveCheck))){ - // char *autologin = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutologinCheck))?"yes":"no"; - // yon_config_register(autologin_parameter,autologin_parameter_command,autologin); - // } else { - // yon_config_remove_by_key(autologin_parameter); - // } - - // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LayoutSensitiveCheck))){ - // GtkTreeIter iter; - // if (gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->LayoutsFilter),&iter)){ - // char *locales=""; - // for_iter (GTK_TREE_MODEL(widgets->LayoutsFilter),&iter){ - // char *id; - // int status; - // gtk_tree_model_get(GTK_TREE_MODEL(widgets->LayoutsFilter),&iter,0,&id,3,&status,-1); - // if (status){ - // char *temp = yon_char_unite(locales,!yon_char_is_empty(locales)?",":"",id,NULL); - // locales=temp; - // } - // } - // if (!yon_char_is_empty(locales)){ - // yon_config_register(xkblayout_parameter,xkblayout_parameter_command,locales); - // } else { - // yon_config_remove_by_key(xkblayout_parameter); - // } - // } - // } else { - // yon_config_remove_by_key(xkblayout_parameter); - // } - - // if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->LayoutBindingCombo))&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->OptionsSensitiveCheck))){ - // char *options = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->LayoutBindingCombo)); - // yon_config_register(xkboptions_parameter,xkboptions_parameter_command,options); - // } else { - // yon_config_remove_by_key(xkboptions_parameter); - // } + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutologinSensitiveCheck))){ + char *autologin = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutologinCheck))?"yes":"no"; + yon_config_register(autologin_parameter,autologin_parameter_command,autologin); + } else { + yon_config_remove_by_key(autologin_parameter); + } + + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LayoutSensitiveCheck))){ + GtkTreeIter iter; + if (gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->LayoutsFilter),&iter)){ + char *locales=""; + for_iter (GTK_TREE_MODEL(widgets->LayoutsFilter),&iter){ + char *id; + int status; + gtk_tree_model_get(GTK_TREE_MODEL(widgets->LayoutsFilter),&iter,0,&id,3,&status,-1); + if (status){ + char *temp = yon_char_unite(locales,!yon_char_is_empty(locales)?",":"",id,NULL); + locales=temp; + } + } + if (!yon_char_is_empty(locales)){ + yon_config_register(xkblayout_parameter,xkblayout_parameter_command,locales); + } else { + yon_config_remove_by_key(xkblayout_parameter); + } + } + } else { + yon_config_remove_by_key(xkblayout_parameter); + } + + if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->LayoutBindingCombo))&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->OptionsSensitiveCheck))){ + char *options = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->LayoutBindingCombo)); + yon_config_register(xkboptions_parameter,xkboptions_parameter_command,options); + } else { + yon_config_remove_by_key(xkboptions_parameter); + } if (!main_config.configure_mode){ yon_debug_output("%s\n","Entered saving"); @@ -1830,116 +1829,116 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ return; break; - // case YON_PAGE_INSTALL_OPTIONS: { - // int mode = -1; - // if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->GrubInstallRadio))){ - // mode = 0; - // } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->GrubUpdateRadio))){ - // mode = 1; - // } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->SeparateRadio))){ - // mode = 2; - // } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->OSRadio))){ - // mode = 3; - // } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->UserDataOnlyRadio))){ - // mode = 4; - // } - // switch(mode){ - // case 0: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_GRUB_INSTALL); - // break; - // case 1: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_GRUB_UPDATE); - // break; - // case 2: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_SEPARATE); - // break; - // case 3: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_OS_ONLY); - // break; - // case 4: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_USRDATA_ONLY); - // break; - // } - // } break; - - // case YON_PAGE_OPTIONS_GRUB_INSTALL:{ - // GtkTreeIter iter; - // GtkTreeModel *model; - // if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubInstallDevicesTree)),&model,&iter)){ - // char *cur_device; - // gtk_tree_model_get(model,&iter,0,&cur_device,-1); - // yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device); - // yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_install"); - // yon_config_remove_by_key(part_parameter); - // if (!main_config.configure_mode) - // gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); - // else - // gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION); - // } else { - // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - // yon_ubl_status_highlight_incorrect(widgets->GrubInstallDevicesTree); - // } - // } break; - - // case YON_PAGE_OPTIONS_GRUB_UPDATE:{ - // GtkTreeIter iter; - // GtkTreeModel *model; - // if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubUpdateDevicesTree)),&model,&iter)){ - // char *cur_device; - // gtk_tree_model_get(model,&iter,0,&cur_device,-1); - // yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device); - // yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_update"); - // yon_config_remove_by_key(part_parameter); - // if (!main_config.configure_mode) - // gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); - // else - // gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION); - // } else { - // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - // yon_ubl_status_highlight_incorrect(widgets->GrubUpdateDevicesTree); - // } - // }break; - - // case YON_PAGE_OPTIONS_SEPARATE:{ - // GtkTreeModel *model; - // GtkTreeIter iter; - // if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateSysSectionTree)),&model,&iter)){ - // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); - // yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->SeparateSysSectionTree)); - // return; - // } - // gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_SEPARATE_USRDATA); - // }break; - - // case YON_PAGE_OPTIONS_SEPARATE_USRDATA:{ - // GtkTreeIter iter,itar; - // GtkTreeModel *model,*model2; - // if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateDevicesTree)),&model,&iter)){ - // if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateSysSectionTree)),&model2,&itar)){ - // char *cur_device, *system_section, *user_section; - // gtk_tree_model_get(model,&iter,0,&cur_device,-1); - // gtk_tree_model_get(model2,&itar,0,&system_section,-1); - // if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateUserSysSectionTree)),&model2,&itar)){ - // gtk_tree_model_get(model2,&itar,0,&user_section,-1); - // yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device); - // yon_config_register(part_parameter,part_parameter_command,yon_char_unite(system_section,",",user_section,NULL)); - // yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"custom"); - // gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); - // return; - // } else { - - // } - // } else { - - // } - // } else { - - // } + case YON_PAGE_INSTALL_OPTIONS: { + int mode = -1; + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->GrubInstallRadio))){ + mode = 0; + } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->GrubUpdateRadio))){ + mode = 1; + } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->SeparateRadio))){ + mode = 2; + } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->OSRadio))){ + mode = 3; + } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->UserDataOnlyRadio))){ + mode = 4; + } + switch(mode){ + case 0: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_GRUB_INSTALL); + break; + case 1: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_GRUB_UPDATE); + break; + case 2: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_SEPARATE); + break; + case 3: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_OS_ONLY); + break; + case 4: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_USRDATA_ONLY); + break; + } + } break; + + case YON_PAGE_OPTIONS_GRUB_INSTALL:{ + GtkTreeIter iter; + GtkTreeModel *model; + if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubInstallDevicesTree)),&model,&iter)){ + char *cur_device; + gtk_tree_model_get(model,&iter,0,&cur_device,-1); + yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device); + yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_install"); + yon_config_remove_by_key(part_parameter); + if (!main_config.configure_mode) + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); + else + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION); + } else { + yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + yon_ubl_status_highlight_incorrect(widgets->GrubInstallDevicesTree); + } + } break; + + case YON_PAGE_OPTIONS_GRUB_UPDATE:{ + GtkTreeIter iter; + GtkTreeModel *model; + if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubUpdateDevicesTree)),&model,&iter)){ + char *cur_device; + gtk_tree_model_get(model,&iter,0,&cur_device,-1); + yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device); + yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_update"); + yon_config_remove_by_key(part_parameter); + if (!main_config.configure_mode) + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); + else + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION); + } else { + yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + yon_ubl_status_highlight_incorrect(widgets->GrubUpdateDevicesTree); + } + }break; + + case YON_PAGE_OPTIONS_SEPARATE:{ + GtkTreeModel *model; + GtkTreeIter iter; + if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateSysSectionTree)),&model,&iter)){ + yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->SeparateSysSectionTree)); + return; + } + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_SEPARATE_USRDATA); + }break; + + case YON_PAGE_OPTIONS_SEPARATE_USRDATA:{ + GtkTreeIter iter,itar; + GtkTreeModel *model,*model2; + if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateDevicesTree)),&model,&iter)){ + if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateSysSectionTree)),&model2,&itar)){ + char *cur_device, *system_section, *user_section; + gtk_tree_model_get(model,&iter,0,&cur_device,-1); + gtk_tree_model_get(model2,&itar,0,&system_section,-1); + if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateUserSysSectionTree)),&model2,&itar)){ + gtk_tree_model_get(model2,&itar,0,&user_section,-1); + yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device); + yon_config_register(part_parameter,part_parameter_command,yon_char_unite(system_section,",",user_section,NULL)); + yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"custom"); + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); + return; + } else { + + } + } else { + + } + } else { + + } - // } break; + } break; - // case YON_PAGE_OPTIONS_OS_ONLY:{ - // yon_install_options_save(widgets->OSDevicesTree,widgets->OSSysSectionTree,"system_only",widgets); - // } break; + case YON_PAGE_OPTIONS_OS_ONLY:{ + yon_install_options_save(widgets->OSDevicesTree,widgets->OSSysSectionTree,"system_only",widgets); + } break; - // case YON_PAGE_OPTIONS_USRDATA_ONLY:{ - // yon_install_options_save(widgets->UserdataDevicesTree,widgets->UserdataSysSectionTree,"data_only",widgets); - // } break; + case YON_PAGE_OPTIONS_USRDATA_ONLY:{ + yon_install_options_save(widgets->UserdataDevicesTree,widgets->UserdataSysSectionTree,"data_only",widgets); + } break; } } break; case -1: { // Previous @@ -2013,10 +2012,10 @@ void on_region_changed(GtkComboBox *self, main_window *widgets){ for (int i=0;iZoneCombo),parsed[i],_(parsed[i])); } - // if (size) yon_char_parsed_free(parsed,size); + if (size) yon_char_parsed_free(parsed,size); gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ZoneCombo),0); } - // free(active); + free(active); } void on_locale_changed(GtkWidget *,main_window *); @@ -2205,7 +2204,7 @@ void on_near_installation_device_changed(GtkWidget *self, main_window *widgets){ gtk_list_store_append(widgets->PartitionsList,&iter); gtk_list_store_set(widgets->PartitionsList,&iter,0,json_object_get_string(path),1,json_object_get_string(size),2,free_space_string,3,json_object_get_string(fstype),-1); } - // yon_char_parsed_free(parsed,size); + yon_char_parsed_free(parsed,size); } } @@ -2244,7 +2243,7 @@ void on_same_installation_device_changed(GtkWidget *, main_window *widgets){ gtk_list_store_append(widgets->PartitionsList,&iter); gtk_list_store_set(widgets->PartitionsList,&iter,0,json_object_get_string(path),1,json_object_get_string(model),2,json_object_get_string(serial),3,json_object_get_string(size),4,json_object_get_string(vendor),-1); } - // yon_char_parsed_free(parsed,size); + yon_char_parsed_free(parsed,size); } } @@ -2264,10 +2263,9 @@ void on_exit_accepted(GtkWidget *,dictionary *dict){ } main_config.exit_accepted=1; g_signal_emit_by_name(G_OBJECT(widgets->MainWindow),"delete-event",widgets->MainWindow,NULL); - // free(window); - // yon_dictionary_free_all(dict,NULL); - // free(dict); - if (window){}; + free(window); + yon_dictionary_free_all(dict,NULL); + free(dict); gtk_widget_destroy(widgets->MainWindow); } @@ -2494,7 +2492,7 @@ main_window *yon_main_window_complete(){ g_signal_connect(G_OBJECT(widgets->GpartedNearButton),"clicked",G_CALLBACK(on_gparted_open),NULL); g_signal_connect(G_OBJECT(widgets->Notebook),"switch-page",G_CALLBACK(on_page_changed),widgets); - g_signal_connect(G_OBJECT(widgets->MainWindow),"check-resize",G_CALLBACK(on_region_resized),widgets); + // g_signal_connect(G_OBJECT(widgets->MainWindow),"check-resize",G_CALLBACK(on_region_resized),widgets); g_signal_connect(G_OBJECT(widgets->BackButton),"clicked",G_CALLBACK(on_page_navigation_clicked),widgets); g_signal_connect(G_OBJECT(widgets->NextButton),"clicked",G_CALLBACK(on_page_navigation_clicked),widgets); g_signal_connect(G_OBJECT(widgets->CancelInstallButton),"clicked",G_CALLBACK(on_page_navigation_clicked),widgets); @@ -2549,148 +2547,148 @@ main_window *yon_main_window_complete(){ gtk_window_set_title(GTK_WINDOW(widgets->MainWindow),TITLE_LABEL); gtk_window_set_icon_name(GTK_WINDOW(widgets->MainWindow),icon_path); - // int size; - // config_str parsed = yon_file_open(licence_path,&size); - // if (size){ - // char *licence = yon_char_parsed_to_string(parsed,size,""); - // gtk_label_set_text(GTK_LABEL(widgets->LicenceLabel),licence); - // // free(licence); - // // yon_char_parsed_free(parsed,size); - // } - - // config_str slides = yon_char_parsed_new(&size,slide_repeat_path); - // widgets->regions_original = gdk_pixbuf_new_from_resource(regions_path,NULL); - // widgets->keyboard_original = gdk_pixbuf_new_from_resource(keyboard_path,NULL); - // widgets->slides_original = malloc(sizeof(GdkPixbuf*)*size); - // widgets->slides_original[0] = gdk_pixbuf_new_from_resource(slide_0_path,NULL); - // for (int i=1;islides_original[i] = gdk_pixbuf_new_from_resource(slides[i-1],NULL); - // } - // // yon_char_parsed_free(slides,size); - // int width = gdk_pixbuf_get_width(widgets->regions_original); - // int height = gdk_pixbuf_get_height(widgets->regions_original); - // widgets->region_height_mult = (float)height/width; - // GdkPixbuf *pix = gdk_pixbuf_scale_simple(widgets->regions_original,600,400,GDK_INTERP_BILINEAR); - // gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->RegionImage),pix); + int size; + config_str parsed = yon_file_open(licence_path,&size); + if (size){ + char *licence = yon_char_parsed_to_string(parsed,size,""); + gtk_label_set_text(GTK_LABEL(widgets->LicenceLabel),licence); + free(licence); + yon_char_parsed_free(parsed,size); + } + + config_str slides = yon_char_parsed_new(&size,slide_repeat_path); + widgets->regions_original = gdk_pixbuf_new_from_resource(regions_path,NULL); + widgets->keyboard_original = gdk_pixbuf_new_from_resource(keyboard_path,NULL); + widgets->slides_original = malloc(sizeof(GdkPixbuf*)*size); + widgets->slides_original[0] = gdk_pixbuf_new_from_resource(slide_0_path,NULL); + for (int i=1;islides_original[i] = gdk_pixbuf_new_from_resource(slides[i-1],NULL); + } + yon_char_parsed_free(slides,size); + int width = gdk_pixbuf_get_width(widgets->regions_original); + int height = gdk_pixbuf_get_height(widgets->regions_original); + widgets->region_height_mult = (float)height/width; + GdkPixbuf *pix = gdk_pixbuf_scale_simple(widgets->regions_original,600,400,GDK_INTERP_BILINEAR); + gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->RegionImage),pix); // g_object_unref(pix); - // pix = gdk_pixbuf_scale_simple(widgets->keyboard_original,600,400,GDK_INTERP_BILINEAR); - // gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->KeyboardImage),pix); + pix = gdk_pixbuf_scale_simple(widgets->keyboard_original,600,400,GDK_INTERP_BILINEAR); + gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->KeyboardImage),pix); // g_object_unref(pix); - // pix = gdk_pixbuf_scale_simple(widgets->slides_original[0],600,400,GDK_INTERP_BILINEAR); - // gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->SlidesImage),pix); + pix = gdk_pixbuf_scale_simple(widgets->slides_original[0],600,400,GDK_INTERP_BILINEAR); + gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->SlidesImage),pix); // g_object_unref(pix); - // int langsize; - // config_str lang = default_langs(&langsize); - - // GtkTreeIter iter; - // gtk_list_store_clear(widgets->LanguagesList); - // parsed = yon_file_open(languages_path,&size); - // for (int i=0;iLanguagesList,&iter); - // gtk_list_store_set(widgets->LanguagesList,&iter,0,0,1,_(cur[1]),2,cur[0],-1); - // } - // // yon_char_parsed_free(cur,cur_size); - // } - // // yon_char_parsed_free(parsed,size); - // if (lang) - // // yon_char_parsed_free(lang,langsize); - - // parsed = yon_dir_get_contents(zone_path,&size); - // for (int i=0;iRegionCombo),parsed[i],_(parsed[i])); - // } - // // free(path); - // } - // } - // gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->RegionCombo),0); - // // yon_char_parsed_free(parsed,size); - // parsed = yon_config_load(get_layouts_command,&size); - // GtkTreeIter itar; - // for (int i=0;iLayoutList,&iter,NULL); - // gtk_tree_store_set(widgets->LayoutList,&iter,0,layout[0],1,_(layout[1]),2,1,-1); - // // yon_char_parsed_free(layout,layout_size); - // char *command = get_layouts_local_command(layout_id); - // config_str layout_local = yon_config_load(command,&layout_size); - // // free(command); - // // free(layout_id); - // for (int j=0;jLayoutList,&itar,&iter); - // gtk_tree_store_set(widgets->LayoutList,&itar,0,layouts_parsed[0],1,_(layouts_parsed[1]),2,1,3,0,-1); - // // yon_char_parsed_free(layouts_parsed,parsed_size); - // } - // } - // if (layout_size==-1) { - // gtk_tree_store_set(widgets->LayoutList,&iter,2,1,-1); - // } - // // yon_char_parsed_free(layout_local,layout_size); - // } - // } - // // yon_char_parsed_free(parsed,size); - // { - // parsed = yon_config_load(get_devices_command,&size); - // char *string = yon_char_parsed_to_string(parsed,size,""); - // struct json_object *root; - // struct json_object *blockdevices; - // root = json_tokener_parse(string); - // // free(string); - // json_object_object_get_ex(root, "blockdevices", &blockdevices); - // for (long unsigned int i = 0; i < json_object_array_length(blockdevices); i++) { - // struct json_object *device = json_object_array_get_idx(blockdevices, i); - // struct json_object *path, *size, *model, *vendor, *serial; - - // json_object_object_get_ex(device, "path", &path); - // json_object_object_get_ex(device, "size", &size); - // json_object_object_get_ex(device, "model", &model); - // json_object_object_get_ex(device, "vendor", &vendor); - // json_object_object_get_ex(device, "serial", &serial); - - // gtk_list_store_append(widgets->DevicesList,&iter); - // gtk_list_store_set(widgets->DevicesList,&iter,0,json_object_get_string(path),1,json_object_get_string(model),2,json_object_get_string(serial),3,json_object_get_string(size),4,json_object_get_string(vendor),-1); + int langsize; + config_str lang = default_langs(&langsize); + + GtkTreeIter iter; + gtk_list_store_clear(widgets->LanguagesList); + parsed = yon_file_open(languages_path,&size); + for (int i=0;iLanguagesList,&iter); + gtk_list_store_set(widgets->LanguagesList,&iter,0,0,1,_(cur[1]),2,cur[0],-1); + } + yon_char_parsed_free(cur,cur_size); + } + yon_char_parsed_free(parsed,size); + if (lang) + yon_char_parsed_free(lang,langsize); + + parsed = yon_dir_get_contents(zone_path,&size); + for (int i=0;iRegionCombo),parsed[i],_(parsed[i])); + } + free(path); + } + } + gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->RegionCombo),0); + yon_char_parsed_free(parsed,size); + parsed = yon_config_load(get_layouts_command,&size); + GtkTreeIter itar; + for (int i=0;iLayoutList,&iter,NULL); + gtk_tree_store_set(widgets->LayoutList,&iter,0,layout[0],1,_(layout[1]),2,1,-1); + yon_char_parsed_free(layout,layout_size); + char *command = get_layouts_local_command(layout_id); + config_str layout_local = yon_config_load(command,&layout_size); + free(command); + free(layout_id); + for (int j=0;jLayoutList,&itar,&iter); + gtk_tree_store_set(widgets->LayoutList,&itar,0,layouts_parsed[0],1,_(layouts_parsed[1]),2,1,3,0,-1); + yon_char_parsed_free(layouts_parsed,parsed_size); + } + } + if (layout_size==-1) { + gtk_tree_store_set(widgets->LayoutList,&iter,2,1,-1); + } + yon_char_parsed_free(layout_local,layout_size); + } + } + yon_char_parsed_free(parsed,size); + { + parsed = yon_config_load(get_devices_command,&size); + char *string = yon_char_parsed_to_string(parsed,size,""); + struct json_object *root; + struct json_object *blockdevices; + root = json_tokener_parse(string); + free(string); + json_object_object_get_ex(root, "blockdevices", &blockdevices); + for (long unsigned int i = 0; i < json_object_array_length(blockdevices); i++) { + struct json_object *device = json_object_array_get_idx(blockdevices, i); + struct json_object *path, *size, *model, *vendor, *serial; + + json_object_object_get_ex(device, "path", &path); + json_object_object_get_ex(device, "size", &size); + json_object_object_get_ex(device, "model", &model); + json_object_object_get_ex(device, "vendor", &vendor); + json_object_object_get_ex(device, "serial", &serial); + + gtk_list_store_append(widgets->DevicesList,&iter); + gtk_list_store_set(widgets->DevicesList,&iter,0,json_object_get_string(path),1,json_object_get_string(model),2,json_object_get_string(serial),3,json_object_get_string(size),4,json_object_get_string(vendor),-1); - // } - // // yon_char_parsed_free(parsed,size); - // } + } + yon_char_parsed_free(parsed,size); + } - // parsed = yon_resource_open_file(additional_software_path,&size); - // for (int i=1;iAdditionalSoftwareList,&iter); - // gtk_list_store_set(widgets->AdditionalSoftwareList,&iter,0,1,1,module_parsed[0],3,module_parsed[1],-1); //2,module_parsed[2] - // // yon_char_parsed_free(module_parsed,module_size); - // } - // } - // // if (size) yon_char_parsed_free(parsed,size); - - // config_str models = yon_config_load(get_models_command,&size); - // for (int i=0;iKeyboardModelCombo),models[i],_(models[i+1])); - // } - // if (size) yon_char_parsed_free(models,size); + parsed = yon_resource_open_file(additional_software_path,&size); + for (int i=1;iAdditionalSoftwareList,&iter); + gtk_list_store_set(widgets->AdditionalSoftwareList,&iter,0,1,1,module_parsed[0],3,module_parsed[1],-1); //2,module_parsed[2] + yon_char_parsed_free(module_parsed,module_size); + } + } + if (size) yon_char_parsed_free(parsed,size); + + config_str models = yon_config_load(get_models_command,&size); + for (int i=0;iKeyboardModelCombo),models[i],_(models[i+1])); + } + if (size) yon_char_parsed_free(models,size); gtk_builder_connect_signals(builder,NULL); - // yon_load_proceed(YON_CONFIG_DEFAULT); - // yon_interface_update(widgets); + yon_load_proceed(YON_CONFIG_DEFAULT); + yon_interface_update(widgets); return widgets; } @@ -2778,12 +2776,12 @@ int main(int argc, char *argv[]){ yon_window_config_setup(GTK_WINDOW(widgets->MainWindow)); char *window_config_path = config_path; yon_window_config_load(window_config_path); - // free(window_config_path); + free(window_config_path); GtkCssProvider *css=gtk_css_provider_new(); gtk_css_provider_load_from_resource(css,CssPath); gtk_style_context_add_provider_for_screen(gdk_screen_get_default(), GTK_STYLE_PROVIDER(css), -1); gtk_main(); - // free(widgets); + free(widgets); } \ No newline at end of file -- 2.35.1 From 1b82be6ccf8c21b99109dfe6bbe18281bf6fafc5 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Wed, 11 Sep 2024 10:50:05 +0600 Subject: [PATCH 13/20] Test fix for crash --- source/ubinstall-gtk.c | 23 ++++++++++++----------- source/ubinstall-gtk.h | 2 +- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 1cf125b..6af7f89 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -930,7 +930,7 @@ int yon_image_resize_from_container(GtkImage *target, GdkPixbuf *pixbuf_unscaled void on_region_resized(GtkWidget *,main_window *widgets); void on_region_resized(GtkWidget *,main_window *widgets){ - yon_image_resize_from_container(GTK_IMAGE(widgets->SlidesImage), widgets->slides_original[cur_slide]); + yon_image_resize_from_container(GTK_IMAGE(widgets->SlidesImage), (GdkPixbuf*)g_list_nth_data(widgets->slides_original,cur_slide)); yon_image_resize_from_container(GTK_IMAGE(widgets->RegionImage), widgets->regions_original); yon_image_resize_from_container(GTK_IMAGE(widgets->KeyboardImage), widgets->keyboard_original); } @@ -967,9 +967,9 @@ gboolean on_image_slide(void *data){ main_window *widgets = (main_window*)data; int size; config_str target = yon_char_parsed_new(&size,slide_repeat_path); - // if (size) - // yon_char_parsed_free(target,size); - gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->SlidesImage),widgets->slides_original[cur_slide]); + if (size) + yon_char_parsed_free(target,size); + gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->SlidesImage),(GdkPixbuf*)g_list_nth_data(widgets->slides_original,cur_slide)); // gtk_widget_queue_draw(widgets->SlidesImage); if (cur_slideregions_original = gdk_pixbuf_new_from_resource(regions_path,NULL); widgets->keyboard_original = gdk_pixbuf_new_from_resource(keyboard_path,NULL); - widgets->slides_original = malloc(sizeof(GdkPixbuf*)*size); - widgets->slides_original[0] = gdk_pixbuf_new_from_resource(slide_0_path,NULL); + widgets->slides_original = NULL; + widgets->slides_original = g_list_prepend(widgets->slides_original,gdk_pixbuf_new_from_resource(slide_0_path,NULL)); for (int i=1;islides_original[i] = gdk_pixbuf_new_from_resource(slides[i-1],NULL); + widgets->slides_original = g_list_prepend(widgets->slides_original,gdk_pixbuf_new_from_resource(slides[i-1],NULL)); } + widgets->slides_original = (widgets->slides_original); yon_char_parsed_free(slides,size); int width = gdk_pixbuf_get_width(widgets->regions_original); int height = gdk_pixbuf_get_height(widgets->regions_original); widgets->region_height_mult = (float)height/width; GdkPixbuf *pix = gdk_pixbuf_scale_simple(widgets->regions_original,600,400,GDK_INTERP_BILINEAR); gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->RegionImage),pix); - // g_object_unref(pix); + g_object_unref(pix); pix = gdk_pixbuf_scale_simple(widgets->keyboard_original,600,400,GDK_INTERP_BILINEAR); gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->KeyboardImage),pix); - // g_object_unref(pix); - pix = gdk_pixbuf_scale_simple(widgets->slides_original[0],600,400,GDK_INTERP_BILINEAR); + g_object_unref(pix); + pix = gdk_pixbuf_scale_simple((GdkPixbuf*)g_list_nth_data(widgets->slides_original,0),600,400,GDK_INTERP_BILINEAR); gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->SlidesImage),pix); - // g_object_unref(pix); + g_object_unref(pix); int langsize; config_str lang = default_langs(&langsize); diff --git a/source/ubinstall-gtk.h b/source/ubinstall-gtk.h index 64f0799..f989488 100755 --- a/source/ubinstall-gtk.h +++ b/source/ubinstall-gtk.h @@ -357,7 +357,7 @@ typedef struct { GdkPixbuf *regions_original; GdkPixbuf *keyboard_original; - GdkPixbuf **slides_original; + GList *slides_original; float region_height_mult; GtkWidget *RegionSensitiveCheck; -- 2.35.1 From 75afb7b38967cf2e43dfe15a06c8b32088dc01cd Mon Sep 17 00:00:00 2001 From: YanTheKaller Date: Wed, 11 Sep 2024 17:57:47 +0600 Subject: [PATCH 14/20] Test fix for crash --- source/ubinstall-gtk.c | 94 +++++++++++++++++++++--------------------- 1 file changed, 48 insertions(+), 46 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 6af7f89..890e45d 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -982,6 +982,8 @@ char* yon_debug_output(char *pattern,char*text){ return text; } +void *on_setup_system_configuration(void *data); + void *on_config_save(void *data); void *on_config_save(void *data){ main_window *widgets = (main_window*)data; @@ -1013,9 +1015,11 @@ void *on_config_save(void *data){ main_config.install_complete=1; yon_debug_output("Install set to: %s\n",yon_char_from_int(main_config.install_complete)); yon_debug_output("Save state: %s\n",yon_char_from_int(main_config.save_done)); - if (main_config.save_done){ + if (!main_config.save_done){ yon_debug_output("%s\n","Entered installation page change"); - g_thread_new("success func",(GThreadFunc)on_install_success,widgets); + pthread_t tid; + pthread_create(&tid,NULL,on_setup_system_configuration,widgets); + // g_thread_new("success func",(GThreadFunc)on_install_success,widgets); } main_config.config_save_thread=NULL; @@ -1096,14 +1100,14 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){ } break; case YON_PAGE_REGION: { - // yon_image_resize_from_container(GTK_IMAGE(widgets->RegionImage), widgets->regions_original); + yon_image_resize_from_container(GTK_IMAGE(widgets->RegionImage), widgets->regions_original); yon_switch_page_render(widgets,4); } break; case YON_PAGE_KEYBOARD: { yon_switch_page_render(widgets,5); - // yon_image_resize_from_container(GTK_IMAGE(widgets->KeyboardImage), widgets->keyboard_original); + yon_image_resize_from_container(GTK_IMAGE(widgets->KeyboardImage), widgets->keyboard_original); } break; case YON_PAGE_OS_COMPONENTS: @@ -1123,7 +1127,7 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){ main_config.progress_thread = gdk_threads_add_timeout(500,(GSourceFunc)yon_installation_progress_update,widgets); if (!main_config.slider_thread&&!main_config.configure_mode) - // main_config.slider_thread = g_timeout_add(5000,(GSourceFunc)on_image_slide,widgets); + main_config.slider_thread = g_timeout_add(5000,(GSourceFunc)on_image_slide,widgets); gtk_widget_show(gtk_widget_get_parent(widgets->InstallationProgress)); } break; @@ -1168,8 +1172,8 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){ textdomain(LocaleName); gtk_button_set_label(GTK_BUTTON(widgets->NextButton),RESTART_LABEL); gtk_button_set_label(GTK_BUTTON(widgets->CancelInstallButton),EXIT_LABEL); - // gtk_image_set_from_icon_name(GTK_IMAGE(gtk_button_get_image(GTK_BUTTON(widgets->NextButton))), - // "com.ublinux.ubinstall-gtk.sync-symbolic",GTK_ICON_SIZE_BUTTON); + gtk_image_set_from_icon_name(GTK_IMAGE(gtk_button_get_image(GTK_BUTTON(widgets->NextButton))), + "com.ublinux.ubinstall-gtk.sync-symbolic",GTK_ICON_SIZE_BUTTON); yon_debug_output("%s\n","Done labels and button icon"); } break; @@ -1227,7 +1231,6 @@ void *on_install_error(main_window *widgets){ return NULL; } -void *on_setup_system_configuration(void *data); void *on_setup_system_configuration(void * data){ yon_debug_output("%s\n","Entered thread"); main_window *widgets = (main_window*)data; @@ -1673,17 +1676,19 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ case YON_PAGE_USERS:{ //users if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->UserNameEntry)))||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->UsernameSensitiveCheck))){ - yon_config_remove_by_key(user_gecos_parameter); + // yon_config_remove_by_key(user_gecos_parameter); } else { char *username = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->UserNameEntry)); - yon_config_register(user_gecos_parameter,user_gecos_parameter_command,username); + if (username){}; + // yon_config_register(user_gecos_parameter,user_gecos_parameter_command,username); } if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->LoginEntry)))||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LoginSensitiveCheck))){ - yon_config_remove_by_key(user_name_parameter); + // yon_config_remove_by_key(user_name_parameter); } else { char *login = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->LoginEntry)); - yon_config_register(user_name_parameter,user_name_parameter_command,login); + if (login){}; + // yon_config_register(user_name_parameter,user_name_parameter_command,login); } @@ -1695,15 +1700,16 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ return; } else { char *password = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->PasswordEntry)); + if (password){}; - yon_config_register(user_password_parameter,user_password_parameter_command,password); + // yon_config_register(user_password_parameter,user_password_parameter_command,password); } } else { - yon_config_remove_by_key(user_password_parameter); + // yon_config_remove_by_key(user_password_parameter); } }else { - yon_config_remove_by_key(user_password_parameter); + // yon_config_remove_by_key(user_password_parameter); } @@ -1715,38 +1721,41 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ return; } else { char *root_password = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->AdminPasswordEntry)); - yon_config_register(root_password_parameter,root_password_parameter_command,root_password); + if (root_password){}; + // yon_config_register(root_password_parameter,root_password_parameter_command,root_password); } } else { - yon_config_remove_by_key(root_password_parameter); + // yon_config_remove_by_key(root_password_parameter); } } else { - yon_config_remove_by_key(root_password_parameter); + // yon_config_remove_by_key(root_password_parameter); } if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->HostnameSensitiveCheck))){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutoHostnameCheck))){ - yon_config_register(hostname_parameter,hostname_parameter_command,"auto"); + // yon_config_register(hostname_parameter,hostname_parameter_command,"auto"); } else { if (!yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->HotnameEntry)))){ char *hostname = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->HotnameEntry)); - yon_config_register(hostname_parameter,hostname_parameter_command,hostname); + if (hostname){}; + // yon_config_register(hostname_parameter,hostname_parameter_command,hostname); } else { - yon_config_remove_by_key(hostname_parameter); + // yon_config_remove_by_key(hostname_parameter); } } } else { - yon_config_remove_by_key(hostname_parameter); + // yon_config_remove_by_key(hostname_parameter); } if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutologinSensitiveCheck))){ char *autologin = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutologinCheck))?"yes":"no"; - yon_config_register(autologin_parameter,autologin_parameter_command,autologin); + if (autologin){}; + // yon_config_register(autologin_parameter,autologin_parameter_command,autologin); } else { - yon_config_remove_by_key(autologin_parameter); + // yon_config_remove_by_key(autologin_parameter); } if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LayoutSensitiveCheck))){ @@ -1763,9 +1772,10 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ } } if (!yon_char_is_empty(locales)){ - yon_config_register(xkblayout_parameter,xkblayout_parameter_command,locales); + printf("%s\n",locales); + // yon_config_register(xkblayout_parameter,xkblayout_parameter_command,locales); } else { - yon_config_remove_by_key(xkblayout_parameter); + // yon_config_remove_by_key(xkblayout_parameter); } } } else { @@ -1774,37 +1784,28 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->LayoutBindingCombo))&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->OptionsSensitiveCheck))){ char *options = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->LayoutBindingCombo)); - yon_config_register(xkboptions_parameter,xkboptions_parameter_command,options); + if (options){}; + // yon_config_register(xkboptions_parameter,xkboptions_parameter_command,options); } else { yon_config_remove_by_key(xkboptions_parameter); } if (!main_config.configure_mode){ - yon_debug_output("%s\n","Entered saving"); - // if (!main_config.install_complete){ - // gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION); - // } - if (gtk_progress_bar_get_fraction(GTK_PROGRESS_BAR(widgets->InstallationProgress))>0.9){ + if (main_config.install_complete){ yon_debug_output("%s\n","Entered saving before installation done"); gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION); gtk_label_set_text(GTK_LABEL(widgets->InstallationLabel),CONFIGURATION_LABEL); - pthread_t tid; yon_debug_output("%s\n","installation ending configuration startup"); + pthread_t tid; pthread_create(&tid,NULL,on_setup_system_configuration,widgets); - } else { - // pthread_t tid; - // pthread_create(&tid,NULL,on_save_system_configuration,widgets); - yon_debug_output("%s\n","installation process configuration startup"); - } - main_config.save_done=1; - yon_debug_output("Save changed to: %s\n",yon_char_from_int(main_config.save_done)); - yon_debug_output("Install state: %s\n",yon_char_from_int(main_config.install_complete)); - if (!main_config.install_complete){ - gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION); gtk_widget_set_sensitive(widgets->CancelInstallButton,0); gtk_widget_set_sensitive(widgets->NextButton,0); gtk_widget_set_sensitive(widgets->BackButton,0); + main_config.save_done=1; + } + if (!main_config.install_complete){ + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION); } } else { gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_CONFIGURE_END); @@ -2492,7 +2493,7 @@ main_window *yon_main_window_complete(){ g_signal_connect(G_OBJECT(widgets->GpartedNearButton),"clicked",G_CALLBACK(on_gparted_open),NULL); g_signal_connect(G_OBJECT(widgets->Notebook),"switch-page",G_CALLBACK(on_page_changed),widgets); - // g_signal_connect(G_OBJECT(widgets->MainWindow),"check-resize",G_CALLBACK(on_region_resized),widgets); + g_signal_connect(G_OBJECT(widgets->MainWindow),"check-resize",G_CALLBACK(on_region_resized),widgets); g_signal_connect(G_OBJECT(widgets->BackButton),"clicked",G_CALLBACK(on_page_navigation_clicked),widgets); g_signal_connect(G_OBJECT(widgets->NextButton),"clicked",G_CALLBACK(on_page_navigation_clicked),widgets); g_signal_connect(G_OBJECT(widgets->CancelInstallButton),"clicked",G_CALLBACK(on_page_navigation_clicked),widgets); @@ -2548,7 +2549,8 @@ main_window *yon_main_window_complete(){ gtk_window_set_icon_name(GTK_WINDOW(widgets->MainWindow),icon_path); int size; - config_str parsed = yon_file_open(licence_path,&size); + config_str parsed = NULL; + parsed = yon_file_open(licence_path,&size); if (size){ char *licence = yon_char_parsed_to_string(parsed,size,""); gtk_label_set_text(GTK_LABEL(widgets->LicenceLabel),licence); @@ -2564,7 +2566,7 @@ main_window *yon_main_window_complete(){ for (int i=1;islides_original = g_list_prepend(widgets->slides_original,gdk_pixbuf_new_from_resource(slides[i-1],NULL)); } - widgets->slides_original = (widgets->slides_original); + widgets->slides_original = g_list_reverse(widgets->slides_original); yon_char_parsed_free(slides,size); int width = gdk_pixbuf_get_width(widgets->regions_original); int height = gdk_pixbuf_get_height(widgets->regions_original); -- 2.35.1 From 172c8500bf7c3cb3ec04a1a37cf9a10807723d7b Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Wed, 11 Sep 2024 18:11:00 +0600 Subject: [PATCH 15/20] Returned parameters registering --- source/ubinstall-gtk.c | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 890e45d..c0a17e8 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -1676,19 +1676,19 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ case YON_PAGE_USERS:{ //users if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->UserNameEntry)))||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->UsernameSensitiveCheck))){ - // yon_config_remove_by_key(user_gecos_parameter); + yon_config_remove_by_key(user_gecos_parameter); } else { char *username = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->UserNameEntry)); if (username){}; - // yon_config_register(user_gecos_parameter,user_gecos_parameter_command,username); + yon_config_register(user_gecos_parameter,user_gecos_parameter_command,username); } if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->LoginEntry)))||!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LoginSensitiveCheck))){ - // yon_config_remove_by_key(user_name_parameter); + yon_config_remove_by_key(user_name_parameter); } else { char *login = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->LoginEntry)); if (login){}; - // yon_config_register(user_name_parameter,user_name_parameter_command,login); + yon_config_register(user_name_parameter,user_name_parameter_command,login); } @@ -1702,14 +1702,14 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ char *password = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->PasswordEntry)); if (password){}; - // yon_config_register(user_password_parameter,user_password_parameter_command,password); + yon_config_register(user_password_parameter,user_password_parameter_command,password); } } else { - // yon_config_remove_by_key(user_password_parameter); + yon_config_remove_by_key(user_password_parameter); } }else { - // yon_config_remove_by_key(user_password_parameter); + yon_config_remove_by_key(user_password_parameter); } @@ -1722,40 +1722,40 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ } else { char *root_password = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->AdminPasswordEntry)); if (root_password){}; - // yon_config_register(root_password_parameter,root_password_parameter_command,root_password); + yon_config_register(root_password_parameter,root_password_parameter_command,root_password); } } else { - // yon_config_remove_by_key(root_password_parameter); + yon_config_remove_by_key(root_password_parameter); } } else { - // yon_config_remove_by_key(root_password_parameter); + yon_config_remove_by_key(root_password_parameter); } if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->HostnameSensitiveCheck))){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutoHostnameCheck))){ - // yon_config_register(hostname_parameter,hostname_parameter_command,"auto"); + yon_config_register(hostname_parameter,hostname_parameter_command,"auto"); } else { if (!yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->HotnameEntry)))){ char *hostname = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->HotnameEntry)); if (hostname){}; - // yon_config_register(hostname_parameter,hostname_parameter_command,hostname); + yon_config_register(hostname_parameter,hostname_parameter_command,hostname); } else { - // yon_config_remove_by_key(hostname_parameter); + yon_config_remove_by_key(hostname_parameter); } } } else { - // yon_config_remove_by_key(hostname_parameter); + yon_config_remove_by_key(hostname_parameter); } if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutologinSensitiveCheck))){ char *autologin = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->AutologinCheck))?"yes":"no"; if (autologin){}; - // yon_config_register(autologin_parameter,autologin_parameter_command,autologin); + yon_config_register(autologin_parameter,autologin_parameter_command,autologin); } else { - // yon_config_remove_by_key(autologin_parameter); + yon_config_remove_by_key(autologin_parameter); } if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->LayoutSensitiveCheck))){ @@ -1773,9 +1773,9 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ } if (!yon_char_is_empty(locales)){ printf("%s\n",locales); - // yon_config_register(xkblayout_parameter,xkblayout_parameter_command,locales); + yon_config_register(xkblayout_parameter,xkblayout_parameter_command,locales); } else { - // yon_config_remove_by_key(xkblayout_parameter); + yon_config_remove_by_key(xkblayout_parameter); } } } else { @@ -1785,7 +1785,7 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->LayoutBindingCombo))&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->OptionsSensitiveCheck))){ char *options = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->LayoutBindingCombo)); if (options){}; - // yon_config_register(xkboptions_parameter,xkboptions_parameter_command,options); + yon_config_register(xkboptions_parameter,xkboptions_parameter_command,options); } else { yon_config_remove_by_key(xkboptions_parameter); } -- 2.35.1 From ee2066a5a3a854711d96f5385afe045d22141222 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Wed, 11 Sep 2024 18:15:50 +0600 Subject: [PATCH 16/20] Test fix for sensitive button when must be unsensitive --- source/ubinstall-gtk.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index c0a17e8..5ebcf14 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -1806,6 +1806,10 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ } if (!main_config.install_complete){ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION); + + gtk_widget_set_sensitive(widgets->CancelInstallButton,0); + gtk_widget_set_sensitive(widgets->NextButton,0); + gtk_widget_set_sensitive(widgets->BackButton,0); } } else { gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_CONFIGURE_END); -- 2.35.1 From 116efcb1f22ee3f0d45b7b60fd1f91cf586f9d75 Mon Sep 17 00:00:00 2001 From: YanTheKaller Date: Thu, 12 Sep 2024 11:32:52 +0000 Subject: [PATCH 17/20] Test fix for crash --- source/ubinstall-gtk.c | 26 +++----------------------- 1 file changed, 3 insertions(+), 23 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 5ebcf14..f4700e8 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -156,25 +156,6 @@ void yon_load_proceed(YON_CONFIG_TYPE type){ } void yon_interface_update(main_window *widgets){ - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->RegionSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->LanguagesSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->MainLanguageSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->KeyboardModelSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->OptionsSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->LayoutSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->UsernameSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->LoginSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->PasswordSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->AutologinSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->RootPasswordSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->HostnameSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->CommonFilesystemSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->CommonSectionSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->NextSizeSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->NextFSTypeSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->NextLabelSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->SameFSTypeSensitiveCheck),0); - // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->SameLabelSensitiveCheck),0); if (widgets){}; enum YON_PAGES page=YON_PAGE_COMPLETED; char *type = config(AUTOINSTALL_TYPE_INSTALL); @@ -945,6 +926,7 @@ void on_toggle_block(GtkToggleButton *self){ void yon_switch_page_render(main_window *widgets, int page); void yon_switch_page_render(main_window *widgets, int page){ + if (widgets&&page){}; GtkContainer *parent = GTK_CONTAINER(gtk_widget_get_parent(widgets->UsersToggle)); GList *list = gtk_container_get_children(parent); for (guint i=0;iBackButton,0); if ((!main_config.configure_mode)) gtk_widget_set_sensitive(widgets->CancelInstallButton,0); - if (main_config.config_save_thread&&!main_config.configure_mode) - g_thread_join(main_config.config_save_thread); if (!main_config.progress_thread&&!main_config.configure_mode) main_config.progress_thread = gdk_threads_add_timeout(500,(GSourceFunc)yon_installation_progress_update,widgets); @@ -1823,7 +1803,7 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ pthread_t tid; pthread_create(&tid,&attr,on_config_save,widgets); - memcpy(&main_config.install_thread,&tid,sizeof(pthread_t)); + // memcpy(&main_config.install_thread,&tid,sizeof(pthread_t)); } gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION); } break; -- 2.35.1 From 139c68ba3256ea1b9d1a164aad26073bafc02ccc Mon Sep 17 00:00:00 2001 From: YanTheKaller Date: Thu, 12 Sep 2024 12:09:49 +0000 Subject: [PATCH 18/20] Fixed progress bar --- source/ubinstall-gtk.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index f4700e8..bd4e352 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -972,7 +972,7 @@ void *on_config_save(void *data){ int size=0; config_str parameters = yon_config_get_all(&size); - // main_config.install_thread=(GThread*)0x1; + main_config.install_thread=(GThread*)0x1; FILE *file = fopen(progress_path,"w"); if (file) fclose(file); @@ -1014,14 +1014,17 @@ gboolean yon_installation_progress_update(void *data) { main_window *widgets = (main_window*)data; int size; + printf("\n\nCheck buzy\n\n"); while (main_config.log_progress_buzy) { while (gtk_events_pending()) gtk_main_iteration(); } main_config.log_progress_buzy = 1; config_str text = yon_file_open(progress_path, &size); main_config.log_progress_buzy = 0; + printf("\n\ncycle\n\n"); if (size) { + printf("%s\n\n\n\n\n",text[size-1]); if (!yon_char_is_empty(text[size-1]) && text[size-1][0] == '(') { char *current_copy = yon_char_new(text[size-1]); char *percentage = yon_char_divide_search(current_copy, ")", -1); -- 2.35.1 From 758d58591feff0d2e13b64d4cda1e8e84288c827 Mon Sep 17 00:00:00 2001 From: YanTheKaller Date: Thu, 12 Sep 2024 12:13:05 +0000 Subject: [PATCH 19/20] Fixed progress bar --- source/ubinstall-gtk.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index bd4e352..ddfd30e 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -972,7 +972,7 @@ void *on_config_save(void *data){ int size=0; config_str parameters = yon_config_get_all(&size); - main_config.install_thread=(GThread*)0x1; + // main_config.install_thread=(GThread*)0x1; FILE *file = fopen(progress_path,"w"); if (file) fclose(file); @@ -1806,7 +1806,7 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ pthread_t tid; pthread_create(&tid,&attr,on_config_save,widgets); - // memcpy(&main_config.install_thread,&tid,sizeof(pthread_t)); + memcpy(&main_config.install_thread,&tid,sizeof(pthread_t)); } gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION); } break; -- 2.35.1 From c8fa025fd4e1810eb271d1d3afc0237fd9d63d35 Mon Sep 17 00:00:00 2001 From: YanTheKaller Date: Thu, 12 Sep 2024 12:14:34 +0000 Subject: [PATCH 20/20] Removed prints --- source/ubinstall-gtk.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index ddfd30e..ec36463 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -1014,17 +1014,14 @@ gboolean yon_installation_progress_update(void *data) { main_window *widgets = (main_window*)data; int size; - printf("\n\nCheck buzy\n\n"); while (main_config.log_progress_buzy) { while (gtk_events_pending()) gtk_main_iteration(); } main_config.log_progress_buzy = 1; config_str text = yon_file_open(progress_path, &size); main_config.log_progress_buzy = 0; - printf("\n\ncycle\n\n"); if (size) { - printf("%s\n\n\n\n\n",text[size-1]); if (!yon_char_is_empty(text[size-1]) && text[size-1][0] == '(') { char *current_copy = yon_char_new(text[size-1]); char *percentage = yon_char_divide_search(current_copy, ")", -1); -- 2.35.1