zmike pushed a commit to branch master.

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

commit 1b4ce987a7dc36ba8b6f5be54a2f41c30e29a2d5
Author: Mike Blumenkrantz <[email protected]>
Date:   Thu May 30 13:15:30 2019 -0400

    evas: enable setting any object as a clipper
    
    Summary:
    now that various other bugs related to clipping/masking/drawing have
    been fixed, this "just works"
    
    @feature
    
    Reviewers: Hermet, cedric
    
    Reviewed By: Hermet, cedric
    
    Subscribers: Hermet, cedric
    
    Tags: #efl
    
    Differential Revision: https://phab.enlightenment.org/D8852
---
 src/lib/evas/canvas/evas_clip.c | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/src/lib/evas/canvas/evas_clip.c b/src/lib/evas/canvas/evas_clip.c
index d455e80979..04206e5d91 100644
--- a/src/lib/evas/canvas/evas_clip.c
+++ b/src/lib/evas/canvas/evas_clip.c
@@ -232,7 +232,6 @@ _efl_canvas_object_clipper_set_block(Eo *eo_obj, 
Evas_Object_Protected_Data *obj
    if (obj->delete_me) goto err_obj_deleted;
    if (!obj->layer || !clip->layer) goto err_no_layer;
    if (obj->layer->evas != clip->layer->evas) goto err_diff_evas;
-   if ((clip->type != o_rect_type) && (clip->type != o_image_type)) goto 
err_type;
 
    return EINA_FALSE;
 
@@ -252,10 +251,6 @@ err_diff_evas:
    CRI("Setting object %p from Evas (%p) to another Evas (%p)",
        obj, obj->layer->evas, clip->layer->evas);
    return EINA_TRUE;
-err_type:
-   CRI("A clipper can only be an evas rectangle or image (got %s)",
-       efl_class_name_get(eo_clip));
-   return EINA_TRUE;
 }
 
 static inline void
@@ -344,8 +339,8 @@ _efl_canvas_object_clipper_set(Eo *eo_obj, 
Evas_Object_Protected_Data *obj, Evas
    /* unset cur clipper */
    _efl_canvas_object_clipper_unset_common(obj, EINA_TRUE);
 
-   /* image object clipper */
-   if (clip->type == o_image_type)
+   /* non-rect object clipper */
+   if (clip->type != o_rect_type)
      {
         EINA_COW_WRITE_BEGIN(evas_object_mask_cow, clip->mask, 
Evas_Object_Mask_Data, mask)
           mask->is_mask = EINA_TRUE;

-- 


Reply via email to