@ -125,6 +125,41 @@ void on_config_custom_load(GtkWidget *,main_window *widgets){
}
void on_terminal_done ( GtkWidget * , int state , GtkWidget * status_box ) {
if ( ! state ) yon_ubl_status_box_spawn_infinite ( GTK_CONTAINER ( status_box ) , " terminal_done " , BUILD_SUCCESS_STATUS_LABEL , BACKGROUND_IMAGE_SUCCESS_TYPE ) ;
else yon_ubl_status_box_spawn_infinite ( GTK_CONTAINER ( status_box ) , " terminal_done " , BUILD_FAILED_STATUS_LABEL , BACKGROUND_IMAGE_FAIL_TYPE ) ;
}
void yon_terminal_window_start ( GtkWindow * parent_window , char * command ) {
GtkWidget * window = gtk_window_new ( GTK_WINDOW_TOPLEVEL ) ;
GtkWidget * header = gtk_header_bar_new ( ) ;
GtkWidget * terminal = vte_terminal_new ( ) ;
GtkWidget * status_box = gtk_box_new ( GTK_ORIENTATION_VERTICAL , 5 ) ;
GtkWidget * box = gtk_box_new ( GTK_ORIENTATION_VERTICAL , 5 ) ;
GtkWidget * terminal_box = gtk_box_new ( GTK_ORIENTATION_HORIZONTAL , 5 ) ;
GtkWidget * scroll = gtk_scrollbar_new ( GTK_ORIENTATION_VERTICAL , gtk_scrollable_get_vadjustment ( GTK_SCROLLABLE ( terminal ) ) ) ;
gtk_window_set_titlebar ( GTK_WINDOW ( window ) , header ) ;
gtk_container_add ( GTK_CONTAINER ( window ) , box ) ;
gtk_box_pack_start ( GTK_BOX ( box ) , status_box , 0 , 0 , 0 ) ;
gtk_box_pack_start ( GTK_BOX ( box ) , terminal_box , 1 , 1 , 0 ) ;
gtk_box_pack_start ( GTK_BOX ( terminal_box ) , terminal , 1 , 1 , 0 ) ;
gtk_box_pack_start ( GTK_BOX ( terminal_box ) , scroll , 0 , 0 , 0 ) ;
gtk_widget_set_margin_bottom ( terminal_box , 5 ) ;
gtk_widget_set_margin_start ( terminal_box , 5 ) ;
gtk_widget_set_margin_end ( terminal_box , 5 ) ;
gtk_widget_show_all ( window ) ;
vte_terminal_set_scrollback_lines ( VTE_TERMINAL ( terminal ) , - 1 ) ;
gtk_window_set_modal ( GTK_WINDOW ( window ) , 1 ) ;
gtk_header_bar_set_show_close_button ( GTK_HEADER_BAR ( header ) , 1 ) ;
gtk_window_set_title ( GTK_WINDOW ( window ) , gtk_window_get_title ( parent_window ) ) ;
gtk_window_set_icon_name ( GTK_WINDOW ( window ) , gtk_window_get_icon_name ( parent_window ) ) ;
g_signal_connect ( G_OBJECT ( terminal ) , " child-exited " , G_CALLBACK ( on_terminal_done ) , status_box ) ;
yon_terminal_integrated_start ( terminal , command ) ;
}
gboolean yon_tab_create_tags ( kernels_tab * tab ) {
GList * list = gtk_container_get_children ( GTK_CONTAINER ( tab - > install_tags_box ) ) ;
for ( guint i = 0 ; i < g_list_length ( list ) ; i + + ) {
@ -473,6 +508,7 @@ void *yon_command_execute_async(char *command,main_window *widgets){
gdk_threads_add_timeout ( 500 , ( GSourceFunc ) yon_terminal_get_progress , widgets ) ;
gtk_widget_set_sensitive ( widgets - > UpdateButton , 0 ) ;
dictionary * dict = NULL ;
if ( main_config . kernel_tabs ) {
for_dictionaries ( dict , main_config . kernel_tabs ) {
gtk_widget_set_sensitive ( ( ( kernels_tab * ) dict - > data ) - > update_module_button , 0 ) ;
gtk_widget_set_sensitive ( ( ( kernels_tab * ) dict - > data ) - > update_package_button , 0 ) ;
@ -481,6 +517,8 @@ void *yon_command_execute_async(char *command,main_window *widgets){
gtk_widget_set_sensitive ( ( ( kernels_tab * ) dict - > data ) - > remove_module_button , 0 ) ;
gtk_widget_set_sensitive ( ( ( kernels_tab * ) dict - > data ) - > remove_package_button , 0 ) ;
}
}
if ( main_config . addition_tabs ) {
for_dictionaries ( dict , main_config . addition_tabs ) {
gtk_widget_set_sensitive ( ( ( kernels_tab * ) dict - > data ) - > update_module_button , 0 ) ;
gtk_widget_set_sensitive ( ( ( kernels_tab * ) dict - > data ) - > update_package_button , 0 ) ;
@ -489,6 +527,7 @@ void *yon_command_execute_async(char *command,main_window *widgets){
gtk_widget_set_sensitive ( ( ( kernels_tab * ) dict - > data ) - > remove_module_button , 0 ) ;
gtk_widget_set_sensitive ( ( ( kernels_tab * ) dict - > data ) - > remove_package_button , 0 ) ;
}
}
return NULL ;
}
@ -499,7 +538,9 @@ void on_module_install_accept(GtkWidget *, dictionary *dict){
free ( dict - > first - > next - > next ) ;
dict - > first - > next - > next = NULL ;
char * module_formated = yon_package_string_set ( tab - > module ) ;
char * modules_to_install = module_formated ;
char * modules_to_install = NULL ;
if ( ! tab - > module_updated ) modules_to_install = yon_char_unite ( module_formated , " " , yon_package_string_set ( tab - > package ) , NULL ) ;
else modules_to_install = module_formated ;
GtkTreeIter iter ;
for_iter ( GTK_TREE_MODEL ( window - > liststore1 ) , & iter ) {
@ -507,6 +548,16 @@ void on_module_install_accept(GtkWidget *, dictionary *dict){
char * package ;
gtk_tree_model_get ( GTK_TREE_MODEL ( window - > liststore1 ) , & iter , 0 , & status , 1 , & package , - 1 ) ;
if ( status ) {
if ( strstr ( package , " , " ) ) {
int parsed_size ;
config_str parsed = yon_char_parse ( package , & parsed_size , " , " ) ;
package = " " ;
for ( int i = 0 ; i < parsed_size ; i + + ) {
char * temp = yon_char_unite ( package , " " , parsed [ i ] , NULL ) ;
if ( ! yon_char_is_empty ( package ) ) free ( package ) ;
package = temp ;
}
}
char * temp = yon_char_unite ( modules_to_install , " " , package , NULL ) ;
if ( strcmp ( modules_to_install , module_formated ) ) free ( modules_to_install ) ;
modules_to_install = temp ;
@ -548,6 +599,7 @@ void on_module_remove_accept(GtkWidget *, dictionary *dict){
main_window * widgets = yon_dictionary_get_data ( dict - > first , main_window * ) ;
kernels_tab * tab = yon_dictionary_get_data ( dict - > first - > next , kernels_tab * ) ;
dialog_window * window = yon_dictionary_get_data ( dict - > first - > next - > next , dialog_window * ) ;
dict = dict - > first ;
free ( dict - > first - > next - > next ) ;
dict - > first - > next - > next = NULL ;
char * module_formated = yon_package_string_set ( tab - > module ) ;
@ -560,6 +612,16 @@ void on_module_remove_accept(GtkWidget *, dictionary *dict){
char * package ;
gtk_tree_model_get ( GTK_TREE_MODEL ( window - > liststore1 ) , & iter , 0 , & status , 1 , & package , - 1 ) ;
if ( status ) {
if ( strstr ( package , " , " ) ) {
int parsed_size ;
config_str parsed = yon_char_parse ( package , & parsed_size , " , " ) ;
package = " " ;
for ( int i = 0 ; i < parsed_size ; i + + ) {
char * temp = yon_char_unite ( package , " " , parsed [ i ] , NULL ) ;
if ( ! yon_char_is_empty ( package ) ) free ( package ) ;
package = temp ;
}
}
char * temp = yon_char_unite ( modules_to_install , " " , package , NULL ) ;
if ( strcmp ( modules_to_install , module_formated ) ) free ( modules_to_install ) ;
modules_to_install = temp ;
@ -576,6 +638,7 @@ void on_package_remove_accept(GtkWidget *, dictionary *dict){
main_window * widgets = yon_dictionary_get_data ( dict - > first , main_window * ) ;
kernels_tab * tab = yon_dictionary_get_data ( dict - > first - > next , kernels_tab * ) ;
dialog_window * window = yon_dictionary_get_data ( dict - > first - > next - > next , dialog_window * ) ;
dict = dict - > first ;
free ( dict - > first - > next - > next ) ;
dict - > first - > next - > next = NULL ;
char * module_formated = yon_package_string_set ( tab - > package ) ;
@ -622,7 +685,6 @@ void on_module_install_clicked(GtkWidget *self,dictionary *dict){
kernels_tab * tab = yon_dictionary_get_data ( dict - > first - > next , kernels_tab * ) ;
char * action_text = NULL ;
dialog_window * window = yon_dialog_window_new ( ) ;
yon_gtk_window_setup ( GTK_WINDOW ( window - > Window ) , GTK_WINDOW ( widgets - > Window ) , self = = tab - > update_package_button ? UPDATE_MODULE_TITLE_LABEL : INSTALL_MODULE_TITLE_LABEL , icon_path , " dialog " ) ;
yon_dictionary_add_or_create_if_exists_with_data ( dict , " window " , window ) ;
g_signal_connect ( G_OBJECT ( window - > AcceptButton ) , " clicked " , G_CALLBACK ( on_module_install_accept ) , dict ) ;
@ -637,9 +699,11 @@ void on_module_install_clicked(GtkWidget *self,dictionary *dict){
}
} else {
if ( ! gtk_notebook_get_current_page ( GTK_NOTEBOOK ( widgets - > MainNotebook ) ) ) {
yon_gtk_window_setup ( GTK_WINDOW ( window - > Window ) , GTK_WINDOW ( widgets - > Window ) , self = = tab - > update_package_button ? UPDATE_MODULE_TITLE_LABEL : INSTALL_MODULE_TITLE_LABEL , icon_path , " dialog " ) ;
action_text = KERNEL_MODULE_INSTALL_CONFIRMATION_LABEL ( tab - > name ) ;
gtk_label_set_text ( GTK_LABEL ( window - > HeadLabel ) , INSTALL_MODULE_TITLE_LABEL ) ;
} else {
yon_gtk_window_setup ( GTK_WINDOW ( window - > Window ) , GTK_WINDOW ( widgets - > Window ) , self = = tab - > update_package_button ? UPDATE_MODULE_TITLE_LABEL : INSTALL_MODULE_TITLE_LABEL , icon_path , " additions_dialog " ) ;
action_text = ADDITION_MODULE_INSTALL_CONFIRMATION_LABEL ( tab - > name ) ;
gtk_label_set_text ( GTK_LABEL ( window - > HeadLabel ) , INSTALL_ADDITION_MODULE_TITLE_LABEL ) ;
}
@ -650,7 +714,7 @@ void on_module_install_clicked(GtkWidget *self,dictionary *dict){
yon_dictionary_add_or_create_if_exists_with_data ( dict , " window " , window ) ;
if ( gtk_notebook_get_current_page ( GTK_NOTEBOOK ( widgets - > MainNotebook ) ) ) {
gtk_widget_hide ( window - > DependencesFrame ) ;
gtk_box_set_child_packing ( GTK_BOX ( gtk_widget_get_parent ( window - > DependencesFrame ) ) , gtk_widget_get_parent ( gtk_widget_get_parent ( window - > TopicLabel ) ) , 1 , 1 , 0 , GTK_PACK_START ) ;
// gtk_box_set_child_packing(GTK_BOX(gtk_widget_get_parent(window->DependencesFrame)),gtk_widget_get_parent(gtk_widget_get_parent(window->TopicLabel)),1,1,0,GTK_PACK_START);
} else {
int size ;
config_str additions = yon_resource_open_file ( kernels_addon_path , & size ) ;
@ -661,10 +725,9 @@ void on_module_install_clicked(GtkWidget *self,dictionary *dict){
int cur_size ;
config_str parsed = yon_char_parse ( additions [ j ] , & cur_size , " ; " ) ;
if ( ! strcmp ( parsed [ 1 ] , tab - > module_requirements [ i ] ) )
gtk_list_store_set ( window - > liststore1 , & iter , 2, parsed [ 3 ] , - 1 ) ;
gtk_list_store_set ( window - > liststore1 , & iter , 1, yon_char_unite ( parsed [ 1 ] , " , " , parsed [ 2 ] , NULL ) , 2, parsed [ 3 ] , - 1 ) ;
yon_char_parsed_free ( parsed , cur_size ) ;
}
gtk_list_store_set ( window - > liststore1 , & iter , 0 , 1 , 1 , tab - > module_requirements [ i ] , - 1 ) ;
}
yon_char_parsed_free ( additions , size ) ;
}
@ -675,14 +738,15 @@ void on_package_install_clicked(GtkWidget *self,dictionary *dict){
kernels_tab * tab = yon_dictionary_get_data ( dict - > first - > next , kernels_tab * ) ;
char * action_text = NULL ;
dialog_window * window = yon_dialog_window_new ( ) ;
yon_gtk_window_setup ( GTK_WINDOW ( window - > Window ) , GTK_WINDOW ( widgets - > Window ) , self = = tab - > update_package_button ? UPDATE_PACKAGE_TITLE_LABEL : INSTALL_PACKAGE_TITLE_LABEL , icon_path , " dialog " ) ;
g_signal_connect ( G_OBJECT ( window - > AcceptButton ) , " clicked " , G_CALLBACK ( on_package_install_accept ) , dict ) ;
if ( self = = tab - > update_module_button ) {
if ( ! gtk_notebook_get_current_page ( GTK_NOTEBOOK ( widgets - > MainNotebook ) ) ) {
yon_gtk_window_setup ( GTK_WINDOW ( window - > Window ) , GTK_WINDOW ( widgets - > Window ) , self = = tab - > update_package_button ? UPDATE_PACKAGE_TITLE_LABEL : INSTALL_PACKAGE_TITLE_LABEL , icon_path , " dialog " ) ;
action_text = KERNEL_PACKAGE_UPDATE_CONFIRMATION_LABEL ( tab - > name ) ;
gtk_label_set_text ( GTK_LABEL ( window - > HeadLabel ) , UPDATE_PACKAGE_TITLE_LABEL ) ;
} else {
yon_gtk_window_setup ( GTK_WINDOW ( window - > Window ) , GTK_WINDOW ( widgets - > Window ) , self = = tab - > update_package_button ? UPDATE_PACKAGE_TITLE_LABEL : INSTALL_PACKAGE_TITLE_LABEL , icon_path , " additions_dialog " ) ;
action_text = ADDITION_PACKAGE_UPDATE_CONFIRMATION_LABEL ( tab - > name ) ;
gtk_label_set_text ( GTK_LABEL ( window - > HeadLabel ) , UPDATE_ADDITION_PACKAGE_TITLE_LABEL ) ;
}
@ -696,13 +760,13 @@ void on_package_install_clicked(GtkWidget *self,dictionary *dict){
}
}
gtk_label_set_ text ( GTK_LABEL ( window - > TopicLabel ) , action_text ) ;
gtk_label_set_ markup ( GTK_LABEL ( window - > TopicLabel ) , action_text ) ;
gtk_widget_show ( window - > Window ) ;
yon_dictionary_add_or_create_if_exists_with_data ( dict , " window " , window ) ;
if ( gtk_notebook_get_current_page ( GTK_NOTEBOOK ( widgets - > MainNotebook ) ) ) {
gtk_widget_hide ( window - > DependencesFrame ) ;
gtk_box_set_child_packing ( GTK_BOX ( gtk_widget_get_parent ( window - > DependencesFrame ) ) , gtk_widget_get_parent ( gtk_widget_get_parent ( window - > TopicLabel ) ) , 1 , 1 , 0 , GTK_PACK_START ) ;
// gtk_box_set_child_packing(GTK_BOX(gtk_widget_get_parent(window->DependencesFrame)),gtk_widget_get_parent(gtk_widget_get_parent(window->TopicLabel)),1,1,0,GTK_PACK_START);
} else {
int size ;
config_str additions = yon_resource_open_file ( kernels_addon_path , & size ) ;
@ -757,18 +821,24 @@ void on_module_remove_clicked(GtkWidget *self,dictionary *dict){
}
char * action_text = NULL ;
dialog_window * window = yon_dialog_window_new ( ) ;
yon_gtk_window_setup ( GTK_WINDOW ( window - > Window ) , GTK_WINDOW ( widgets - > Window ) , self = = tab - > update_package_button ? UPDATE_MODULE_TITLE_LABEL : INSTALL_MODULE_TITLE_LABEL , icon_path , " dialog " ) ;
if ( dict - > first - > next - > next ) {
dict = dict - > first ;
free ( dict - > first - > next - > next ) ;
dict - > first - > next - > next = NULL ;
}
yon_dictionary_add_or_create_if_exists_with_data ( dict , " window " , window ) ;
dict = dict - > first ;
g_signal_connect ( G_OBJECT ( window - > AcceptButton ) , " clicked " , G_CALLBACK ( on_module_remove_accept ) , dict ) ;
gtk_widget_show ( window - > Window ) ;
yon_dictionary_add_or_create_if_exists_with_data ( dict , " window " , window ) ;
if ( gtk_notebook_get_current_page ( GTK_NOTEBOOK ( widgets - > MainNotebook ) ) ) {
action_text = KERNEL_MODULE_REMOVE_CONFIRMATION_LABEL ( tab - > name ) ;
yon_gtk_window_setup ( GTK_WINDOW ( window - > Window ) , GTK_WINDOW ( widgets - > Window ) , self = = tab - > update_package_button ? UPDATE_MODULE_TITLE_LABEL : INSTALL_MODULE_TITLE_LABEL , icon_path , " additions_dialog " ) ;
action_text = ADDITION_MODULE_REMOVE_CONFIRMATION_LABEL ( tab - > name ) ;
gtk_widget_hide ( window - > DependencesFrame ) ;
gtk_box_set_child_packing ( GTK_BOX ( gtk_widget_get_parent ( window - > DependencesFrame ) ) , gtk_widget_get_parent ( gtk_widget_get_parent ( window - > TopicLabel ) ) , 1 , 1 , 0 , GTK_PACK_START ) ;
gtk_label_set_text ( GTK_LABEL ( window - > HeadLabel ) , INSTALL _ADDITION_MODULE_TITLE_LABEL) ;
// gtk_box_set_child_packing(GTK_BOX(gtk_widget_get_parent(window->DependencesFrame)),gtk_widget_get_parent(gtk_widget_get_parent(window->TopicLabel)),1,1,0,GTK_PACK_START);
gtk_label_set_text ( GTK_LABEL ( window - > HeadLabel ) , REMOVE _ADDITION_MODULE_TITLE_LABEL) ;
} else {
yon_gtk_window_setup ( GTK_WINDOW ( window - > Window ) , GTK_WINDOW ( widgets - > Window ) , self = = tab - > update_package_button ? UPDATE_MODULE_TITLE_LABEL : INSTALL_MODULE_TITLE_LABEL , icon_path , " dialog " ) ;
gtk_label_set_text ( GTK_LABEL ( window - > HeadLabel ) , REMOVE_MODULE_TITLE_LABEL ) ;
action_text = ADDITION_MODULE_REMOVE_CONFIRMATION_LABEL ( tab - > name ) ;
if ( installed_kernels > 1 ) {
@ -780,16 +850,15 @@ void on_module_remove_clicked(GtkWidget *self,dictionary *dict){
config_str additions = yon_resource_open_file ( kernels_addon_path , & size ) ;
GtkTreeIter iter ;
for ( int i = 0 ; i < tab - > module_requirements_size ; i + + ) {
if ( ! system ( get_package_is_installed_command ( tab - > module ) ) ) {
if ( ! system ( get_package_is_installed_command ( tab - > module _requirements[ i ] ) ) ) {
gtk_list_store_append ( window - > liststore1 , & iter ) ;
for ( int j = 1 ; j < size ; j + + ) {
int cur_size ;
config_str parsed = yon_char_parse ( additions [ j ] , & cur_size , " ; " ) ;
if ( ! strcmp ( parsed [ 1 ] , tab - > module_requirements [ i ] ) )
gtk_list_store_set ( window - > liststore1 , & iter , 2 , parsed [ 3 ] , - 1 ) ;
gtk_list_store_set ( window - > liststore1 , & iter , 1 , yon_char_unite ( parsed [ 1 ] , " , " , parsed [ 2 ] , NULL ) , 2 , parsed [ 3 ] , - 1 ) ;
yon_char_parsed_free ( parsed , cur_size ) ;
}
gtk_list_store_set ( window - > liststore1 , & iter , 0 , 1 , 1 , tab - > module_requirements [ i ] , - 1 ) ;
}
}
yon_char_parsed_free ( additions , size ) ;
@ -824,31 +893,37 @@ void on_package_remove_clicked(GtkWidget *self,dictionary *dict){
}
dialog_window * window = yon_dialog_window_new ( ) ;
yon_gtk_window_setup ( GTK_WINDOW ( window - > Window ) , GTK_WINDOW ( widgets - > Window ) , self = = tab - > update_package_button ? UPDATE_MODULE_TITLE_LABEL : INSTALL_MODULE_TITLE_LABEL , icon_path , " dialog " ) ;
if ( dict - > first - > next - > next ) {
dict = dict - > first ;
free ( dict - > first - > next - > next ) ;
dict - > first - > next - > next = NULL ;
}
yon_dictionary_add_or_create_if_exists_with_data ( dict , " window " , window ) ;
dict = dict - > first ;
g_signal_connect ( G_OBJECT ( window - > AcceptButton ) , " clicked " , G_CALLBACK ( on_package_remove_accept ) , dict ) ;
char * action_text = " " ;
gtk_widget_show ( window - > Window ) ;
yon_dictionary_add_or_create_if_exists_with_data ( dict , " window " , window ) ;
if ( gtk_notebook_get_current_page ( GTK_NOTEBOOK ( widgets - > MainNotebook ) ) ) {
action_text = KERNEL_PACKAGE_REMOVE_CONFIRMATION_LABEL ( tab - > name ) ;
yon_gtk_window_setup ( GTK_WINDOW ( window - > Window ) , GTK_WINDOW ( widgets - > Window ) , self = = tab - > update_package_button ? UPDATE_MODULE_TITLE_LABEL : INSTALL_MODULE_TITLE_LABEL , icon_path , " additions_dialog " ) ;
action_text = ADDITION_PACKAGE_REMOVE_CONFIRMATION_LABEL ( tab - > name ) ;
gtk_label_set_text ( GTK_LABEL ( window - > HeadLabel ) , REMOVE_ADDITION_PACKAGE_TITLE_LABEL ) ;
gtk_widget_hide ( window - > DependencesFrame ) ;
gtk_box_set_child_packing ( GTK_BOX ( gtk_widget_get_parent ( window - > DependencesFrame ) ) , gtk_widget_get_parent ( gtk_widget_get_parent ( window - > TopicLabel ) ) , 1 , 1 , 0 , GTK_PACK_START ) ;
// gtk_box_set_child_packing(GTK_BOX(gtk_widget_get_parent(window->DependencesFrame)),gtk_widget_get_parent(gtk_widget_get_parent(window->TopicLabel)),1,1,0,GTK_PACK_START);
} else {
if ( installed_kernels > 1 ) {
action_text = ADDITION _PACKAGE_REMOVE_CONFIRMATION_LABEL( tab - > name ) ;
action_text = KERNEL _PACKAGE_REMOVE_CONFIRMATION_LABEL( tab - > name ) ;
} else if ( installed_kernels = = 1 ) {
action_text = KERNEL_REMOVE_LAST_CONFIRMATION_LABEL ( tab - > name ) ;
}
yon_gtk_window_setup ( GTK_WINDOW ( window - > Window ) , GTK_WINDOW ( widgets - > Window ) , self = = tab - > update_package_button ? UPDATE_MODULE_TITLE_LABEL : INSTALL_MODULE_TITLE_LABEL , icon_path , " dialog " ) ;
gtk_label_set_text ( GTK_LABEL ( window - > HeadLabel ) , REMOVE_PACKAGE_TITLE_LABEL ) ;
int size ;
config_str additions = yon_resource_open_file ( kernels_addon_path , & size ) ;
GtkTreeIter iter ;
for ( int i = 0 ; i < tab - > module_requirements_size ; i + + ) {
if ( ! system ( get_package_is_installed_command ( tab - > package ) ) ) {
if ( ! system ( get_package_is_installed_command ( tab - > package _requirements[ i ] ) ) ) {
gtk_list_store_append ( window - > liststore1 , & iter ) ;
for ( int j = 1 ; j < size ; j + + ) {
int cur_size ;
@ -910,6 +985,8 @@ kernels_tab *yon_tab_row_new(GtkListBox *target, char *target_string, main_windo
tab - > install_package_button = yon_gtk_builder_get_widget ( builder , " InstallPackageButton " ) ;
tab - > changelog_button = yon_gtk_builder_get_widget ( builder , " ChangelogButton " ) ;
tab - > launch_button = yon_gtk_builder_get_widget ( builder , " LaunchButton " ) ;
tab - > module_updated = 0 ;
tab - > package_updated = 0 ;
dictionary * dict = NULL ;
yon_dictionary_add_or_create_if_exists_with_data ( dict , " widgets " , widgets ) ;
@ -1017,6 +1094,8 @@ additions_kernels_tab *yon_additions_tab_row_new(GtkListBox *target, char *targe
tab - > launch_button = NULL ;
tab - > run_tags_box = NULL ;
tab - > tags_box = NULL ;
tab - > module_updated = 0 ;
tab - > package_updated = 0 ;
dictionary * dict = NULL ;
yon_dictionary_add_or_create_if_exists_with_data ( dict , " widgets " , widgets ) ;
@ -1148,7 +1227,7 @@ void on_build_execute(GtkWidget *, dictionary *dict){
char * target = ( char * ) gtk_combo_box_get_active_id ( GTK_COMBO_BOX ( window - > KernelVersionCombo ) ) ;
char * filename = ( char * ) gtk_entry_get_text ( GTK_ENTRY ( window - > FilenameEntry ) ) ;
char * command = build_command ( target , filename , debug , drivers ) ;
yon_terminal_window_ launch ( GTK_WINDOW ( widgets - > Window ) , yon_debug_output ( " %s \n " , command ) ) ;
yon_terminal_window_ start ( GTK_WINDOW ( widgets - > Window ) , yon_debug_output ( " %s \n " , command ) ) ;
gtk_widget_destroy ( window - > window ) ;
}
@ -1296,7 +1375,7 @@ void yon_main_window_complete(main_window *widgets){
on_update_clicked ( NULL , widgets ) ;
yon_save_window_set_postsave_function ( on_save_done , widgets ) ;
yon_ command_execute_async( pacman_update_command , widgets ) ;
yon_ terminal_integrated_start( widgets - > InstallTerminal , pacman_update_command ) ;
}
yon_load_proceed ( YON_CONFIG_LOCAL ) ;
}