discomfitor pushed a commit to branch enlightenment-0.21.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=543666790f7a6edef459416a7f842334e15244ad

commit 543666790f7a6edef459416a7f842334e15244ad
Author: Mike Blumenkrantz <[email protected]>
Date:   Fri Mar 17 18:47:09 2017 -0400

    account for late object setup when adding ssd mouse in/out callbacks
    
    internal windows have a different setup order in which the frame is created
    before any of the other internal objects in a comp object
---
 src/bin/e_comp_object.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c
index 24257b3..5224dc2 100644
--- a/src/bin/e_comp_object.c
+++ b/src/bin/e_comp_object.c
@@ -1761,6 +1761,12 @@ _e_comp_intercept_show(void *data, Evas_Object *obj 
EINA_UNUSED)
         evas_object_image_colorspace_set(cw->obj, EVAS_COLORSPACE_ARGB8888);
         _e_comp_object_alpha_set(cw);
 
+        if (cw->frame_object)
+          {
+             evas_object_event_callback_add(cw->obj, EVAS_CALLBACK_MOUSE_IN, 
_e_comp_object_ssd_mouse_in, cw);
+             evas_object_event_callback_add(cw->obj, EVAS_CALLBACK_MOUSE_OUT, 
_e_comp_object_ssd_mouse_out, cw);
+          }
+
 #ifdef BORDER_ZOOMAPS
         e_comp_object_zoomap_set(o, 1);
 #else
@@ -3437,7 +3443,7 @@ reshadow:
         evas_object_event_callback_del(cw->obj, EVAS_CALLBACK_MOUSE_IN, 
_e_comp_object_ssd_mouse_in);
         evas_object_event_callback_del(cw->obj, EVAS_CALLBACK_MOUSE_OUT, 
_e_comp_object_ssd_mouse_out);
      }
-   else
+   else if (cw->obj)
      {
         evas_object_event_callback_add(cw->obj, EVAS_CALLBACK_MOUSE_IN, 
_e_comp_object_ssd_mouse_in, cw);
         evas_object_event_callback_add(cw->obj, EVAS_CALLBACK_MOUSE_OUT, 
_e_comp_object_ssd_mouse_out, cw);

-- 


Reply via email to