aboutsummaryrefslogtreecommitdiff
path: root/src/gtkutils.c
diff options
context:
space:
mode:
authorhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2007-03-27 03:03:29 +0000
committerhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2007-03-27 03:03:29 +0000
commitc202fc92c7ccd3adb87b0fbdfc2b0a73f1a32aae (patch)
tree71daeaace11b4414f1aad24fa6dd8f9d7edb8a62 /src/gtkutils.c
parente6effb250999ccd1ba666506a36e11e815abe2cc (diff)
win32: made a workaround for the redraw problem in GTK+ 2.10.11.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@1577 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'src/gtkutils.c')
-rw-r--r--src/gtkutils.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/gtkutils.c b/src/gtkutils.c
index 18e1b89b..585e75d3 100644
--- a/src/gtkutils.c
+++ b/src/gtkutils.c
@@ -310,6 +310,25 @@ void gtkut_clist_set_focus_row(GtkCList *clist, gint row)
GTKUT_CTREE_REFRESH(clist);
}
+#ifdef G_OS_WIN32
+static void vadjustment_changed(GtkAdjustment *adj, gpointer data)
+{
+ GtkWidget *widget = GTK_WIDGET(data);
+
+ gtk_widget_queue_draw(widget);
+}
+#endif
+
+void gtkut_clist_set_redraw(GtkCList *clist)
+{
+#ifdef G_OS_WIN32
+ if (clist->vadjustment) {
+ g_signal_connect(G_OBJECT(clist->vadjustment), "changed",
+ G_CALLBACK(vadjustment_changed), clist);
+ }
+#endif
+}
+
gboolean gtkut_tree_model_next(GtkTreeModel *model, GtkTreeIter *iter)
{
GtkTreeIter iter_, parent;