diff options
author | Cedric BAIL <cedric@osg.samsung.com> | 2017-08-25 10:52:29 -0700 |
---|---|---|
committer | Cedric BAIL <cedric@osg.samsung.com> | 2017-08-25 10:52:29 -0700 |
commit | a5b4defdd559089bf289d4f71a4b7f015c586af9 (patch) | |
tree | f25c4782855e1d2e41c8fc125f8de44f5b8de3ac /src/lib | |
parent | 84c6d3332e2243b6074c995c05c8b50e29cefb4d (diff) |
evas: use output instead of default one during rendering of proxy.
Diffstat (limited to '')
-rw-r--r-- | src/lib/evas/canvas/evas_filter_mixin.c | 2 | ||||
-rw-r--r-- | src/lib/evas/canvas/evas_object_image.c | 2 | ||||
-rw-r--r-- | src/lib/evas/canvas/evas_object_textblock.c | 2 | ||||
-rw-r--r-- | src/lib/evas/canvas/evas_render.c | 4 | ||||
-rw-r--r-- | src/lib/evas/filters/evas_filter.c | 4 | ||||
-rw-r--r-- | src/lib/evas/include/evas_filter.h | 2 | ||||
-rw-r--r-- | src/lib/evas/include/evas_private.h | 2 |
7 files changed, 9 insertions, 9 deletions
diff --git a/src/lib/evas/canvas/evas_filter_mixin.c b/src/lib/evas/canvas/evas_filter_mixin.c index 3f3292ec04..64574b3fd2 100644 --- a/src/lib/evas/canvas/evas_filter_mixin.c +++ b/src/lib/evas/canvas/evas_filter_mixin.c | |||
@@ -412,7 +412,7 @@ evas_filter_object_render(Eo *eo_obj, Evas_Object_Protected_Data *obj, | |||
412 | } | 412 | } |
413 | 413 | ||
414 | // Proxies | 414 | // Proxies |
415 | evas_filter_context_proxy_render_all(filter, eo_obj, EINA_FALSE); | 415 | evas_filter_context_proxy_render_all(filter, eo_obj, output, EINA_FALSE); |
416 | 416 | ||
417 | // Draw Context | 417 | // Draw Context |
418 | drawctx = ENFN->context_new(engine); | 418 | drawctx = ENFN->context_new(engine); |
diff --git a/src/lib/evas/canvas/evas_object_image.c b/src/lib/evas/canvas/evas_object_image.c index 9db54b42ec..6d23f1a212 100644 --- a/src/lib/evas/canvas/evas_object_image.c +++ b/src/lib/evas/canvas/evas_object_image.c | |||
@@ -2092,7 +2092,7 @@ _evas_image_pixels_get(Eo *eo_obj, Evas_Object_Protected_Data *obj, | |||
2092 | else | 2092 | else |
2093 | { | 2093 | { |
2094 | o->proxyrendering = EINA_TRUE; | 2094 | o->proxyrendering = EINA_TRUE; |
2095 | evas_render_proxy_subrender(obj->layer->evas->evas, o->cur->source, | 2095 | evas_render_proxy_subrender(obj->layer->evas->evas, output, o->cur->source, |
2096 | eo_obj, obj, o->proxy_src_clip, EINA_FALSE); | 2096 | eo_obj, obj, o->proxy_src_clip, EINA_FALSE); |
2097 | pixels = source->proxy->surface; | 2097 | pixels = source->proxy->surface; |
2098 | *imagew = source->proxy->w; | 2098 | *imagew = source->proxy->w; |
diff --git a/src/lib/evas/canvas/evas_object_textblock.c b/src/lib/evas/canvas/evas_object_textblock.c index 79abde8b94..ae0ab261af 100644 --- a/src/lib/evas/canvas/evas_object_textblock.c +++ b/src/lib/evas/canvas/evas_object_textblock.c | |||
@@ -13520,7 +13520,7 @@ evas_object_textblock_render(Evas_Object *eo_obj EINA_UNUSED, | |||
13520 | ENFN->context_multiplier_set(engine, context, | 13520 | ENFN->context_multiplier_set(engine, context, |
13521 | obj->cur->cache.clip.r, obj->cur->cache.clip.g, | 13521 | obj->cur->cache.clip.r, obj->cur->cache.clip.g, |
13522 | obj->cur->cache.clip.b, obj->cur->cache.clip.a); | 13522 | obj->cur->cache.clip.b, obj->cur->cache.clip.a); |
13523 | evas_filter_context_proxy_render_all(ctx, eo_obj, EINA_FALSE); | 13523 | evas_filter_context_proxy_render_all(ctx, eo_obj, output, EINA_FALSE); |
13524 | evas_filter_context_buffers_allocate_all(ctx); | 13524 | evas_filter_context_buffers_allocate_all(ctx); |
13525 | evas_filter_target_set(ctx, context, surface, target.x, target.y, NULL); | 13525 | evas_filter_target_set(ctx, context, surface, target.x, target.y, NULL); |
13526 | ti->gfx_filter->ctx = ctx; | 13526 | ti->gfx_filter->ctx = ctx; |
diff --git a/src/lib/evas/canvas/evas_render.c b/src/lib/evas/canvas/evas_render.c index 47d4efa025..f5485c4838 100644 --- a/src/lib/evas/canvas/evas_render.c +++ b/src/lib/evas/canvas/evas_render.c | |||
@@ -2309,7 +2309,7 @@ end: | |||
2309 | * TODO: 3d objects subrender should probably be merged here as well. | 2309 | * TODO: 3d objects subrender should probably be merged here as well. |
2310 | */ | 2310 | */ |
2311 | void | 2311 | void |
2312 | evas_render_proxy_subrender(Evas *eo_e, Evas_Object *eo_source, Evas_Object *eo_proxy, | 2312 | evas_render_proxy_subrender(Evas *eo_e, void *output, Evas_Object *eo_source, Evas_Object *eo_proxy, |
2313 | Evas_Object_Protected_Data *proxy_obj, | 2313 | Evas_Object_Protected_Data *proxy_obj, |
2314 | Eina_Bool source_clip, Eina_Bool do_async) | 2314 | Eina_Bool source_clip, Eina_Bool do_async) |
2315 | { | 2315 | { |
@@ -2363,7 +2363,7 @@ evas_render_proxy_subrender(Evas *eo_e, Evas_Object *eo_source, Evas_Object *eo_ | |||
2363 | ctx = ENFN->context_new(ENC); | 2363 | ctx = ENFN->context_new(ENC); |
2364 | ENFN->context_color_set(ENC, ctx, 0, 0,0, 0); | 2364 | ENFN->context_color_set(ENC, ctx, 0, 0,0, 0); |
2365 | ENFN->context_render_op_set(ENC, ctx, EVAS_RENDER_COPY); | 2365 | ENFN->context_render_op_set(ENC, ctx, EVAS_RENDER_COPY); |
2366 | ENFN->rectangle_draw(ENC, ENDT, ctx, proxy_write->surface, 0, 0, w, h, do_async); | 2366 | ENFN->rectangle_draw(ENC, output, ctx, proxy_write->surface, 0, 0, w, h, do_async); |
2367 | ENFN->context_free(ENC, ctx); | 2367 | ENFN->context_free(ENC, ctx); |
2368 | eina_evlog("-proxy_fill", eo_proxy, 0.0, NULL); | 2368 | eina_evlog("-proxy_fill", eo_proxy, 0.0, NULL); |
2369 | 2369 | ||
diff --git a/src/lib/evas/filters/evas_filter.c b/src/lib/evas/filters/evas_filter.c index e95296258b..0f0a835df7 100644 --- a/src/lib/evas/filters/evas_filter.c +++ b/src/lib/evas/filters/evas_filter.c | |||
@@ -118,7 +118,7 @@ _filter_buffer_backing_free(Evas_Filter_Buffer *fb) | |||
118 | 118 | ||
119 | /** @hidden private render proxy objects */ | 119 | /** @hidden private render proxy objects */ |
120 | void | 120 | void |
121 | evas_filter_context_proxy_render_all(Evas_Filter_Context *ctx, Eo *eo_obj, | 121 | evas_filter_context_proxy_render_all(Evas_Filter_Context *ctx, Eo *eo_obj, void *output, |
122 | Eina_Bool do_async) | 122 | Eina_Bool do_async) |
123 | { | 123 | { |
124 | Evas_Object_Protected_Data *source; | 124 | Evas_Object_Protected_Data *source; |
@@ -148,7 +148,7 @@ evas_filter_context_proxy_render_all(Evas_Filter_Context *ctx, Eo *eo_obj, | |||
148 | XDBG("Source needs to be rendered: '%s' of type '%s' (%s)", | 148 | XDBG("Source needs to be rendered: '%s' of type '%s' (%s)", |
149 | fb->source_name, efl_class_name_get(efl_class_get(fb->source)), | 149 | fb->source_name, efl_class_name_get(efl_class_get(fb->source)), |
150 | source->proxy->redraw ? "redraw" : "no surface"); | 150 | source->proxy->redraw ? "redraw" : "no surface"); |
151 | evas_render_proxy_subrender(ctx->evas->evas, fb->source, eo_obj, obj, EINA_FALSE, do_async); | 151 | evas_render_proxy_subrender(ctx->evas->evas, output, fb->source, eo_obj, obj, EINA_FALSE, do_async); |
152 | } | 152 | } |
153 | if (fb->buffer) | 153 | if (fb->buffer) |
154 | { | 154 | { |
diff --git a/src/lib/evas/include/evas_filter.h b/src/lib/evas/include/evas_filter.h index 175069c7a7..00b9bbf08c 100644 --- a/src/lib/evas/include/evas_filter.h +++ b/src/lib/evas/include/evas_filter.h | |||
@@ -152,7 +152,7 @@ Eina_Bool evas_filter_context_async_get(Evas_Filter_Context *ctx) | |||
152 | void evas_filter_context_size_get(Evas_Filter_Context *ctx, int *w, int *H); | 152 | void evas_filter_context_size_get(Evas_Filter_Context *ctx, int *w, int *H); |
153 | void evas_filter_context_destroy(Evas_Filter_Context *ctx); | 153 | void evas_filter_context_destroy(Evas_Filter_Context *ctx); |
154 | Eina_Bool evas_filter_context_program_use(void *engine, void *output, Evas_Filter_Context *ctx, Evas_Filter_Program *pgm, Eina_Bool reuse, int object_x, int object_y); | 154 | Eina_Bool evas_filter_context_program_use(void *engine, void *output, Evas_Filter_Context *ctx, Evas_Filter_Program *pgm, Eina_Bool reuse, int object_x, int object_y); |
155 | void evas_filter_context_proxy_render_all(Evas_Filter_Context *ctx, Eo *eo_obj, Eina_Bool do_async); | 155 | void evas_filter_context_proxy_render_all(Evas_Filter_Context *ctx, Eo *eo_obj, void *output, Eina_Bool do_async); |
156 | void evas_filter_context_post_run_callback_set(Evas_Filter_Context *ctx, Evas_Filter_Cb cb, void *data); | 156 | void evas_filter_context_post_run_callback_set(Evas_Filter_Context *ctx, Evas_Filter_Cb cb, void *data); |
157 | #define evas_filter_context_autodestroy(ctx) evas_filter_context_post_run_callback_set(ctx, ((Evas_Filter_Cb) evas_filter_context_destroy), ctx) | 157 | #define evas_filter_context_autodestroy(ctx) evas_filter_context_post_run_callback_set(ctx, ((Evas_Filter_Cb) evas_filter_context_destroy), ctx) |
158 | Eina_Bool evas_filter_context_buffers_allocate_all(Evas_Filter_Context *ctx); | 158 | Eina_Bool evas_filter_context_buffers_allocate_all(Evas_Filter_Context *ctx); |
diff --git a/src/lib/evas/include/evas_private.h b/src/lib/evas/include/evas_private.h index 5d40c32b5a..cf43529af9 100644 --- a/src/lib/evas/include/evas_private.h +++ b/src/lib/evas/include/evas_private.h | |||
@@ -2056,7 +2056,7 @@ Eina_Bool evas_render_mapped(Evas_Public_Data *e, Evas_Object *obj, | |||
2056 | int level, Eina_Bool do_async); | 2056 | int level, Eina_Bool do_async); |
2057 | void evas_render_invalidate(Evas *e); | 2057 | void evas_render_invalidate(Evas *e); |
2058 | void evas_render_object_recalc(Evas_Object_Protected_Data *obj); | 2058 | void evas_render_object_recalc(Evas_Object_Protected_Data *obj); |
2059 | void evas_render_proxy_subrender(Evas *eo_e, Evas_Object *eo_source, Evas_Object *eo_proxy, Evas_Object_Protected_Data *proxy_obj, Eina_Bool source_clip, Eina_Bool do_async); | 2059 | void evas_render_proxy_subrender(Evas *eo_e, void *output, Evas_Object *eo_source, Evas_Object *eo_proxy, Evas_Object_Protected_Data *proxy_obj, Eina_Bool source_clip, Eina_Bool do_async); |
2060 | void evas_render_mask_subrender(Evas_Public_Data *e, Evas_Object_Protected_Data *mask, Evas_Object_Protected_Data *prev_mask, int level, Eina_Bool do_async); | 2060 | void evas_render_mask_subrender(Evas_Public_Data *e, Evas_Object_Protected_Data *mask, Evas_Object_Protected_Data *prev_mask, int level, Eina_Bool do_async); |
2061 | 2061 | ||
2062 | Eina_Bool evas_map_inside_get(const Evas_Map *m, Evas_Coord x, Evas_Coord y); | 2062 | Eina_Bool evas_map_inside_get(const Evas_Map *m, Evas_Coord x, Evas_Coord y); |