From d643c3a7061b5dbaa8a1b7e89c1125a36bc156d0 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 22 Apr 2024 12:18:27 +0600 Subject: [PATCH 01/28] Returned terminal command executing --- source/ubl-settings-system.c | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index ac02a32..0c3985d 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -495,8 +495,9 @@ void on_domain_connect(GtkWidget *self, dictionary *dict){ gtk_label_set_text(GTK_LABEL(dialog->HeadLabel),DOMAIN_CONNECTING_LABEL); yon_debug_output(domain_connect_command(adress,login,password,final)); int size_; - config_str test = yon_config_load(domain_disconnect_command(adress,login,password),&size_); - vte_terminal_feed(VTE_TERMINAL(dialog->ExecuteTerminal),yon_char_parsed_to_string(test,size_,""),-1); + // config_str test = yon_config_load(domain_disconnect_command(adress,login,password),&size_); + // vte_terminal_feed(VTE_TERMINAL(dialog->ExecuteTerminal),yon_char_parsed_to_string(test,size_,""),-1); + yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_disconnect_command(adress,login,password),NULL,NULL); gtk_entry_set_text(GTK_ENTRY(widgets->DomainEntry),adress); gtk_widget_show(dialog->Window); } @@ -508,8 +509,9 @@ void on_status_clicked(GtkWidget *self, connection_window *window){ yon_debug_output(domain_info(target)); int size_; - config_str test = yon_config_load(domain_info(target),&size_); - vte_terminal_feed(VTE_TERMINAL(dialog->ExecuteTerminal),yon_char_parsed_to_string(test,size_,""),-1); + // config_str test = yon_config_load(domain_info(target),&size_); + // vte_terminal_feed(VTE_TERMINAL(dialog->ExecuteTerminal),yon_char_parsed_to_string(test,size_,""),-1); + yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_info(target),NULL,NULL); } gtk_widget_show(dialog->Window); @@ -519,8 +521,9 @@ void on_find_domains_clicked(GtkWidget *self, connection_window *window){ domain_info_window *dialog = yon_information_window_new(); yon_debug_output(domains_seek_command); int size_; - config_str test = yon_config_load(domains_seek_command,&size_); - vte_terminal_feed(VTE_TERMINAL(dialog->ExecuteTerminal),yon_char_parsed_to_string(test,size_,""),-1); + // config_str test = yon_config_load(domains_seek_command,&size_); + // vte_terminal_feed(VTE_TERMINAL(dialog->ExecuteTerminal),yon_char_parsed_to_string(test,size_,""),-1); + yon_terminal_integrated_start(dialog->ExecuteTerminal,domains_seek_command,NULL,NULL); gtk_widget_show(dialog->Window); } @@ -533,8 +536,9 @@ void on_main_window_domain_status_clicked(GtkWidget *self, GtkEntryIconPosition gtk_widget_show(window->Window); yon_debug_output(get_domain_info_command); int size_; - config_str test = yon_config_load(get_domain_info_command,&size_); - vte_terminal_feed(VTE_TERMINAL(window->ExecuteTerminal),yon_char_parsed_to_string(test,size_,""),-1); + // config_str test = yon_config_load(get_domain_info_command,&size_); + // vte_terminal_feed(VTE_TERMINAL(window->ExecuteTerminal),yon_char_parsed_to_string(test,size_,""),-1); + yon_terminal_integrated_start(window->ExecuteTerminal,get_domain_info_command,NULL,NULL); } } } @@ -602,8 +606,9 @@ void on_domain_disconnect(GtkWidget *self, dictionary *dict){ gtk_widget_show(dialog->Window); yon_debug_output(domain_disconnect_command(adress,login,password)); int size_; - config_str test = yon_config_load(domain_disconnect_command(adress,login,password),&size_); - vte_terminal_feed(VTE_TERMINAL(dialog->ExecuteTerminal),yon_char_parsed_to_string(test,size_,""),-1); + // config_str test = yon_config_load(domain_disconnect_command(adress,login,password),&size_); + // vte_terminal_feed(VTE_TERMINAL(dialog->ExecuteTerminal),yon_char_parsed_to_string(test,size_,""),-1); + yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_disconnect_command(adress,login,password),NULL,NULL); gtk_entry_set_text(GTK_ENTRY(widgets->DomainEntry),adress); on_subwindow_close(window->Window); } -- 2.35.1 From 6f6e5a4e4230f752ee0c460ecfb38a4215538308 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 22 Apr 2024 15:04:27 +0600 Subject: [PATCH 02/28] Changed minimal height of window --- source/ubl-settings-system.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index 0c3985d..7cbe191 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -713,7 +713,7 @@ main_window *yon_main_window_complete(main_window *widgets){ /* Widgets getting | Получение виджетов */ widgets = yon_remalloc(widgets,sizeof(main_window)); GtkBuilder *builder = gtk_builder_new_from_resource(glade_path); - gtk_box_pack_start(GTK_BOX(widgets->InterfaceBox),yon_gtk_builder_get_widget(builder,"BoxMain"),1,1,0); + gtk_box_pack_start(GTK_BOX(widgets->InterfaceBox),yon_gtk_builder_get_widget(builder,"BoxMain"),0,0,0); widgets->HostnameEntry = yon_gtk_builder_get_widget(builder,"HostnameEntry"); widgets->IDCombo = yon_gtk_builder_get_widget(builder,"IDCombo"); @@ -769,6 +769,8 @@ main_window *yon_main_window_complete(main_window *widgets){ g_signal_connect(G_OBJECT(widgets->DomainEntry),"changed",G_CALLBACK(yon_gtk_windget_set_sensitive_from_entry_emptiness),widgets->DomainButton); g_signal_connect(G_OBJECT(widgets->DomainEntry),"focus-out-event",G_CALLBACK(on_domain_address_save),NULL); + + gtk_widget_set_size_request(widgets->Window,800,440); g_timeout_add(1000,(GSourceFunc)on_check_domain_connected,widgets); -- 2.35.1 From 58f913acdd225d85af8af318f1f0428b6717a446 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 22 Apr 2024 16:19:02 +0600 Subject: [PATCH 03/28] Added tooltip to status icon --- source/ubl-settings-system.c | 3 +++ source/ubl-strings.h | 5 ++++- ubl-settings-system.pot | 8 ++++++++ ubl-settings-system_ru.po | 8 ++++++++ 4 files changed, 23 insertions(+), 1 deletion(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index 7cbe191..46549b7 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -701,10 +701,13 @@ void on_check_domain_connected(main_window *widgets){ if (!system(domain_connect_check)){ gtk_entry_set_icon_from_icon_name(GTK_ENTRY(widgets->DomainEntry),GTK_ENTRY_ICON_SECONDARY,domain_connected_icon); gtk_button_set_label(GTK_BUTTON(widgets->DomainButton),DOMAIN_DISCONNECT_LABEL); + // gtk_widget_set_tooltip_markup(widgets->DomainEntry,DOMAIN_CONNECTED_LABEL); + gtk_entry_set_icon_tooltip_markup(GTK_ENTRY(widgets->DomainEntry),GTK_ENTRY_ICON_SECONDARY,DOMAIN_CONNECTED_LABEL); main_config.domain_connected=1; } else { gtk_entry_set_icon_from_icon_name(GTK_ENTRY(widgets->DomainEntry),GTK_ENTRY_ICON_SECONDARY,domain_disconnected_icon); gtk_button_set_label(GTK_BUTTON(widgets->DomainButton),DOMAIN_CONNECT_LABEL); + gtk_entry_set_icon_tooltip_markup(GTK_ENTRY(widgets->DomainEntry),GTK_ENTRY_ICON_SECONDARY,DOMAIN_DISCONNECTED_LABEL); main_config.domain_connected=0; } } diff --git a/source/ubl-strings.h b/source/ubl-strings.h index 70d26e3..bb08bc6 100644 --- a/source/ubl-strings.h +++ b/source/ubl-strings.h @@ -52,4 +52,7 @@ #define DOMAIN_CONNECTING_LABEL _("Connecting to domain") #define DOMAIN_CONNECT_LABEL _("Connect to domain") -#define DOMAIN_DISCONNECT_LABEL _("Disconnect from domain") \ No newline at end of file +#define DOMAIN_DISCONNECT_LABEL _("Disconnect from domain") + +#define DOMAIN_CONNECTED_LABEL _("Connected to domain") +#define DOMAIN_DISCONNECTED_LABEL _("Disconnected from domain") \ No newline at end of file diff --git a/ubl-settings-system.pot b/ubl-settings-system.pot index 358c17a..384cb20 100644 --- a/ubl-settings-system.pot +++ b/ubl-settings-system.pot @@ -196,3 +196,11 @@ msgstr "" #: source/ubl-strings.h:55 msgid "Disconnect from domain" msgstr "" + +#: source/ubl-strings.h:57 +msgid "Connected to domain" +msgstr "" + +#: source/ubl-strings.h:58 +msgid "Disconnected from domain" +msgstr "" diff --git a/ubl-settings-system_ru.po b/ubl-settings-system_ru.po index 87fba24..812deda 100644 --- a/ubl-settings-system_ru.po +++ b/ubl-settings-system_ru.po @@ -198,6 +198,14 @@ msgstr "Войти в домен" msgid "Disconnect from domain" msgstr "Выйти из домена" +#: source/ubl-strings.h:57 +msgid "Connected to domain" +msgstr "Подключен к домену" + +#: source/ubl-strings.h:58 +msgid "Disconnected from domain" +msgstr "Не подключен к домену" + msgid "Version:" msgstr "Версия:" -- 2.35.1 From 2f83c24677e235b1bf09fba8c6d7bb5b23afc6f3 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 22 Apr 2024 16:21:42 +0600 Subject: [PATCH 04/28] removed comments --- source/ubl-settings-system.c | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index 46549b7..741226a 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -495,8 +495,6 @@ void on_domain_connect(GtkWidget *self, dictionary *dict){ gtk_label_set_text(GTK_LABEL(dialog->HeadLabel),DOMAIN_CONNECTING_LABEL); yon_debug_output(domain_connect_command(adress,login,password,final)); int size_; - // config_str test = yon_config_load(domain_disconnect_command(adress,login,password),&size_); - // vte_terminal_feed(VTE_TERMINAL(dialog->ExecuteTerminal),yon_char_parsed_to_string(test,size_,""),-1); yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_disconnect_command(adress,login,password),NULL,NULL); gtk_entry_set_text(GTK_ENTRY(widgets->DomainEntry),adress); gtk_widget_show(dialog->Window); @@ -509,8 +507,6 @@ void on_status_clicked(GtkWidget *self, connection_window *window){ yon_debug_output(domain_info(target)); int size_; - // config_str test = yon_config_load(domain_info(target),&size_); - // vte_terminal_feed(VTE_TERMINAL(dialog->ExecuteTerminal),yon_char_parsed_to_string(test,size_,""),-1); yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_info(target),NULL,NULL); } @@ -521,8 +517,6 @@ void on_find_domains_clicked(GtkWidget *self, connection_window *window){ domain_info_window *dialog = yon_information_window_new(); yon_debug_output(domains_seek_command); int size_; - // config_str test = yon_config_load(domains_seek_command,&size_); - // vte_terminal_feed(VTE_TERMINAL(dialog->ExecuteTerminal),yon_char_parsed_to_string(test,size_,""),-1); yon_terminal_integrated_start(dialog->ExecuteTerminal,domains_seek_command,NULL,NULL); gtk_widget_show(dialog->Window); } @@ -536,8 +530,6 @@ void on_main_window_domain_status_clicked(GtkWidget *self, GtkEntryIconPosition gtk_widget_show(window->Window); yon_debug_output(get_domain_info_command); int size_; - // config_str test = yon_config_load(get_domain_info_command,&size_); - // vte_terminal_feed(VTE_TERMINAL(window->ExecuteTerminal),yon_char_parsed_to_string(test,size_,""),-1); yon_terminal_integrated_start(window->ExecuteTerminal,get_domain_info_command,NULL,NULL); } } @@ -606,8 +598,6 @@ void on_domain_disconnect(GtkWidget *self, dictionary *dict){ gtk_widget_show(dialog->Window); yon_debug_output(domain_disconnect_command(adress,login,password)); int size_; - // config_str test = yon_config_load(domain_disconnect_command(adress,login,password),&size_); - // vte_terminal_feed(VTE_TERMINAL(dialog->ExecuteTerminal),yon_char_parsed_to_string(test,size_,""),-1); yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_disconnect_command(adress,login,password),NULL,NULL); gtk_entry_set_text(GTK_ENTRY(widgets->DomainEntry),adress); on_subwindow_close(window->Window); @@ -701,7 +691,6 @@ void on_check_domain_connected(main_window *widgets){ if (!system(domain_connect_check)){ gtk_entry_set_icon_from_icon_name(GTK_ENTRY(widgets->DomainEntry),GTK_ENTRY_ICON_SECONDARY,domain_connected_icon); gtk_button_set_label(GTK_BUTTON(widgets->DomainButton),DOMAIN_DISCONNECT_LABEL); - // gtk_widget_set_tooltip_markup(widgets->DomainEntry,DOMAIN_CONNECTED_LABEL); gtk_entry_set_icon_tooltip_markup(GTK_ENTRY(widgets->DomainEntry),GTK_ENTRY_ICON_SECONDARY,DOMAIN_CONNECTED_LABEL); main_config.domain_connected=1; } else { -- 2.35.1 From 3998efa778a1e4aeb68695c18477c1015ba030b9 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 22 Apr 2024 17:49:19 +0600 Subject: [PATCH 05/28] Test fix for status icon at main window --- source/ubl-settings-system.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index 741226a..461ecef 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -667,6 +667,7 @@ void on_domain_opened(GtkWidget *self, main_window *widgets){ yon_dictionary_add_or_create_if_exists_with_data(dict,"widgets",widgets); yon_dictionary_add_or_create_if_exists_with_data(dict,"window",window); g_signal_connect(G_OBJECT(window->SaveButton),"clicked",G_CALLBACK(on_domain_connect),dict); + g_signal_connect(G_OBJECT(window->Window),"destroy",G_CALLBACK(on_check_domain_connected),widgets); gtk_widget_show(window->Window); } @@ -688,7 +689,9 @@ void config_init(){ } void on_check_domain_connected(main_window *widgets){ - if (!system(domain_connect_check)){ + int ansv = system(domain_connect_check); + printf("%d\n",ansv); + if (!ansv){ gtk_entry_set_icon_from_icon_name(GTK_ENTRY(widgets->DomainEntry),GTK_ENTRY_ICON_SECONDARY,domain_connected_icon); gtk_button_set_label(GTK_BUTTON(widgets->DomainButton),DOMAIN_DISCONNECT_LABEL); gtk_entry_set_icon_tooltip_markup(GTK_ENTRY(widgets->DomainEntry),GTK_ENTRY_ICON_SECONDARY,DOMAIN_CONNECTED_LABEL); @@ -764,7 +767,7 @@ main_window *yon_main_window_complete(main_window *widgets){ gtk_widget_set_size_request(widgets->Window,800,440); - g_timeout_add(1000,(GSourceFunc)on_check_domain_connected,widgets); + // g_timeout_add(1000,(GSourceFunc)on_check_domain_connected,widgets); main_config.localeslist = gtk_list_store_new(3,G_TYPE_STRING,G_TYPE_STRING,G_TYPE_BOOLEAN); int size; -- 2.35.1 From 46e562abcdb20b5ac2142691d2bfb3c17a9ff844 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 22 Apr 2024 17:52:41 +0600 Subject: [PATCH 06/28] Test fix for status icon at main window --- source/ubl-settings-system.c | 2 +- source/ubl-settings-system.h | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index 461ecef..87d0585 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -688,7 +688,7 @@ void config_init(){ main_config.domain_connected=0; } -void on_check_domain_connected(main_window *widgets){ +void on_check_domain_connected(GtkWidget *self, main_window *widgets){ int ansv = system(domain_connect_check); printf("%d\n",ansv); if (!ansv){ diff --git a/source/ubl-settings-system.h b/source/ubl-settings-system.h index 3b2e617..daefef2 100644 --- a/source/ubl-settings-system.h +++ b/source/ubl-settings-system.h @@ -186,4 +186,6 @@ typedef struct { } domain_info_window; main_window *setup_window(); -void on_id_changed(GtkEntry *self, main_window *widgets); \ No newline at end of file +void on_id_changed(GtkEntry *self, main_window *widgets); + +void on_check_domain_connected(GtkWidget *self, main_window *widgets); \ No newline at end of file -- 2.35.1 From afccd4892734e59681370880fffed3484c197275 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 22 Apr 2024 18:04:21 +0600 Subject: [PATCH 07/28] Messages added --- source/ubl-settings-system.c | 4 +++- source/ubl-settings-system.h | 1 + source/ubl-strings.h | 4 +++- ubl-settings-system-domain-view.glade | 1 - ubl-settings-system.pot | 4 ++++ ubl-settings-system_ru.po | 4 ++++ 6 files changed, 15 insertions(+), 3 deletions(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index 87d0585..acf82b4 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -457,6 +457,7 @@ domain_info_window *yon_information_window_new(){ domain_info_window *window = malloc(sizeof(domain_info_window)); window->Window = yon_gtk_builder_get_widget(builder,"MainWindow"); + window->StatusBox = yon_gtk_builder_get_widget(builder,"StatusBox"); window->HeadLabel = yon_gtk_builder_get_widget(builder,"HeadLabel"); window->ExecuteTerminal = yon_gtk_builder_get_widget(builder,"ExecuteTerminal"); window->TerminalScroll = yon_gtk_builder_get_widget(builder,"TerminalScroll"); @@ -504,7 +505,7 @@ void on_status_clicked(GtkWidget *self, connection_window *window){ domain_info_window *dialog = yon_information_window_new(); char *target = (char*)gtk_entry_get_text(GTK_ENTRY(window->AdressEntry)); if (!yon_char_is_empty(target)){ - + yon_ubl_status_box_spawn(GTK_CONTAINER(dialog->StatusBox),LOADING_LABEL,10,BACKGROUND_IMAGE_INFO_TYPE); yon_debug_output(domain_info(target)); int size_; yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_info(target),NULL,NULL); @@ -515,6 +516,7 @@ void on_status_clicked(GtkWidget *self, connection_window *window){ void on_find_domains_clicked(GtkWidget *self, connection_window *window){ domain_info_window *dialog = yon_information_window_new(); + yon_ubl_status_box_spawn(GTK_CONTAINER(dialog->StatusBox),LOADING_LABEL,10,BACKGROUND_IMAGE_INFO_TYPE); yon_debug_output(domains_seek_command); int size_; yon_terminal_integrated_start(dialog->ExecuteTerminal,domains_seek_command,NULL,NULL); diff --git a/source/ubl-settings-system.h b/source/ubl-settings-system.h index daefef2..60a9018 100644 --- a/source/ubl-settings-system.h +++ b/source/ubl-settings-system.h @@ -178,6 +178,7 @@ typedef struct { typedef struct { GtkWidget *Window; + GtkWidget *StatusBox; GtkWidget *HeadLabel; diff --git a/source/ubl-strings.h b/source/ubl-strings.h index bb08bc6..76c6919 100644 --- a/source/ubl-strings.h +++ b/source/ubl-strings.h @@ -55,4 +55,6 @@ #define DOMAIN_DISCONNECT_LABEL _("Disconnect from domain") #define DOMAIN_CONNECTED_LABEL _("Connected to domain") -#define DOMAIN_DISCONNECTED_LABEL _("Disconnected from domain") \ No newline at end of file +#define DOMAIN_DISCONNECTED_LABEL _("Disconnected from domain") + +#define LOADING_LABEL _("Loading...") \ No newline at end of file diff --git a/ubl-settings-system-domain-view.glade b/ubl-settings-system-domain-view.glade index 4effb5f..85e96e3 100644 --- a/ubl-settings-system-domain-view.glade +++ b/ubl-settings-system-domain-view.glade @@ -13,7 +13,6 @@ 800 600 False - True com.ublinux.ubl-settings-repomanager diff --git a/ubl-settings-system.pot b/ubl-settings-system.pot index 384cb20..968eccf 100644 --- a/ubl-settings-system.pot +++ b/ubl-settings-system.pot @@ -204,3 +204,7 @@ msgstr "" #: source/ubl-strings.h:58 msgid "Disconnected from domain" msgstr "" + +#: source/ubl-strings.h:60 +msgid "Loading..." +msgstr "" diff --git a/ubl-settings-system_ru.po b/ubl-settings-system_ru.po index 812deda..a69c281 100644 --- a/ubl-settings-system_ru.po +++ b/ubl-settings-system_ru.po @@ -202,6 +202,10 @@ msgstr "Выйти из домена" msgid "Connected to domain" msgstr "Подключен к домену" +#: source/ubl-strings.h:60 +msgid "Loading..." +msgstr "Загрузка..." + #: source/ubl-strings.h:58 msgid "Disconnected from domain" msgstr "Не подключен к домену" -- 2.35.1 From e7e8b7b1ffdcdce4bea3dc5d8eda66f3497b7c19 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 22 Apr 2024 18:10:18 +0600 Subject: [PATCH 08/28] Test fix --- source/ubl-settings-system.c | 2 +- ubl-settings-system-domain-view.glade | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index acf82b4..4835297 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -464,7 +464,7 @@ domain_info_window *yon_information_window_new(){ yon_gtk_widget_set_scroll_window_for_scroll(window->Window,GTK_SCROLLBAR(window->TerminalScroll)); GdkRGBA rgba; vte_terminal_get_color_background_for_draw(VTE_TERMINAL(window->ExecuteTerminal),&rgba); - vte_terminal_set_color_cursor(VTE_TERMINAL(window->ExecuteTerminal),&rgba); + // vte_terminal_set_color_cursor(VTE_TERMINAL(window->ExecuteTerminal),&rgba); yon_gtk_window_setup(GTK_WINDOW(window->Window),NULL,TITLE_LABEL,"com.ublinux.ubl-settings-system","InfoWindow"); return window; diff --git a/ubl-settings-system-domain-view.glade b/ubl-settings-system-domain-view.glade index 85e96e3..71ebbdf 100644 --- a/ubl-settings-system-domain-view.glade +++ b/ubl-settings-system-domain-view.glade @@ -42,7 +42,7 @@ True - False + True natural adjustment1 natural -- 2.35.1 From d8fc00080ce61c9ea5ab359398d58c36f4beb151 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 22 Apr 2024 18:19:31 +0600 Subject: [PATCH 09/28] Fix for window transistency --- source/ubl-settings-system.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index 4835297..2f51915 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -492,6 +492,7 @@ void on_domain_connect(GtkWidget *self, dictionary *dict){ int size; domain_info_window *dialog = yon_information_window_new(); + gtk_window_set_transient_for(GTK_WINDOW(dialog->Window),GTK_WINDOW(window->Window)); gtk_window_set_title(GTK_WINDOW(dialog->Window),DOMAIN_CONNECTING_LABEL); gtk_label_set_text(GTK_LABEL(dialog->HeadLabel),DOMAIN_CONNECTING_LABEL); yon_debug_output(domain_connect_command(adress,login,password,final)); @@ -503,6 +504,7 @@ void on_domain_connect(GtkWidget *self, dictionary *dict){ void on_status_clicked(GtkWidget *self, connection_window *window){ domain_info_window *dialog = yon_information_window_new(); + gtk_window_set_transient_for(GTK_WINDOW(dialog->Window),GTK_WINDOW(window->Window)); char *target = (char*)gtk_entry_get_text(GTK_ENTRY(window->AdressEntry)); if (!yon_char_is_empty(target)){ yon_ubl_status_box_spawn(GTK_CONTAINER(dialog->StatusBox),LOADING_LABEL,10,BACKGROUND_IMAGE_INFO_TYPE); @@ -516,6 +518,7 @@ void on_status_clicked(GtkWidget *self, connection_window *window){ void on_find_domains_clicked(GtkWidget *self, connection_window *window){ domain_info_window *dialog = yon_information_window_new(); + gtk_window_set_transient_for(GTK_WINDOW(dialog->Window),GTK_WINDOW(window->Window)); yon_ubl_status_box_spawn(GTK_CONTAINER(dialog->StatusBox),LOADING_LABEL,10,BACKGROUND_IMAGE_INFO_TYPE); yon_debug_output(domains_seek_command); int size_; @@ -529,6 +532,7 @@ void on_main_window_domain_status_clicked(GtkWidget *self, GtkEntryIconPosition char *target = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->DomainEntry)); if (!yon_char_is_empty(target)){ domain_info_window *window = yon_information_window_new(); + gtk_window_set_transient_for(GTK_WINDOW(dialog->Window),GTK_WINDOW(window->Window)); gtk_widget_show(window->Window); yon_debug_output(get_domain_info_command); int size_; @@ -597,6 +601,7 @@ void on_domain_disconnect(GtkWidget *self, dictionary *dict){ } int size; domain_info_window *dialog = yon_information_window_new(); + gtk_window_set_transient_for(GTK_WINDOW(dialog->Window),GTK_WINDOW(window->Window)); gtk_widget_show(dialog->Window); yon_debug_output(domain_disconnect_command(adress,login,password)); int size_; -- 2.35.1 From bbf95f14f828bc9917594824d1cac0112b74d856 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 22 Apr 2024 18:21:02 +0600 Subject: [PATCH 10/28] Fix for window transistency --- source/ubl-settings-system.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index 2f51915..d96048d 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -532,7 +532,7 @@ void on_main_window_domain_status_clicked(GtkWidget *self, GtkEntryIconPosition char *target = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->DomainEntry)); if (!yon_char_is_empty(target)){ domain_info_window *window = yon_information_window_new(); - gtk_window_set_transient_for(GTK_WINDOW(dialog->Window),GTK_WINDOW(window->Window)); + gtk_window_set_transient_for(GTK_WINDOW(window->Window),GTK_WINDOW(widgets->Window)); gtk_widget_show(window->Window); yon_debug_output(get_domain_info_command); int size_; -- 2.35.1 From 4fc23d76fa82b730eac3160b4099bb2c181be0d2 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 22 Apr 2024 18:49:52 +0600 Subject: [PATCH 11/28] Removed modal status --- ubl-settings-system-domain.glade | 1 - 1 file changed, 1 deletion(-) diff --git a/ubl-settings-system-domain.glade b/ubl-settings-system-domain.glade index 9afca55..02f3faa 100644 --- a/ubl-settings-system-domain.glade +++ b/ubl-settings-system-domain.glade @@ -5,7 +5,6 @@ False - True com.ublinux.ubl-settings-repomanager -- 2.35.1 From cf705b88c3fb4c828d37707db073e9ffa84cb7a3 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 22 Apr 2024 19:18:38 +0600 Subject: [PATCH 12/28] Fixed command for connection --- source/ubl-settings-system.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index d96048d..f60ac68 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -479,7 +479,6 @@ void on_domain_connect(GtkWidget *self, dictionary *dict){ yon_ubl_status_highlight_incorrect(window->AdressEntry); return; } - g_source_remove(window->timer_id); char *login = (char*)gtk_entry_get_text(GTK_ENTRY(window->LoginEntry)); char *password = (char*)gtk_entry_get_text(GTK_ENTRY(window->PasswordEntry)); char *kerberos = (char*)gtk_entry_get_text(GTK_ENTRY(window->KerberosServerEntry)); @@ -497,7 +496,7 @@ void on_domain_connect(GtkWidget *self, dictionary *dict){ gtk_label_set_text(GTK_LABEL(dialog->HeadLabel),DOMAIN_CONNECTING_LABEL); yon_debug_output(domain_connect_command(adress,login,password,final)); int size_; - yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_disconnect_command(adress,login,password),NULL,NULL); + yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_connect_command(adress,login,password,""),NULL,NULL); gtk_entry_set_text(GTK_ENTRY(widgets->DomainEntry),adress); gtk_widget_show(dialog->Window); } -- 2.35.1 From a5ec84f0814632ce896d84be1099576e8f9564ef Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 22 Apr 2024 19:19:11 +0600 Subject: [PATCH 13/28] Fixed command for connection --- source/ubl-settings-system.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index f60ac68..bb092cd 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -496,7 +496,7 @@ void on_domain_connect(GtkWidget *self, dictionary *dict){ gtk_label_set_text(GTK_LABEL(dialog->HeadLabel),DOMAIN_CONNECTING_LABEL); yon_debug_output(domain_connect_command(adress,login,password,final)); int size_; - yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_connect_command(adress,login,password,""),NULL,NULL); + yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_connect_command(adress,login,password,final),NULL,NULL); gtk_entry_set_text(GTK_ENTRY(widgets->DomainEntry),adress); gtk_widget_show(dialog->Window); } -- 2.35.1 From a175f415b29d14e41ee0e24fadd30e8926e176d8 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 23 Apr 2024 09:57:45 +0600 Subject: [PATCH 14/28] Test temporary fix for commands --- source/ubl-settings-system.c | 38 ++++++------------------------------ source/ubl-settings-system.h | 3 +++ 2 files changed, 9 insertions(+), 32 deletions(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index bb092cd..06986b0 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -488,41 +488,24 @@ void on_domain_connect(GtkWidget *self, dictionary *dict){ client = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(window->ClientCombo)); } char *final = yon_char_unite(!yon_char_is_empty(kerberos)?kerberos_addition_command(kerberos):"",!yon_char_is_empty(kerberos)?" ":"",!yon_char_is_empty(dns)?dns_addition_command(dns):"",!yon_char_is_empty(dns)?" ":"",!yon_char_is_empty(client)?client_addition_command(client):"",!yon_char_is_empty(client)?" ":"",NULL); - - int size; - domain_info_window *dialog = yon_information_window_new(); - gtk_window_set_transient_for(GTK_WINDOW(dialog->Window),GTK_WINDOW(window->Window)); - gtk_window_set_title(GTK_WINDOW(dialog->Window),DOMAIN_CONNECTING_LABEL); - gtk_label_set_text(GTK_LABEL(dialog->HeadLabel),DOMAIN_CONNECTING_LABEL); yon_debug_output(domain_connect_command(adress,login,password,final)); - int size_; - yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_connect_command(adress,login,password,final),NULL,NULL); + yon_debug_output(terminal_command_start(TITLE_LABEL,domain_connect_command(adress,login,password,final))); + yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,domain_connect_command(adress,login,password,final)),""); gtk_entry_set_text(GTK_ENTRY(widgets->DomainEntry),adress); - gtk_widget_show(dialog->Window); } void on_status_clicked(GtkWidget *self, connection_window *window){ - domain_info_window *dialog = yon_information_window_new(); - gtk_window_set_transient_for(GTK_WINDOW(dialog->Window),GTK_WINDOW(window->Window)); char *target = (char*)gtk_entry_get_text(GTK_ENTRY(window->AdressEntry)); if (!yon_char_is_empty(target)){ - yon_ubl_status_box_spawn(GTK_CONTAINER(dialog->StatusBox),LOADING_LABEL,10,BACKGROUND_IMAGE_INFO_TYPE); yon_debug_output(domain_info(target)); - int size_; - yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_info(target),NULL,NULL); + yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,domain_info(target)),""); } - gtk_widget_show(dialog->Window); } void on_find_domains_clicked(GtkWidget *self, connection_window *window){ - domain_info_window *dialog = yon_information_window_new(); - gtk_window_set_transient_for(GTK_WINDOW(dialog->Window),GTK_WINDOW(window->Window)); - yon_ubl_status_box_spawn(GTK_CONTAINER(dialog->StatusBox),LOADING_LABEL,10,BACKGROUND_IMAGE_INFO_TYPE); yon_debug_output(domains_seek_command); - int size_; - yon_terminal_integrated_start(dialog->ExecuteTerminal,domains_seek_command,NULL,NULL); - gtk_widget_show(dialog->Window); + yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,domains_seek_command),""); } @@ -530,12 +513,8 @@ void on_main_window_domain_status_clicked(GtkWidget *self, GtkEntryIconPosition if (icon_pos==GTK_ENTRY_ICON_SECONDARY){ char *target = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->DomainEntry)); if (!yon_char_is_empty(target)){ - domain_info_window *window = yon_information_window_new(); - gtk_window_set_transient_for(GTK_WINDOW(window->Window),GTK_WINDOW(widgets->Window)); - gtk_widget_show(window->Window); yon_debug_output(get_domain_info_command); - int size_; - yon_terminal_integrated_start(window->ExecuteTerminal,get_domain_info_command,NULL,NULL); + yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,get_domain_info_command),""); } } } @@ -598,13 +577,8 @@ void on_domain_disconnect(GtkWidget *self, dictionary *dict){ yon_ubl_status_highlight_incorrect(window->AdressEntry); return; } - int size; - domain_info_window *dialog = yon_information_window_new(); - gtk_window_set_transient_for(GTK_WINDOW(dialog->Window),GTK_WINDOW(window->Window)); - gtk_widget_show(dialog->Window); yon_debug_output(domain_disconnect_command(adress,login,password)); - int size_; - yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_disconnect_command(adress,login,password),NULL,NULL); + yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,domain_disconnect_command(adress,login,password)),""); gtk_entry_set_text(GTK_ENTRY(widgets->DomainEntry),adress); on_subwindow_close(window->Window); } diff --git a/source/ubl-settings-system.h b/source/ubl-settings-system.h index 60a9018..38638f3 100644 --- a/source/ubl-settings-system.h +++ b/source/ubl-settings-system.h @@ -80,12 +80,15 @@ #define domain_check_alive(target) yon_char_unite("timeout --kill-after=0.1 2 dig +time=1 +tries=1 +noall -t SRV _ldap._tcp.",target," @",target," &>/dev/null",NULL) +#define terminal_command_start(title,command) yon_char_unite("vte-2.91 --name=vte --cursor-shape=ibeam --cursor-blink=off --keep --no-pty --title=\"",title,"\" --no-shell --icon-title --no-context-menu --use-theme-colors --whole-window-transparent --no-geometry-hints -- ", command, NULL) + #define DOMAIN "DOMAIN" #define DOMAIN_ADMANGER "DOMAIN[admanger]" #define DOMAIN_SERVER "DOMAIN[server]" #define DOMAIN_DNS "DOMAIN[dns]" #define DOMAIN_CLIENT "DOMAIN[client]" + typedef char* string; string version_application; -- 2.35.1 From 15cba8fd76df779dd9ad8b8cb5064923b07ef860 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 23 Apr 2024 10:05:01 +0600 Subject: [PATCH 15/28] Test temporary fix for commands --- source/ubl-settings-system.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ubl-settings-system.h b/source/ubl-settings-system.h index 38638f3..d33db11 100644 --- a/source/ubl-settings-system.h +++ b/source/ubl-settings-system.h @@ -80,7 +80,7 @@ #define domain_check_alive(target) yon_char_unite("timeout --kill-after=0.1 2 dig +time=1 +tries=1 +noall -t SRV _ldap._tcp.",target," @",target," &>/dev/null",NULL) -#define terminal_command_start(title,command) yon_char_unite("vte-2.91 --name=vte --cursor-shape=ibeam --cursor-blink=off --keep --no-pty --title=\"",title,"\" --no-shell --icon-title --no-context-menu --use-theme-colors --whole-window-transparent --no-geometry-hints -- ", command, NULL) +#define terminal_command_start(title,command) yon_char_unite("$(find /usr/bin/ -name \"vte-*\" -print) --name=vte --cursor-shape=ibeam --cursor-blink=off --keep --no-pty --title=\"",title,"\" --no-shell --icon-title --no-context-menu --use-theme-colors --whole-window-transparent --no-geometry-hints -- '", command,"'", NULL) #define DOMAIN "DOMAIN" #define DOMAIN_ADMANGER "DOMAIN[admanger]" -- 2.35.1 From f133e44c4c789889164c815e525c4919fb6b94ef Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 23 Apr 2024 10:09:51 +0600 Subject: [PATCH 16/28] Test temporary fix for commands --- source/ubl-settings-system.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ubl-settings-system.h b/source/ubl-settings-system.h index d33db11..96c441c 100644 --- a/source/ubl-settings-system.h +++ b/source/ubl-settings-system.h @@ -80,7 +80,7 @@ #define domain_check_alive(target) yon_char_unite("timeout --kill-after=0.1 2 dig +time=1 +tries=1 +noall -t SRV _ldap._tcp.",target," @",target," &>/dev/null",NULL) -#define terminal_command_start(title,command) yon_char_unite("$(find /usr/bin/ -name \"vte-*\" -print) --name=vte --cursor-shape=ibeam --cursor-blink=off --keep --no-pty --title=\"",title,"\" --no-shell --icon-title --no-context-menu --use-theme-colors --whole-window-transparent --no-geometry-hints -- '", command,"'", NULL) +#define terminal_command_start(title,command) yon_char_unite("vte-2.91 --name=vte --cursor-shape=ibeam --cursor-blink=off --keep --no-pty --title=\"",title,"\" --no-shell --icon-title --no-context-menu --use-theme-colors --whole-window-transparent --no-geometry-hints -- '", command,"'", NULL) #define DOMAIN "DOMAIN" #define DOMAIN_ADMANGER "DOMAIN[admanger]" -- 2.35.1 From 712e766c2544893e786d7fb1f356b09aaa77530a Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 23 Apr 2024 10:32:05 +0600 Subject: [PATCH 17/28] Test temporary fix for commands --- source/ubl-settings-system.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ubl-settings-system.h b/source/ubl-settings-system.h index 96c441c..38638f3 100644 --- a/source/ubl-settings-system.h +++ b/source/ubl-settings-system.h @@ -80,7 +80,7 @@ #define domain_check_alive(target) yon_char_unite("timeout --kill-after=0.1 2 dig +time=1 +tries=1 +noall -t SRV _ldap._tcp.",target," @",target," &>/dev/null",NULL) -#define terminal_command_start(title,command) yon_char_unite("vte-2.91 --name=vte --cursor-shape=ibeam --cursor-blink=off --keep --no-pty --title=\"",title,"\" --no-shell --icon-title --no-context-menu --use-theme-colors --whole-window-transparent --no-geometry-hints -- '", command,"'", NULL) +#define terminal_command_start(title,command) yon_char_unite("vte-2.91 --name=vte --cursor-shape=ibeam --cursor-blink=off --keep --no-pty --title=\"",title,"\" --no-shell --icon-title --no-context-menu --use-theme-colors --whole-window-transparent --no-geometry-hints -- ", command, NULL) #define DOMAIN "DOMAIN" #define DOMAIN_ADMANGER "DOMAIN[admanger]" -- 2.35.1 From 735cb90ffe894f957c0c0fec8419f8c8de4c785e Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 23 Apr 2024 10:50:50 +0600 Subject: [PATCH 18/28] Reverting of terminals --- source/ubl-settings-system.c | 36 +++++++++++++++++++++------ source/ubl-settings-system.h | 3 --- ubl-settings-system-domain-view.glade | 2 +- ubl-settings-system-domain.glade | 1 + 4 files changed, 31 insertions(+), 11 deletions(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index 06986b0..acf82b4 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -464,7 +464,7 @@ domain_info_window *yon_information_window_new(){ yon_gtk_widget_set_scroll_window_for_scroll(window->Window,GTK_SCROLLBAR(window->TerminalScroll)); GdkRGBA rgba; vte_terminal_get_color_background_for_draw(VTE_TERMINAL(window->ExecuteTerminal),&rgba); - // vte_terminal_set_color_cursor(VTE_TERMINAL(window->ExecuteTerminal),&rgba); + vte_terminal_set_color_cursor(VTE_TERMINAL(window->ExecuteTerminal),&rgba); yon_gtk_window_setup(GTK_WINDOW(window->Window),NULL,TITLE_LABEL,"com.ublinux.ubl-settings-system","InfoWindow"); return window; @@ -479,6 +479,7 @@ void on_domain_connect(GtkWidget *self, dictionary *dict){ yon_ubl_status_highlight_incorrect(window->AdressEntry); return; } + g_source_remove(window->timer_id); char *login = (char*)gtk_entry_get_text(GTK_ENTRY(window->LoginEntry)); char *password = (char*)gtk_entry_get_text(GTK_ENTRY(window->PasswordEntry)); char *kerberos = (char*)gtk_entry_get_text(GTK_ENTRY(window->KerberosServerEntry)); @@ -488,24 +489,38 @@ void on_domain_connect(GtkWidget *self, dictionary *dict){ client = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(window->ClientCombo)); } char *final = yon_char_unite(!yon_char_is_empty(kerberos)?kerberos_addition_command(kerberos):"",!yon_char_is_empty(kerberos)?" ":"",!yon_char_is_empty(dns)?dns_addition_command(dns):"",!yon_char_is_empty(dns)?" ":"",!yon_char_is_empty(client)?client_addition_command(client):"",!yon_char_is_empty(client)?" ":"",NULL); + + int size; + domain_info_window *dialog = yon_information_window_new(); + gtk_window_set_title(GTK_WINDOW(dialog->Window),DOMAIN_CONNECTING_LABEL); + gtk_label_set_text(GTK_LABEL(dialog->HeadLabel),DOMAIN_CONNECTING_LABEL); yon_debug_output(domain_connect_command(adress,login,password,final)); - yon_debug_output(terminal_command_start(TITLE_LABEL,domain_connect_command(adress,login,password,final))); - yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,domain_connect_command(adress,login,password,final)),""); + int size_; + yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_disconnect_command(adress,login,password),NULL,NULL); gtk_entry_set_text(GTK_ENTRY(widgets->DomainEntry),adress); + gtk_widget_show(dialog->Window); } void on_status_clicked(GtkWidget *self, connection_window *window){ + domain_info_window *dialog = yon_information_window_new(); char *target = (char*)gtk_entry_get_text(GTK_ENTRY(window->AdressEntry)); if (!yon_char_is_empty(target)){ + yon_ubl_status_box_spawn(GTK_CONTAINER(dialog->StatusBox),LOADING_LABEL,10,BACKGROUND_IMAGE_INFO_TYPE); yon_debug_output(domain_info(target)); - yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,domain_info(target)),""); + int size_; + yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_info(target),NULL,NULL); } + gtk_widget_show(dialog->Window); } void on_find_domains_clicked(GtkWidget *self, connection_window *window){ + domain_info_window *dialog = yon_information_window_new(); + yon_ubl_status_box_spawn(GTK_CONTAINER(dialog->StatusBox),LOADING_LABEL,10,BACKGROUND_IMAGE_INFO_TYPE); yon_debug_output(domains_seek_command); - yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,domains_seek_command),""); + int size_; + yon_terminal_integrated_start(dialog->ExecuteTerminal,domains_seek_command,NULL,NULL); + gtk_widget_show(dialog->Window); } @@ -513,8 +528,11 @@ void on_main_window_domain_status_clicked(GtkWidget *self, GtkEntryIconPosition if (icon_pos==GTK_ENTRY_ICON_SECONDARY){ char *target = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->DomainEntry)); if (!yon_char_is_empty(target)){ + domain_info_window *window = yon_information_window_new(); + gtk_widget_show(window->Window); yon_debug_output(get_domain_info_command); - yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,get_domain_info_command),""); + int size_; + yon_terminal_integrated_start(window->ExecuteTerminal,get_domain_info_command,NULL,NULL); } } } @@ -577,8 +595,12 @@ void on_domain_disconnect(GtkWidget *self, dictionary *dict){ yon_ubl_status_highlight_incorrect(window->AdressEntry); return; } + int size; + domain_info_window *dialog = yon_information_window_new(); + gtk_widget_show(dialog->Window); yon_debug_output(domain_disconnect_command(adress,login,password)); - yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,domain_disconnect_command(adress,login,password)),""); + int size_; + yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_disconnect_command(adress,login,password),NULL,NULL); gtk_entry_set_text(GTK_ENTRY(widgets->DomainEntry),adress); on_subwindow_close(window->Window); } diff --git a/source/ubl-settings-system.h b/source/ubl-settings-system.h index 38638f3..60a9018 100644 --- a/source/ubl-settings-system.h +++ b/source/ubl-settings-system.h @@ -80,15 +80,12 @@ #define domain_check_alive(target) yon_char_unite("timeout --kill-after=0.1 2 dig +time=1 +tries=1 +noall -t SRV _ldap._tcp.",target," @",target," &>/dev/null",NULL) -#define terminal_command_start(title,command) yon_char_unite("vte-2.91 --name=vte --cursor-shape=ibeam --cursor-blink=off --keep --no-pty --title=\"",title,"\" --no-shell --icon-title --no-context-menu --use-theme-colors --whole-window-transparent --no-geometry-hints -- ", command, NULL) - #define DOMAIN "DOMAIN" #define DOMAIN_ADMANGER "DOMAIN[admanger]" #define DOMAIN_SERVER "DOMAIN[server]" #define DOMAIN_DNS "DOMAIN[dns]" #define DOMAIN_CLIENT "DOMAIN[client]" - typedef char* string; string version_application; diff --git a/ubl-settings-system-domain-view.glade b/ubl-settings-system-domain-view.glade index 71ebbdf..85e96e3 100644 --- a/ubl-settings-system-domain-view.glade +++ b/ubl-settings-system-domain-view.glade @@ -42,7 +42,7 @@ True - True + False natural adjustment1 natural diff --git a/ubl-settings-system-domain.glade b/ubl-settings-system-domain.glade index 02f3faa..9afca55 100644 --- a/ubl-settings-system-domain.glade +++ b/ubl-settings-system-domain.glade @@ -5,6 +5,7 @@ False + True com.ublinux.ubl-settings-repomanager -- 2.35.1 From 7ba274524a9f87b2fede25f0440b94ba6acc6aa0 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 23 Apr 2024 10:59:02 +0600 Subject: [PATCH 19/28] Fixed untracking of disconnecting window for connection status updafing --- source/ubl-settings-system.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index acf82b4..8beee3c 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -602,7 +602,6 @@ void on_domain_disconnect(GtkWidget *self, dictionary *dict){ int size_; yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_disconnect_command(adress,login,password),NULL,NULL); gtk_entry_set_text(GTK_ENTRY(widgets->DomainEntry),adress); - on_subwindow_close(window->Window); } domain_window *yon_domain_window_new(){ @@ -642,6 +641,7 @@ void on_domain_opened(GtkWidget *self, main_window *widgets){ yon_dictionary_add_or_create_if_exists_with_data(dict,"widgets",widgets); yon_dictionary_add_or_create_if_exists_with_data(dict,"window",window); g_signal_connect(G_OBJECT(window->SaveButton),"clicked",G_CALLBACK(on_domain_disconnect),dict); + g_signal_connect(G_OBJECT(window->Window),"destroy",G_CALLBACK(on_check_domain_connected),widgets); gtk_widget_show(window->Window); } else { @@ -768,6 +768,7 @@ main_window *yon_main_window_complete(main_window *widgets){ g_signal_connect(G_OBJECT(widgets->DomainEntry),"focus-out-event",G_CALLBACK(on_domain_address_save),NULL); gtk_widget_set_size_request(widgets->Window,800,440); + on_check_domain_connected(NULL,widgets); // g_timeout_add(1000,(GSourceFunc)on_check_domain_connected,widgets); -- 2.35.1 From 09abba6764f31fdfd60ed62343ebbb505250bb9e Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 23 Apr 2024 11:04:07 +0600 Subject: [PATCH 20/28] Test fix for freeze --- source/ubl-settings-system.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index 8beee3c..1f6cd6d 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -552,7 +552,7 @@ gboolean on_main_window_domain_status_update(connection_window *window){ return 1; } -gboolean yon_update_thread(connection_window *window){ +gboolean yon_update_thread(GtkWidget *self, GdkEventFocus *event, connection_window *window){ pthread_t thread_id; pthread_create(&thread_id, NULL, (void *)on_main_window_domain_status_update,window); return 1; @@ -579,7 +579,10 @@ connection_window *yon_connection_window_new(){ g_signal_connect(G_OBJECT(window->CancelButton),"clicked",G_CALLBACK(on_subwindow_close),NULL); g_signal_connect(G_OBJECT(window->StatusEntry),"clicked",G_CALLBACK(on_status_clicked),window); g_signal_connect(G_OBJECT(window->FindEntry),"clicked",G_CALLBACK(on_find_domains_clicked),window); - window->timer_id = g_timeout_add(1000,(GSourceFunc)yon_update_thread,window); + g_signal_connect(G_OBJECT(window->FindEntry),"focus-out-event",G_CALLBACK(yon_update_thread),window); + if (!yon_char_is_empty((char*)gtk_entry_get_text(GTK_ENTRY(window->AdressEntry)))){ + yon_update_thread(NULL,NULL,window); + } return window; } -- 2.35.1 From 71d7b83b65a5ed5b394c3f2a986bbf33a196496a Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 23 Apr 2024 11:08:11 +0600 Subject: [PATCH 21/28] Fix for domain connection --- source/ubl-settings-system.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index 1f6cd6d..03bc341 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -496,7 +496,7 @@ void on_domain_connect(GtkWidget *self, dictionary *dict){ gtk_label_set_text(GTK_LABEL(dialog->HeadLabel),DOMAIN_CONNECTING_LABEL); yon_debug_output(domain_connect_command(adress,login,password,final)); int size_; - yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_disconnect_command(adress,login,password),NULL,NULL); + yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_connect_command(adress,login,password),NULL,NULL); gtk_entry_set_text(GTK_ENTRY(widgets->DomainEntry),adress); gtk_widget_show(dialog->Window); } -- 2.35.1 From 90ee4229261b6e93a3d4a36fd021fbd73fe4f841 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 23 Apr 2024 11:08:25 +0600 Subject: [PATCH 22/28] Fix for domain connection --- source/ubl-settings-system.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index 03bc341..d90fe16 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -496,7 +496,7 @@ void on_domain_connect(GtkWidget *self, dictionary *dict){ gtk_label_set_text(GTK_LABEL(dialog->HeadLabel),DOMAIN_CONNECTING_LABEL); yon_debug_output(domain_connect_command(adress,login,password,final)); int size_; - yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_connect_command(adress,login,password),NULL,NULL); + yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_connect_command(adress,login,password,final),NULL,NULL); gtk_entry_set_text(GTK_ENTRY(widgets->DomainEntry),adress); gtk_widget_show(dialog->Window); } -- 2.35.1 From 4547ebfe4ea664273edbc4f5dbc819f202e30394 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 23 Apr 2024 11:13:24 +0600 Subject: [PATCH 23/28] Fixes for domain window --- source/ubl-settings-system.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index d90fe16..a11cb58 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -479,7 +479,6 @@ void on_domain_connect(GtkWidget *self, dictionary *dict){ yon_ubl_status_highlight_incorrect(window->AdressEntry); return; } - g_source_remove(window->timer_id); char *login = (char*)gtk_entry_get_text(GTK_ENTRY(window->LoginEntry)); char *password = (char*)gtk_entry_get_text(GTK_ENTRY(window->PasswordEntry)); char *kerberos = (char*)gtk_entry_get_text(GTK_ENTRY(window->KerberosServerEntry)); @@ -579,7 +578,7 @@ connection_window *yon_connection_window_new(){ g_signal_connect(G_OBJECT(window->CancelButton),"clicked",G_CALLBACK(on_subwindow_close),NULL); g_signal_connect(G_OBJECT(window->StatusEntry),"clicked",G_CALLBACK(on_status_clicked),window); g_signal_connect(G_OBJECT(window->FindEntry),"clicked",G_CALLBACK(on_find_domains_clicked),window); - g_signal_connect(G_OBJECT(window->FindEntry),"focus-out-event",G_CALLBACK(yon_update_thread),window); + g_signal_connect(G_OBJECT(window->AdressEntry),"focus-out-event",G_CALLBACK(yon_update_thread),window); if (!yon_char_is_empty((char*)gtk_entry_get_text(GTK_ENTRY(window->AdressEntry)))){ yon_update_thread(NULL,NULL,window); } -- 2.35.1 From 3658b261bf43d314b1fd22c5ba754b1c6d2e2ae0 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 23 Apr 2024 11:25:25 +0600 Subject: [PATCH 24/28] Revert to external terminals execution --- source/ubl-settings-system.c | 45 ++++++--------------------- source/ubl-settings-system.h | 3 ++ ubl-settings-system-domain-view.glade | 2 +- ubl-settings-system-domain.glade | 1 - 4 files changed, 14 insertions(+), 37 deletions(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index a11cb58..06986b0 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -464,7 +464,7 @@ domain_info_window *yon_information_window_new(){ yon_gtk_widget_set_scroll_window_for_scroll(window->Window,GTK_SCROLLBAR(window->TerminalScroll)); GdkRGBA rgba; vte_terminal_get_color_background_for_draw(VTE_TERMINAL(window->ExecuteTerminal),&rgba); - vte_terminal_set_color_cursor(VTE_TERMINAL(window->ExecuteTerminal),&rgba); + // vte_terminal_set_color_cursor(VTE_TERMINAL(window->ExecuteTerminal),&rgba); yon_gtk_window_setup(GTK_WINDOW(window->Window),NULL,TITLE_LABEL,"com.ublinux.ubl-settings-system","InfoWindow"); return window; @@ -488,38 +488,24 @@ void on_domain_connect(GtkWidget *self, dictionary *dict){ client = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(window->ClientCombo)); } char *final = yon_char_unite(!yon_char_is_empty(kerberos)?kerberos_addition_command(kerberos):"",!yon_char_is_empty(kerberos)?" ":"",!yon_char_is_empty(dns)?dns_addition_command(dns):"",!yon_char_is_empty(dns)?" ":"",!yon_char_is_empty(client)?client_addition_command(client):"",!yon_char_is_empty(client)?" ":"",NULL); - - int size; - domain_info_window *dialog = yon_information_window_new(); - gtk_window_set_title(GTK_WINDOW(dialog->Window),DOMAIN_CONNECTING_LABEL); - gtk_label_set_text(GTK_LABEL(dialog->HeadLabel),DOMAIN_CONNECTING_LABEL); yon_debug_output(domain_connect_command(adress,login,password,final)); - int size_; - yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_connect_command(adress,login,password,final),NULL,NULL); + yon_debug_output(terminal_command_start(TITLE_LABEL,domain_connect_command(adress,login,password,final))); + yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,domain_connect_command(adress,login,password,final)),""); gtk_entry_set_text(GTK_ENTRY(widgets->DomainEntry),adress); - gtk_widget_show(dialog->Window); } void on_status_clicked(GtkWidget *self, connection_window *window){ - domain_info_window *dialog = yon_information_window_new(); char *target = (char*)gtk_entry_get_text(GTK_ENTRY(window->AdressEntry)); if (!yon_char_is_empty(target)){ - yon_ubl_status_box_spawn(GTK_CONTAINER(dialog->StatusBox),LOADING_LABEL,10,BACKGROUND_IMAGE_INFO_TYPE); yon_debug_output(domain_info(target)); - int size_; - yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_info(target),NULL,NULL); + yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,domain_info(target)),""); } - gtk_widget_show(dialog->Window); } void on_find_domains_clicked(GtkWidget *self, connection_window *window){ - domain_info_window *dialog = yon_information_window_new(); - yon_ubl_status_box_spawn(GTK_CONTAINER(dialog->StatusBox),LOADING_LABEL,10,BACKGROUND_IMAGE_INFO_TYPE); yon_debug_output(domains_seek_command); - int size_; - yon_terminal_integrated_start(dialog->ExecuteTerminal,domains_seek_command,NULL,NULL); - gtk_widget_show(dialog->Window); + yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,domains_seek_command),""); } @@ -527,11 +513,8 @@ void on_main_window_domain_status_clicked(GtkWidget *self, GtkEntryIconPosition if (icon_pos==GTK_ENTRY_ICON_SECONDARY){ char *target = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->DomainEntry)); if (!yon_char_is_empty(target)){ - domain_info_window *window = yon_information_window_new(); - gtk_widget_show(window->Window); yon_debug_output(get_domain_info_command); - int size_; - yon_terminal_integrated_start(window->ExecuteTerminal,get_domain_info_command,NULL,NULL); + yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,get_domain_info_command),""); } } } @@ -551,7 +534,7 @@ gboolean on_main_window_domain_status_update(connection_window *window){ return 1; } -gboolean yon_update_thread(GtkWidget *self, GdkEventFocus *event, connection_window *window){ +gboolean yon_update_thread(connection_window *window){ pthread_t thread_id; pthread_create(&thread_id, NULL, (void *)on_main_window_domain_status_update,window); return 1; @@ -578,10 +561,7 @@ connection_window *yon_connection_window_new(){ g_signal_connect(G_OBJECT(window->CancelButton),"clicked",G_CALLBACK(on_subwindow_close),NULL); g_signal_connect(G_OBJECT(window->StatusEntry),"clicked",G_CALLBACK(on_status_clicked),window); g_signal_connect(G_OBJECT(window->FindEntry),"clicked",G_CALLBACK(on_find_domains_clicked),window); - g_signal_connect(G_OBJECT(window->AdressEntry),"focus-out-event",G_CALLBACK(yon_update_thread),window); - if (!yon_char_is_empty((char*)gtk_entry_get_text(GTK_ENTRY(window->AdressEntry)))){ - yon_update_thread(NULL,NULL,window); - } + window->timer_id = g_timeout_add(1000,(GSourceFunc)yon_update_thread,window); return window; } @@ -597,13 +577,10 @@ void on_domain_disconnect(GtkWidget *self, dictionary *dict){ yon_ubl_status_highlight_incorrect(window->AdressEntry); return; } - int size; - domain_info_window *dialog = yon_information_window_new(); - gtk_widget_show(dialog->Window); yon_debug_output(domain_disconnect_command(adress,login,password)); - int size_; - yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_disconnect_command(adress,login,password),NULL,NULL); + yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,domain_disconnect_command(adress,login,password)),""); gtk_entry_set_text(GTK_ENTRY(widgets->DomainEntry),adress); + on_subwindow_close(window->Window); } domain_window *yon_domain_window_new(){ @@ -643,7 +620,6 @@ void on_domain_opened(GtkWidget *self, main_window *widgets){ yon_dictionary_add_or_create_if_exists_with_data(dict,"widgets",widgets); yon_dictionary_add_or_create_if_exists_with_data(dict,"window",window); g_signal_connect(G_OBJECT(window->SaveButton),"clicked",G_CALLBACK(on_domain_disconnect),dict); - g_signal_connect(G_OBJECT(window->Window),"destroy",G_CALLBACK(on_check_domain_connected),widgets); gtk_widget_show(window->Window); } else { @@ -770,7 +746,6 @@ main_window *yon_main_window_complete(main_window *widgets){ g_signal_connect(G_OBJECT(widgets->DomainEntry),"focus-out-event",G_CALLBACK(on_domain_address_save),NULL); gtk_widget_set_size_request(widgets->Window,800,440); - on_check_domain_connected(NULL,widgets); // g_timeout_add(1000,(GSourceFunc)on_check_domain_connected,widgets); diff --git a/source/ubl-settings-system.h b/source/ubl-settings-system.h index 60a9018..38638f3 100644 --- a/source/ubl-settings-system.h +++ b/source/ubl-settings-system.h @@ -80,12 +80,15 @@ #define domain_check_alive(target) yon_char_unite("timeout --kill-after=0.1 2 dig +time=1 +tries=1 +noall -t SRV _ldap._tcp.",target," @",target," &>/dev/null",NULL) +#define terminal_command_start(title,command) yon_char_unite("vte-2.91 --name=vte --cursor-shape=ibeam --cursor-blink=off --keep --no-pty --title=\"",title,"\" --no-shell --icon-title --no-context-menu --use-theme-colors --whole-window-transparent --no-geometry-hints -- ", command, NULL) + #define DOMAIN "DOMAIN" #define DOMAIN_ADMANGER "DOMAIN[admanger]" #define DOMAIN_SERVER "DOMAIN[server]" #define DOMAIN_DNS "DOMAIN[dns]" #define DOMAIN_CLIENT "DOMAIN[client]" + typedef char* string; string version_application; diff --git a/ubl-settings-system-domain-view.glade b/ubl-settings-system-domain-view.glade index 85e96e3..71ebbdf 100644 --- a/ubl-settings-system-domain-view.glade +++ b/ubl-settings-system-domain-view.glade @@ -42,7 +42,7 @@ True - False + True natural adjustment1 natural diff --git a/ubl-settings-system-domain.glade b/ubl-settings-system-domain.glade index 9afca55..02f3faa 100644 --- a/ubl-settings-system-domain.glade +++ b/ubl-settings-system-domain.glade @@ -5,7 +5,6 @@ False - True com.ublinux.ubl-settings-repomanager -- 2.35.1 From ef35e9ecbbb18c48d2f1f61ba6a4bfa6481ef749 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 23 Apr 2024 11:31:15 +0600 Subject: [PATCH 25/28] Fixed russian localisation, added check for domain connection to domain info opening icon --- source/ubl-settings-system.c | 3 +-- ubl-settings-system-domain.glade | 3 ++- ubl-settings-system_ru.po | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index 06986b0..1ab3f08 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -510,7 +510,7 @@ void on_find_domains_clicked(GtkWidget *self, connection_window *window){ void on_main_window_domain_status_clicked(GtkWidget *self, GtkEntryIconPosition icon_pos,GdkEvent* event,main_window *widgets){ - if (icon_pos==GTK_ENTRY_ICON_SECONDARY){ + if (icon_pos==GTK_ENTRY_ICON_SECONDARY&&main_config.domain_connected){ char *target = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->DomainEntry)); if (!yon_char_is_empty(target)){ yon_debug_output(get_domain_info_command); @@ -670,7 +670,6 @@ void config_init(){ void on_check_domain_connected(GtkWidget *self, main_window *widgets){ int ansv = system(domain_connect_check); - printf("%d\n",ansv); if (!ansv){ gtk_entry_set_icon_from_icon_name(GTK_ENTRY(widgets->DomainEntry),GTK_ENTRY_ICON_SECONDARY,domain_connected_icon); gtk_button_set_label(GTK_BUTTON(widgets->DomainButton),DOMAIN_DISCONNECT_LABEL); diff --git a/ubl-settings-system-domain.glade b/ubl-settings-system-domain.glade index 02f3faa..15a0436 100644 --- a/ubl-settings-system-domain.glade +++ b/ubl-settings-system-domain.glade @@ -5,6 +5,7 @@ False + True com.ublinux.ubl-settings-repomanager @@ -51,7 +52,7 @@ True False - Domain adress: + Domain address: 0 diff --git a/ubl-settings-system_ru.po b/ubl-settings-system_ru.po index a69c281..e6a59a0 100644 --- a/ubl-settings-system_ru.po +++ b/ubl-settings-system_ru.po @@ -148,7 +148,7 @@ msgstr "Сервер домена Kerberos/AD" #: source/ubl-strings.h:42 msgid "DNS server:" -msgstr "DNS сервер" +msgstr "DNS сервер:" #: source/ubl-strings.h:43 msgid "Domain connection client" -- 2.35.1 From 0bf92af2a34c23f6075b5afefb2b4b5b32455880 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 23 Apr 2024 11:32:27 +0600 Subject: [PATCH 26/28] Fixed closing of disconnect window on button --- source/ubl-settings-system.c | 1 - 1 file changed, 1 deletion(-) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index 1ab3f08..02876db 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -580,7 +580,6 @@ void on_domain_disconnect(GtkWidget *self, dictionary *dict){ yon_debug_output(domain_disconnect_command(adress,login,password)); yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,domain_disconnect_command(adress,login,password)),""); gtk_entry_set_text(GTK_ENTRY(widgets->DomainEntry),adress); - on_subwindow_close(window->Window); } domain_window *yon_domain_window_new(){ -- 2.35.1 From efef4a4f0838f310a50c885728603b8428aa3c76 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 23 Apr 2024 11:33:16 +0600 Subject: [PATCH 27/28] Fixed checking for closing of disconnect window on button --- source/ubl-settings-system.c | 1 + 1 file changed, 1 insertion(+) diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index 02876db..a0dcb41 100644 --- a/source/ubl-settings-system.c +++ b/source/ubl-settings-system.c @@ -619,6 +619,7 @@ void on_domain_opened(GtkWidget *self, main_window *widgets){ yon_dictionary_add_or_create_if_exists_with_data(dict,"widgets",widgets); yon_dictionary_add_or_create_if_exists_with_data(dict,"window",window); g_signal_connect(G_OBJECT(window->SaveButton),"clicked",G_CALLBACK(on_domain_disconnect),dict); + g_signal_connect(G_OBJECT(window->Window),"destroy",G_CALLBACK(on_check_domain_connected),widgets); gtk_widget_show(window->Window); } else { -- 2.35.1 From ce6a2bb6771b6f0e50732458b08f991e951a66d1 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Tue, 23 Apr 2024 12:07:51 +0600 Subject: [PATCH 28/28] Execution terminals recolor --- source/ubl-settings-system.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ubl-settings-system.h b/source/ubl-settings-system.h index 38638f3..9d720ff 100644 --- a/source/ubl-settings-system.h +++ b/source/ubl-settings-system.h @@ -80,7 +80,7 @@ #define domain_check_alive(target) yon_char_unite("timeout --kill-after=0.1 2 dig +time=1 +tries=1 +noall -t SRV _ldap._tcp.",target," @",target," &>/dev/null",NULL) -#define terminal_command_start(title,command) yon_char_unite("vte-2.91 --name=vte --cursor-shape=ibeam --cursor-blink=off --keep --no-pty --title=\"",title,"\" --no-shell --icon-title --no-context-menu --use-theme-colors --whole-window-transparent --no-geometry-hints -- ", command, NULL) +#define terminal_command_start(title,command) yon_char_unite("vte-2.91 --name=vte --cursor-shape=ibeam --cursor-blink=off --keep --no-pty --title=\"",title,"\" --no-shell --icon-title --no-context-menu -background-color='rgb(0,0,0)' --foreground-color='rgb(255,255,255)' --whole-window-transparent --no-geometry-hints -- ", command, NULL) #define DOMAIN "DOMAIN" #define DOMAIN_ADMANGER "DOMAIN[admanger]" -- 2.35.1