2005-04-21 [paul] 1.9.6cvs44
authorPaul Mangan <paul@claws-mail.org>
Thu, 21 Apr 2005 06:49:55 +0000 (06:49 +0000)
committerPaul Mangan <paul@claws-mail.org>
Thu, 21 Apr 2005 06:49:55 +0000 (06:49 +0000)
sync with main:

* src/setup.c
* src/statusbar.c
* src/statusbar.h
* src/textview.c
use gtkut_widget_draw_now(). Improved performance
of the update of statusbar
* src/gtk/gtkutils.c
* src/gtk/gtkutils.h
gtkut_widget_draw_now(): use gdk_window_process_updates()
to force update of widgets.
Removed gtkut_widget_wait_for_draw() which had a big
overhead  because of waiting for all events processed

ChangeLog-gtk2.claws
PATCHSETS
configure.ac
src/gtk/gtkutils.c
src/gtk/gtkutils.h
src/setup.c
src/statusbar.c
src/statusbar.h
src/textview.c

index ace64d7736725dc521433e2b68fcef9c552ae761..fc936abc137981f3dec8c6ac1e16b85366be9fbf 100644 (file)
@@ -1,3 +1,20 @@
+2005-04-21 [paul]      1.9.6cvs44
+
+       sync with main:
+
+       * src/setup.c
+       * src/statusbar.c
+       * src/statusbar.h
+       * src/textview.c
+               use gtkut_widget_draw_now(). Improved performance
+               of the update of statusbar
+       * src/gtk/gtkutils.c
+       * src/gtk/gtkutils.h
+               gtkut_widget_draw_now(): use gdk_window_process_updates()
+               to force update of widgets.
+               Removed gtkut_widget_wait_for_draw() which had a big
+               overhead  because of waiting for all events processed 
+
 2005-04-20 [paul]      1.9.6cvs43
 
        * src/codeconv.c
index c630ffb078cdde5a0420b6608a448f740009ee74..c1ccde98615fdbac7b83feb9fdff7d0c2ebf7765 100644 (file)
--- a/PATCHSETS
+++ b/PATCHSETS
 ( cvs diff -u -r 1.18.2.7 -r 1.18.2.8 src/jpilot.c; ) > 1.9.6cvs41.patchset
 ( cvs diff -u -r 1.12.2.21 -r 1.12.2.22 src/action.c; cvs diff -u -r 1.65.2.26 -r 1.65.2.27 src/codeconv.c; cvs diff -u -r 1.15.2.6 -r 1.15.2.7 src/codeconv.h; cvs diff -u -r 1.274.2.34 -r 1.274.2.35 src/mainwindow.c; cvs diff -u -r 1.94.2.49 -r 1.94.2.50 src/messageview.c; cvs diff -u -r 1.204.2.34 -r 1.204.2.35 src/prefs_common.c; cvs diff -u -r 1.23.2.4 -r 1.23.2.5 src/common/session.c; cvs diff -u -r 1.8.2.2 -r 1.8.2.3 src/common/session.h; ) > 1.9.6cvs42.patchset
 ( cvs diff -u -r 1.1.2.498 -r 1.1.2.499 ChangeLog-gtk2.claws; cvs diff -u -r 1.65.2.27 -r 1.65.2.28 src/codeconv.c; ) > 1.9.6cvs43.patchset
+( cvs diff -u -r 1.5.2.4 -r 1.5.2.5 src/setup.c; cvs diff -u -r 1.5.2.3 -r 1.5.2.4 src/statusbar.c; cvs diff -u -r 1.3 -r 1.4 src/statusbar.h; cvs diff -u -r 1.96.2.52 -r 1.96.2.53 src/textview.c; cvs diff -u -r 1.5.2.11 -r 1.5.2.12 src/gtk/gtkutils.c; cvs diff -u -r 1.4.2.9 -r 1.4.2.10 src/gtk/gtkutils.h; ) > 1.9.6cvs44.patchset
index 3aff40a718749ff37bc4dbe9fdaf402316a84966..fb8689ee3c77a8b756b08d80bcba89480bde4388 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=9
 MICRO_VERSION=6
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=43
+EXTRA_VERSION=44
 EXTRA_RELEASE=
 EXTRA_GTK2_VERSION=
 
