From 1facea2a8ddf67fd228c794d1b0524aa3c86d689 Mon Sep 17 00:00:00 2001 From: Rui Matos Date: Mon, 19 Dec 2011 13:00:02 +0000 Subject: [PATCH] expander: Use the widget state flags as a base for drawing --- gtk/gtkexpander.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gtk/gtkexpander.c b/gtk/gtkexpander.c index 4485454222..ebd247d1d5 100644 --- a/gtk/gtkexpander.c +++ b/gtk/gtkexpander.c @@ -887,26 +887,28 @@ gtk_expander_paint (GtkExpander *expander, widget = GTK_WIDGET (expander); context = gtk_widget_get_style_context (widget); + state = gtk_widget_get_state_flags (widget); get_expander_bounds (expander, &clip); gtk_widget_get_allocation (widget, &allocation); gtk_style_context_save (context); + state &= ~(GTK_STATE_FLAG_PRELIGHT); if (expander->priv->prelight) { - state = GTK_STATE_FLAG_PRELIGHT; + state |= GTK_STATE_FLAG_PRELIGHT; gtk_style_context_set_state (context, state); gtk_expander_paint_prelight (expander, cr); } gtk_widget_style_get (widget, "expander-size", &size, NULL); - state = gtk_style_context_get_state (context); - /* Set active flag as per the expanded state */ if (priv->expanded) state |= GTK_STATE_FLAG_ACTIVE; + else + state &= ~(GTK_STATE_FLAG_ACTIVE); gtk_style_context_set_state (context, state); gtk_style_context_add_class (context, GTK_STYLE_CLASS_EXPANDER);