[gtk+/wip/css: 127/154] API Add an updated signal for the stylecontext
- From: Paolo Borelli <pborelli src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/wip/css: 127/154] API Add an updated signal for the stylecontext
- Date: Sat, 7 Jan 2012 02:31:47 +0000 (UTC)
commit ede2e0720c75a88eb42b27c44869ad3733023be7
Author: Benjamin Otte <otte redhat com>
Date: Wed Jan 4 03:29:00 2012 +0100
API Add an updated signal for the stylecontext
I want this signal to be private. Does that work?
gtk/gtkstylecontext.c | 16 ++++++++++++++++
1 files changed, 16 insertions(+), 0 deletions(-)
---
diff --git a/gtk/gtkstylecontext.c b/gtk/gtkstylecontext.c
index b53f82c..e51b989 100644
--- a/gtk/gtkstylecontext.c
+++ b/gtk/gtkstylecontext.c
@@ -395,6 +395,7 @@ enum {
enum {
CHANGED,
+ UPDATED,
LAST_SIGNAL
};
@@ -437,6 +438,15 @@ gtk_style_context_class_init (GtkStyleContextClass *klass)
g_cclosure_marshal_VOID__VOID,
G_TYPE_NONE, 0);
+ signals[UPDATED] =
+ g_signal_new (I_("updated"),
+ G_TYPE_FROM_CLASS (object_class),
+ G_SIGNAL_RUN_FIRST,
+ 0,
+ NULL, NULL,
+ g_cclosure_marshal_VOID__POINTER,
+ G_TYPE_NONE, 1, G_TYPE_POINTER);
+
g_object_class_install_property (object_class,
PROP_SCREEN,
g_param_spec_object ("screen",
@@ -1127,6 +1137,12 @@ style_data_lookup (GtkStyleContext *context,
if (G_UNLIKELY (state_mismatch))
gtk_style_context_restore (context);
+ priv->invalidating_context = TRUE;
+
+ g_signal_emit (context, signals[UPDATED], 0, NULL);
+
+ priv->invalidating_context = FALSE;
+
return data;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]