+static GtkCssValue *
+gtk_css_value_shadow_compute (GtkCssValue *shadow,
+ guint property_id,
+ GtkStyleProviderPrivate *provider,
+ GtkCssComputedValues *values,
+ GtkCssComputedValues *parent_values,
+ GtkCssDependencies *dependencies)
+{
+ GtkCssValue *hoffset, *voffset, *radius, *spread, *color;
+ GtkCssDependencies child_deps;
+
+ child_deps = 0;
+ hoffset = _gtk_css_value_compute (shadow->hoffset, property_id, provider, values, parent_values, &child_deps);
+ *dependencies = _gtk_css_dependencies_union (*dependencies, child_deps);
+
+ child_deps = 0;
+ voffset = _gtk_css_value_compute (shadow->voffset, property_id, provider, values, parent_values, &child_deps);
+ *dependencies = _gtk_css_dependencies_union (*dependencies, child_deps);
+
+ child_deps = 0;
+ radius = _gtk_css_value_compute (shadow->radius, property_id, provider, values, parent_values, &child_deps);
+ *dependencies = _gtk_css_dependencies_union (*dependencies, child_deps);
+
+ child_deps = 0;
+ spread = _gtk_css_value_compute (shadow->spread, property_id, provider, values, parent_values, &child_deps),
+ *dependencies = _gtk_css_dependencies_union (*dependencies, child_deps);
+
+ child_deps = 0;
+ color = _gtk_css_value_compute (shadow->color, property_id, provider, values, parent_values, &child_deps);
+ *dependencies = _gtk_css_dependencies_union (*dependencies, child_deps);
+
+ return gtk_css_shadow_value_new (hoffset, voffset, radius, spread, shadow->inset, color);
+}
+