diff options
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | ChangeLog.pre-2-0 | 7 | ||||
-rw-r--r-- | ChangeLog.pre-2-10 | 7 | ||||
-rw-r--r-- | ChangeLog.pre-2-2 | 7 | ||||
-rw-r--r-- | ChangeLog.pre-2-4 | 7 | ||||
-rw-r--r-- | ChangeLog.pre-2-6 | 7 | ||||
-rw-r--r-- | ChangeLog.pre-2-8 | 7 | ||||
-rw-r--r-- | gtk/gtktogglebutton.c | 21 |
8 files changed, 65 insertions, 5 deletions
@@ -1,3 +1,10 @@ +2000-20-01 Anders Carlsson <andersca@gnu.org> + + * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when + a GtkToggleButton is both insensitive and active, it was being + drawn by the GtkButton draw handler which doesn't check the + state. Now it's calling gtk_toggle_button_paint instead. + 2000-11-30 Havoc Pennington <hp@pobox.com> * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0 index 49b9f5c17a..71f7709b19 100644 --- a/ChangeLog.pre-2-0 +++ b/ChangeLog.pre-2-0 @@ -1,3 +1,10 @@ +2000-20-01 Anders Carlsson <andersca@gnu.org> + + * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when + a GtkToggleButton is both insensitive and active, it was being + drawn by the GtkButton draw handler which doesn't check the + state. Now it's calling gtk_toggle_button_paint instead. + 2000-11-30 Havoc Pennington <hp@pobox.com> * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 49b9f5c17a..71f7709b19 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,10 @@ +2000-20-01 Anders Carlsson <andersca@gnu.org> + + * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when + a GtkToggleButton is both insensitive and active, it was being + drawn by the GtkButton draw handler which doesn't check the + state. Now it's calling gtk_toggle_button_paint instead. + 2000-11-30 Havoc Pennington <hp@pobox.com> * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index 49b9f5c17a..71f7709b19 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,10 @@ +2000-20-01 Anders Carlsson <andersca@gnu.org> + + * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when + a GtkToggleButton is both insensitive and active, it was being + drawn by the GtkButton draw handler which doesn't check the + state. Now it's calling gtk_toggle_button_paint instead. + 2000-11-30 Havoc Pennington <hp@pobox.com> * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 49b9f5c17a..71f7709b19 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,10 @@ +2000-20-01 Anders Carlsson <andersca@gnu.org> + + * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when + a GtkToggleButton is both insensitive and active, it was being + drawn by the GtkButton draw handler which doesn't check the + state. Now it's calling gtk_toggle_button_paint instead. + 2000-11-30 Havoc Pennington <hp@pobox.com> * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 49b9f5c17a..71f7709b19 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,10 @@ +2000-20-01 Anders Carlsson <andersca@gnu.org> + + * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when + a GtkToggleButton is both insensitive and active, it was being + drawn by the GtkButton draw handler which doesn't check the + state. Now it's calling gtk_toggle_button_paint instead. + 2000-11-30 Havoc Pennington <hp@pobox.com> * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 49b9f5c17a..71f7709b19 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,10 @@ +2000-20-01 Anders Carlsson <andersca@gnu.org> + + * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when + a GtkToggleButton is both insensitive and active, it was being + drawn by the GtkButton draw handler which doesn't check the + state. Now it's calling gtk_toggle_button_paint instead. + 2000-11-30 Havoc Pennington <hp@pobox.com> * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create diff --git a/gtk/gtktogglebutton.c b/gtk/gtktogglebutton.c index 5b70c7e04d..951c3ee65c 100644 --- a/gtk/gtktogglebutton.c +++ b/gtk/gtktogglebutton.c @@ -401,11 +401,22 @@ static gint gtk_toggle_button_expose (GtkWidget *widget, GdkEventExpose *event) { - if (!GTK_WIDGET_NO_WINDOW (widget) && - GTK_WIDGET_CLASS (parent_class)->expose_event) - return GTK_WIDGET_CLASS (parent_class)->expose_event (widget, event); - else - return FALSE; + GtkBin *bin; + GdkEventExpose child_event; + + if (GTK_WIDGET_DRAWABLE (widget)) + { + bin = GTK_BIN (widget); + + gtk_toggle_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); + } + + return TRUE; } static void |