diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 6a31f18..6310fef 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -839,6 +839,8 @@ gboolean on_image_slide(void *data){ config_str target = yon_char_parsed_new(&size,slide_repeat_path); g_object_unref(widgets->slides_original); widgets->slides_original = gdk_pixbuf_new_from_resource_at_scale(target[cur_slide],600,400,1,NULL); + if (size) + yon_char_parsed_free(target,size); GtkWidget *parent = gtk_widget_get_parent(widgets->SlidesImage); gtk_widget_destroy(widgets->SlidesImage); widgets->SlidesImage = gtk_image_new(); @@ -892,7 +894,7 @@ gboolean yon_installation_progress_update(void *data){ while (gtk_events_pending()) gtk_main_iteration(); int size; while (main_config.log_progress_buzy){ - while (gtk_events_pending()) gtk_main_iteration();}; + while (gtk_events_pending()) gtk_main_iteration();}; main_config.log_progress_buzy=1; config_str text = yon_file_open(progress_path,&size); main_config.log_progress_buzy=0; @@ -1109,10 +1111,14 @@ if (window->Window){ main_config.log_progress_buzy=0; if (size){ char *final = yon_char_parsed_to_string(parsed,size,""); + char *prev = (char*)gtk_label_get_text(GTK_LABEL(window->LogLabel)); gtk_label_set_text(GTK_LABEL(window->LogLabel),final); + yon_debug_output("%s\n",yon_char_from_long((long)gtk_adjustment_get_value(gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(window->ScrollWindow))))); + yon_debug_output("%s\n",yon_char_from_long((long)gtk_adjustment_get_value(gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(window->ScrollWindow))))); + if (strcmp(final,prev)||gtk_adjustment_get_value(gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(window->ScrollWindow)))>gtk_adjustment_get_upper(gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(window->ScrollWindow)))-100) + gtk_adjustment_set_value(gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(window->ScrollWindow)),gtk_adjustment_get_upper(gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(window->ScrollWindow)))); free(final); yon_char_parsed_free(parsed,size); - gtk_adjustment_set_value(gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(window->ScrollWindow)),gtk_adjustment_get_upper(gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(window->ScrollWindow)))); } return 1; } diff --git a/ubinstall-gtk-log-view.glade b/ubinstall-gtk-log-view.glade index 42d453e..72e47e5 100644 --- a/ubinstall-gtk-log-view.glade +++ b/ubinstall-gtk-log-view.glade @@ -1,5 +1,5 @@ - + @@ -41,6 +41,20 @@ 5 vertical 5 + + + Scroll to the end + True + True + False + True + + + False + True + 0 + + True diff --git a/ubinstall-gtk_ru.po b/ubinstall-gtk_ru.po index 14ebf42..285dfed 100644 --- a/ubinstall-gtk_ru.po +++ b/ubinstall-gtk_ru.po @@ -317,10 +317,6 @@ msgstr "Мб" msgid "Available languages in the system:" msgstr "Доступные языки в системе:" -#: source/ubl-strings.h:66 -msgid "Available languages in the system" -msgstr "Доступные языки в системе" - #: source/ubl-strings.h:67 msgid "No device were chosen" msgstr "Устройство не выбрано"