diff options
author | Matthias Clasen <mclasen@redhat.com> | 2012-08-25 11:22:14 -0400 |
---|---|---|
committer | Benjamin Otte <otte@redhat.com> | 2012-08-28 15:42:24 +0200 |
commit | 27fd3fdf818541948ec9077143cebf32b71f801f (patch) | |
tree | 80a9dfb00a342ca2f9c8e7b88247c605c061bc22 /gtk/gtkcssarrayvalue.c | |
parent | 012526241a1024256459c127065603a5fd11cfd3 (diff) | |
download | gtk+-27fd3fdf818541948ec9077143cebf32b71f801f.tar.gz |
css: Handle some more simple cases of dependencies
Diffstat (limited to 'gtk/gtkcssarrayvalue.c')
-rw-r--r-- | gtk/gtkcssarrayvalue.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/gtk/gtkcssarrayvalue.c b/gtk/gtkcssarrayvalue.c index 418ac65598..69f81bf7f4 100644 --- a/gtk/gtkcssarrayvalue.c +++ b/gtk/gtkcssarrayvalue.c @@ -49,16 +49,18 @@ gtk_css_value_array_compute (GtkCssValue *value, GtkCssValue *result; gboolean changed = FALSE; guint i; + GtkCssDependencies child_deps; if (value->n_values == 0) return _gtk_css_value_ref (value); - *dependencies = GTK_CSS_DEPENDS_ON_EVERYTHING; - result = _gtk_css_array_value_new_from_array (value->values, value->n_values); for (i = 0; i < value->n_values; i++) { - result->values[i] = _gtk_css_value_compute (value->values[i], property_id, context, NULL); + result->values[i] = _gtk_css_value_compute (value->values[i], property_id, context, &child_deps); + + *dependencies = _gtk_css_dependencies_union (*dependencies, child_deps); + changed |= (result->values[i] != value->values[i]); } |