diff --git a/source/ubl-settings-kernel.c b/source/ubl-settings-kernel.c index b1b2c71..e05e166 100644 --- a/source/ubl-settings-kernel.c +++ b/source/ubl-settings-kernel.c @@ -153,9 +153,28 @@ gboolean yon_tab_create_tags(kernels_tab *tab){ config_str boot_run = yon_config_load(get_active_kernel_command,&boot_size); yon_char_remove_last_symbol(boot_run[0],'\n'); - if ((launched&&strcmp(tab->package,launched))&&(strcmp(tab->package,boot_run[0]))){ + if ((!(launched&&!strcmp(tab->package,launched))&&(strcmp(tab->package,boot_run[0])))){ gtk_widget_show(tab->launch_button); - } else gtk_widget_hide(tab->launch_button); + } else { + gtk_widget_hide(tab->launch_button); + if(!getuid()){ + if (boot_run&&!strcmp(boot_run[0],tab->package)){ + yon_tag_add(GTK_BOX(tab->install_tags_box),RUNNING_LABEL,"tag_green",NULL); + gtk_widget_hide(tab->remove_module_button); + gtk_widget_hide(tab->remove_package_button); + gtk_widget_hide(tab->update_module_button); + gtk_widget_hide(tab->update_package_button); + gtk_widget_hide(tab->launch_button); + } else if (!yon_char_is_empty(launched)&&!strcmp(launched,tab->package)){ + yon_tag_add(GTK_BOX(tab->install_tags_box),BOOT_RUN_LABEL,"tag_orange",NULL); + gtk_widget_hide(tab->launch_button); + gtk_widget_hide(tab->remove_module_button); + gtk_widget_hide(tab->remove_package_button); + gtk_widget_hide(tab->update_module_button); + gtk_widget_hide(tab->update_package_button); + } + } + } } if (tab->changelog_button){ gtk_widget_show(tab->changelog_button); @@ -227,15 +246,6 @@ void *yon_interface_update(main_window *widgets){ int kernels_size; config_str kernels = yon_resource_open_file(kernels_path, &kernels_size); - char *boot_config_run=NULL; - int boot_size; - config_str boot_run=NULL; - if(!getuid()){ - boot_config_run = config(KERNEL_BOOT_parameter); - - boot_run = yon_config_load(get_active_kernel_command,&boot_size); - yon_char_remove_last_symbol(boot_run[0],'\n'); - } for (int i=1;iKernelsPackageBox),kernels[i],widgets); @@ -246,19 +256,6 @@ void *yon_interface_update(main_window *widgets){ gtk_widget_destroy(g_list_nth_data(list,i)); } g_list_free(list);} - if(!getuid()){ - if (boot_run&&!strcmp(boot_run[0],tab->package)){ - yon_tag_add(GTK_BOX(tab->run_tags_box),RUNNING_LABEL,"tag_green",NULL); - gtk_widget_hide(tab->remove_module_button); - gtk_widget_hide(tab->remove_package_button); - gtk_widget_hide(tab->launch_button); - } else if (!yon_char_is_empty(boot_config_run)&&!strcmp(boot_config_run,tab->package)){ - yon_tag_add(GTK_BOX(tab->run_tags_box),BOOT_RUN_LABEL,"tag_orange",NULL); - gtk_widget_hide(tab->launch_button); - gtk_widget_hide(tab->remove_module_button); - gtk_widget_hide(tab->remove_package_button); - } - } gtk_widget_set_can_focus(gtk_widget_get_parent(tab->main_box),0); } yon_char_parsed_free(kernels,kernels_size); diff --git a/ubl-settings-kernel-table-row.glade b/ubl-settings-kernel-table-row.glade index 35ee1ab..466d954 100644 --- a/ubl-settings-kernel-table-row.glade +++ b/ubl-settings-kernel-table-row.glade @@ -1,5 +1,5 @@ - + @@ -193,7 +193,6 @@ - True False 5 5