discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=5e6831187a19989ed953e26526a2bf50750314b8

commit 5e6831187a19989ed953e26526a2bf50750314b8
Author: Mike Blumenkrantz <zm...@osg.samsung.com>
Date:   Thu Nov 19 15:17:19 2015 -0500

    always create compositor mirror objects, ignore pixmap image state
    
    checking pixmap image state in this case resulted in mirrors failing to
    be created in some cases when there was no reason to fail
    
    ref T2846
---
 src/bin/e_comp_object.c | 19 +++----------------
 1 file changed, 3 insertions(+), 16 deletions(-)

diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c
index 790c70d..b754cb8 100644
--- a/src/bin/e_comp_object.c
+++ b/src/bin/e_comp_object.c
@@ -3767,7 +3767,6 @@ e_comp_object_util_mirror_add(Evas_Object *obj)
    Evas_Object *o;
    int w, h;
    unsigned int *pix = NULL;
-   Eina_Bool argb = EINA_FALSE;
 
    SOFT_ENTRY(NULL);
 
@@ -3783,7 +3782,6 @@ e_comp_object_util_mirror_add(Evas_Object *obj)
         return o;
      }
    if ((!cw->ec) || (!e_pixmap_size_get(cw->ec->pixmap, &w, &h))) return NULL;
-   if ((!cw->native) && (!e_pixmap_image_exists(cw->ec->pixmap))) return NULL;
    o = evas_object_image_filled_add(evas_object_evas_get(obj));
    evas_object_image_colorspace_set(o, EVAS_COLORSPACE_ARGB8888);
    evas_object_image_smooth_scale_set(o, e_comp_config_get()->smooth_windows);
@@ -3798,10 +3796,7 @@ e_comp_object_util_mirror_add(Evas_Object *obj)
    evas_object_image_size_set(o, w, h);
 
    if (cw->ec->shaped)
-     {
-        if (!e_pixmap_image_exists(cw->ec->pixmap)) return o;
-        pix = evas_object_image_data_get(cw->obj, 0);
-     }
+     pix = evas_object_image_data_get(cw->obj, 0);
    else
      {
         if (cw->native)
@@ -3817,14 +3812,7 @@ e_comp_object_util_mirror_add(Evas_Object *obj)
                }
           }
         else
-          {
-             if (!e_pixmap_image_exists(cw->ec->pixmap)) return o;
-             argb = e_pixmap_image_is_argb(cw->ec->pixmap);
-             if (argb)
-               pix = e_pixmap_image_data_get(cw->ec->pixmap);
-             else
-               pix = evas_object_image_data_get(cw->obj, EINA_FALSE);
-          }
+          pix = evas_object_image_data_get(cw->obj, EINA_FALSE);
      }
    if (pix)
      {
@@ -3841,8 +3829,7 @@ e_comp_object_util_mirror_add(Evas_Object *obj)
       //evas_object_image_border_set(o, bx, by, bxx, byy);
       //evas_object_image_border_center_fill_set(o, EVAS_BORDER_FILL_SOLID);
       evas_object_image_data_set(o, pix);
-      if (!argb)
-        evas_object_image_data_set(cw->obj, pix);
+      evas_object_image_data_set(cw->obj, pix);
       if (dirty)
         evas_object_image_data_update_add(o, 0, 0, w, h);
    }

-- 


Reply via email to