Evas: Fixed textblock rendering to properly set render operation on context.

Render operation are not well tested. It appears that it was never properly setted
on a textblock, this would lead to see it rendered with the render operation of another
object.

Test Plan:
Add some rectangle object with textblock object.
The textblock style should be set to "backing=on backing_color=#ffffffff".
Set render operation to some rectangle with "evas_object_render_op_set(rect, EVAS_RENDER_COPY)".
Check the textblock.

Reviewers: woohyun, cedric, raster

Reviewed By: cedric

CC: cedric

Differential Revision: https://phab.enlightenment.org/D277

Signed-off-by: Cedric Bail <cedric.bail@samsung.com>
This commit is contained in:
Youngbok Shin 2013-11-01 11:09:58 +09:00 committed by Cedric Bail
parent 3973ecf2e8
commit cdb86e34bb
3 changed files with 6 additions and 0 deletions

View File

@ -1,6 +1,10 @@
2013-10-24 Sung W. Park (sung_)
* EvasGL: Fixed direct rendering mode not clipping to its clip region.
2013-10-24 Youngbok Shin
* Evas: Fix textblock rendering to properly set render operation on the context.
2013-10-18 Youngbok Shin
* Fixed the textblock format to be drawn according to

1
NEWS
View File

@ -358,6 +358,7 @@ Fixes:
- Evas textblock: fixed an issue with markup_get and markup_to_utf8 behaving differently (markup_get was misbehaving).
- Fixed the map surface to be updated properly. By tranversing the whole of the map target's tree, it decides to update the map surface to be redrawn if one of the objects is changed except the clipper itself.
- Fixed the textblock format to be drawn according to the glyph's horizontal advance width.
- Fixed the textblock set to context with the textblock object's render operation.
* Ecore:
- Don't leak fd on exec.

View File

@ -10726,6 +10726,7 @@ evas_object_textblock_render(Evas_Object *eo_obj EINA_UNUSED,
/* render object to surface with context, and offxet by x,y */
obj->layer->evas->engine.func->context_multiplier_unset(output,
context);
ENFN->context_render_op_set(output, context, obj->cur->render_op);
/* FIXME: This clipping is just until we fix inset handling correctly. */
ENFN->context_clip_clip(output, context,
obj->cur->geometry.x + x,