diff options
author | Mark McLoughlin <mark@skynet.ie> | 2004-03-03 17:08:54 +0000 |
---|---|---|
committer | Mark McLoughlin <markmc@src.gnome.org> | 2004-03-03 17:08:54 +0000 |
commit | 3c8e60e7f196e757568d0789593bb145e2002b55 (patch) | |
tree | b2dcfce97b39e1720b56981023c6292e72228e73 /gtk/gtkexpander.c | |
parent | a796feb4b477acbc079b37b71bb055c6c751c0b5 (diff) | |
download | gtk+-3c8e60e7f196e757568d0789593bb145e2002b55.tar.gz |
Set the label widget's state to prelight if we're prelit. Fixes bug
2004-03-03 Mark McLoughlin <mark@skynet.ie>
* gtk/gtkexpander.c:
(gtk_expander_enter_notify), (gtk_expander_leave_notify),
(gtk_expander_set_label_widget): Set the label widget's
state to prelight if we're prelit. Fixes bug #136078.
Diffstat (limited to 'gtk/gtkexpander.c')
-rw-r--r-- | gtk/gtkexpander.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/gtk/gtkexpander.c b/gtk/gtkexpander.c index 780f30504f..4dfa1ba86e 100644 --- a/gtk/gtkexpander.c +++ b/gtk/gtkexpander.c @@ -930,6 +930,10 @@ gtk_expander_enter_notify (GtkWidget *widget, event->detail != GDK_NOTIFY_INFERIOR) { expander->priv->prelight = TRUE; + + if (expander->priv->label_widget) + gtk_widget_set_state (expander->priv->label_widget, GTK_STATE_PRELIGHT); + gtk_expander_redraw_expander (expander); } @@ -949,6 +953,10 @@ gtk_expander_leave_notify (GtkWidget *widget, event->detail != GDK_NOTIFY_INFERIOR) { expander->priv->prelight = FALSE; + + if (expander->priv->label_widget) + gtk_widget_set_state (expander->priv->label_widget, GTK_STATE_NORMAL); + gtk_expander_redraw_expander (expander); } @@ -1579,14 +1587,21 @@ gtk_expander_set_label_widget (GtkExpander *expander, return; if (priv->label_widget) - gtk_widget_unparent (priv->label_widget); + { + gtk_widget_set_state (priv->label_widget, GTK_STATE_NORMAL); + gtk_widget_unparent (priv->label_widget); + } priv->label_widget = label_widget; if (label_widget) { priv->label_widget = label_widget; + gtk_widget_set_parent (label_widget, GTK_WIDGET (expander)); + + if (priv->prelight) + gtk_widget_set_state (label_widget, GTK_STATE_PRELIGHT); } if (GTK_WIDGET_VISIBLE (expander)) |