[gtk+/wip/actor: 25/28] xxx: cssbox style_updated
- From: Benjamin Otte <otte src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/wip/actor: 25/28] xxx: cssbox style_updated
- Date: Mon, 24 Dec 2012 21:33:36 +0000 (UTC)
commit 27a56374ba86a18c353cc5ece8fc8860cd31356b
Author: Benjamin Otte <otte redhat com>
Date: Thu Dec 20 15:02:12 2012 +0100
xxx: cssbox style_updated
gtk/actors/gtkcssbox.c | 14 ++++++++++++++
1 files changed, 14 insertions(+), 0 deletions(-)
---
diff --git a/gtk/actors/gtkcssbox.c b/gtk/actors/gtkcssbox.c
index 34df884..a67802f 100644
--- a/gtk/actors/gtkcssbox.c
+++ b/gtk/actors/gtkcssbox.c
@@ -23,6 +23,7 @@
#include "gtkcssenumvalueprivate.h"
#include "gtkcssnumbervalueprivate.h"
+#include "gtkcssstylepropertyprivate.h"
#include "gtkcsstypesprivate.h"
#include "gtkdebug.h"
#include "gtkintl.h"
@@ -486,10 +487,21 @@ gtk_css_box_real_screen_changed (GtkActor *actor,
}
static void
+gtk_css_box_real_style_updated (GtkCssActor *actor,
+ const GtkBitmask *changes)
+{
+ if (_gtk_css_style_property_changes_affect_size (changes))
+ _gtk_actor_queue_relayout (GTK_ACTOR (actor));
+ else
+ _gtk_actor_queue_redraw (GTK_ACTOR (actor));
+}
+
+static void
_gtk_css_box_class_init (GtkCssBoxClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
GtkActorClass *actor_class = GTK_ACTOR_CLASS (klass);
+ GtkCssActorClass *css_actor_class = GTK_CSS_ACTOR_CLASS (klass);
object_class->finalize = gtk_css_box_finalize;
object_class->set_property = gtk_css_box_set_property;
@@ -505,6 +517,8 @@ _gtk_css_box_class_init (GtkCssBoxClass *klass)
actor_class->allocate = gtk_css_box_real_allocate;
actor_class->screen_changed = gtk_css_box_real_screen_changed;
+ css_actor_class->style_updated = gtk_css_box_real_style_updated;
+
/**
* GtkCssBox:state:
*
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]