diff --git a/locale/ubinstall-gtk.pot b/locale/ubinstall-gtk.pot
index ed7007c..faa09e2 100644
--- a/locale/ubinstall-gtk.pot
+++ b/locale/ubinstall-gtk.pot
@@ -1947,7 +1947,7 @@ msgid ""
"network or the Internet (even over slow connection channels)."
msgstr ""
-msgid "No modules were found.\nSelect a different installation source."
+msgid "No modules were found.\nSelect a different installation sources."
msgstr ""
msgid "File system label"
@@ -5354,4 +5354,7 @@ msgid "Close installer"
msgstr ""
msgid "Application is already running"
+msgstr ""
+
+msgid "Select installation sources"
msgstr ""
\ No newline at end of file
diff --git a/locale/ubinstall-gtk_ru.po b/locale/ubinstall-gtk_ru.po
index f561ea7..02ac4d2 100644
--- a/locale/ubinstall-gtk_ru.po
+++ b/locale/ubinstall-gtk_ru.po
@@ -2085,9 +2085,9 @@ msgstr ""
"Позволяет загрузку системы для бездисковых и обычных рабочих станций через "
"локальную сеть или Интернет (даже используя \"слабые\" каналы связи)"
-msgid "No modules were found.\nSelect a different installation source."
+msgid "No modules were found.\nSelect a different installation sources."
msgstr "Модули не найдены.\n"
-"Выберите другой источник установки."
+"Выберите другие источники установки."
msgid "About"
msgstr "О программе"
@@ -5549,4 +5549,7 @@ msgid "Close installer"
msgstr "Закрыть установщик"
msgid "Application is already running"
-msgstr "Приложение уже запущено"
\ No newline at end of file
+msgstr "Приложение уже запущено"
+
+msgid "Select installation sources"
+msgstr "Выберите источники для "
\ No newline at end of file
diff --git a/source/ubinstall-gtk-components.c b/source/ubinstall-gtk-components.c
index 67fd321..0407c06 100644
--- a/source/ubinstall-gtk-components.c
+++ b/source/ubinstall-gtk-components.c
@@ -180,8 +180,9 @@ int yon_os_components_save(main_window *widgets){
return 1;
}
-void on_os_components_info(GtkWidget *, char *, os_row *row){
+gboolean on_os_components_info(GtkWidget *, GdkEventButton *, os_row *row){
yon_package_info_window_create(row->modules);
+ return 1;
}
os_row *yon_os_row_new(){
@@ -190,6 +191,7 @@ os_row *yon_os_row_new(){
row->RowBox = yon_gtk_builder_get_widget(builder,"TableRow");
row->InstallCheck = yon_gtk_builder_get_widget(builder,"InstallCheck");
row->NameLabel = yon_gtk_builder_get_widget(builder,"NameLabel");
+ row->NameEvent = yon_gtk_builder_get_widget(builder,"NameEvent");
row->TagsBox = yon_gtk_builder_get_widget(builder,"TagsBox");
row->VersionLabel = yon_gtk_builder_get_widget(builder,"VersionLabel");
row->DescriptionLabel = yon_gtk_builder_get_widget(builder,"DescriptionLabel");
@@ -199,10 +201,9 @@ os_row *yon_os_row_new(){
row->modules=NULL;
row->version=NULL;
- g_signal_connect(G_OBJECT(row->NameLabel),"activate-link",G_CALLBACK(on_os_components_info),row);
+ g_signal_connect(G_OBJECT(row->NameEvent),"button-press-event",G_CALLBACK(on_os_components_info),row);
row->row = yon_gtk_builder_get_widget(builder,"MainRow");
gtk_widget_show(row->row);
-
g_object_set_data(G_OBJECT(row->InstallCheck),"kernel_row",row);
g_object_set_data(G_OBJECT(row->row),"kernel_row",row);
@@ -219,6 +220,9 @@ void *yon_modules_list_load(main_window *widgets){
int parsed_size=0;
config_str parsed = NULL;
parsed = yon_char_parse(modules[i],&parsed_size,";");
+ if (parsed_size<5){
+ continue;
+ }
struct row_data *row = malloc(sizeof(struct row_data));
row->version = parsed[3];
row->name = parsed[1];
@@ -290,6 +294,12 @@ gboolean yon_spinner_switch_off(GtkSpinner *target){
gboolean yon_os_components_load(main_window *widgets){
int size=0;
GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->OSSoftwareListBox));
+ if (!list){
+ gtk_widget_show(widgets->OSSoftwareEmptyLabel);
+ return G_SOURCE_REMOVE;
+ } else {
+ gtk_widget_hide(widgets->OSSoftwareEmptyLabel);
+ }
GList *iter;
for(iter = list;iter;iter=iter->next){
os_row *row = g_object_get_data(iter->data,"kernel_row");
diff --git a/source/ubinstall-gtk-page-switch.c b/source/ubinstall-gtk-page-switch.c
index 6ee374d..986bb7f 100644
--- a/source/ubinstall-gtk-page-switch.c
+++ b/source/ubinstall-gtk-page-switch.c
@@ -268,7 +268,7 @@ int yon_page_save(main_window *widgets, enum YON_PAGES page){
case YON_PAGE_CONFIG_HUB:
return yon_configuration_hub_save(widgets);
case YON_PAGE_OS_COMPONENTS:
- return yon_os_components_save(widgets);
+ // return yon_os_components_save(widgets);
break;
case YON_PAGE_KERNEL:
return yon_kernel_save(widgets);
@@ -432,8 +432,8 @@ void yon_configuration_mode_check(main_window *widgets){
void yon_page_update(main_window *widgets){
// yon_resize_images_update(widgets);
yon_navigation_buttons_set_sensetiveness(widgets);
- yon_switch_page_render(widgets);
- yon_configuration_mode_check(widgets);
+ // yon_switch_page_render(widgets);
+ // yon_configuration_mode_check(widgets);
}
enum YON_PAGES yon_sections_get_next_page(main_window *widgets){
diff --git a/source/ubinstall-gtk-region.c b/source/ubinstall-gtk-region.c
index 4437408..7f9bf58 100644
--- a/source/ubinstall-gtk-region.c
+++ b/source/ubinstall-gtk-region.c
@@ -126,7 +126,6 @@ void on_map_selection_changed(GtkWidget *,CcTimezoneLocation *location,main_wind
char *timezone = (char*)cc_timezone_location_get_zone(location);
GtkTreeIter iter;
- // int found = 0;
for_iter(widgets->RegionTimezoneCompletionList,&iter){
char *render, *tz;
gtk_tree_model_get(GTK_TREE_MODEL(widgets->RegionTimezoneCompletionList),&iter,0,&render,1,&tz,-1);
@@ -137,21 +136,10 @@ void on_map_selection_changed(GtkWidget *,CcTimezoneLocation *location,main_wind
gtk_entry_set_text(GTK_ENTRY(widgets->RegionEntry),render);
char *utc = yon_timezone_get_utc(tz);
yon_map_status_show(widgets,NULL,MAP_TITLE_LABEL(utc),render);
- // found = 1;
break;
}
}
- // if (!found){
- // const char *region = gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->RegionCombo));
- // const char *zone = gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->ZoneCombo));
- // char *timezone = yon_char_unite(region,"/",zone,NULL);
- // g_signal_handlers_block_by_func(G_OBJECT(widgets->RegionMapTarget),G_CALLBACK(on_map_selection_changed),widgets);
- // cc_timezone_map_set_timezone(CC_TIMEZONE_MAP(widgets->RegionMapTarget),timezone);
- // g_signal_handlers_unblock_by_func(G_OBJECT(widgets->RegionMapTarget),G_CALLBACK(on_map_selection_changed),widgets);
- // free(timezone);
- // }
-
if (!yon_char_is_empty(region)) free(region);
g_signal_handlers_unblock_by_func(G_OBJECT(widgets->ZoneCombo),G_CALLBACK(on_zone_changed),widgets);
g_signal_handlers_unblock_by_func(G_OBJECT(widgets->RegionMapTarget),G_CALLBACK(on_map_selection_changed),widgets);
diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c
index 6c9a88a..bb6fdc0 100644
--- a/source/ubinstall-gtk.c
+++ b/source/ubinstall-gtk.c
@@ -603,6 +603,7 @@ void yon_main_window_create(main_window *widgets){
widgets->OSSoftwareNameLabel = yon_gtk_builder_get_widget(builder,"OSSoftwareNameLabel");
widgets->OSSoftwareTagsLabel = yon_gtk_builder_get_widget(builder,"OSSoftwareTagsLabel");
widgets->OSSoftwareDescriptionLabel = yon_gtk_builder_get_widget(builder,"OSSoftwareDescriptionLabel");
+ widgets->OSSoftwareEmptyLabel = yon_gtk_builder_get_widget(builder,"OSSoftwareEmptyLabel");
widgets->PacmanSoftwareSearchEntry = yon_gtk_builder_get_widget(builder,"PacmanSoftwareSearchEntry");
widgets->PacmanSoftwareStatusImage = yon_gtk_builder_get_widget(builder,"PacmanSoftwareStatusImage");
diff --git a/source/ubinstall-gtk.h b/source/ubinstall-gtk.h
index 528e95f..fae96a2 100755
--- a/source/ubinstall-gtk.h
+++ b/source/ubinstall-gtk.h
@@ -734,6 +734,7 @@ typedef struct
GtkWidget *OSSoftwareNameLabel;
GtkWidget *OSSoftwareTagsLabel;
GtkWidget *OSSoftwareDescriptionLabel;
+ GtkWidget *OSSoftwareEmptyLabel;
GtkWidget *PacmanSoftwareSearchEntry;
GtkWidget *PacmanSoftwareStatusImage;
@@ -1061,6 +1062,7 @@ typedef struct
char *version;
char *tags;
char *description;
+ GtkWidget *NameEvent;
} os_row;
typedef struct
@@ -1635,5 +1637,5 @@ yon_window *yon_package_info_window_create(const char *package);
info_element *yon_package_info_element_new();
void yon_gtk_label_set_font(GtkLabel *label);
void on_kernel_info(GtkWidget *, char *link, kernel_row *row);
-void on_os_components_info(GtkWidget *, char *, os_row *row);
+gboolean on_os_components_info(GtkWidget *, GdkEventButton *, os_row *row);
void on_software_info(GtkWidget*, main_window *widgets);
\ No newline at end of file
diff --git a/source/ubl-strings.h b/source/ubl-strings.h
index 7d6d5dc..e972d3f 100644
--- a/source/ubl-strings.h
+++ b/source/ubl-strings.h
@@ -479,6 +479,7 @@ NULL)
// #define _LABEL _("Source:")
// #define _LABEL _("Version:")
// #define _LABEL _("Size:")
+// #define _LABEL _("Select installation sources")
#define slide_1_title _("Product ecosystem")
#define slide_1_text _("Developed by a team of professionals and successfully presented on the market.\n\
@@ -586,5 +587,5 @@ For more information, visit our website the \"Support Levels\" section.")
#define slide_22_title _("Network Boot")
#define slide_22_text _("Allows system booting for diskless and standard workstations over a local network or the Internet (even over slow connection channels).")
-#define MAIN_COMPONENTS_NOT_FOUND_LABEL _("No modules were found.\nSelect a different installation source")
+#define MAIN_COMPONENTS_NOT_FOUND_LABEL _("No modules were found.\nSelect a different installation sources")
#define MAIN_COMPONENTS_ALL_SELECTED_LABEL _("All local modules of the system are selected")
\ No newline at end of file
diff --git a/ubinstall-gtk-os-row.glade b/ubinstall-gtk-os-row.glade
index a4df9df..6234eee 100644
--- a/ubinstall-gtk-os-row.glade
+++ b/ubinstall-gtk-os-row.glade
@@ -44,16 +44,23 @@
False
7
-
@@ -70,7 +70,7 @@
True
False
- Choose a path for configuration file
+ Select installation sources
0
diff --git a/ubinstall-gtk.glade b/ubinstall-gtk.glade
index 001dd0c..506c9d4 100644
--- a/ubinstall-gtk.glade
+++ b/ubinstall-gtk.glade
@@ -2105,7 +2105,7 @@ agreement
False
No modules were found.
-Select a different installation source.
+Select a different installation sources.
center
True
@@ -7428,9 +7428,7 @@ Select a different installation source.
column
-
- 0
-
+
4
3
@@ -7438,7 +7436,9 @@ Select a different installation source.
-
+
+ 500
+
2
@@ -14435,7 +14435,6 @@ separately into the selected partition.
Cancel
True
- False
True
True
image7