discomfitor pushed a commit to branch master.

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

commit 1f3e730964549def4f962eda2e9a2147da484e92
Author: Mike Blumenkrantz <zm...@osg.samsung.com>
Date:   Thu Sep 17 16:36:38 2015 -0400

    alias x11 pixmaps to parent windows during reparent
    
    failure to allow pixmaps/clients to be retrived by parent window will
    result in api users being greatly inconvenienced after a reparenting has
    occurred
---
 src/bin/e_comp_x.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c
index 72535c6..cc619ed 100644
--- a/src/bin/e_comp_x.c
+++ b/src/bin/e_comp_x.c
@@ -2996,6 +2996,7 @@ _e_comp_x_hook_client_pre_frame_assign(void *d 
EINA_UNUSED, E_Client *ec)
    if (!ec->internal)
      ecore_x_window_save_set_add(win);
    ecore_x_window_reparent(win, pwin, 0, 0);
+   e_pixmap_alias(ep, E_PIXMAP_TYPE_X, pwin);
 
    {
       unsigned int managed = 1;
@@ -4457,6 +4458,7 @@ _e_comp_x_hook_client_del(void *d EINA_UNUSED, E_Client 
*ec)
                ecore_x_window_reparent(win, e_comp->root,
                                        cd->initial_attributes.x,
                                        cd->initial_attributes.y);
+             e_pixmap_alias(NULL, E_PIXMAP_TYPE_X, pwin);
              if (!ec->internal)
                ecore_x_window_save_set_del(win);
           }

-- 


Reply via email to