From 9a40a826b4e1ae5fe58050d917ef8c857e10f47c Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Fri, 21 Apr 2023 10:20:02 +0000 Subject: [PATCH 01/23] Fixed config saving and creation with --lock-settings argument --- source/ubl-settings-manager.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index d7cb2e2..413631e 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -897,7 +897,7 @@ int setup_config(){ char *pth=malloc(7+strlen(UserConfigPath)+strlen(getlogin())); sprintf(pth,"%s%s%s","/home/",getlogin(),UserConfigPath); g_key_file_load_from_file(configfile,pth,G_KEY_FILE_KEEP_TRANSLATIONS,&err); - if (err){ + if (err||main_config.lock_settings==1){ g_error_free(err); err=NULL; g_key_file_load_from_file(configfile,GlobalConfigPath,G_KEY_FILE_KEEP_TRANSLATIONS,&err); @@ -959,6 +959,8 @@ int setup_config(){ }; void save_config(actionWidgets *widgets){ + if (main_config.lock_settings==1) + return; GKeyFile *gfile=g_key_file_new(); int sz=1,szm=1; @@ -1023,7 +1025,8 @@ void save_config(actionWidgets *widgets){ sprintf(fromint,"%d",(int)((float)main_config.labelDensity/1000)); g_key_file_set_string(gfile,"window","LabelDensity",fromint); g_key_file_set_string(gfile,"window","User",login); - g_key_file_save_to_file(gfile,pth,NULL); + if (main_config.lock_settings==0) + g_key_file_save_to_file(gfile,pth,NULL); } char *yon_cut(char *source, int size, int startpos){ @@ -1638,6 +1641,7 @@ dictionary *yon_theme_new(dictionary **widgetss, GtkBuilder *builder, char *them curWidgets->MenuItemAboutSystem=GTK_WIDGET(gtk_builder_get_object(curWidgets->builder,yon_char_get_augumented(theme_id,"MenuItemAboutSystem"))); curWidgets->BannerRevealer=GTK_WIDGET(gtk_builder_get_object(curWidgets->builder,yon_char_get_augumented(theme_id,"RevealButton"))); curWidgets->Revealer=GTK_WIDGET(gtk_builder_get_object(curWidgets->builder,yon_char_get_augumented(theme_id,"Revealer"))); + curWidgets->BackToSettingsLabel=GTK_WIDGET(gtk_builder_get_object(curWidgets->builder,yon_char_get_augumented(theme_id,"BackToSettingsLabel"))); curWidgets->SettingsSections=main_config.SettingsSections; if (main_config.BannerHidden==0){ gtk_revealer_set_reveal_child(GTK_REVEALER(curWidgets->Revealer),1); @@ -1649,7 +1653,7 @@ dictionary *yon_theme_new(dictionary **widgetss, GtkBuilder *builder, char *them gtk_style_context_add_class(gtk_widget_get_style_context(curWidgets->icvpack),"iconview"); curWidgets->socket=GTK_WIDGET(create_socket(curWidgets)); if (curWidgets->ButtonBackToMain!=NULL) - gtk_button_set_label(GTK_BUTTON(curWidgets->ButtonBackToMain),_("Back to all settings")); + gtk_label_set_text(GTK_LABEL(curWidgets->BackToSettingsLabel),_("Back to all settings")); gtk_window_set_title(GTK_WINDOW(curWidgets->window),_("UBLinux Settings Manager")); if (curWidgets->GnomePaned!=NULL){ gtk_paned_set_position(GTK_PANED(curWidgets->GnomePaned),main_config.iconSegmentSize); From 8d5a89df4ef10b1801c218eabc6b08059fb1c86b Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Fri, 21 Apr 2023 10:21:08 +0000 Subject: [PATCH 02/23] Fixed buttons in About Dialog showing in some themes --- source/ubl-settings-manager.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index 413631e..f9c1f9c 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -637,12 +637,17 @@ void on_about(GtkWidget *button){ GtkBuilder *builder = gtk_builder_new_from_file(GladePath); GtkWidget *AboutButtons = GTK_WIDGET(gtk_builder_get_object(builder,"AboutButtons")); GtkWidget *About = GTK_WIDGET(gtk_builder_get_object(builder, "ublAbloutWindow")); - gtk_about_dialog_set_comments(GTK_ABOUT_DIALOG(About),_("Settings manager for UBLinux")); - gtk_about_dialog_set_program_name(GTK_ABOUT_DIALOG(About),_("UBLinux Settings Manager")); + gtk_about_dialog_set_comments(GTK_ABOUT_DIALOG(About),_(ABOUT_PROJECT_COMMENTS_LABEL)); + gtk_about_dialog_set_program_name(GTK_ABOUT_DIALOG(About),_(UBL_SETTINGS_MANAGER_TITLE)); + gtk_window_set_title(GTK_WINDOW(About),UBL_SETTINGS_MANAGER_ABOUT_TITLE); gtk_about_dialog_set_version(GTK_ABOUT_DIALOG(About),version_application); gtk_widget_show(About); - gtk_about_dialog_set_website_label(GTK_ABOUT_DIALOG(About),_("Project Home Page")); - gtk_widget_set_visible(AboutButtons,0); + GList *list = gtk_container_get_children(GTK_CONTAINER(AboutButtons)); + gtk_widget_destroy(GTK_WIDGET(g_list_first(list))); + gtk_widget_destroy(GTK_WIDGET(g_list_first(list)->next)); + gtk_widget_destroy(GTK_WIDGET(g_list_first(list)->next->next)); + gtk_about_dialog_set_website_label(GTK_ABOUT_DIALOG(About),_(ABOUT_PROJECT_HOME_PAGE_LABEL)); + // gtk_widget_set_visible(AboutButtons,0); } int launch(thread_output *thread){ From 7325490f59b44fc1d02624fc0921ca1562b38e58 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Fri, 21 Apr 2023 10:36:12 +0000 Subject: [PATCH 03/23] All label strings were moved to header file --- source/ubl-settings-manager.c | 54 +++++++++++++++++------------------ source/ubl-settings-manager.h | 23 +++++++++++++++ 2 files changed, 50 insertions(+), 27 deletions(-) diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index f9c1f9c..ebf8165 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -280,7 +280,7 @@ void on_paned_move(GtkPaned* self, GtkScrollType* scroll_type, actionWidgets *wi } int on_settingsOpen(GtkWidget *button, actionWidgets *widgets){ - gtk_window_set_title(GTK_WINDOW(widgets->SettingsWindow),"UBLinux Settings Manager"); + gtk_window_set_title(GTK_WINDOW(widgets->SettingsWindow),UBL_SETTINGS_MANAGER_TITLE); gtk_widget_set_size_request(widgets->SettingsWindow,400,250); GtkIconTheme *icthm=gtk_icon_theme_get_default(); gtk_window_set_icon(GTK_WINDOW(widgets->SettingsWindow),gtk_icon_info_load_icon(gtk_icon_theme_lookup_icon_for_scale(icthm, AppIconPath,yon_get_icon_size(32),1,GTK_ICON_LOOKUP_FORCE_SVG),NULL)); @@ -1658,8 +1658,8 @@ dictionary *yon_theme_new(dictionary **widgetss, GtkBuilder *builder, char *them gtk_style_context_add_class(gtk_widget_get_style_context(curWidgets->icvpack),"iconview"); curWidgets->socket=GTK_WIDGET(create_socket(curWidgets)); if (curWidgets->ButtonBackToMain!=NULL) - gtk_label_set_text(GTK_LABEL(curWidgets->BackToSettingsLabel),_("Back to all settings")); - gtk_window_set_title(GTK_WINDOW(curWidgets->window),_("UBLinux Settings Manager")); + gtk_label_set_text(GTK_LABEL(curWidgets->BackToSettingsLabel),BACK_TO_ALL_SETTINGS_LABEL); + gtk_window_set_title(GTK_WINDOW(curWidgets->window),UBL_SETTINGS_MANAGER_TITLE); if (curWidgets->GnomePaned!=NULL){ gtk_paned_set_position(GTK_PANED(curWidgets->GnomePaned),main_config.iconSegmentSize); g_signal_connect(G_OBJECT(curWidgets->GnomePaned), "notify::position", G_CALLBACK(on_paned_move), curWidgets); @@ -1672,7 +1672,7 @@ dictionary *yon_theme_new(dictionary **widgetss, GtkBuilder *builder, char *them // } if (curWidgets->ButtonBackToMain!=NULL) g_signal_connect(G_OBJECT(curWidgets->ButtonBackToMain), "clicked", G_CALLBACK(on_backToSettingsButton_clicked), curWidgets); - gtk_window_set_title(GTK_WINDOW(curWidgets->window),_("UBLinux Settings Manager")); + gtk_window_set_title(GTK_WINDOW(curWidgets->window),UBL_SETTINGS_MANAGER_TITLE); gtk_window_move(GTK_WINDOW(curWidgets->window),main_config.windowPosX,main_config.windowPosY); // Standard for all themes @@ -1736,28 +1736,28 @@ dictionary *yon_theme_new(dictionary **widgetss, GtkBuilder *builder, char *them } gtk_widget_hide_on_delete(curWidgets->window); g_signal_connect(G_OBJECT(curWidgets->window), "destroy", G_CALLBACK(yon_main_quit), curWidgets); - gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"MainHeaderNameLabel")),_("UBLinux Settings Manager")); - gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"sectionsHeaderNameLabel")),_("UBLinux Settings Manager")); - gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"GnomeHeaderNameLabel")),_("UBLinux Settings Manager")); - gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"UBLinux Settings")),_("UBLinux Settings Manager")); - gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"webHeaderNameLabel")),_("UBLinux Settings Manager")); - gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"warningHeaderNameLabel")),_("UBLinux Settings Manager")); - gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"LoaderHeaderNameLabel")),_("UBLinux Settings Manager")); - gtk_label_set_text(GTK_LABEL(curWidgets->settingsSubmenuLabelSize),_("Icon size")); - gtk_label_set_text(GTK_LABEL(curWidgets->settingsSubmenuLabelTheme),_("Window theme")); - gtk_label_set_text(GTK_LABEL(curWidgets->helpHeader),_("Would you like to read documentation in the Web?")); - gtk_label_set_text(GTK_LABEL(curWidgets->helpText),_("You will be redirected to documentation site, where user help pages are translated and supported by community.")); - gtk_button_set_label(GTK_BUTTON(curWidgets->ReadHelpButton),_("Read online")); - gtk_button_set_label(GTK_BUTTON(curWidgets->CancelHelpButton),_("Cancel")); - gtk_button_set_label(GTK_BUTTON(curWidgets->settingsCancel),_("Close")); - gtk_button_set_label(GTK_BUTTON(curWidgets->settingsAccept),_("Save and apply")); - gtk_button_set_label(GTK_BUTTON(curWidgets->SectionSettingsSaveButton),_("Apply")); - gtk_button_set_label(GTK_BUTTON(curWidgets->AlwaysOpenDocumentation),_("Always redirect")); - gtk_menu_item_set_label(GTK_MENU_ITEM(curWidgets->MenuItemSettings),_("Settings")); - gtk_menu_item_set_label(GTK_MENU_ITEM(curWidgets->MenuItemDocumentation),_("About...")); - gtk_button_set_label(GTK_BUTTON(curWidgets->CautionUnderstandButton),_("Understood")); - gtk_button_set_label(GTK_BUTTON(curWidgets->settingsSectionsSettingsButton),_("Sections management")); - gtk_label_set_text(GTK_LABEL(curWidgets->settingsDoubleClickLabel),_("Double click selection")); + gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"MainHeaderNameLabel")),UBL_SETTINGS_MANAGER_TITLE); + gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"sectionsHeaderNameLabel")),UBL_SETTINGS_MANAGER_TITLE); + gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"GnomeHeaderNameLabel")),UBL_SETTINGS_MANAGER_TITLE); + gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"UBLinux Settings")),UBL_SETTINGS_MANAGER_TITLE); + gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"webHeaderNameLabel")),UBL_SETTINGS_MANAGER_TITLE); + gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"warningHeaderNameLabel")),UBL_SETTINGS_MANAGER_TITLE); + gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"LoaderHeaderNameLabel")),UBL_SETTINGS_MANAGER_TITLE); + gtk_label_set_text(GTK_LABEL(curWidgets->settingsSubmenuLabelSize),ICON_SIZE_LABEL); + gtk_label_set_text(GTK_LABEL(curWidgets->settingsSubmenuLabelTheme),WINDOW_THEME_LABEL); + gtk_label_set_text(GTK_LABEL(curWidgets->helpHeader),REDIRECTION_LABEL); + gtk_label_set_text(GTK_LABEL(curWidgets->helpText),REDIRECTION_COMMENT_LABEL); + gtk_button_set_label(GTK_BUTTON(curWidgets->ReadHelpButton),READ_ONLINE_LABEL); + gtk_button_set_label(GTK_BUTTON(curWidgets->CancelHelpButton),CANCEL_LABEL); + gtk_button_set_label(GTK_BUTTON(curWidgets->settingsCancel),CLOSE_LABEL); + gtk_button_set_label(GTK_BUTTON(curWidgets->settingsAccept),SAVE_AND_APPLY_LABEL); + gtk_button_set_label(GTK_BUTTON(curWidgets->SectionSettingsSaveButton),APPLY_LABEL); + gtk_button_set_label(GTK_BUTTON(curWidgets->AlwaysOpenDocumentation),ALWAYS_REDIRECT_LABEL); + gtk_menu_item_set_label(GTK_MENU_ITEM(curWidgets->MenuItemSettings),SETTINGS_LABEL); + gtk_menu_item_set_label(GTK_MENU_ITEM(curWidgets->MenuItemDocumentation),ABOUT_LABEL); + gtk_button_set_label(GTK_BUTTON(curWidgets->CautionUnderstandButton),UNDERSTOOD_LABEL); + gtk_button_set_label(GTK_BUTTON(curWidgets->settingsSectionsSettingsButton),SECTIONS_MANAGEMENT_LABEL); + gtk_label_set_text(GTK_LABEL(curWidgets->settingsDoubleClickLabel),DOUBLE_CLICK_SELECTION_LABEL); return widgets; } @@ -1786,7 +1786,7 @@ int main(int argc, char *argv[]){ } gtk_init(&argc, &argv); if (setup_config()==0){ - printf("Ошибка загрузки конфига!\n"); + printf(CONFIG_LOAD_ERROR); return -1; } actionWidgets *widget=NULL; diff --git a/source/ubl-settings-manager.h b/source/ubl-settings-manager.h index 2aaaf04..55652a0 100644 --- a/source/ubl-settings-manager.h +++ b/source/ubl-settings-manager.h @@ -23,6 +23,28 @@ typedef char* string; string version_application = "1.3"; +#define UBL_SETTINGS_MANAGER_TITLE _("UBLinux Settings Manager") +#define UBL_SETTINGS_MANAGER_ABOUT_TITLE _("About UBLinux Settings Manager") +#define ABOUT_PROJECT_HOME_PAGE_LABEL _("Project Home Page") +#define ABOUT_PROJECT_COMMENTS_LABEL _("Settings manager for UBLinux") +#define CONFIG_LOAD_ERROR _("Config loading failed!\n") +#define DOUBLE_CLICK_SELECTION_LABEL _("Double click selection") +#define SECTIONS_MANAGEMENT_LABEL _("Sections management") +#define UNDERSTOOD_LABEL _("Understood") +#define ABOUT_LABEL _("About...") +#define SETTINGS_LABEL _("Settings") +#define ALWAYS_REDIRECT_LABEL _("Always redirect") +#define APPLY_LABEL _("Apply") +#define SAVE_AND_APPLY_LABEL _("Save and apply") +#define CLOSE_LABEL _("Close") +#define CANCEL_LABEL _("Cancel") +#define READ_ONLINE_LABEL _("Read online") +#define REDIRECTION_COMMENT_LABEL _("You will be redirected to documentation site, where user help pages are translated and supported by community.") +#define REDIRECTION_LABEL _("Would you like to read documentation in the Web?") +#define WINDOW_THEME_LABEL _("Window theme") +#define ICON_SIZE_LABEL _("Icon size") +#define BACK_TO_ALL_SETTINGS_LABEL _("Back to all settings") + typedef struct apps{ char *Name; @@ -173,6 +195,7 @@ typedef struct { GtkWidget *Revealer; GtkWidget *settingsDoubleClickSwitch; GtkWidget *settingsDoubleClickLabel; + GtkWidget *BackToSettingsLabel; } actionWidgets; From f6aa91ecda949b0313a4d79f91cab0754198ff8f Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Fri, 21 Apr 2023 12:43:12 +0000 Subject: [PATCH 04/23] Fixed config algorythms --- source/ubl-settings-manager.c | 77 +++- source/ubl-settings-manager.h | 1 + ubl-settings-manager.glade | 728 +++++++++++++++++++--------------- 3 files changed, 482 insertions(+), 324 deletions(-) diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index ebf8165..d481b2f 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -636,16 +636,18 @@ void on_double_click_changed(GtkWidget *Switch, gboolean state, dictionary *widg void on_about(GtkWidget *button){ GtkBuilder *builder = gtk_builder_new_from_file(GladePath); GtkWidget *AboutButtons = GTK_WIDGET(gtk_builder_get_object(builder,"AboutButtons")); + GtkWidget *AboutHeadLabel = GTK_WIDGET(gtk_builder_get_object(builder,"aboutHeadLabel")); GtkWidget *About = GTK_WIDGET(gtk_builder_get_object(builder, "ublAbloutWindow")); gtk_about_dialog_set_comments(GTK_ABOUT_DIALOG(About),_(ABOUT_PROJECT_COMMENTS_LABEL)); gtk_about_dialog_set_program_name(GTK_ABOUT_DIALOG(About),_(UBL_SETTINGS_MANAGER_TITLE)); - gtk_window_set_title(GTK_WINDOW(About),UBL_SETTINGS_MANAGER_ABOUT_TITLE); + gtk_label_set_text(GTK_LABEL(AboutHeadLabel),UBL_SETTINGS_MANAGER_ABOUT_TITLE); gtk_about_dialog_set_version(GTK_ABOUT_DIALOG(About),version_application); gtk_widget_show(About); GList *list = gtk_container_get_children(GTK_CONTAINER(AboutButtons)); - gtk_widget_destroy(GTK_WIDGET(g_list_first(list))); - gtk_widget_destroy(GTK_WIDGET(g_list_first(list)->next)); - gtk_widget_destroy(GTK_WIDGET(g_list_first(list)->next->next)); + gtk_widget_destroy(AboutButtons); + // gtk_widget_destroy(GTK_WIDGET(g_list_first(list)->next->next)); + // gtk_widget_destroy(GTK_WIDGET(g_list_first(list)->next)); + // gtk_widget_destroy(GTK_WIDGET(g_list_first(list))); gtk_about_dialog_set_website_label(GTK_ABOUT_DIALOG(About),_(ABOUT_PROJECT_HOME_PAGE_LABEL)); // gtk_widget_set_visible(AboutButtons,0); } @@ -901,16 +903,13 @@ int setup_config(){ GKeyFile *configfile = g_key_file_new(); char *pth=malloc(7+strlen(UserConfigPath)+strlen(getlogin())); sprintf(pth,"%s%s%s","/home/",getlogin(),UserConfigPath); - g_key_file_load_from_file(configfile,pth,G_KEY_FILE_KEEP_TRANSLATIONS,&err); - if (err||main_config.lock_settings==1){ + + g_key_file_load_from_file(configfile,GlobalConfigPath,G_KEY_FILE_KEEP_TRANSLATIONS,&err); + if (err){ g_error_free(err); - err=NULL; - g_key_file_load_from_file(configfile,GlobalConfigPath,G_KEY_FILE_KEEP_TRANSLATIONS,&err); - if (err){ - g_error_free(err); - return 0; - } - } + return 0; + } else { + char *foroutput=NULL; char *line=NULL; main_config.GnomeDoubleClick=g_key_file_get_boolean(configfile,"window", "GnomeDoubleClick",NULL); @@ -929,6 +928,51 @@ int setup_config(){ main_config.lastUser=g_key_file_get_string(configfile,"window","User",NULL); main_config.fullscreen=g_key_file_get_boolean(configfile,"window","fullscreen",NULL); main_config.BannerHidden=g_key_file_get_boolean(configfile,"window","BannerHidden",NULL); + } + + g_key_file_load_from_file(configfile,pth,G_KEY_FILE_KEEP_TRANSLATIONS,&err); + if (err||main_config.lock_settings==1){ + g_error_free(err); + err=NULL; + g_key_file_load_from_file(configfile,GlobalConfigPath,G_KEY_FILE_KEEP_TRANSLATIONS,&err); + + } else { + + int GnomeDoubleClick=g_key_file_get_boolean(configfile,"window", "GnomeDoubleClick",NULL); + int MainDoubleClick=g_key_file_get_boolean(configfile,"window", "MainDoubleClick",NULL); + int windowPosX=g_key_file_get_integer(configfile,"window","WindowPosX",NULL); + int windowPosY=g_key_file_get_integer(configfile,"window","WindowPosY",NULL); + int windowWidth=g_key_file_get_integer(configfile,"window","WindowWidth",NULL); + int windowHeight=g_key_file_get_integer(configfile,"window","WindowHeight",NULL); + int WindowTheme=g_key_file_get_integer(configfile,"window","WindowTheme",NULL); + int Mainiconsize=g_key_file_get_integer(configfile,"window","MainIconSize",NULL); + int Gnomeiconsize=g_key_file_get_integer(configfile,"window","GnomeIconSize",NULL); + int iconSegmentSize=g_key_file_get_integer(configfile,"window","IconSegmentSize",NULL); + int MainlabelSize=g_key_file_get_integer(configfile,"window","MainLabelSize",NULL); + int GnomelabelSize=g_key_file_get_integer(configfile,"window","GnomeLabelSize",NULL); + int labelDensity=g_key_file_get_integer(configfile,"window","LabelDensity",NULL); + char *lastUser=g_key_file_get_string(configfile,"window","User",NULL); + int fullscreen=g_key_file_get_boolean(configfile,"window","fullscreen",NULL); + int BannerHidden=g_key_file_get_boolean(configfile,"window","BannerHidden",NULL); + main_config.GnomeDoubleClick=GnomeDoubleClick; + main_config.MainDoubleClick=MainDoubleClick; + main_config.windowPosX=windowPosX; + main_config.windowPosY=windowPosY; + main_config.windowWidth=windowWidth; + main_config.windowHeight=windowHeight; + main_config.WindowTheme=WindowTheme; + main_config.Mainiconsize=Mainiconsize; + main_config.Gnomeiconsize=Gnomeiconsize; + main_config.iconSegmentSize=iconSegmentSize; + main_config.MainlabelSize=MainlabelSize; + main_config.GnomelabelSize=GnomelabelSize; + main_config.labelDensity=labelDensity; + if (lastUser) + main_config.lastUser=lastUser; + main_config.fullscreen=fullscreen; + main_config.BannerHidden=BannerHidden; + } + if (main_config.MainlabelSize==0) main_config.MainlabelSize=12; if (main_config.labelDensity==0) main_config.labelDensity=0; main_config.MainlabelSize=main_config.MainlabelSize*1000; @@ -1015,6 +1059,8 @@ void save_config(actionWidgets *widgets){ } g_key_file_set_boolean(gfile,"window","fullscreen",main_config.fullscreen); g_key_file_set_boolean(gfile,"window","BannerHidden",main_config.BannerHidden); + g_key_file_set_boolean(gfile,"window","MainDoubleClick",main_config.MainDoubleClick); + g_key_file_set_boolean(gfile,"window","GnomeDoubleClick",main_config.GnomeDoubleClick); sprintf(fromint,"%d",main_config.WindowTheme); g_key_file_set_string(gfile,"window","WindowTheme",fromint); sprintf(fromint,"%d",sz); @@ -1643,7 +1689,7 @@ dictionary *yon_theme_new(dictionary **widgetss, GtkBuilder *builder, char *them curWidgets->ThirdSocketPlace=GTK_WIDGET(gtk_builder_get_object(curWidgets->builder,yon_char_get_augumented(theme_id,"ThirdSocketPlace"))); curWidgets->MenuItemSettings=GTK_WIDGET(gtk_builder_get_object(curWidgets->builder,yon_char_get_augumented(theme_id,"MenuItemSettings"))); curWidgets->MenuItemDocumentation=GTK_WIDGET(gtk_builder_get_object(curWidgets->builder,yon_char_get_augumented(theme_id,"MenuItemDocumentation"))); - curWidgets->MenuItemAboutSystem=GTK_WIDGET(gtk_builder_get_object(curWidgets->builder,yon_char_get_augumented(theme_id,"MenuItemAboutSystem"))); + curWidgets->MenuItemAboutSystem=GTK_WIDGET(gtk_builder_get_object(curWidgets->builder,yon_char_get_augumented(theme_id,"MenuItemAbout"))); curWidgets->BannerRevealer=GTK_WIDGET(gtk_builder_get_object(curWidgets->builder,yon_char_get_augumented(theme_id,"RevealButton"))); curWidgets->Revealer=GTK_WIDGET(gtk_builder_get_object(curWidgets->builder,yon_char_get_augumented(theme_id,"Revealer"))); curWidgets->BackToSettingsLabel=GTK_WIDGET(gtk_builder_get_object(curWidgets->builder,yon_char_get_augumented(theme_id,"BackToSettingsLabel"))); @@ -1754,7 +1800,8 @@ dictionary *yon_theme_new(dictionary **widgetss, GtkBuilder *builder, char *them gtk_button_set_label(GTK_BUTTON(curWidgets->SectionSettingsSaveButton),APPLY_LABEL); gtk_button_set_label(GTK_BUTTON(curWidgets->AlwaysOpenDocumentation),ALWAYS_REDIRECT_LABEL); gtk_menu_item_set_label(GTK_MENU_ITEM(curWidgets->MenuItemSettings),SETTINGS_LABEL); - gtk_menu_item_set_label(GTK_MENU_ITEM(curWidgets->MenuItemDocumentation),ABOUT_LABEL); + gtk_menu_item_set_label(GTK_MENU_ITEM(curWidgets->MenuItemDocumentation),DOCUMENTATION_LABEL); + gtk_menu_item_set_label(GTK_MENU_ITEM(curWidgets->MenuItemAboutSystem),ABOUT_LABEL); gtk_button_set_label(GTK_BUTTON(curWidgets->CautionUnderstandButton),UNDERSTOOD_LABEL); gtk_button_set_label(GTK_BUTTON(curWidgets->settingsSectionsSettingsButton),SECTIONS_MANAGEMENT_LABEL); gtk_label_set_text(GTK_LABEL(curWidgets->settingsDoubleClickLabel),DOUBLE_CLICK_SELECTION_LABEL); diff --git a/source/ubl-settings-manager.h b/source/ubl-settings-manager.h index 55652a0..d748bac 100644 --- a/source/ubl-settings-manager.h +++ b/source/ubl-settings-manager.h @@ -32,6 +32,7 @@ string version_application = "1.3"; #define SECTIONS_MANAGEMENT_LABEL _("Sections management") #define UNDERSTOOD_LABEL _("Understood") #define ABOUT_LABEL _("About...") +#define DOCUMENTATION_LABEL _("Documentation") #define SETTINGS_LABEL _("Settings") #define ALWAYS_REDIRECT_LABEL _("Always redirect") #define APPLY_LABEL _("Apply") diff --git a/ubl-settings-manager.glade b/ubl-settings-manager.glade index 7d99f54..de0e853 100644 --- a/ubl-settings-manager.glade +++ b/ubl-settings-manager.glade @@ -125,6 +125,17 @@ + + + True + False + About... + True + + + True @@ -354,6 +365,17 @@ + + + True + False + About... + True + + + True @@ -391,25 +413,7 @@ - - 1 - 5 - 2 - 1 - 1 - - - 1 - 1 - 10 - - - - True - False - go-first-symbolic - - + False 800 558 @@ -417,30 +421,28 @@ True - True False vertical True - True False - + True False + True - + True False start slide-left - + True False - start - start + center 3 + + + + + + + False + True + + + + True False - 5 - 5 - 5 - 5 vertical - - 5 - 5 + True - True - immediate - never - always - in + False + vertical - + True False - natural + 3 + 3 + 3 + 3 + 3 + 0 + in - + True False - vertical - 2 + center + center + 12 - + + True + False + center + center + + + + False + True + 0 + + + - + + + + + True + True + 0 + @@ -556,37 +616,43 @@ 0 - - - True - True - 0 - - - - - False - vertical - + + True + False + vertical + + + False + vertical + + + + + + False + True + 0 + + + + + False + True + 1 + - - False - True - 1 + True + True - True True + end 1 @@ -605,7 +671,7 @@ False True - + True False UBLinux Settings @@ -624,57 +690,73 @@ - - Back to settings + True False False - False center center - 10 10 - image1 - - - - 1 - - - - - True - False - center - center - vertical - + + True + False + 5 + + + True + True + False + True + left + False + + + + + + + False + True + 0 + + + + + True + False + Back to settings + + + False + True + 1 + + + - - 2 + 1 True False - vertical - + True True False True center center - MainMenu + GnomeMenu none - False @@ -688,11 +770,11 @@ end - 3 + 2 - + True False center @@ -700,86 +782,35 @@ - end - 4 + 3 - - - - - - True - False - 16 - user-trash-symbolic - - - True - False - ubconfig-gui - 6 - - - True - False - - - True - False - Element 1 - - - - - True - False - Element 2 - - + + True False + center + center + vertical - - True - False - Element 3 - + + + 4 + + - - - Element 4 - True - False - image3 - False - - - - - True - False - 16 - object-select-symbolic - - True - False - go-first-symbolic - - + False 800 558 @@ -787,28 +818,30 @@ True + True False vertical True + True False - + True False - True - + True False start slide-left - + True False - center + start + start 3 - - - - - - - False - True - - + False + vertical - + True False + 5 + 5 + 5 + 5 vertical - + + 5 + 5 True - False - vertical + True + immediate + never + always + in - + True False - 3 - 3 - 3 - 3 - 3 - 0 - in + natural - + True False - center - center - 12 + vertical + 2 - - True - False - center - center - - - - False - True - 0 - - - + + - - - - - True - True - 0 - @@ -982,43 +957,37 @@ 0 + + + True + True + 0 + + + + + False + vertical - - True - False - vertical - - - False - vertical - - - - - - False - True - 0 - - - - - False - True - 1 - + + - True - True + False + True + 1 + True True - end 1 @@ -1037,7 +1006,7 @@ False True - + True False UBLinux Settings @@ -1056,34 +1025,94 @@ - - Back to settings + True False False + False center center 10 - image5 + + + + True + False + 5 + + + True + True + False + True + left + + + + + + + False + True + 0 + + + + + True + False + Back to settings + + + False + True + 1 + + + + 1 + + + True + False + center + center + vertical + + + + + + + 2 + + True False + vertical - + True True False True center center - GnomeMenu + MainMenu none + False @@ -1097,11 +1126,11 @@ end - 2 + 3 - + True False center @@ -1109,33 +1138,92 @@ + end - 3 + 4 - - + + + + + + 1 + 5 + 2 + 1 + 1 + + + 1 + 1 + 10 + + + + True + False + 16 + user-trash-symbolic + + + True + False + ubconfig-gui + 6 + + + True + False + + + True + False + Element 1 + + + + + True + False + Element 2 + + True False - center - center - vertical - + + True + False + Element 3 + - - 4 - - + + + Element 4 + True + False + image3 + False + + + + + True + False + 16 + object-select-symbolic True @@ -2163,7 +2251,6 @@ False - About False True center @@ -2196,8 +2283,31 @@ 0 + + + + + True + False + True + + + True + False + About UBLinux Settings Manager + + + + + - + + True + False + 32 + com.ublinux.ubl-settings-manager + 5 + From a72289ae9252a00d644077a680109d5579b1b377 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Fri, 21 Apr 2023 12:44:58 +0000 Subject: [PATCH 05/23] localisation updated --- ubl-settings-manager.pot | 162 ++++++++++++++++------------ ubl-settings-manager_ru.po | 215 +++++++++++++++++++++---------------- 2 files changed, 216 insertions(+), 161 deletions(-) diff --git a/ubl-settings-manager.pot b/ubl-settings-manager.pot index 8678dcd..b948874 100644 --- a/ubl-settings-manager.pot +++ b/ubl-settings-manager.pot @@ -1,137 +1,163 @@ -# Language translations for ubl-settings-manager package. -# Copyright (C) 2022, UBTech LLC -# This file is distributed under the same license as the ubl-settings-manager package. -# UBLinux Team , 2022 +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. # #, fuzzy msgid "" msgstr "" -"Project-Id-Version: ubl-settings-manager 1.0\n" -"Report-Msgid-Bugs-To: info@ublinux.com\n" -"POT-Creation-Date: 2023-01-01 00:00+0600\n" -"PO-Revision-Date: 2023-01-01 00:00+0600\n" -"Last-Translator: UBLinux Team \n" -"Language-Team: UBLinux Team \n" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-04-21 12:33+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: source/ubl-settings-manager.c:632 -msgid "Settings manager for UBLinux" +#: source/ubl-settings-manager.h:9 +msgid "" +"\n" +"GTK settings manager for UBLinux\n" +"Usage: ubl-settings-manager [OPTIONS...]\n" +"Options:\n" +" -h, --help\t\t Show this help\n" +" -V, --version\t \t Show package version\n" +" --lock-settings Lock menu settings\n" msgstr "" -#: source/ubl-settings-manager.c:633 source/ubl-settings-manager.c:1601 -#: source/ubl-settings-manager.c:1615 source/ubl-settings-manager.c:1674 -msgid "UBLinux Settings Manager" +#: source/ubl-settings-manager.h:27 +msgid "About UBLinux Settings Manager" msgstr "" -#: source/ubl-settings-manager.c:636 -msgid "Project Home Page" +#: source/ubl-settings-manager.h:34 source/ubl-settings-manager.c:1685 +msgid "About..." msgstr "" +#: source/ubl-settings-manager.h:37 source/ubl-settings-manager.h:36 +#: source/ubl-settings-manager.c:1683 +msgid "Always redirect" +msgstr "" + +#: source/ubl-settings-manager.h:38 source/ubl-settings-manager.h:37 +#: source/ubl-settings-manager.c:1742 +msgid "Apply" +msgstr "" + +#: source/ubl-settings-manager.h:47 source/ubl-settings-manager.h:46 #: source/ubl-settings-manager.c:1600 msgid "Back to all settings" msgstr "" -#: source/ubl-settings-manager.c:1675 -msgid "Icon size" +#: source/ubl-settings-manager.h:41 source/ubl-settings-manager.h:40 +#: source/ubl-settings-manager.c:1680 +msgid "Cancel" msgstr "" -#: source/ubl-settings-manager.c:1676 -msgid "Window theme" +#: source/ubl-settings-manager.h:40 source/ubl-settings-manager.h:39 +#: source/ubl-settings-manager.c:1681 +msgid "Close" msgstr "" -#: source/ubl-settings-manager.c:1677 -msgid "Would you like to read documentation in the Web?" +#: source/ubl-settings-manager.h:30 +msgid "Config loading failed!\n" msgstr "" -#: source/ubl-settings-manager.c:1678 -msgid "" -"You will be redirected to documentation site, where user help pages are " -"translated and supported by community." +#: source/ubl-settings-manager.h:35 +msgid "Documentation" msgstr "" -#: source/ubl-settings-manager.c:1679 -msgid "Read online" +#: source/ubl-settings-manager.h:31 source/ubl-settings-manager.c:1748 +msgid "Double click selection" msgstr "" -#: source/ubl-settings-manager.c:1680 -msgid "Cancel" +#: source/ubl-settings-manager.c:1913 source/ubl-settings-manager.c:1912 +#: source/ubl-settings-manager.c:1793 +msgid "GNOME theme" msgstr "" -#: source/ubl-settings-manager.c:1681 -msgid "Close" +msgid "Hardware" msgstr "" -#: source/ubl-settings-manager.c:1682 -msgid "Save and apply" +#: source/ubl-settings-manager.h:46 source/ubl-settings-manager.h:45 +#: source/ubl-settings-manager.c:1675 +msgid "Icon size" msgstr "" -#: source/ubl-settings-manager.c:1742 -msgid "Apply" +msgid "Misc" msgstr "" -#: source/ubl-settings-manager.c:1683 -msgid "Always redirect" +msgid "Personal" msgstr "" -#: source/ubl-settings-manager.c:1684 -msgid "Settings" +#: source/ubl-settings-manager.h:28 source/ubl-settings-manager.c:636 +msgid "Project Home Page" msgstr "" -#: source/ubl-settings-manager.c:1685 -msgid "About..." +#: source/ubl-settings-manager.h:42 source/ubl-settings-manager.h:41 +#: source/ubl-settings-manager.c:1679 +msgid "Read online" msgstr "" -#: source/ubl-settings-manager.c:1686 -msgid "Understood" +#: source/ubl-settings-manager.h:39 source/ubl-settings-manager.h:38 +#: source/ubl-settings-manager.c:1682 +msgid "Save and apply" msgstr "" -#: source/ubl-settings-manager.c:1687 +#: source/ubl-settings-manager.h:32 source/ubl-settings-manager.c:1687 msgid "Sections management" msgstr "" -#: source/ubl-settings-manager.c:1748 -msgid "Double click selection" +#: source/ubl-settings-manager.h:36 source/ubl-settings-manager.h:35 +#: source/ubl-settings-manager.c:1684 +msgid "Settings" +msgstr "" + +#: source/ubl-settings-manager.h:29 source/ubl-settings-manager.c:632 +msgid "Settings manager for UBLinux" msgstr "" +#: source/ubl-settings-manager.c:1912 source/ubl-settings-manager.c:1911 #: source/ubl-settings-manager.c:1792 msgid "Standard theme" msgstr "" -#: source/ubl-settings-manager.c:1793 -msgid "GNOME theme" +msgid "System" msgstr "" -#: source/ubl-settings-manager.h:8 -msgid "Version: " +#: source/ubl-settings-manager.h:26 source/ubl-settings-manager.c:633 +#: source/ubl-settings-manager.c:1601 source/ubl-settings-manager.c:1615 +#: source/ubl-settings-manager.c:1674 +msgid "UBLinux Settings Manager" msgstr "" -#: source/ubl-settings-manager.h:9 -msgid "ubl-settings-manager version: " +#: source/ubl-settings-manager.h:33 source/ubl-settings-manager.c:1686 +msgid "Understood" msgstr "" -#: source/ubl-settings-manager.h:9 -msgid "" -"\n" -"GTK settings manager for UBLinux\n" -"Usage: ubl-settings-manager [OPTIONS...]\n" -"Options:\n" -" -h, --help\t\t Show this help\n" -" -V, --version\t \t Show package version\n" -" --lock-settings Lock menu settings\n" +#: source/ubl-settings-manager.h:8 +msgid "Version: " msgstr "" -msgid "Personal" +#: source/ubl-settings-manager.h:45 source/ubl-settings-manager.h:44 +#: source/ubl-settings-manager.c:1676 +msgid "Window theme" msgstr "" -msgid "Hardware" +#: source/ubl-settings-manager.h:44 source/ubl-settings-manager.h:43 +#: source/ubl-settings-manager.c:1677 +msgid "Would you like to read documentation in the Web?" msgstr "" -msgid "System" +#: source/ubl-settings-manager.h:43 source/ubl-settings-manager.h:42 +#: source/ubl-settings-manager.c:1678 +msgid "" +"You will be redirected to documentation site, where user help pages are " +"translated and supported by community." msgstr "" -msgid "Misc" +#: source/ubl-settings-manager.h:9 +msgid "ubl-settings-manager version: " msgstr "" - diff --git a/ubl-settings-manager_ru.po b/ubl-settings-manager_ru.po index c648825..4811dc8 100644 --- a/ubl-settings-manager_ru.po +++ b/ubl-settings-manager_ru.po @@ -4,11 +4,11 @@ # UBLinux Team , 2022 # #, fuzzy -msgid "translation_info\n" +msgid "" msgstr "" "Project-Id-Version: ubl-settings-manager 1.0\n" -"Report-Msgid-Bugs-To: info@ublinux.com\n" -"POT-Creation-Date: 2023-01-01 00:00+0600\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-04-21 12:33+0000\n" "PO-Revision-Date: 2023-01-01 00:00+0600\n" "Last-Translator: UBLinux Team \n" "Language-Team: Russian - UBLinux Team \n" @@ -17,128 +17,157 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: source/ubl-settings-manager.c:667 -msgid "Settings manager for UBLinux" -msgstr "Менеджер настроек для UBLinux" +#: source/ubl-settings-manager.h:9 +msgid "" +"\n" +"GTK settings manager for UBLinux\n" +"Usage: ubl-settings-manager [OPTIONS...]\n" +"Options:\n" +" -h, --help\t\t Show this help\n" +" -V, --version\t \t Show package version\n" +" --lock-settings Lock menu settings\n" +msgstr "" +"\n" +"GTK Менеджер настроек для UBLinux\n" +"Использование: ubl-settings-manager [АРГУМЕНТЫ...]\n" +"Аргументы:\n" +" -h, --help\t\t Показать помощь\n" +" -V, --version\t \t Показать версию пакета\n" +" --lock-settings \t Заблокировать окно настроек\n" -#: source/ubl-settings-manager.c:668 source/ubl-settings-manager.c:1655 -#: source/ubl-settings-manager.c:1669 source/ubl-settings-manager.c:1733 -msgid "UBLinux Settings Manager" -msgstr "Настройки UBLinux" +#: source/ubl-settings-manager.h:27 +#, fuzzy +msgid "About UBLinux Settings Manager" +msgstr "О приложении Настройки UBLinux" -#: source/ubl-settings-manager.c:671 -msgid "Project Home Page" -msgstr "Домашняя страница проекта" +#: source/ubl-settings-manager.h:34 source/ubl-settings-manager.c:1685 +msgid "About..." +msgstr "О программе" -#: source/ubl-settings-manager.c:1654 +#: source/ubl-settings-manager.h:37 source/ubl-settings-manager.h:36 +#: source/ubl-settings-manager.c:1683 +msgid "Always redirect" +msgstr "Всегда перенаправлять" + +#: source/ubl-settings-manager.h:38 source/ubl-settings-manager.h:37 +#: source/ubl-settings-manager.c:1742 +msgid "Apply" +msgstr "Применить" + +#: source/ubl-settings-manager.h:47 source/ubl-settings-manager.h:46 +#: source/ubl-settings-manager.c:1600 msgid "Back to all settings" msgstr "Назад ко всем настройкам" -#: source/ubl-settings-manager.c:1734 -msgid "Icon size" -msgstr "Размер иконок" +#: source/ubl-settings-manager.h:41 source/ubl-settings-manager.h:40 +#: source/ubl-settings-manager.c:1680 +msgid "Cancel" +msgstr "Отменить" -#: source/ubl-settings-manager.c:1735 -msgid "Window theme" -msgstr "Выбор темы" +#: source/ubl-settings-manager.h:40 source/ubl-settings-manager.h:39 +#: source/ubl-settings-manager.c:1681 +msgid "Close" +msgstr "Закрыть" -#: source/ubl-settings-manager.c:1736 -msgid "Would you like to read documentation in the Web?" -msgstr "Вы хотите прочитать справку в Сети?" +#: source/ubl-settings-manager.h:30 +msgid "Config loading failed!\n" +msgstr "" -#: source/ubl-settings-manager.c:1737 -msgid "" -"You will be redirected to documentation site, where user help pages are " -"translated and supported by community." -msgstr "Вы будете перенаправлены на сайт с документацией где страницы помощи переводятся и поддерживаются сообществом." +#: source/ubl-settings-manager.h:35 +msgid "Documentation" +msgstr "Справка" -#: source/ubl-settings-manager.c:1738 -msgid "Read online" -msgstr "Прочитать онлайн" +#: source/ubl-settings-manager.h:31 source/ubl-settings-manager.c:1748 +msgid "Double click selection" +msgstr "Открывать приложения двойным нажатием" -#: source/ubl-settings-manager.c:1739 -msgid "Cancel" -msgstr "Отменить" +#: source/ubl-settings-manager.c:1913 source/ubl-settings-manager.c:1912 +#: source/ubl-settings-manager.c:1793 +msgid "GNOME theme" +msgstr "GNOME тема" -#: source/ubl-settings-manager.c:1740 -msgid "Close" -msgstr "Закрыть" +msgid "Hardware" +msgstr "Оборудование" -#: source/ubl-settings-manager.c:1741 -msgid "Save and apply" -msgstr "Сохранить и применить" +#: source/ubl-settings-manager.h:46 source/ubl-settings-manager.h:45 +#: source/ubl-settings-manager.c:1675 +msgid "Icon size" +msgstr "Размер иконок" -#: source/ubl-settings-manager.c:1742 -msgid "Apply" -msgstr "Применить" +msgid "Misc" +msgstr "Прочее" -#: source/ubl-settings-manager.c:1743 -msgid "Always redirect" -msgstr "Всегда перенаправлять" +msgid "Personal" +msgstr "Личные" -#: source/ubl-settings-manager.c:1744 -msgid "Settings" -msgstr "Настройки" +#: source/ubl-settings-manager.h:28 source/ubl-settings-manager.c:636 +msgid "Project Home Page" +msgstr "Домашняя страница проекта" -#: source/ubl-settings-manager.c:1745 -msgid "About..." -msgstr "О программе" +#: source/ubl-settings-manager.h:42 source/ubl-settings-manager.h:41 +#: source/ubl-settings-manager.c:1679 +msgid "Read online" +msgstr "Прочитать онлайн" -#: source/ubl-settings-manager.c:1746 -msgid "Understood" -msgstr "Понятно" +#: source/ubl-settings-manager.h:39 source/ubl-settings-manager.h:38 +#: source/ubl-settings-manager.c:1682 +msgid "Save and apply" +msgstr "Сохранить и применить" -#: source/ubl-settings-manager.c:1747 +#: source/ubl-settings-manager.h:32 source/ubl-settings-manager.c:1687 msgid "Sections management" msgstr "Настройка разделов" -#: source/ubl-settings-manager.c:1748 -msgid "Double click selection" -msgstr "Открывать приложения двойным нажатием" +#: source/ubl-settings-manager.h:36 source/ubl-settings-manager.h:35 +#: source/ubl-settings-manager.c:1684 +msgid "Settings" +msgstr "Настройки" -#: source/ubl-settings-manager.c:1853 +#: source/ubl-settings-manager.h:29 source/ubl-settings-manager.c:632 +msgid "Settings manager for UBLinux" +msgstr "Менеджер настроек для UBLinux" + +#: source/ubl-settings-manager.c:1912 source/ubl-settings-manager.c:1911 +#: source/ubl-settings-manager.c:1792 msgid "Standard theme" msgstr "Стандартная тема" -#: source/ubl-settings-manager.c:1854 -msgid "GNOME theme" -msgstr "GNOME тема" +msgid "System" +msgstr "Система" + +#: source/ubl-settings-manager.h:26 source/ubl-settings-manager.c:633 +#: source/ubl-settings-manager.c:1601 source/ubl-settings-manager.c:1615 +#: source/ubl-settings-manager.c:1674 +msgid "UBLinux Settings Manager" +msgstr "Настройки UBLinux" + +#: source/ubl-settings-manager.h:33 source/ubl-settings-manager.c:1686 +msgid "Understood" +msgstr "Понятно" #: source/ubl-settings-manager.h:8 msgid "Version: " msgstr "Версия: " -#: source/ubl-settings-manager.h:9 -msgid "ubl-settings-manager version: " -msgstr "ubl-settings-manager версия: " +#: source/ubl-settings-manager.h:45 source/ubl-settings-manager.h:44 +#: source/ubl-settings-manager.c:1676 +msgid "Window theme" +msgstr "Выбор темы" -#: source/ubl-settings-manager.h:9 +#: source/ubl-settings-manager.h:44 source/ubl-settings-manager.h:43 +#: source/ubl-settings-manager.c:1677 +msgid "Would you like to read documentation in the Web?" +msgstr "Вы хотите прочитать справку в Сети?" + +#: source/ubl-settings-manager.h:43 source/ubl-settings-manager.h:42 +#: source/ubl-settings-manager.c:1678 msgid "" -"\n" -"GTK settings manager for UBLinux\n" -"Usage: ubl-settings-manager [OPTIONS...]\n" -"Options:\n" -" -h, --help\t\t Show this help\n" -" -V, --version\t \t Show package version\n" -" --lock-settings Lock menu settings\n" +"You will be redirected to documentation site, where user help pages are " +"translated and supported by community." msgstr "" -"\n" -"GTK Менеджер настроек для UBLinux\n" -"Использование: ubl-settings-manager [АРГУМЕНТЫ...]\n" -"Аргументы:\n" -" -h, --help\t\t Показать помощь\n" -" -V, --version\t \t Показать версию пакета\n" -" --lock-settings \t Заблокировать окно настроек\n" - - -msgid "Personal" -msgstr "Личные" - -msgid "Hardware" -msgstr "Оборудование" +"Вы будете перенаправлены на сайт с документацией где страницы помощи " +"переводятся и поддерживаются сообществом." -msgid "System" -msgstr "Система" - -msgid "Misc" -msgstr "Прочее" +#: source/ubl-settings-manager.h:9 +msgid "ubl-settings-manager version: " +msgstr "ubl-settings-manager версия: " From b6143994abfc42c250b3d0dc8412ab0c1ae9a918 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Fri, 21 Apr 2023 12:47:03 +0000 Subject: [PATCH 06/23] Fixed standard section setup --- source/ubl-settings-manager.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index d481b2f..06eb850 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -1111,7 +1111,7 @@ void yon_set_default_sections(dictionary *section){ yon_section_new(section,"Personal","X-UBL-SettingsManager;X-UBL-PersonalSettings;"); yon_section_new(section,"Hardware","X-UBL-SettingsManager;X-UBL-HardwareSettings;"); yon_section_new(section,"System","X-UBL-SettingsManager;X-UBL-SystemSettings;"); - yon_section_new(section,"Misc","X-UBL-SettingsManager;X-UBL-MiscSettings;"); + yon_section_new(section,"Misc",""); } IVGraphicals *yon_create_single_section_IV(char *name,char *cats){ From ba8ade76715c6befde1d230d93ec091826b104fd Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Fri, 21 Apr 2023 18:02:34 +0000 Subject: [PATCH 07/23] Added 'Documentation' button in menus which opens documentation web page in browser or with its own window if user has webkit2gtk library installed --- source/CMakeLists.txt | 26 +++++++++++++-- source/ubl-settings-manager.c | 24 ++++++++++++-- source/ubl-settings-manager.h | 7 ++++ ubl-settings-manager.glade | 60 +++++++++++++++++++++++++++++++++++ 4 files changed, 112 insertions(+), 5 deletions(-) diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt index 1859049..9b284b8 100644 --- a/source/CMakeLists.txt +++ b/source/CMakeLists.txt @@ -7,6 +7,22 @@ pkg_check_modules(GTK REQUIRED gtk+-3.0) include_directories(${GTK_INCLUDE_DIRS}) link_directories(${GTK_LIBRARY_DIRS}) add_definitions(${GTK_CFLAGS_OTHER}) +option(WEBKIT_FOUND "No" OFF) + +find_library(WEBKIT_LIBRARIES_FOUND webkit2gtk-4.0 webkit2gtk-web-extension-4.0) +message("${WEBKIT_LIBRARIES_FOUND}") +if(WEBKIT_LIBRARIES_FOUND) + option(WEBKIT_FOUND "Yes" ON) + message("Webkit is located at ${WEBKIT_LIBRARIES_FOUND}") + PKG_CHECK_MODULES(WEBKIT REQUIRED webkit2gtk-4.0 webkit2gtk-web-extension-4.0) + include_directories(${WEBKIT_INCLUDE_DIRS}) + link_directories(${WEBKIT_LIBRARY_DIRS}) + add_definitions(${WEBKIT_CFLAGS_OTHER}) +endif() + + + +configure_file(ubl-settings-manager.h.in ubl-settings-manager-cm.h) #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always -std=c++2a") #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always -lm") @@ -17,13 +33,17 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissin set(SOURCE_FILES ubl-settings-manager.c - ubl-settings-manager.h) + ubl-settings-manager.h + ubl-settings-manager-cm.h) set(LIBRARIES ${GTK_LIBRARIES} pthread) - add_executable(ubl-settings-manager ${SOURCE_FILES}) -target_link_libraries(ubl-settings-manager ${LIBRARIES}) +target_link_libraries(ubl-settings-manager PUBLIC ${WEBKIT_LIBRARIES} ${LIBRARIES}) +target_include_directories(ubl-settings-manager PUBLIC + "${PROJECT_BINARY_DIR}" + ${WEBKIT_INCLUDE_DIRS} + ) install(TARGETS ubl-settings-manager DESTINATION bin) \ No newline at end of file diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index 06eb850..220a475 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -136,7 +136,16 @@ void on_item_selection_changed(GtkIconView *IV, actionWidgets *widgets){ void on_ButtonOpenHelp_activated(GtkWidget *button, GtkBuilder *builder){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,"AlwaysOpenHelpCheckbox")))) { - if(system("xdg-open http://ublinux.com")){}; + #ifdef WEBKIT_FOUND + GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); + GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); + GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); + GtkWidget *WebView=webkit_web_view_new(); + webkit_web_view_load_uri(WEBKIT_WEB_VIEW(WebView),UBLINUX_WIKI_LINK); + gtk_box_pack_start(GTK_BOX(web_place),WebView,1,1,0); + #else + if(system(UBLINUX_WIKI_COMMAND)){}; + #endif } else { GtkWidget *window = GTK_WIDGET(gtk_builder_get_object(builder,"HelpSureWindow")); @@ -159,7 +168,17 @@ void on_CancelHelpButton_activated(GtkWidget *button,GtkBuilder *builder){ }; void on_ReadHelpButton_activated(GtkWidget *button, GtkBuilder *builder){ - if(system("xdg-open http://ublinux.com")){}; + #ifdef WEBKIT_FOUND + GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); + GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); + GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); + GtkWidget *WebView=webkit_web_view_new(); + webkit_web_view_load_uri(WEBKIT_WEB_VIEW(WebView),UBLINUX_WIKI_LINK); + gtk_box_pack_start(GTK_BOX(web_place),WebView,1,1,0); + gtk_widget_show_all(browser); + #else + if(system(UBLINUX_WIKI_COMMAND)){}; + #endif GtkWidget *window = GTK_WIDGET(gtk_builder_get_object(builder,"HelpSureWindow")); gtk_widget_hide(window); }; @@ -1763,6 +1782,7 @@ dictionary *yon_theme_new(dictionary **widgetss, GtkBuilder *builder, char *them g_signal_connect(G_OBJECT(curWidgets->MenuItemDocumentation), "activate", G_CALLBACK(on_about), curWidgets->builder); //on_ButtonOpenHelp_activated g_signal_connect(G_OBJECT(curWidgets->MenuItemSettings), "activate", G_CALLBACK(on_settingsOpen), curWidgets); g_signal_connect(G_OBJECT(curWidgets->BannerRevealer), "clicked", G_CALLBACK(on_reveal_banner), curWidgets); + g_signal_connect(G_OBJECT(curWidgets->MenuItemAboutSystem), "activate", G_CALLBACK(on_ButtonOpenHelp_activated), curWidgets->builder); if (gnld==0){ gnld=1; diff --git a/source/ubl-settings-manager.h b/source/ubl-settings-manager.h index d748bac..361413b 100644 --- a/source/ubl-settings-manager.h +++ b/source/ubl-settings-manager.h @@ -4,6 +4,13 @@ #include #include #include +#include "ubl-settings-manager-cm.h" +#ifdef WEBKIT_FOUND +#include +#endif + +#define UBLINUX_WIKI_COMMAND "xdg-open http://ublinux.com" +#define UBLINUX_WIKI_LINK " http://ublinux.ru" #define cmdVersionText yon_char_get_augumented(yon_char_get_augumented(_("Version: "),version_application),"\n") #define cmdHelpText yon_char_get_augumented(yon_char_get_augumented(_("ubl-settings-manager version: "),version_application),_("\nGTK settings manager for UBLinux\nUsage: ubl-settings-manager [OPTIONS...]\nOptions:\n -h, --help Show this help\n -V, --version Show package version\n --lock-settings Lock menu settings\n")) diff --git a/ubl-settings-manager.glade b/ubl-settings-manager.glade index de0e853..fa7c0b0 100644 --- a/ubl-settings-manager.glade +++ b/ubl-settings-manager.glade @@ -388,6 +388,66 @@ + + 800 + 558 + False + 800 + 558 + ubconfig-gui + + + True + False + vertical + + + + + + + + True + False + True + + + True + False + True + + + True + False + UBLinux Settings Web View + + + + + + True + True + 0 + + + + + + + True + False + 32 + com.ublinux.ubl-settings-manager + 5 + + + + + + True False From 8885f35c719471066bfe0a9b077f5b6cb13a4eab Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Fri, 21 Apr 2023 18:04:42 +0000 Subject: [PATCH 08/23] Fixed web page not showing correctly in some cases; Fixed unfound header file --- source/ubl-settings-manager.c | 3 ++- source/ubl-settings-manager.h.in | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 source/ubl-settings-manager.h.in diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index 220a475..1e884ff 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -143,7 +143,8 @@ void on_ButtonOpenHelp_activated(GtkWidget *button, GtkBuilder *builder){ GtkWidget *WebView=webkit_web_view_new(); webkit_web_view_load_uri(WEBKIT_WEB_VIEW(WebView),UBLINUX_WIKI_LINK); gtk_box_pack_start(GTK_BOX(web_place),WebView,1,1,0); - #else + gtk_widget_show_all(browser); + #else if(system(UBLINUX_WIKI_COMMAND)){}; #endif } else diff --git a/source/ubl-settings-manager.h.in b/source/ubl-settings-manager.h.in new file mode 100644 index 0000000..d4623a7 --- /dev/null +++ b/source/ubl-settings-manager.h.in @@ -0,0 +1 @@ +#cmakedefine WEBKIT_FOUND From 1cfb4a8fda4fefe5056b1262a37e5390bdf2ac38 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Fri, 21 Apr 2023 18:09:02 +0000 Subject: [PATCH 09/23] Fixed switched callbacks for about and documentation buttons --- source/ubl-settings-manager.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index 1e884ff..32fba17 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -1780,10 +1780,10 @@ dictionary *yon_theme_new(dictionary **widgetss, GtkBuilder *builder, char *them gtk_window_resize(GTK_WINDOW(curWidgets->window),main_config.windowWidth,main_config.windowHeight); gtk_window_set_icon(GTK_WINDOW(curWidgets->window),gtk_icon_info_load_icon(gtk_icon_theme_lookup_icon_for_scale(icthm, AppIconPath,yon_get_icon_size(32),1,GTK_ICON_LOOKUP_FORCE_SVG),NULL)); gtk_window_set_icon(GTK_WINDOW(curWidgets->SectionSettingsWindow),gtk_icon_info_load_icon(gtk_icon_theme_lookup_icon_for_scale(icthm, AppIconPath,yon_get_icon_size(32),1,GTK_ICON_LOOKUP_FORCE_SVG),NULL)); - g_signal_connect(G_OBJECT(curWidgets->MenuItemDocumentation), "activate", G_CALLBACK(on_about), curWidgets->builder); //on_ButtonOpenHelp_activated + g_signal_connect(G_OBJECT(curWidgets->MenuItemDocumentation), "activate", G_CALLBACK(on_ButtonOpenHelp_activated), curWidgets->builder); //on_ButtonOpenHelp_activated g_signal_connect(G_OBJECT(curWidgets->MenuItemSettings), "activate", G_CALLBACK(on_settingsOpen), curWidgets); g_signal_connect(G_OBJECT(curWidgets->BannerRevealer), "clicked", G_CALLBACK(on_reveal_banner), curWidgets); - g_signal_connect(G_OBJECT(curWidgets->MenuItemAboutSystem), "activate", G_CALLBACK(on_ButtonOpenHelp_activated), curWidgets->builder); + g_signal_connect(G_OBJECT(curWidgets->MenuItemAboutSystem), "activate", G_CALLBACK(on_about), curWidgets->builder); if (gnld==0){ gnld=1; From e8ae4557d941a0271af3c31760e729612e8c199a Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 24 Apr 2023 09:19:10 +0000 Subject: [PATCH 10/23] Wiki links updated --- source/ubl-settings-manager.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-manager.h b/source/ubl-settings-manager.h index 361413b..4e28368 100644 --- a/source/ubl-settings-manager.h +++ b/source/ubl-settings-manager.h @@ -9,8 +9,8 @@ #include #endif -#define UBLINUX_WIKI_COMMAND "xdg-open http://ublinux.com" -#define UBLINUX_WIKI_LINK " http://ublinux.ru" +#define UBLINUX_WIKI_COMMAND "xdg-open http://wiki.ublinux.ru" +#define UBLINUX_WIKI_LINK " http://wiki.ublinux.ru" #define cmdVersionText yon_char_get_augumented(yon_char_get_augumented(_("Version: "),version_application),"\n") #define cmdHelpText yon_char_get_augumented(yon_char_get_augumented(_("ubl-settings-manager version: "),version_application),_("\nGTK settings manager for UBLinux\nUsage: ubl-settings-manager [OPTIONS...]\nOptions:\n -h, --help Show this help\n -V, --version Show package version\n --lock-settings Lock menu settings\n")) From 294dac450be0c70172d8ff51bda39cdb5485a949 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 24 Apr 2023 11:53:04 +0000 Subject: [PATCH 11/23] Test fix for unnessessary library absention --- source/ubl-settings-manager.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index 32fba17..eda6ad2 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -137,6 +137,7 @@ void on_ButtonOpenHelp_activated(GtkWidget *button, GtkBuilder *builder){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,"AlwaysOpenHelpCheckbox")))) { #ifdef WEBKIT_FOUND + if (access("/usr/lib/webkit2gtk/", F_OK)){ GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); @@ -144,6 +145,8 @@ void on_ButtonOpenHelp_activated(GtkWidget *button, GtkBuilder *builder){ webkit_web_view_load_uri(WEBKIT_WEB_VIEW(WebView),UBLINUX_WIKI_LINK); gtk_box_pack_start(GTK_BOX(web_place),WebView,1,1,0); gtk_widget_show_all(browser); + } else + if(system(UBLINUX_WIKI_COMMAND)){}; #else if(system(UBLINUX_WIKI_COMMAND)){}; #endif @@ -170,6 +173,7 @@ void on_CancelHelpButton_activated(GtkWidget *button,GtkBuilder *builder){ void on_ReadHelpButton_activated(GtkWidget *button, GtkBuilder *builder){ #ifdef WEBKIT_FOUND + if (access("/usr/lib/webkit2gtk/", F_OK)){ GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); @@ -177,6 +181,8 @@ void on_ReadHelpButton_activated(GtkWidget *button, GtkBuilder *builder){ webkit_web_view_load_uri(WEBKIT_WEB_VIEW(WebView),UBLINUX_WIKI_LINK); gtk_box_pack_start(GTK_BOX(web_place),WebView,1,1,0); gtk_widget_show_all(browser); + } else + if(system(UBLINUX_WIKI_COMMAND)){}; #else if(system(UBLINUX_WIKI_COMMAND)){}; #endif From ddecc6781c2be19d2982f13a5eec1efd8ed25df2 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 24 Apr 2023 11:56:48 +0000 Subject: [PATCH 12/23] Test fix for unnessessary library absention --- source/ubl-settings-manager.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index eda6ad2..67c8fbe 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -137,7 +137,7 @@ void on_ButtonOpenHelp_activated(GtkWidget *button, GtkBuilder *builder){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,"AlwaysOpenHelpCheckbox")))) { #ifdef WEBKIT_FOUND - if (access("/usr/lib/webkit2gtk/", F_OK)){ + if (access("/usr/lib/webkit2gtk/", F_OK)==0){ GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); @@ -173,7 +173,7 @@ void on_CancelHelpButton_activated(GtkWidget *button,GtkBuilder *builder){ void on_ReadHelpButton_activated(GtkWidget *button, GtkBuilder *builder){ #ifdef WEBKIT_FOUND - if (access("/usr/lib/webkit2gtk/", F_OK)){ + if (access("/usr/lib/webkit2gtk/", F_OK)==0){ GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); From 26ec14da567cadd66d081fa27ff040cbad1f8f19 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 24 Apr 2023 11:58:36 +0000 Subject: [PATCH 13/23] Test fix for unnessessary library absention --- source/ubl-settings-manager.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index 67c8fbe..7bb439d 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -137,7 +137,7 @@ void on_ButtonOpenHelp_activated(GtkWidget *button, GtkBuilder *builder){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,"AlwaysOpenHelpCheckbox")))) { #ifdef WEBKIT_FOUND - if (access("/usr/lib/webkit2gtk/", F_OK)==0){ + if (access("/usr/lib/webkit2gtk-4.0/", F_OK)==0){ GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); @@ -173,7 +173,7 @@ void on_CancelHelpButton_activated(GtkWidget *button,GtkBuilder *builder){ void on_ReadHelpButton_activated(GtkWidget *button, GtkBuilder *builder){ #ifdef WEBKIT_FOUND - if (access("/usr/lib/webkit2gtk/", F_OK)==0){ + if (access("/usr/lib/webkit2gtk-4.0/", F_OK)==0){ GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); From 096b91dbc28fa122a2c556b0d569ed006a44dc30 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 24 Apr 2023 12:02:03 +0000 Subject: [PATCH 14/23] Test fix for unnessessary library absention --- ubl-settings-manager.glade | 3 --- 1 file changed, 3 deletions(-) diff --git a/ubl-settings-manager.glade b/ubl-settings-manager.glade index fa7c0b0..0619ddf 100644 --- a/ubl-settings-manager.glade +++ b/ubl-settings-manager.glade @@ -5,7 +5,6 @@ False - start False dialog-information-symbolic False @@ -150,8 +149,6 @@ False - start - start False 450 250 From 96f9ea9086789dcf6051373a16390819a27d3293 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 24 Apr 2023 12:22:23 +0000 Subject: [PATCH 15/23] Test fix for unnessessary library absention --- source/ubl-settings-manager.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index 7bb439d..37f4275 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -137,7 +137,7 @@ void on_ButtonOpenHelp_activated(GtkWidget *button, GtkBuilder *builder){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,"AlwaysOpenHelpCheckbox")))) { #ifdef WEBKIT_FOUND - if (access("/usr/lib/webkit2gtk-4.0/", F_OK)==0){ + if (webkit_web_view_new){ GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); @@ -173,7 +173,7 @@ void on_CancelHelpButton_activated(GtkWidget *button,GtkBuilder *builder){ void on_ReadHelpButton_activated(GtkWidget *button, GtkBuilder *builder){ #ifdef WEBKIT_FOUND - if (access("/usr/lib/webkit2gtk-4.0/", F_OK)==0){ + if (webkit_web_view_new){ GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); From f6d6eedad7a2d027cbe3674c930c094c393c99ee Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 24 Apr 2023 12:32:55 +0000 Subject: [PATCH 16/23] Test fix for unnessessary library absention --- source/ubl-settings-manager.c | 6 ++++-- source/ubl-settings-manager.h | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index 37f4275..a90227b 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -137,7 +137,8 @@ void on_ButtonOpenHelp_activated(GtkWidget *button, GtkBuilder *builder){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,"AlwaysOpenHelpCheckbox")))) { #ifdef WEBKIT_FOUND - if (webkit_web_view_new){ + handle = dlopen("libwebkit2gtkinjectedbundle.so", RTLD_LAZY); + if (handle) { GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); @@ -173,7 +174,8 @@ void on_CancelHelpButton_activated(GtkWidget *button,GtkBuilder *builder){ void on_ReadHelpButton_activated(GtkWidget *button, GtkBuilder *builder){ #ifdef WEBKIT_FOUND - if (webkit_web_view_new){ + handle = dlopen("libwebkit2gtkinjectedbundle.so", RTLD_LAZY); + if (handle) { GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); diff --git a/source/ubl-settings-manager.h b/source/ubl-settings-manager.h index 4e28368..6b7bc06 100644 --- a/source/ubl-settings-manager.h +++ b/source/ubl-settings-manager.h @@ -4,6 +4,7 @@ #include #include #include +#include #include "ubl-settings-manager-cm.h" #ifdef WEBKIT_FOUND #include From 34706f2dedb735cc40702f25722432be9336a321 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 24 Apr 2023 12:43:00 +0000 Subject: [PATCH 17/23] Test fix for unnessessary library absention --- source/ubl-settings-manager.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index a90227b..0f97af3 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -137,7 +137,8 @@ void on_ButtonOpenHelp_activated(GtkWidget *button, GtkBuilder *builder){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,"AlwaysOpenHelpCheckbox")))) { #ifdef WEBKIT_FOUND - handle = dlopen("libwebkit2gtkinjectedbundle.so", RTLD_LAZY); + void *handle=NULL; + handle = dlopen("libwebkit2gtk-4.0.so", RTLD_LAZY); if (handle) { GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); @@ -174,7 +175,8 @@ void on_CancelHelpButton_activated(GtkWidget *button,GtkBuilder *builder){ void on_ReadHelpButton_activated(GtkWidget *button, GtkBuilder *builder){ #ifdef WEBKIT_FOUND - handle = dlopen("libwebkit2gtkinjectedbundle.so", RTLD_LAZY); + void *handle=NULL; + handle = dlopen("libwebkit2gtk-4.0.so", RTLD_LAZY); if (handle) { GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); From 037473f341d8570cd06923af62f354fed6857145 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 24 Apr 2023 14:26:39 +0000 Subject: [PATCH 18/23] Done confugiring optional library absention --- source/CMakeLists.txt | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt index 9b284b8..d693d17 100644 --- a/source/CMakeLists.txt +++ b/source/CMakeLists.txt @@ -7,21 +7,15 @@ pkg_check_modules(GTK REQUIRED gtk+-3.0) include_directories(${GTK_INCLUDE_DIRS}) link_directories(${GTK_LIBRARY_DIRS}) add_definitions(${GTK_CFLAGS_OTHER}) -option(WEBKIT_FOUND "No" OFF) +option(USE_WEBKIT "Force turn on or turn off webkit" ON) -find_library(WEBKIT_LIBRARIES_FOUND webkit2gtk-4.0 webkit2gtk-web-extension-4.0) -message("${WEBKIT_LIBRARIES_FOUND}") -if(WEBKIT_LIBRARIES_FOUND) - option(WEBKIT_FOUND "Yes" ON) - message("Webkit is located at ${WEBKIT_LIBRARIES_FOUND}") +if (USE_WEBKIT) PKG_CHECK_MODULES(WEBKIT REQUIRED webkit2gtk-4.0 webkit2gtk-web-extension-4.0) include_directories(${WEBKIT_INCLUDE_DIRS}) link_directories(${WEBKIT_LIBRARY_DIRS}) add_definitions(${WEBKIT_CFLAGS_OTHER}) endif() - - configure_file(ubl-settings-manager.h.in ubl-settings-manager-cm.h) #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always -std=c++2a") From 1853fac85c094672fdbc8f3d5f2588b083827713 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 25 Apr 2023 08:54:38 +0000 Subject: [PATCH 19/23] Edited description in pot file --- ubl-settings-manager.pot | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/ubl-settings-manager.pot b/ubl-settings-manager.pot index b948874..9d0f5f9 100644 --- a/ubl-settings-manager.pot +++ b/ubl-settings-manager.pot @@ -1,18 +1,18 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. +# Russian translations for ubl-settings-manager package. +# Copyright (C) 2022, UBTech LLC +# This file is distributed under the same license as the ubl-settings-manager package. +# UBLinux Team , 2022 # #, fuzzy msgid "" msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" +"Project-Id-Version: ubl-settings-manager 1.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-04-21 12:33+0000\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"Language: \n" +"PO-Revision-Date: 2023-01-01 00:00+0600\n" +"Last-Translator: UBLinux Team \n" +"Language-Team: Russian - UBLinux Team \n" +"Language: Russian\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" From d88ebf05844f5ad3b2405fde2c80e4102b796185 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 25 Apr 2023 11:51:15 +0000 Subject: [PATCH 20/23] Test search for any version of unnessessary library --- source/ubl-settings-manager.c | 42 ++++++++++++++++++----------------- source/ubl-settings-manager.h | 2 ++ 2 files changed, 24 insertions(+), 20 deletions(-) diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index 0f97af3..ff749a3 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -137,16 +137,17 @@ void on_ButtonOpenHelp_activated(GtkWidget *button, GtkBuilder *builder){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,"AlwaysOpenHelpCheckbox")))) { #ifdef WEBKIT_FOUND - void *handle=NULL; - handle = dlopen("libwebkit2gtk-4.0.so", RTLD_LAZY); - if (handle) { - GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); - GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); - GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); - GtkWidget *WebView=webkit_web_view_new(); - webkit_web_view_load_uri(WEBKIT_WEB_VIEW(WebView),UBLINUX_WIKI_LINK); - gtk_box_pack_start(GTK_BOX(web_place),WebView,1,1,0); - gtk_widget_show_all(browser); + FILE *fl = popen(check_web2kit_command,"r"); + char ssttrr[1000]; + memset(ssttrr,0,1000); + if(fgets(ssttrr,1000,fl)){ + GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); + GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); + GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); + GtkWidget *WebView=webkit_web_view_new(); + webkit_web_view_load_uri(WEBKIT_WEB_VIEW(WebView),UBLINUX_WIKI_LINK); + gtk_box_pack_start(GTK_BOX(web_place),WebView,1,1,0); + gtk_widget_show_all(browser); } else if(system(UBLINUX_WIKI_COMMAND)){}; #else @@ -175,16 +176,17 @@ void on_CancelHelpButton_activated(GtkWidget *button,GtkBuilder *builder){ void on_ReadHelpButton_activated(GtkWidget *button, GtkBuilder *builder){ #ifdef WEBKIT_FOUND - void *handle=NULL; - handle = dlopen("libwebkit2gtk-4.0.so", RTLD_LAZY); - if (handle) { - GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); - GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); - GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); - GtkWidget *WebView=webkit_web_view_new(); - webkit_web_view_load_uri(WEBKIT_WEB_VIEW(WebView),UBLINUX_WIKI_LINK); - gtk_box_pack_start(GTK_BOX(web_place),WebView,1,1,0); - gtk_widget_show_all(browser); + FILE *fl = popen(check_web2kit_command,"r"); + char ssttrr[1000]; + memset(ssttrr,0,1000); + if(fgets(ssttrr,1000,fl)){ + GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); + GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); + GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); + GtkWidget *WebView=webkit_web_view_new(); + webkit_web_view_load_uri(WEBKIT_WEB_VIEW(WebView),UBLINUX_WIKI_LINK); + gtk_box_pack_start(GTK_BOX(web_place),WebView,1,1,0); + gtk_widget_show_all(browser); } else if(system(UBLINUX_WIKI_COMMAND)){}; #else diff --git a/source/ubl-settings-manager.h b/source/ubl-settings-manager.h index 6b7bc06..bb5260a 100644 --- a/source/ubl-settings-manager.h +++ b/source/ubl-settings-manager.h @@ -13,6 +13,8 @@ #define UBLINUX_WIKI_COMMAND "xdg-open http://wiki.ublinux.ru" #define UBLINUX_WIKI_LINK " http://wiki.ublinux.ru" +#define check_web2kit_command "ldconfig -p |grep web2kit" + #define cmdVersionText yon_char_get_augumented(yon_char_get_augumented(_("Version: "),version_application),"\n") #define cmdHelpText yon_char_get_augumented(yon_char_get_augumented(_("ubl-settings-manager version: "),version_application),_("\nGTK settings manager for UBLinux\nUsage: ubl-settings-manager [OPTIONS...]\nOptions:\n -h, --help Show this help\n -V, --version Show package version\n --lock-settings Lock menu settings\n")) #define GladePath "/usr/share/ubl-settings-manager/ui/ubl-settings-manager.glade" From 61a6a46f83c580203fc677747ed5b77c2c035de4 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 25 Apr 2023 12:11:19 +0000 Subject: [PATCH 21/23] Test search for any version of unnessessary library --- source/CMakeLists.txt | 6 ------ source/ubl-settings-manager.c | 8 -------- source/ubl-settings-manager.h | 5 +---- 3 files changed, 1 insertion(+), 18 deletions(-) diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt index d693d17..7f3f3ed 100644 --- a/source/CMakeLists.txt +++ b/source/CMakeLists.txt @@ -7,16 +7,10 @@ pkg_check_modules(GTK REQUIRED gtk+-3.0) include_directories(${GTK_INCLUDE_DIRS}) link_directories(${GTK_LIBRARY_DIRS}) add_definitions(${GTK_CFLAGS_OTHER}) -option(USE_WEBKIT "Force turn on or turn off webkit" ON) - -if (USE_WEBKIT) PKG_CHECK_MODULES(WEBKIT REQUIRED webkit2gtk-4.0 webkit2gtk-web-extension-4.0) include_directories(${WEBKIT_INCLUDE_DIRS}) link_directories(${WEBKIT_LIBRARY_DIRS}) add_definitions(${WEBKIT_CFLAGS_OTHER}) -endif() - -configure_file(ubl-settings-manager.h.in ubl-settings-manager-cm.h) #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always -std=c++2a") #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always -lm") diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index ff749a3..8bbd021 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -136,7 +136,6 @@ void on_item_selection_changed(GtkIconView *IV, actionWidgets *widgets){ void on_ButtonOpenHelp_activated(GtkWidget *button, GtkBuilder *builder){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,"AlwaysOpenHelpCheckbox")))) { - #ifdef WEBKIT_FOUND FILE *fl = popen(check_web2kit_command,"r"); char ssttrr[1000]; memset(ssttrr,0,1000); @@ -150,9 +149,6 @@ void on_ButtonOpenHelp_activated(GtkWidget *button, GtkBuilder *builder){ gtk_widget_show_all(browser); } else if(system(UBLINUX_WIKI_COMMAND)){}; - #else - if(system(UBLINUX_WIKI_COMMAND)){}; - #endif } else { GtkWidget *window = GTK_WIDGET(gtk_builder_get_object(builder,"HelpSureWindow")); @@ -175,7 +171,6 @@ void on_CancelHelpButton_activated(GtkWidget *button,GtkBuilder *builder){ }; void on_ReadHelpButton_activated(GtkWidget *button, GtkBuilder *builder){ - #ifdef WEBKIT_FOUND FILE *fl = popen(check_web2kit_command,"r"); char ssttrr[1000]; memset(ssttrr,0,1000); @@ -189,9 +184,6 @@ void on_ReadHelpButton_activated(GtkWidget *button, GtkBuilder *builder){ gtk_widget_show_all(browser); } else if(system(UBLINUX_WIKI_COMMAND)){}; - #else - if(system(UBLINUX_WIKI_COMMAND)){}; - #endif GtkWidget *window = GTK_WIDGET(gtk_builder_get_object(builder,"HelpSureWindow")); gtk_widget_hide(window); }; diff --git a/source/ubl-settings-manager.h b/source/ubl-settings-manager.h index bb5260a..e20a346 100644 --- a/source/ubl-settings-manager.h +++ b/source/ubl-settings-manager.h @@ -5,15 +5,12 @@ #include #include #include -#include "ubl-settings-manager-cm.h" -#ifdef WEBKIT_FOUND #include -#endif #define UBLINUX_WIKI_COMMAND "xdg-open http://wiki.ublinux.ru" #define UBLINUX_WIKI_LINK " http://wiki.ublinux.ru" -#define check_web2kit_command "ldconfig -p |grep web2kit" +#define check_web2kit_command "ldconfig -p |grep webkit2" #define cmdVersionText yon_char_get_augumented(yon_char_get_augumented(_("Version: "),version_application),"\n") #define cmdHelpText yon_char_get_augumented(yon_char_get_augumented(_("ubl-settings-manager version: "),version_application),_("\nGTK settings manager for UBLinux\nUsage: ubl-settings-manager [OPTIONS...]\nOptions:\n -h, --help Show this help\n -V, --version Show package version\n --lock-settings Lock menu settings\n")) From 156385e2ea61888303438f8de611bd10583897ba Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 25 Apr 2023 14:55:16 +0000 Subject: [PATCH 22/23] Unnessessary library check redone --- source/CMakeLists.txt | 10 ++++++++++ source/ubl-settings-manager-cm.h | 1 + source/ubl-settings-manager.c | 30 +++++++++++++----------------- source/ubl-settings-manager.h | 3 +++ 4 files changed, 27 insertions(+), 17 deletions(-) create mode 100644 source/ubl-settings-manager-cm.h diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt index 7f3f3ed..8caec66 100644 --- a/source/CMakeLists.txt +++ b/source/CMakeLists.txt @@ -7,10 +7,20 @@ pkg_check_modules(GTK REQUIRED gtk+-3.0) include_directories(${GTK_INCLUDE_DIRS}) link_directories(${GTK_LIBRARY_DIRS}) add_definitions(${GTK_CFLAGS_OTHER}) + +option(WEBKIT_FOUND "No" OFF) + +find_library(WEBKIT_LIBRARIES_FOUND webkit2gtk-4.0 webkit2gtk-web-extension-4.0) + +if(WEBKIT_LIBRARIES_FOUND) + option(WEBKIT_FOUND "Yes" ON) PKG_CHECK_MODULES(WEBKIT REQUIRED webkit2gtk-4.0 webkit2gtk-web-extension-4.0) include_directories(${WEBKIT_INCLUDE_DIRS}) link_directories(${WEBKIT_LIBRARY_DIRS}) add_definitions(${WEBKIT_CFLAGS_OTHER}) +endif() + +configure_file(ubl-settings-manager.h.in ubl-settings-manager-cm.h) #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always -std=c++2a") #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always -lm") diff --git a/source/ubl-settings-manager-cm.h b/source/ubl-settings-manager-cm.h new file mode 100644 index 0000000..26a7931 --- /dev/null +++ b/source/ubl-settings-manager-cm.h @@ -0,0 +1 @@ +#define WEBKIT_FOUND diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index 8bbd021..b22b357 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -136,10 +136,7 @@ void on_item_selection_changed(GtkIconView *IV, actionWidgets *widgets){ void on_ButtonOpenHelp_activated(GtkWidget *button, GtkBuilder *builder){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,"AlwaysOpenHelpCheckbox")))) { - FILE *fl = popen(check_web2kit_command,"r"); - char ssttrr[1000]; - memset(ssttrr,0,1000); - if(fgets(ssttrr,1000,fl)){ + #ifdef WEBKIT_FOUND GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); @@ -147,8 +144,9 @@ void on_ButtonOpenHelp_activated(GtkWidget *button, GtkBuilder *builder){ webkit_web_view_load_uri(WEBKIT_WEB_VIEW(WebView),UBLINUX_WIKI_LINK); gtk_box_pack_start(GTK_BOX(web_place),WebView,1,1,0); gtk_widget_show_all(browser); - } else + #else if(system(UBLINUX_WIKI_COMMAND)){}; + #endif } else { GtkWidget *window = GTK_WIDGET(gtk_builder_get_object(builder,"HelpSureWindow")); @@ -171,19 +169,17 @@ void on_CancelHelpButton_activated(GtkWidget *button,GtkBuilder *builder){ }; void on_ReadHelpButton_activated(GtkWidget *button, GtkBuilder *builder){ - FILE *fl = popen(check_web2kit_command,"r"); - char ssttrr[1000]; - memset(ssttrr,0,1000); - if(fgets(ssttrr,1000,fl)){ - GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); - GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); - GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); - GtkWidget *WebView=webkit_web_view_new(); - webkit_web_view_load_uri(WEBKIT_WEB_VIEW(WebView),UBLINUX_WIKI_LINK); - gtk_box_pack_start(GTK_BOX(web_place),WebView,1,1,0); - gtk_widget_show_all(browser); - } else + #ifdef WEBKIT_FOUND + GtkBuilder *web_builder=gtk_builder_new_from_file(GladePath); + GtkWidget *browser=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Window")); + GtkWidget *web_place=GTK_WIDGET(gtk_builder_get_object(web_builder,"Web_Place")); + GtkWidget *WebView=webkit_web_view_new(); + webkit_web_view_load_uri(WEBKIT_WEB_VIEW(WebView),UBLINUX_WIKI_LINK); + gtk_box_pack_start(GTK_BOX(web_place),WebView,1,1,0); + gtk_widget_show_all(browser); + #else if(system(UBLINUX_WIKI_COMMAND)){}; + #endif GtkWidget *window = GTK_WIDGET(gtk_builder_get_object(builder,"HelpSureWindow")); gtk_widget_hide(window); }; diff --git a/source/ubl-settings-manager.h b/source/ubl-settings-manager.h index e20a346..b10f3dd 100644 --- a/source/ubl-settings-manager.h +++ b/source/ubl-settings-manager.h @@ -5,7 +5,10 @@ #include #include #include +#include "ubl-settings-manager-cm.h" +#ifdef WEBKIT_FOUND #include +#endif #define UBLINUX_WIKI_COMMAND "xdg-open http://wiki.ublinux.ru" #define UBLINUX_WIKI_LINK " http://wiki.ublinux.ru" From 0717562166da1aece78bbb11be423c96945d9bda Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Wed, 26 Apr 2023 09:20:43 +0000 Subject: [PATCH 23/23] GTK errors fixed --- source/ubl-settings-manager.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index b22b357..58149bc 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -952,7 +952,8 @@ int setup_config(){ g_key_file_load_from_file(configfile,pth,G_KEY_FILE_KEEP_TRANSLATIONS,&err); if (err||main_config.lock_settings==1){ - g_error_free(err); + if(err) + g_error_free(err); err=NULL; g_key_file_load_from_file(configfile,GlobalConfigPath,G_KEY_FILE_KEEP_TRANSLATIONS,&err); @@ -1806,7 +1807,7 @@ dictionary *yon_theme_new(dictionary **widgetss, GtkBuilder *builder, char *them gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"MainHeaderNameLabel")),UBL_SETTINGS_MANAGER_TITLE); gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"sectionsHeaderNameLabel")),UBL_SETTINGS_MANAGER_TITLE); gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"GnomeHeaderNameLabel")),UBL_SETTINGS_MANAGER_TITLE); - gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"UBLinux Settings")),UBL_SETTINGS_MANAGER_TITLE); + gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"settingsHeaderNameLabel")),UBL_SETTINGS_MANAGER_TITLE); gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"webHeaderNameLabel")),UBL_SETTINGS_MANAGER_TITLE); gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"warningHeaderNameLabel")),UBL_SETTINGS_MANAGER_TITLE); gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"LoaderHeaderNameLabel")),UBL_SETTINGS_MANAGER_TITLE);