theme: Use cairo for drawing uncolorized IMAGEs
https://bugzilla.gnome.org/show_bug.cgi?id=662962
This commit is contained in:
parent
23f086da8a
commit
7e12000d97
@ -3813,17 +3813,25 @@ meta_draw_op_draw_with_env (const MetaDrawOp *op,
|
|||||||
env->object_height = gdk_pixbuf_get_height (op->data.image.pixbuf);
|
env->object_height = gdk_pixbuf_get_height (op->data.image.pixbuf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
rx = parse_x_position_unchecked (op->data.image.x, env);
|
||||||
|
ry = parse_y_position_unchecked (op->data.image.y, env);
|
||||||
|
|
||||||
rwidth = parse_size_unchecked (op->data.image.width, env);
|
rwidth = parse_size_unchecked (op->data.image.width, env);
|
||||||
rheight = parse_size_unchecked (op->data.image.height, env);
|
rheight = parse_size_unchecked (op->data.image.height, env);
|
||||||
|
|
||||||
|
if (op->data.image.colorize_spec == NULL)
|
||||||
|
{
|
||||||
|
draw_image (cr,
|
||||||
|
op->data.image.pixbuf,
|
||||||
|
op->data.image.fill_type,
|
||||||
|
op->data.image.alpha_spec,
|
||||||
|
rx, ry, rwidth, rheight);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
pixbuf = draw_op_as_pixbuf (op, style_gtk, info,
|
pixbuf = draw_op_as_pixbuf (op, style_gtk, info,
|
||||||
rwidth, rheight);
|
rwidth, rheight);
|
||||||
|
|
||||||
if (pixbuf)
|
|
||||||
{
|
|
||||||
rx = parse_x_position_unchecked (op->data.image.x, env);
|
|
||||||
ry = parse_y_position_unchecked (op->data.image.y, env);
|
|
||||||
|
|
||||||
gdk_cairo_set_source_pixbuf (cr, pixbuf, rx, ry);
|
gdk_cairo_set_source_pixbuf (cr, pixbuf, rx, ry);
|
||||||
|
|
||||||
if (op->data.image.alpha_spec)
|
if (op->data.image.alpha_spec)
|
||||||
|
Loading…
Reference in New Issue
Block a user