Evas: Fixed textblock rendering to properly set render operation on context.
authorYoungbok Shin <youngb.shin@samsung.com>
Fri, 1 Nov 2013 02:09:58 +0000 (11:09 +0900)
committerCedric Bail <cedric.bail@samsung.com>
Fri, 1 Nov 2013 02:12:01 +0000 (11:12 +0900)
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>
ChangeLog
NEWS
src/lib/evas/canvas/evas_object_textblock.c

index c5042ad..9114991 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -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
diff --git a/NEWS b/NEWS
index 99ca54a..2b4f923 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -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.
index 0566f93..0c01a86 100644 (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,