summaryrefslogtreecommitdiff
path: root/gtk/gtkwidget.c
diff options
context:
space:
mode:
Diffstat (limited to 'gtk/gtkwidget.c')
-rw-r--r--gtk/gtkwidget.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c
index 90e97a22a..428a63c04 100644
--- a/gtk/gtkwidget.c
+++ b/gtk/gtkwidget.c
@@ -1578,8 +1578,13 @@ gtk_widget_draw (GtkWidget *widget,
g_return_if_fail (widget != NULL);
- if (GTK_WIDGET_DRAWABLE (widget) &&
- !GTK_WIDGET_REDRAW_PENDING (widget))
+ if (GTK_WIDGET_REDRAW_PENDING (widget))
+ {
+ gtk_widget_redraw_queue = g_slist_remove (gtk_widget_redraw_queue, widget);
+ GTK_PRIVATE_UNSET_FLAG (widget, GTK_REDRAW_PENDING);
+ }
+
+ if (GTK_WIDGET_DRAWABLE (widget))
{
if (!area)
{