diff --git a/source/ubl-settings-video-driver.c b/source/ubl-settings-video-driver.c index b6240f2..60001c2 100644 --- a/source/ubl-settings-video-driver.c +++ b/source/ubl-settings-video-driver.c @@ -71,16 +71,14 @@ void on_pacman_db_unlock(void){ } void on_terminal_done(GtkWidget *, int , main_window *widgets){ - // GPid pid = (GPid)g_object_get_data(G_OBJECT(widgets->InstallTerminal),"pid"); - // if (!pid) return; const char cancel_signal = 3; char *command = yon_char_new(" "); command[0]=cancel_signal; - char *tmp = yon_char_unite(command,"exit 0\n",NULL); + char *tmp = yon_char_unite(command,"\n",NULL); + on_pacman_db_unlock(); free(command); vte_terminal_feed_child(VTE_TERMINAL(widgets->InstallTerminal),tmp,strlen(tmp)); free(tmp); - // vte_terminal_feed(VTE_TERMINAL(widgets->InstallTerminal),"tput reset; tput cup 0 0; tput ed; exit 0",1); } void on_terminal_more(GtkWidget *, main_window *widgets){ diff --git a/source/ubl-settings-video-monitor.c b/source/ubl-settings-video-monitor.c index e3ef44c..9b8d5ac 100644 --- a/source/ubl-settings-video-monitor.c +++ b/source/ubl-settings-video-monitor.c @@ -210,13 +210,12 @@ void yon_monitor_parse(monitor_edit_window *window, char *string){ free(parsed[i]); parsed[i]=res; } - int resolution = yon_gtk_combo_box_text_find(window->ResolutionCombo,parsed[i]); - if (resolution == -1){ + int resolution = gtk_combo_box_set_active_id(GTK_COMBO_BOX(window->ResolutionCombo),parsed[i]); + if (!resolution){ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UnsupportedCheck),1); while(gtk_events_pending()) gtk_main_iteration(); + gtk_combo_box_set_active_id(GTK_COMBO_BOX(window->ResolutionCombo),parsed[i]); } - resolution = yon_gtk_combo_box_text_find(window->ResolutionCombo,parsed[i]); - gtk_combo_box_set_active(GTK_COMBO_BOX(window->ResolutionCombo),resolution==0?-1:resolution); } } } @@ -465,6 +464,12 @@ void yon_monitor_view_update(){ gtk_label_set_text(GTK_LABEL(window->ResoulutionLabel),parsed[0]); } } + if (yon_char_parsed_check_exist(parsed,parsed_size,"enabled")>-1){ + gtk_widget_set_tooltip_text(window->SwitchButton,ENABLED_LABEL); + } else { + gtk_widget_set_tooltip_text(window->SwitchButton,DISABLED_LABEL); + + } if (yon_char_parsed_check_exist(parsed,parsed_size,"enable")>-1){ gtk_widget_set_sensitive(window->MonitorImage,1); } diff --git a/source/ubl-settings-video.c b/source/ubl-settings-video.c index 1eacbe2..37aa805 100644 --- a/source/ubl-settings-video.c +++ b/source/ubl-settings-video.c @@ -402,11 +402,11 @@ void yon_all_resolutions_update(){ main_config.resolutions_sorted = yon_resource_open_file(get_resolutions_supportable_command,&main_config.resolutions_size); char *table_str = yon_char_parsed_to_string(main_config.resolutions_sorted,main_config.resolutions_size,"\n"); int format_size; - config_str resolutions_formatted = yon_config_load(table_format_command(table_str),&format_size); + config_str resolutions_formatted = yon_config_load(yon_debug_output("%s\n",table_format_command(table_str)),&format_size); for (int i=0;iInterfaceBox)*0.4); + if (gtk_paned_get_position(GTK_PANED(widgets->TerminalPaned))>size-40) + gtk_paned_set_position(GTK_PANED(widgets->TerminalPaned),size-40); +} + /** void yon_setup_widgets(main_window *widgets) * [EN] * Sets up every element on main window @@ -869,6 +875,8 @@ template_main_window *yon_main_window_complete(main_window *widgets){ g_signal_connect(G_OBJECT(widgets->MoreButton),"clicked",G_CALLBACK(on_terminal_revealer_open),widgets); g_signal_connect(G_OBJECT(widgets->TerminalCancelButton),"clicked",G_CALLBACK(on_command_cancel),widgets); g_signal_connect(G_OBJECT(widgets->UnlockPacmanButton),"clicked",G_CALLBACK(on_pacman_db_unlock),NULL); + g_signal_connect(G_OBJECT(widgets->TerminalPaned),"notify::position",G_CALLBACK(on_paned_position_changed),widgets); + g_signal_connect(G_OBJECT(widgets->TerminalPaned),"notify::max-position",G_CALLBACK(on_paned_position_changed),widgets); // g_signal_connect(G_OBJECT(widgets->InstallTerminal),"child-ready",G_CALLBACK(on_driver_child_ready),NULL); char *path = yon_char_unite(yon_ubl_user_get_home_directory(),"/.config/",LocaleName,"/",LocaleName,".conf",NULL); yon_window_config_load(path); @@ -928,7 +936,6 @@ void config_init(){ int main(int argc, char *argv[]){ setlocale(LC_ALL, ""); textdomain (LocaleName); - config_init(); yon_ubl_connect_config((_template_config*)&main_config); yon_ubl_window_init(TITLE_LABEL,TITLE_INFO_LABEL,LocaleName,CssPath,LocaleName,version_application,WIKI_LINK); @@ -937,6 +944,7 @@ int main(int argc, char *argv[]){ yon_ubl_setup_arguments(argc,argv,&unfound,&size,NULL); gtk_init(&argc, &argv); template_main_window *widgets = yon_ubl_window_setup(); + config_init(); widgets = yon_main_window_complete((main_window*)widgets); yon_root_button_setup(widgets,argv,argc); diff --git a/source/ubl-settings-video.h b/source/ubl-settings-video.h index d4c8559..6395d7f 100644 --- a/source/ubl-settings-video.h +++ b/source/ubl-settings-video.h @@ -476,5 +476,6 @@ void yon_monitor_port_manual(GtkToggleButton *self,monitor_edit_window *monitors int yon_string_compare(char **a, char **b); char *yon_char_extend(char *target, char symbol, size_t length); void on_driver_child_ready(VteTerminal *terminal, GPid pid, GError *, gpointer ); +void on_paned_position_changed(GtkWidget *, GdkEvent*,main_window *widgets); #endif \ No newline at end of file diff --git a/source/ubl-strings.h b/source/ubl-strings.h index bf177bd..6cb3009 100644 --- a/source/ubl-strings.h +++ b/source/ubl-strings.h @@ -158,6 +158,8 @@ #define FAIL_LABEL _("Driver installation has failed") #define OPERATION_FAIL_LABEL _("Operation has failed") #define MANUAL_PORT_LABEL _("Manual port") +#define ENABLED_LABEL _("Enabled") +#define DISABLED_LABEL _("Disabled") #define INSTALL_CONFIRMATION_LABEL(target) yon_char_unite(_("Are you sure want to install driver "),"",target,"?",NULL) #define REMOVE_CONFIRMATION_LABEL(target) yon_char_unite(_("Are you sure want to remove driver "),"",target,"?",NULL) diff --git a/ubl-settings-video-monitor.glade b/ubl-settings-video-monitor.glade index 7b90ef4..37c36f4 100644 --- a/ubl-settings-video-monitor.glade +++ b/ubl-settings-video-monitor.glade @@ -1,5 +1,5 @@ - + @@ -109,6 +109,7 @@ True True True + Remove image14 -1