From 5b11d14a49c2d900f2fabf193742cee09f81bd52 Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Tue, 5 Oct 2010 10:56:52 +0200 Subject: [PATCH] GtkButton: Notify on prelight state change. --- gtk/gtkbutton.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gtk/gtkbutton.c b/gtk/gtkbutton.c index beece346c1..9b71c298f5 100644 --- a/gtk/gtkbutton.c +++ b/gtk/gtkbutton.c @@ -1746,6 +1746,18 @@ gtk_button_enter_notify (GtkWidget *widget, { priv->in_button = TRUE; gtk_button_enter (button); + + if (gtk_widget_get_realized (widget) && + gtk_widget_is_drawable (widget)) + { + GtkStyleContext *context; + + context = gtk_widget_get_style_context (widget); + gtk_style_context_notify_state_change (context, + gtk_widget_get_window (widget), + NULL, GTK_STATE_PRELIGHT, + button->in_button); + } } return FALSE; @@ -1764,6 +1776,18 @@ gtk_button_leave_notify (GtkWidget *widget, { priv->in_button = FALSE; gtk_button_leave (button); + + if (gtk_widget_get_realized (widget) && + gtk_widget_is_drawable (widget)) + { + GtkStyleContext *context; + + context = gtk_widget_get_style_context (widget); + gtk_style_context_notify_state_change (context, + gtk_widget_get_window (widget), + NULL, GTK_STATE_PRELIGHT, + button->in_button); + } } return FALSE;