Terminal has been moved from overlay to paned; Fixed progress bar length #24

Merged
asmeron merged 11 commits from YanTheKaller/ubl-settings-kernel:master into master 1 year ago

@ -133,6 +133,11 @@ gboolean yon_tab_create_tags(kernels_tab *tab){
gtk_widget_show(tab->update_module_button);
gtk_widget_hide(tab->install_module_button);
} else {
gtk_widget_hide(tab->remove_module_button);
gtk_widget_hide(tab->update_module_button);
gtk_widget_show(tab->install_module_button);
}
{
if (tab->package_installed){
@ -141,6 +146,10 @@ gboolean yon_tab_create_tags(kernels_tab *tab){
gtk_widget_hide(tab->install_package_button);
gtk_widget_show(tab->remove_package_button);
gtk_widget_show(tab->update_package_button);
} else {
gtk_widget_show(tab->install_package_button);
gtk_widget_hide(tab->remove_package_button);
gtk_widget_hide(tab->update_package_button);
}
}
if (tab->package_installed||tab->module_installed){
@ -157,16 +166,12 @@ gboolean yon_tab_create_tags(kernels_tab *tab){
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);
}
@ -198,23 +203,25 @@ void *yon_tab_set_installed(kernels_tab *tab){
char *target_module = yon_package_string_set(tab->module);
char *target_package = yon_package_string_set(tab->package);
char *check_install_command = get_package_is_installed_command(target_module);
char *check_install_command = get_package_is_installed_command(target_module); //if module installed
if (!system(yon_debug_output("%s\n",check_install_command))){
tab->module_installed=1;
} else tab->module_installed=0;
free(check_install_command);
check_install_command = get_package_is_installed_command(target_package);
check_install_command = get_package_is_installed_command(target_package); //if package installed
if (!system(yon_debug_output("%s\n",check_install_command))){
tab->package_installed=1;
} else tab->package_installed=0;
free(check_install_command);
check_install_command = get_package_is_updated_command(target_module);
check_install_command = get_package_is_updated_command(target_module); //if module has updates
if (!system(yon_debug_output("%s\n",check_install_command))){
tab->module_updated = 0;
} else tab->module_updated = 1;
free(check_install_command);
check_install_command = get_package_is_updated_command(target_package);
check_install_command = get_package_is_updated_command(target_package); //if package has updates
if (!system(yon_debug_output("%s\n",check_install_command))){
tab->package_updated = 0;
} else tab->package_updated = 1;
@ -346,23 +353,31 @@ gboolean on_command_execute_success(GtkWidget *,gint status,main_window *widgets
gboolean yon_terminal_get_progress(main_window *widgets){
char *text = vte_terminal_get_text_format(VTE_TERMINAL(widgets->InstallTerminal),VTE_FORMAT_TEXT);
GRegex *regex = g_regex_new("\\d?\\d%",0,0,NULL);
GRegex *regex = g_regex_new("\\d?\\d?\\d%",0,0,NULL);
GMatchInfo *match = NULL;
g_regex_match(regex,text,0,&match);
g_regex_unref(regex);
config_str target = g_match_info_fetch_all(match);
double percentage = 0.0;
char *last_match = NULL;
while (g_match_info_matches(match)) {
char *current_match = g_match_info_fetch(match, 0);
if (last_match) {
g_free(last_match);
}
last_match = current_match;
g_match_info_next(match, NULL);
}
if (last_match) {
yon_char_remove_last_symbol(last_match,'%');
percentage = atof(last_match);
yon_debug_output("%s\n", text);
yon_debug_output("%s\n", last_match);
if (target){
int i;
for (i=0;target[i+1];i++){};
target[i][strlen(target[i])-1]='\0';
percentage = atof(target[i]);
yon_debug_output("%s\n",target[i]);
gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(widgets->InstallationProgress), percentage / 100);
g_free(last_match);
}
g_match_info_unref(match);
g_mutex_lock(&main_config.progress_mutex);
@ -378,8 +393,8 @@ gboolean yon_terminal_get_progress(main_window *widgets){
void *yon_command_execute_async(char *command,main_window *widgets){
gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(widgets->InstallationProgress),0);
vte_terminal_reset(VTE_TERMINAL(widgets->InstallTerminal),0,1);
gtk_revealer_set_reveal_child(GTK_REVEALER(widgets->TerminalRevealer),0);
yon_terminal_integrated_start(widgets->InstallTerminal,yon_debug_output("%s\n",command));
yon_terminal_integrated_start_shell(widgets->InstallTerminal,yon_debug_output("%s\n",command),on_command_execute_success,widgets);
// yon_terminal_integrated_start(widgets->InstallTerminal,yon_debug_output("%s\n",command));
glong columns = vte_terminal_get_column_count(VTE_TERMINAL(widgets->InstallTerminal));
vte_terminal_set_size(VTE_TERMINAL(widgets->InstallTerminal),columns,20);
yon_ubl_status_box_render(OPERATION_IN_PROGRESS_LABEL,BACKGROUND_IMAGE_INFO_TYPE);
@ -395,6 +410,8 @@ void on_module_install_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*);
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;
@ -412,8 +429,6 @@ void on_module_install_accept(GtkWidget *, dictionary *dict){
char *command = install_command(modules_to_install);
yon_command_execute_async(command,widgets);
tab->module_installed=1;
free(dict->first->next->next);
dict->first->next->next=NULL;
on_subwindow_close(window->Window);
}
@ -465,6 +480,7 @@ void on_module_install_clicked(GtkWidget *self,dictionary *dict){
char *action_text = MODULE_INSTALL_CONFIRMATION_LABEL(tab->name);
if (!gtk_notebook_get_current_page(GTK_NOTEBOOK(widgets->MainNotebook))){
dialog_window *window = yon_dialog_window_new();
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);
gtk_label_set_text(GTK_LABEL(window->TopicLabel),action_text);
@ -560,6 +576,8 @@ void on_module_remove_clicked(GtkWidget *self,dictionary *dict){
if (yon_confirmation_dialog_call(self,data) == GTK_RESPONSE_ACCEPT){
char *target = yon_package_string_set(tab->module);
char *command = remove_command(target);
char *command_unload = unload_command(target);
system(yon_debug_output("%s\n",command_unload));
g_signal_connect(G_OBJECT(widgets->InstallTerminal),"child-exited",G_CALLBACK(on_module_remove_done),tab);
yon_command_execute_async(command,widgets);
tab->module_installed=0;
@ -601,42 +619,8 @@ kernels_tab *yon_tab_row_new(GtkListBox *target, char *target_string, main_windo
int size;
config_str parsed = yon_char_parse(target_string,&size,";");
if (size){
int types_size;
dictionary *cur = yon_dictionary_get(&main_config.kernel_tabs,parsed[2]);
kernels_tab *tab = NULL;
if (cur){
tab = (kernels_tab*)cur->data;
gtk_widget_hide(tab->changelog_button);
gtk_widget_show(tab->launch_button);
gtk_image_set_from_icon_name(GTK_IMAGE(tab->module_icon),"",GTK_ICON_SIZE_BUTTON);
gtk_image_set_from_icon_name(GTK_IMAGE(tab->package_icon),"",GTK_ICON_SIZE_BUTTON);
if (tab->module_installed){
gtk_widget_show(tab->remove_module_button);
gtk_widget_hide(tab->install_module_button);
gtk_widget_show(tab->remove_module_button);
yon_tag_add(GTK_BOX(tab->install_tags_box),MODULE_INSTALLED_LABEL,"tag_green",NULL);
gtk_image_set_from_icon_name(GTK_IMAGE(tab->module_icon),module_icon_path,GTK_ICON_SIZE_BUTTON);
} else {
gtk_widget_hide(tab->remove_module_button);
gtk_widget_show(tab->install_module_button);
}
if (tab->package_installed){
gtk_widget_show(tab->remove_package_button);
gtk_widget_hide(tab->install_package_button);
gtk_widget_show(tab->changelog_button);
yon_tag_add(GTK_BOX(tab->install_tags_box),PACKAGE_INSTALLED_LABEL,"tag_green",NULL);
gtk_image_set_from_icon_name(GTK_IMAGE(tab->package_icon),package_icon_path,GTK_ICON_SIZE_BUTTON);
} else {
gtk_widget_hide(tab->remove_package_button);
gtk_widget_show(tab->install_package_button);
}
if (!tab->package_installed&&!tab->module_installed){
gtk_widget_hide(tab->launch_button);
}
} else {
int types_size;
tab = malloc(sizeof(kernels_tab));
@ -665,6 +649,8 @@ kernels_tab *yon_tab_row_new(GtkListBox *target, char *target_string, main_windo
dictionary *dict = NULL;
yon_dictionary_add_or_create_if_exists_with_data(dict,"widgets",widgets);
yon_dictionary_add_or_create_if_exists_with_data(dict,"tab",tab);
g_signal_connect(G_OBJECT(tab->update_module_button),"clicked",G_CALLBACK(on_module_install_clicked),dict);
g_signal_connect(G_OBJECT(tab->update_package_button),"clicked",G_CALLBACK(on_package_install_clicked),dict);
g_signal_connect(G_OBJECT(tab->install_module_button),"clicked",G_CALLBACK(on_module_install_clicked),dict);
g_signal_connect(G_OBJECT(tab->install_package_button),"clicked",G_CALLBACK(on_package_install_clicked),dict);
g_signal_connect(G_OBJECT(tab->remove_module_button),"clicked",G_CALLBACK(on_module_remove_clicked),dict);
@ -726,7 +712,6 @@ kernels_tab *yon_tab_row_new(GtkListBox *target, char *target_string, main_windo
gtk_size_group_add_widget(GTK_SIZE_GROUP(widgets->RunSizeGroup),tab->run_tags_box);
gtk_size_group_add_widget(GTK_SIZE_GROUP(widgets->DescriptionSizeGroup),tab->description_label);
gtk_size_group_add_widget(GTK_SIZE_GROUP(widgets->ButtonsSizeGroup),gtk_widget_get_parent(tab->launch_button));
}
@ -736,42 +721,11 @@ kernels_tab *yon_tab_row_new(GtkListBox *target, char *target_string, main_windo
}
additions_kernels_tab *yon_additions_tab_row_new(GtkListBox *target, char *target_string, main_window *widgets){
int size;
int size=0;
config_str parsed = yon_char_parse(target_string,&size,";");
if (size){
dictionary *cur = yon_dictionary_get(&main_config.addition_tabs,parsed[2]);
additions_kernels_tab *tab = NULL;
if (cur){
tab = (additions_kernels_tab*)cur->data;
gtk_image_set_from_icon_name(GTK_IMAGE(tab->module_icon),"",GTK_ICON_SIZE_BUTTON);
gtk_image_set_from_icon_name(GTK_IMAGE(tab->package_icon),"",GTK_ICON_SIZE_BUTTON);
if (tab->module_installed){
gtk_widget_show(tab->remove_module_button);
gtk_widget_hide(tab->install_module_button);
gtk_widget_show(tab->update_module_button);
gtk_widget_show(tab->remove_module_button);
yon_tag_add(GTK_BOX(tab->install_tags_box),MODULE_INSTALLED_LABEL,"tag_green",NULL);
gtk_image_set_from_icon_name(GTK_IMAGE(tab->module_icon),module_icon_path,GTK_ICON_SIZE_BUTTON);
} else {
gtk_widget_hide(tab->update_module_button);
gtk_widget_hide(tab->remove_module_button);
gtk_widget_show(tab->install_module_button);
}
if (tab->package_installed){
gtk_widget_show(tab->update_package_button);
gtk_widget_show(tab->remove_package_button);
gtk_widget_hide(tab->install_package_button);
yon_tag_add(GTK_BOX(tab->install_tags_box),PACKAGE_INSTALLED_LABEL,"tag_green",NULL);
gtk_image_set_from_icon_name(GTK_IMAGE(tab->package_icon),package_icon_path,GTK_ICON_SIZE_BUTTON);
} else {
gtk_widget_hide(tab->update_package_button);
gtk_widget_hide(tab->remove_package_button);
gtk_widget_show(tab->install_package_button);
}
} else {
GtkBuilder *builder = gtk_builder_new_from_resource(glade_additions_table_row_path);
tab = malloc(sizeof(additions_kernels_tab));
@ -807,9 +761,6 @@ additions_kernels_tab *yon_additions_tab_row_new(GtkListBox *target, char *targe
g_signal_connect(G_OBJECT(tab->remove_package_button),"clicked",G_CALLBACK(on_package_remove_clicked),dict);
gtk_list_box_insert(target,tab->main_box,-1);
int size;
config_str parsed = yon_char_parse(target_string,&size,";");
if (size){
tab->name = yon_char_new(parsed[0]);
tab->module = yon_char_new(parsed[1]);
tab->package = yon_char_new(parsed[2]);
@ -827,8 +778,6 @@ additions_kernels_tab *yon_additions_tab_row_new(GtkListBox *target, char *targe
gtk_size_group_add_widget(GTK_SIZE_GROUP(widgets->InstallSizeGroup),tab->install_tags_box);
gtk_size_group_add_widget(GTK_SIZE_GROUP(widgets->DescriptionSizeGroup),tab->description_label);
gtk_size_group_add_widget(GTK_SIZE_GROUP(widgets->ButtonsSizeGroup),gtk_widget_get_parent(tab->remove_module_button));
}
}
return tab;
}
return NULL;
@ -935,7 +884,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),command);
yon_terminal_window_launch(GTK_WINDOW(widgets->Window),yon_debug_output("%s\n",command));
gtk_widget_destroy(window->window);
}
@ -968,14 +917,43 @@ void on_boot_toggled(GtkWidget *, char *path, main_window *widgets){
}
void on_terminal_revealer_open(GtkWidget *, main_window *widgets){
int opened = gtk_revealer_get_child_revealed(GTK_REVEALER(widgets->TerminalRevealer));
gtk_revealer_set_reveal_child(GTK_REVEALER(widgets->TerminalRevealer),!opened);
int opened = gtk_widget_get_visible(widgets->TerminalPaned);
switch (opened){
case 0: {
gtk_revealer_set_transition_type(GTK_REVEALER(widgets->TerminalRevealer),GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP);
case 0: { // opens
gtk_button_set_label(GTK_BUTTON(widgets->MoreButton),LESS_LABEL);
g_object_ref(widgets->MainNotebook);
gtk_container_remove(GTK_CONTAINER(gtk_widget_get_parent(widgets->MainNotebook)),widgets->MainNotebook);
gtk_paned_add1(GTK_PANED(widgets->TerminalPaned),widgets->MainNotebook);
int pos;
if (yon_window_config_get_parameter("settings","paned_pos",&pos,YON_TYPE_INT)) {
gtk_paned_set_position(GTK_PANED(widgets->TerminalPaned),pos);
}
gtk_widget_show(widgets->TerminalPaned);
gtk_widget_show(widgets->MainNotebook);
} break;
case 1: {
gtk_revealer_set_transition_type(GTK_REVEALER(widgets->TerminalRevealer),GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN);
case 1: { //closes
gtk_button_set_label(GTK_BUTTON(widgets->MoreButton),MORE_LABEL);
int pos = gtk_paned_get_position(GTK_PANED(widgets->TerminalPaned));
yon_window_config_add_instant_parameter("paned_pos","settings",&pos,YON_TYPE_INT);
GValue val = G_VALUE_INIT;
g_object_get_property(G_OBJECT(widgets->TerminalPaned),"max-position",&val);
gtk_paned_set_position(GTK_PANED(widgets->TerminalPaned),g_value_get_int(&val));
g_value_unset(&val);
g_object_ref(widgets->MainNotebook);
gtk_container_remove(GTK_CONTAINER(widgets->TerminalPaned),widgets->MainNotebook);
gtk_box_pack_start(GTK_BOX(gtk_widget_get_parent(widgets->TerminalPaned)),widgets->MainNotebook,1,1,0);
gtk_box_reorder_child(GTK_BOX(gtk_widget_get_parent(widgets->MainNotebook)),widgets->MainNotebook,0);
gtk_widget_hide(widgets->TerminalPaned);
} break;
}
}
@ -1006,7 +984,7 @@ void yon_main_window_complete(main_window *widgets){
widgets->InstallationProgress = yon_gtk_builder_get_widget(builder, "InstallationProgress");
widgets->InstallTerminal = yon_gtk_builder_get_widget(builder, "InstallTerminal");
widgets->TerminalRevealer = yon_gtk_builder_get_widget(builder, "TerminalRevealer");
widgets->TerminalOverlay = yon_gtk_builder_get_widget(builder, "TerminalOverlay");
widgets->TerminalPaned = yon_gtk_builder_get_widget(builder, "TerminalPaned");
widgets->TerminalScroll = yon_gtk_builder_get_widget(builder, "TerminalScroll");
widgets->KernelsList = GTK_LIST_STORE(gtk_builder_get_object(builder,"KernelsList"));
widgets->AdditionsList = GTK_LIST_STORE(gtk_builder_get_object(builder,"AdditionsList"));
@ -1026,7 +1004,7 @@ void 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->KernelsPackageBox),"row-selected",G_CALLBACK(on_selection_changed),widgets);
g_signal_connect(G_OBJECT(widgets->AdditionsPackageBox),"row-selected",G_CALLBACK(on_selection_changed),widgets);
g_signal_connect(G_OBJECT(widgets->InstallTerminal),"child-exited",G_CALLBACK(on_command_execute_success),widgets);
// g_signal_connect(G_OBJECT(widgets->InstallTerminal),"child-exited",G_CALLBACK(on_command_execute_success),widgets);
g_signal_connect(G_OBJECT(widgets->SaveMenuItem),"activate",G_CALLBACK(on_config_save),widgets);
g_signal_connect(G_OBJECT(widgets->SaveGlobalMenuItem),"activate",G_CALLBACK(on_config_global_save),widgets);
@ -1047,7 +1025,8 @@ void yon_main_window_complete(main_window *widgets){
glong columns = vte_terminal_get_column_count(VTE_TERMINAL(widgets->InstallTerminal));
vte_terminal_set_size(VTE_TERMINAL(widgets->InstallTerminal),columns,20);
gtk_overlay_add_overlay(GTK_OVERLAY(widgets->TerminalOverlay),widgets->TerminalRevealer);
gtk_paned_add2(GTK_PANED(widgets->TerminalPaned),widgets->TerminalRevealer);
yon_interface_update(widgets);
yon_save_window_set_postsave_function(on_save_done,widgets);

@ -47,6 +47,7 @@
#define get_package_info_command(target) yon_char_append("pacman -Si ",target)
#define get_package_is_installed_command(target) yon_char_append("pacman -Qq ",target)
#define get_package_is_updated_command(target) yon_char_append("pacman -Qu ",target)
#define unload_command(target) yon_char_append("ubmunload ",target)
#define install_command(target) yon_char_append("pacman -Sy --noconfirm ",target)
#define remove_command(target) yon_char_append("pacman -R --noconfirm ",target)
@ -55,7 +56,7 @@
#define get_installed_kernel_packages_command "cat /usr/lib/modules/*/pkgbase"
#define get_installed_kernel_modules_command "cat /memory/data/from/0/ublinux-data/module/*linux*"
#define build_command(target,filename,debug_bool,drivers_bool) yon_char_unite("ubmkuird -l -n ",filename," -k ",(debug_bool)?"--addon ":"",(drivers_bool)?"-H ":"",target,NULL)
#define build_command(target,filename,debug_bool,drivers_bool) yon_char_unite("ubmkuird -l -n ",filename," -k ",target, " ",(debug_bool)?"--addon ":"",(drivers_bool)?"-H":"",NULL)
#define yon_config_get_custom_command(target) yon_char_unite("ubconfig --source ",target," get boot KERNEL_BOOT",NULL)
#define config_get_local_command "ubconfig --source system get boot KERNEL_BOOT"
@ -114,7 +115,7 @@ typedef struct {
GtkWidget *InstallTerminal;
GtkWidget *InstallationProgress;
GtkWidget *MoreButton;
GtkWidget *TerminalOverlay;
GtkWidget *TerminalPaned;
GtkWidget *TerminalScroll;
} main_window;

@ -44,6 +44,7 @@
#define UPDATE_LABEL _("Update")
#define OPE_INFO_LABEL _("Open package information")
#define MORE_LABEL _("More")
#define LESS_LABEL _("Hide")
#define ACCEPT_LABEL _("Accept")
#define WARNING_TITLE_LABEL _("Warning")

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.40.0 -->
<!-- Generated with glade 3.38.2 -->
<interface domain="ubl-settings-kernel">
<requires lib="gtk+" version="3.24"/>
<!-- interface-css-provider-path ubl-settings-kernel.css -->
@ -161,6 +161,7 @@
<object class="GtkBox" id="InstallTagsBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="valign">center</property>
<property name="margin-top">5</property>
<property name="margin-bottom">5</property>
<property name="orientation">vertical</property>

@ -159,6 +159,7 @@
<object class="GtkBox" id="TagsBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="valign">center</property>
<property name="margin-top">5</property>
<property name="margin-bottom">5</property>
<property name="orientation">vertical</property>
@ -177,6 +178,7 @@
<object class="GtkBox" id="InstallTagsBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="valign">center</property>
<property name="margin-top">5</property>
<property name="margin-bottom">5</property>
<property name="orientation">vertical</property>
@ -194,6 +196,7 @@
<child>
<object class="GtkBox" id="RunBox">
<property name="can-focus">False</property>
<property name="valign">center</property>
<property name="margin-top">5</property>
<property name="margin-bottom">5</property>
<property name="orientation">vertical</property>

@ -52,11 +52,19 @@
<property name="step-increment">1</property>
<property name="page-increment">10</property>
</object>
<object class="GtkRevealer" id="TerminalRevealer">
<object class="GtkFrame" id="TerminalRevealer">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="valign">end</property>
<property name="transition-type">slide-up</property>
<property name="label-xalign">0</property>
<property name="shadow-type">in</property>
<child>
<object class="GtkAlignment">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="top-padding">5</property>
<property name="bottom-padding">5</property>
<property name="left-padding">5</property>
<property name="right-padding">5</property>
<child>
<object class="GtkBox">
<property name="visible">True</property>
@ -67,7 +75,6 @@
<property name="sensitive">False</property>
<property name="can-focus">True</property>
<property name="vadjustment">adjustment1</property>
<property name="vscroll-policy">natural</property>
<property name="encoding">UTF-8</property>
<property name="pointer-autohide">True</property>
<property name="scroll-on-keystroke">True</property>
@ -95,6 +102,11 @@
</object>
</child>
</object>
</child>
<child type="label_item">
<placeholder/>
</child>
</object>
<object class="GtkImage" id="image1">
<property name="visible">True</property>
<property name="can-focus">False</property>
@ -187,9 +199,11 @@
</packing>
</child>
<child>
<object class="GtkOverlay" id="TerminalOverlay">
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="orientation">vertical</property>
<property name="spacing">5</property>
<child>
<object class="GtkNotebook" id="MainNotebook">
<property name="visible">True</property>
@ -214,6 +228,7 @@
<object class="GtkViewport">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="margin-right">5</property>
<property name="margin-end">5</property>
<child>
<object class="GtkListBox" id="KernelsPackageBox">
@ -250,6 +265,8 @@
<object class="GtkScrolledWindow">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="margin-left">5</property>
<property name="margin-right">5</property>
<property name="margin-start">5</property>
<property name="margin-end">5</property>
<property name="margin-top">5</property>
@ -258,6 +275,7 @@
<object class="GtkViewport">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="margin-right">5</property>
<property name="margin-end">5</property>
<child>
<object class="GtkListBox" id="AdditionsPackageBox">
@ -287,22 +305,29 @@
</packing>
</child>
</object>
<packing>
<property name="index">-1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkPaned" id="TerminalPaned">
<property name="can-focus">True</property>
<property name="orientation">vertical</property>
<property name="position">250</property>
<property name="wide-handle">True</property>
<child>
<placeholder/>
</child>
<child>
<placeholder/>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
<property name="position">1</property>
</packing>
</child>
<child>
@ -388,8 +413,22 @@
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
</object>
</interface>

@ -162,67 +162,78 @@ msgstr ""
msgid "More"
msgstr ""
#: source/ubl-strings.h:48
msgid "Accept"
#: source/ubl-strings.h:47
msgid "Hide"
msgstr ""
#: source/ubl-strings.h:49
msgid "Warning"
msgid "Accept"
msgstr ""
#: source/ubl-strings.h:50
msgid "Warning"
msgstr ""
#: source/ubl-strings.h:51
msgid "Dependences"
msgstr ""
#: source/ubl-strings.h:52
#: source/ubl-strings.h:53
msgid "Module"
msgstr ""
#: source/ubl-strings.h:53
#: source/ubl-strings.h:54
msgid "Package"
msgstr ""
#: source/ubl-strings.h:54
#: source/ubl-strings.h:55
msgid "Description"
msgstr ""
#: source/ubl-strings.h:56
#: source/ubl-strings.h:57
msgid "Kernel and additions listst are loading"
msgstr ""
#: source/ubl-strings.h:59
msgid "Terminal operation success"
msgstr ""
#: source/ubl-strings.h:57
#: source/ubl-strings.h:60
msgid "Terminal operation failed"
msgstr ""
#: source/ubl-strings.h:58
#: source/ubl-strings.h:61
msgid "Terminal operation in process"
msgstr ""
#: source/ubl-strings.h:58
msgid "The package with the module has been removed, but the module is not disabled from the system, as it is used by other system programs. After rebooting, the module will be disabled and removed."
#: source/ubl-strings.h:62
msgid ""
"The package with the module has been removed, but the module is not disabled "
"from the system, as it is used by other system programs. After rebooting, "
"the module will be disabled and removed."
msgstr ""
#: source/ubl-strings.h:60
#: source/ubl-strings.h:64
msgid "Are you sure want to install kernel"
msgstr ""
#: source/ubl-strings.h:61
#: source/ubl-strings.h:65
msgid "Are you sure want to install package"
msgstr ""
#: source/ubl-strings.h:62
#: source/ubl-strings.h:66
msgid "Are you sure want to remove module"
msgstr ""
#: source/ubl-strings.h:63
#: source/ubl-strings.h:67
msgid "Are you sure want to remove package"
msgstr ""
#: source/ubl-strings.h:64
#: source/ubl-strings.h:68
msgid "Are you sure want to launch"
msgstr ""
#: source/ubl-strings.h:64
#: source/ubl-strings.h:68
msgid ""
"for boot?\n"
"\n"

@ -163,67 +163,81 @@ msgstr "Открыть информацию о пакете"
msgid "More"
msgstr "Подробнее"
#: source/ubl-strings.h:48
#: source/ubl-strings.h:47
msgid "Hide"
msgstr "Скрыть"
#: source/ubl-strings.h:49
msgid "Accept"
msgstr "Принять"
#: source/ubl-strings.h:49
#: source/ubl-strings.h:50
msgid "Warning"
msgstr "Внимание"
#: source/ubl-strings.h:50
#: source/ubl-strings.h:51
msgid "Dependences"
msgstr "Зависимости"
#: source/ubl-strings.h:52
#: source/ubl-strings.h:53
msgid "Module"
msgstr "Модуль"
#: source/ubl-strings.h:53
#: source/ubl-strings.h:54
msgid "Package"
msgstr "Пакет"
#: source/ubl-strings.h:54
#: source/ubl-strings.h:55
msgid "Description"
msgstr "Описание"
#: source/ubl-strings.h:56
#: source/ubl-strings.h:57
msgid "Kernel and additions listst are loading"
msgstr "Список ядер и дополнений загружается"
#: source/ubl-strings.h:59
msgid "Terminal operation success"
msgstr "Операция терминала успешно завершена"
#: source/ubl-strings.h:57
#: source/ubl-strings.h:60
msgid "Terminal operation failed"
msgstr "Операция терминала завершена с ошибкой"
#: source/ubl-strings.h:58
#: source/ubl-strings.h:61
msgid "Terminal operation in process"
msgstr "Операция терминала в процессе выполнения"
#: source/ubl-strings.h:58
msgid "The package with the module has been removed, but the module is not disabled from the system, as it is used by other system programs. After rebooting, the module will be disabled and removed."
msgstr "Пакет с модулем удалён, но модуль не отключен от системы, так как используется другими системными программами. После перезагрузки модуль будет отключен и удалён."
#: source/ubl-strings.h:62
msgid ""
"The package with the module has been removed, but the module is not disabled "
"from the system, as it is used by other system programs. After rebooting, "
"the module will be disabled and removed."
msgstr ""
"Пакет с модулем удалён, но модуль не отключен от системы, так как "
"используется другими системными программами. После перезагрузки модуль будет "
"отключен и удалён."
#: source/ubl-strings.h:60
#: source/ubl-strings.h:64
msgid "Are you sure want to install kernel"
msgstr "Вы хотите установить в систему ядро"
#: source/ubl-strings.h:61
#: source/ubl-strings.h:65
msgid "Are you sure want to install package"
msgstr "Вы хотите установить в систему пакет с ядром"
#: source/ubl-strings.h:62
#: source/ubl-strings.h:66
msgid "Are you sure want to remove module"
msgstr "Вы действительно хотите удалить из системы пакет с модулем ядра"
#: source/ubl-strings.h:63
#: source/ubl-strings.h:67
msgid "Are you sure want to remove package"
msgstr "Вы действительно хотите удалить из системы пакет с ядром"
#: source/ubl-strings.h:64
#: source/ubl-strings.h:68
msgid "Are you sure want to launch"
msgstr "Выбрать ядро"
#: source/ubl-strings.h:64
#: source/ubl-strings.h:68
msgid ""
"for boot?\n"
"\n"

Loading…
Cancel
Save