summaryrefslogtreecommitdiff
path: root/gtk/gtkcsscomputedvalues.c
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2012-11-17 13:23:44 +0100
committerBenjamin Otte <otte@redhat.com>2012-11-18 21:55:43 +0100
commitc3f3a82db93128b37d456306ce25db65adbbf995 (patch)
tree7b68a15400c9c02ea19c4a07992b87b46eae1254 /gtk/gtkcsscomputedvalues.c
parentb55724e3a741029915b9e563cd5c9adf76259755 (diff)
downloadgtk+-c3f3a82db93128b37d456306ce25db65adbbf995.tar.gz
stylecontext: Split out a function
The function is used in multiple places, so split it out. In particular because I'm about to change it.
Diffstat (limited to 'gtk/gtkcsscomputedvalues.c')
-rw-r--r--gtk/gtkcsscomputedvalues.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/gtk/gtkcsscomputedvalues.c b/gtk/gtkcsscomputedvalues.c
index 339be02ad7..7ab7035941 100644
--- a/gtk/gtkcsscomputedvalues.c
+++ b/gtk/gtkcsscomputedvalues.c
@@ -604,3 +604,21 @@ _gtk_css_computed_values_cancel_animations (GtkCssComputedValues *values)
values->animations = NULL;
}
+GtkBitmask *
+_gtk_css_computed_values_compute_dependencies (GtkCssComputedValues *values,
+ const GtkBitmask *parent_changes)
+{
+ GtkBitmask *changes;
+
+ g_return_val_if_fail (GTK_IS_CSS_COMPUTED_VALUES (values), _gtk_bitmask_new ());
+
+ changes = _gtk_bitmask_copy (parent_changes);
+ changes = _gtk_bitmask_intersect (changes, values->depends_on_parent);
+ if (_gtk_bitmask_get (changes, GTK_CSS_PROPERTY_COLOR))
+ changes = _gtk_bitmask_union (changes, values->depends_on_color);
+ if (_gtk_bitmask_get (changes, GTK_CSS_PROPERTY_FONT_SIZE))
+ changes = _gtk_bitmask_union (changes, values->depends_on_font_size);
+
+ return changes;
+}
+