index 88f475ef9217a2c354ea1a7a88a44ff8439cb027..9b69773a7675c9548be903603c005cd482bbdaac 100644 (file)
@@ -620,12 +620,10 @@ void gtkut_widget_get_uposition(GtkWidget *widget, gint *px, gint *py)
        *py = y;
 }
 
-void gtkut_widget_wait_for_draw(GtkWidget *widget)
+void gtkut_widget_draw_now(GtkWidget *widget)
 {
-       if (!GTK_WIDGET_DRAWABLE(widget)) return;
-
-       while (gtk_events_pending())
-               gtk_main_iteration();
+       if (GTK_WIDGET_VISIBLE(widget) && GTK_WIDGET_DRAWABLE(widget))
+               gdk_window_process_updates(widget->window, FALSE);
 }
 
 static void gtkut_clist_bindings_add(GtkWidget *clist)
index c4d3434c8a9f25d6d9360d1d1e878ba4f6418936..5415b65b00fc97416d4e7d01a8d43322426c76a4 100644 (file)
@@ -166,7 +166,7 @@ void gtkut_window_popup                     (GtkWidget      *window);
 void gtkut_widget_get_uposition                (GtkWidget      *widget,
                                         gint           *px,
                                         gint           *py);
-void gtkut_widget_wait_for_draw                (GtkWidget      *widget);
+void gtkut_widget_draw_now             (GtkWidget      *widget);
 void gtkut_widget_init                 (void);
 
 void gtkut_widget_set_app_icon         (GtkWidget      *widget);
index ba60af09967cfa3e95497215f928b6fa9319f5d0..3108847e2520571aa2f525b32e9eb95621e4e51e 100644 (file)
@@ -97,7 +97,7 @@ static void scan_tree_func(Folder *folder, FolderItem *item, gpointer data)
 
        gtk_statusbar_push(GTK_STATUSBAR(mainwin->statusbar),
                           mainwin->mainwin_cid, str);
-       gtkut_widget_wait_for_draw(mainwin->hbox_stat);
+       gtkut_widget_draw_now(mainwin->statusbar);
        gtk_statusbar_pop(GTK_STATUSBAR(mainwin->statusbar),
                          mainwin->mainwin_cid);
        g_free(str);
index 369b8ace7031031b894ee8eb1c3d0aca452141a2..a045641a98c74ba542df5091380dbc27eec20aa0 100644 (file)
@@ -64,7 +64,7 @@ void statusbar_puts(GtkStatusbar *statusbar, const gchar *str)
        cid = gtk_statusbar_get_context_id(statusbar, "Standard Output");
        gtk_statusbar_pop(statusbar, cid);
        gtk_statusbar_push(statusbar, cid, buf);
-       gtkut_widget_wait_for_draw(GTK_WIDGET(statusbar)->parent);
+       gtkut_widget_draw_now(GTK_WIDGET(statusbar));
 
        g_free(buf);
 }
index c3e09e0041b8519d51af7bd8181a3a1ef046c27f..78387f9cfbe27bf54a9f7f591d9b06a724c27d1b 100644 (file)
@@ -40,7 +40,7 @@ void statusbar_verbosity_set  (gboolean        verbose);
 { \
        gtk_statusbar_push(GTK_STATUSBAR(mainwin->statusbar), \
                           mainwin->folderview_cid, str); \
-       gtkut_widget_wait_for_draw(mainwin->hbox_stat); \
+       gtkut_widget_draw_now(mainwin->hbox_stat); \
 }
 
 #define STATUSBAR_POP(mainwin) \
index 2a3404cfa20cbee30512f254fc6b94161b9bc821..40e232c87460203a6533fff57be2c60c06999b48 100644 (file)
@@ -1718,6 +1718,8 @@ static void textview_smooth_scroll_do(TextView *textview,
 
        vadj->value = last_value;
        g_signal_emit_by_name(G_OBJECT(vadj), "value_changed", 0);
+
+       gtk_widget_queue_draw(GTK_WIDGET(text));
 }
 
 static void textview_smooth_scroll_one_line(TextView *textview, gboolean up)