summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2011-06-07 16:48:47 +0200
committerBenjamin Otte <otte@redhat.com>2011-06-09 05:51:54 +0200
commitc0a6b1fb907f4947328af3ae307fd4ccfe874a1d (patch)
tree682df064671aa0dabda1422d8f21578d14bec1a6
parent4e95e6ae21d8105453a49e1eac072917a9cf996e (diff)
downloadgtk+-c0a6b1fb907f4947328af3ae307fd4ccfe874a1d.tar.gz
borderimage: No need to resolve
border-image is a shorthand, so it's unpacked unresolved and repacked resolved.
-rw-r--r--gtk/gtkborderimage.c32
-rw-r--r--gtk/gtkborderimageprivate.h4
-rw-r--r--gtk/gtkstyleproperty.c28
3 files changed, 0 insertions, 64 deletions
diff --git a/gtk/gtkborderimage.c b/gtk/gtkborderimage.c
index f38b4f9b7a..cf9da9cf0a 100644
--- a/gtk/gtkborderimage.c
+++ b/gtk/gtkborderimage.c
@@ -55,7 +55,6 @@ struct _GtkBorderImage {
GtkCssBorderImageRepeat repeat;
gint ref_count;
- gboolean resolved;
};
GtkBorderImage *
@@ -77,8 +76,6 @@ _gtk_border_image_new (cairo_pattern_t *pattern,
if (repeat != NULL)
image->repeat = *repeat;
- image->resolved = TRUE;
-
return image;
}
@@ -101,38 +98,9 @@ _gtk_border_image_new_for_gradient (GtkGradient *gradient,
if (repeat != NULL)
image->repeat = *repeat;
- image->resolved = FALSE;
-
return image;
}
-gboolean
-_gtk_border_image_get_resolved (GtkBorderImage *image)
-{
- return image->resolved;
-}
-
-GtkBorderImage *
-_gtk_border_image_resolve (GtkBorderImage *image,
- GtkStyleProperties *props)
-{
- GtkBorderImage *resolved_image;
- cairo_pattern_t *pattern;
-
- if (image->resolved)
- return _gtk_border_image_ref (image);
-
- image->resolved =
- gtk_gradient_resolve (image->source_gradient, props, &pattern);
-
- if (!image->resolved)
- return NULL;
-
- resolved_image = _gtk_border_image_new (pattern, &image->slice, &image->repeat);
-
- return resolved_image;
-}
-
GtkBorderImage *
_gtk_border_image_ref (GtkBorderImage *image)
{
diff --git a/gtk/gtkborderimageprivate.h b/gtk/gtkborderimageprivate.h
index 5068c511a1..ca2ef01649 100644
--- a/gtk/gtkborderimageprivate.h
+++ b/gtk/gtkborderimageprivate.h
@@ -45,10 +45,6 @@ GtkBorderImage * _gtk_border_image_new_for_gradient (GtkGradient *grad
GtkBorder *slice,
GtkCssBorderImageRepeat *repeat);
-GtkBorderImage * _gtk_border_image_resolve (GtkBorderImage *image,
- GtkStyleProperties *props);
-gboolean _gtk_border_image_get_resolved (GtkBorderImage *image);
-
GtkBorderImage * _gtk_border_image_ref (GtkBorderImage *image);
void _gtk_border_image_unref (GtkBorderImage *image);
diff --git a/gtk/gtkstyleproperty.c b/gtk/gtkstyleproperty.c
index 5ad1a01450..5e105a75a0 100644
--- a/gtk/gtkstyleproperty.c
+++ b/gtk/gtkstyleproperty.c
@@ -1915,29 +1915,6 @@ resolve_shadow (GtkStyleProperties *props,
return TRUE;
}
-static gboolean
-resolve_border_image (GtkStyleProperties *props,
- GValue *value)
-{
- GtkBorderImage *resolved, *base;
-
- base = g_value_get_boxed (value);
-
- if (base == NULL)
- return FALSE;
-
- if (_gtk_border_image_get_resolved (base))
- return TRUE;
-
- resolved = _gtk_border_image_resolve (base, props);
- if (resolved == NULL)
- return FALSE;
-
- g_value_take_boxed (value, resolved);
-
- return TRUE;
-}
-
void
_gtk_style_property_resolve (const GtkStyleProperty *property,
GtkStyleProperties *props,
@@ -1970,11 +1947,6 @@ _gtk_style_property_resolve (const GtkStyleProperty *property,
if (!resolve_shadow (props, val))
_gtk_style_property_resolve (property, props, val);
}
- else if (G_VALUE_TYPE (val) == GTK_TYPE_BORDER_IMAGE)
- {
- if (!resolve_border_image (props, val))
- _gtk_style_property_resolve (property, props, val);
- }
}
gboolean