aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/evas/canvas/evas_object_image.c
diff options
context:
space:
mode:
authorJean-Philippe Andre <jp.andre@samsung.com>2015-10-01 19:59:22 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2015-10-01 20:10:54 +0900
commit52e4bbda7b90271f1bafceb4263d68f45fedda2c (patch)
tree143eefe47cc137a0cd373601eba939cdbdac4f55 /src/lib/evas/canvas/evas_object_image.c
parentEdje: Fix invalid loading of snapshot parts (diff)
downloadefl-52e4bbda7b90271f1bafceb4263d68f45fedda2c.tar.gz
Evas filters: Fix handling of FILL for image filters
Note: Image filters still need a LOT of work to be usable.
Diffstat (limited to 'src/lib/evas/canvas/evas_object_image.c')
-rw-r--r--src/lib/evas/canvas/evas_object_image.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/lib/evas/canvas/evas_object_image.c b/src/lib/evas/canvas/evas_object_image.c
index 3fd09fcaa0..ee177c2929 100644
--- a/src/lib/evas/canvas/evas_object_image.c
+++ b/src/lib/evas/canvas/evas_object_image.c
@@ -159,7 +159,7 @@ static void evas_object_image_render(Evas_Object *eo_obj, Evas_Object_Protected_
int x, int y, Eina_Bool do_async);
static void _evas_image_render(Eo *eo_obj, Evas_Object_Protected_Data *obj,
void *output, void *context, void *surface,
- int x, int y, Eina_Bool do_async);
+ int x, int y, int l, int t, int r, int b, Eina_Bool do_async);
static void evas_object_image_free(Evas_Object *eo_obj,
Evas_Object_Protected_Data *obj);
static void evas_object_image_render_pre(Evas_Object *eo_obj,
@@ -3183,6 +3183,8 @@ _evas_image_evas_filter_input_render(Eo *eo_obj, Evas_Image_Data *o,
{
l = 0;
t = 0;
+ r = 0;
+ b = 0;
}
if (!surface)
@@ -3198,7 +3200,8 @@ _evas_image_evas_filter_input_render(Eo *eo_obj, Evas_Image_Data *o,
ENFN->context_render_op_set(output, context, EVAS_RENDER_BLEND);
_evas_image_render(eo_obj, obj, output, context, surface,
- l - obj->cur->geometry.x, t - obj->cur->geometry.y, do_async);
+ l - obj->cur->geometry.x, t - obj->cur->geometry.y,
+ l, t, r, b, do_async);
if (!input_stolen)
{
@@ -3280,12 +3283,13 @@ evas_object_image_render(Evas_Object *eo_obj, Evas_Object_Protected_Data *obj, v
return;
}
- _evas_image_render(eo_obj, obj, output, context, surface, x, y, do_async);
+ _evas_image_render(eo_obj, obj, output, context, surface, x, y, 0, 0, 0, 0, do_async);
}
static void
_evas_image_render(Eo *eo_obj, Evas_Object_Protected_Data *obj,
- void *output, void *context, void *surface, int x, int y, Eina_Bool do_async)
+ void *output, void *context, void *surface, int x, int y,
+ int l, int t, int r, int b, Eina_Bool do_async)
{
Evas_Image_Data *o = obj->private_data;
int imagew, imageh, uvw, uvh;
@@ -3358,7 +3362,6 @@ _evas_image_render(Eo *eo_obj, Evas_Object_Protected_Data *obj,
if (pixels)
{
Evas_Coord idw, idh, idx, idy;
- int l = 0, r = 0, t = 0, b = 0;
int ix, iy, iw, ih;
if ((obj->map->cur.map) && (obj->map->cur.map->count > 3) && (obj->map->cur.usemap))