diff --git a/source/ubl-settings-system.c b/source/ubl-settings-system.c index 607a28d..1b063a5 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){ yon_debug_output(terminal_command_start(TITLE_LABEL,domain_connect_command(adress,login,password,final))); domain_info_window *dialog = yon_information_window_new(); yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_connect_command(adress,login,password,final)); + gtk_window_set_transient_for(GTK_WINDOW(dialog->Window),GTK_WINDOW(window->Window)); gtk_widget_show(dialog->Window); // 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); @@ -503,6 +504,7 @@ void on_status_clicked(GtkWidget *self, connection_window *window){ yon_debug_output(domain_info(target)); domain_info_window *dialog = yon_information_window_new(); yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_info(target)); + gtk_window_set_transient_for(GTK_WINDOW(dialog->Window),GTK_WINDOW(window->Window)); gtk_widget_show(dialog->Window); // yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,domain_info(target)),""); @@ -513,6 +515,7 @@ void on_find_domains_clicked(GtkWidget *self, connection_window *window){ yon_debug_output(domains_seek_command); domain_info_window *dialog = yon_information_window_new(); yon_terminal_integrated_start(dialog->ExecuteTerminal,domains_seek_command); + gtk_window_set_transient_for(GTK_WINDOW(dialog->Window),GTK_WINDOW(window->Window)); gtk_widget_show(dialog->Window); // yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,domains_seek_command),""); } @@ -525,6 +528,7 @@ void on_main_window_domain_status_clicked(GtkWidget *self, GtkEntryIconPosition yon_debug_output(get_domain_info_command); domain_info_window *dialog = yon_information_window_new(); yon_terminal_integrated_start(dialog->ExecuteTerminal,get_domain_info_command); + gtk_window_set_transient_for(GTK_WINDOW(dialog->Window),GTK_WINDOW(widgets->Window)); gtk_widget_show(dialog->Window); // yon_launch_app_with_arguments(terminal_command_start(TITLE_LABEL,get_domain_info_command),""); } @@ -592,6 +596,7 @@ void on_domain_disconnect(GtkWidget *self, dictionary *dict){ yon_debug_output(domain_disconnect_command(adress,login,password)); domain_info_window *dialog = yon_information_window_new(); yon_terminal_integrated_start(dialog->ExecuteTerminal,domain_disconnect_command(adress,login,password)); + gtk_window_set_transient_for(GTK_WINDOW(dialog->Window),GTK_WINDOW(window->Window)); gtk_widget_show(dialog->Window); // 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); diff --git a/source/ubl-settings-system.h b/source/ubl-settings-system.h index 345a4b4..208f262 100644 --- a/source/ubl-settings-system.h +++ b/source/ubl-settings-system.h @@ -65,18 +65,18 @@ #define check_domain_access_command(targeet) yon_char_append("adcli info --domain ",target) #define get_domain_info_command "ubdomain-client list " #define domains_seek_command "ubdomain-client discover" -#define domain_connect_command(target,user,password, addition) yon_char_unite("ubdomain-client join",!yon_char_is_empty(user)?" --user \"":"",!yon_char_is_empty(user)?user:"",!yon_char_is_empty(user)?"\"":"",!yon_char_is_empty(password)?" --password \"":"",!yon_char_is_empty(password)?password:"",!yon_char_is_empty(password)?"\"":""," --domain \"",target,"\"", addition,NULL) -#define domain_disconnect_command(target,user,password) yon_char_unite("ubdomain-client leave",!yon_char_is_empty(user)?" --user \"":"",!yon_char_is_empty(user)?user:"",!yon_char_is_empty(user)?"\"":"",!yon_char_is_empty(password)?" --password \"":"",!yon_char_is_empty(password)?password:"",!yon_char_is_empty(password)?"\"":""," --domain \"",target,"\"",NULL) -#define kerberos_addition_command(target) yon_char_unite(" --domain_server \"",target,"\"",NULL) -#define dns_addition_command(target) yon_char_unite(" --dns \"",target,"\"",NULL) -#define client_addition_command(target) yon_char_unite(" --domain_client \"",target,"\"",NULL) +#define domain_connect_command(target,user,password, addition) yon_char_unite("ubdomain-client join",!yon_char_is_empty(user)?" --user ":"",!yon_char_is_empty(user)?user:"",!yon_char_is_empty(password)?" --password ":"",!yon_char_is_empty(password)?password:""," --domain ",target, addition,NULL) +#define domain_disconnect_command(target,user,password) yon_char_unite("ubdomain-client leave",!yon_char_is_empty(user)?" --user ":"",!yon_char_is_empty(user)?user:"",!yon_char_is_empty(password)?" --password ":"",!yon_char_is_empty(password)?password:""," --domain ",target,NULL) +#define kerberos_addition_command(target) yon_char_unite(" --domain_server ",target,"",NULL) +#define dns_addition_command(target) yon_char_unite(" --dns ",target,"",NULL) +#define client_addition_command(target) yon_char_unite(" --domain_client ",target,"",NULL) -#define domain_info(target) yon_char_unite("ubdomain-client discover --domain \"",target,"\"",NULL) +#define domain_info(target) yon_char_unite("ubdomain-client discover --domain ",target,"",NULL) #define domain_connected_icon "com.ublinux.ubl-settings-system.plug-connected-symbolic" #define domain_disconnected_icon "com.ublinux.ubl-settings-system.plug-disconnected-symbolic" -#define domain_connect_check "ubdomain-client list|grep -q \"configured\"" +#define domain_connect_check "ubdomain-client list|grep -q 'configured'" #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) diff --git a/ubl-settings-system-domain-view.glade b/ubl-settings-system-domain-view.glade index 71ebbdf..2d5dd4e 100644 --- a/ubl-settings-system-domain-view.glade +++ b/ubl-settings-system-domain-view.glade @@ -13,6 +13,7 @@ 800 600 False + True com.ublinux.ubl-settings-repomanager