hermet pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=1dc6ccfba0ee33b8b09d66d139d768f0688c6ee1

commit 1dc6ccfba0ee33b8b09d66d139d768f0688c6ee1
Author: Shinwoo Kim <cinoo....@samsung.com>
Date:   Fri Jan 31 18:31:08 2020 +0900

    Efl.Canvas.Group: make mask filter work on GL engine
    
    Summary:
    The _gl_filter_mask defines value of gc->dc->clip.mask, and make_color but
    those are not used at all, because the evas_gl_common_Filter_blend_push 
calls
    evas_gl_common_context_image_push which doesn't care of those values.
    
    So this patch is using evas_gl_common_image_draw to use mask and mask_color.
    
    Test Plan:
    [Filter Program]
    efl_gfx_filter_program_set(text,
         "buffer:a(alpha); buffer:fat(alpha); buffer:rgbfat(rgba);
          curve (0:255-255:0, dst = a); blend (a, color = #00ca00ff);
          grow (1, dst = fat); blur (3, src = fat, color=#0000b9ff, ox = -2, oy 
= -2, dst = rgbfat);
          mask (a, src = rgbfat);padding_set(t=5);",
         "name");
    
    [Before]
    {F3835430}
    
    [After]
    {F3835431}
    
    Reviewers: Hermet, jsuya
    
    Reviewed By: Hermet
    
    Subscribers: cedric, #reviewers, #committers
    
    Tags: #efl
    
    Differential Revision: https://phab.enlightenment.org/D11139
---
 src/modules/evas/engines/gl_generic/filters/gl_filter_mask.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/modules/evas/engines/gl_generic/filters/gl_filter_mask.c 
b/src/modules/evas/engines/gl_generic/filters/gl_filter_mask.c
index 755dedb04a..36aaa39d78 100644
--- a/src/modules/evas/engines/gl_generic/filters/gl_filter_mask.c
+++ b/src/modules/evas/engines/gl_generic/filters/gl_filter_mask.c
@@ -50,8 +50,8 @@ _gl_filter_mask(Render_Engine_GL_Generic *re, 
Evas_Filter_Command *cmd)
           gc->dc->clip.mask_x = x;
           gc->dc->clip.mask_y = y;
 
-          evas_gl_common_filter_blend_push(gc, image->tex, x, y, sw, sh, x, y, 
sw, sh,
-                                           cmd->draw.alphaonly);
+          evas_gl_common_image_draw(gc, image, x, y, sw, sh,
+                                    x, y, sw, sh, EINA_TRUE);
        }
 
    evas_gl_common_image_free(use_mask);

-- 


Reply via email to