summaryrefslogtreecommitdiff
path: root/gtk/gtkcheckbutton.c
diff options
context:
space:
mode:
Diffstat (limited to 'gtk/gtkcheckbutton.c')
-rw-r--r--gtk/gtkcheckbutton.c16
1 files changed, 6 insertions, 10 deletions
diff --git a/gtk/gtkcheckbutton.c b/gtk/gtkcheckbutton.c
index fb8d052d12..257cafefac 100644
--- a/gtk/gtkcheckbutton.c
+++ b/gtk/gtkcheckbutton.c
@@ -243,7 +243,6 @@ gtk_check_button_expose (GtkWidget *widget,
GtkCheckButton *check_button;
GtkToggleButton *toggle_button;
GtkBin *bin;
- GdkEventExpose child_event;
g_return_val_if_fail (widget != NULL, FALSE);
g_return_val_if_fail (GTK_IS_CHECK_BUTTON (widget), FALSE);
@@ -259,16 +258,13 @@ gtk_check_button_expose (GtkWidget *widget,
{
gtk_check_button_paint (widget, &event->area);
- child_event = *event;
- if (bin->child && GTK_WIDGET_NO_WINDOW (bin->child) &&
- gtk_widget_intersect (bin->child, &event->area, &child_event.area))
- gtk_widget_event (bin->child, (GdkEvent*) &child_event);
- }
- else
- {
- if (GTK_WIDGET_CLASS (parent_class)->expose_event)
- (* GTK_WIDGET_CLASS (parent_class)->expose_event) (widget, event);
+ if (bin->child)
+ gtk_container_propagate_expose (GTK_CONTAINER (widget),
+ bin->child,
+ event);
}
+ else if (GTK_WIDGET_CLASS (parent_class)->expose_event)
+ (* GTK_WIDGET_CLASS (parent_class)->expose_event) (widget, event);
}
return FALSE;