discomfitor pushed a commit to branch enlightenment-0.19.

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

commit a416f96c12ea656552b3e0eb339c39199584fe82
Author: Mike Blumenkrantz <zm...@osg.samsung.com>
Date:   Mon Jun 29 15:28:41 2015 -0400

    check for possible parent window on x11 mouse button events
    
    in the case of different window <-> event_window, window is a child window
    of event_window, and thus checking event_window here is valid (and 
necessary)
---
 src/bin/e_comp_x.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c
index 30bd64a..4364cd7 100644
--- a/src/bin/e_comp_x.c
+++ b/src/bin/e_comp_x.c
@@ -2061,6 +2061,8 @@ _e_comp_x_mouse_up(void *d EINA_UNUSED, int t 
EINA_UNUSED, Ecore_Event_Mouse_But
    //else
      {
         ec = _e_comp_x_client_find_by_window(ev->window);
+        if ((!ec) && (ev->window != ev->event_window))
+          ec = _e_comp_x_client_find_by_window(ev->event_window);
         if (!ec)
           {
              if (e_client_comp_grabbed_get())
@@ -2087,6 +2089,8 @@ _e_comp_x_mouse_down(void *d EINA_UNUSED, int t 
EINA_UNUSED, Ecore_Event_Mouse_B
    //else
      {
         ec = _e_comp_x_client_find_by_window(ev->window);
+        if ((!ec) && (ev->window != ev->event_window))
+          ec = _e_comp_x_client_find_by_window(ev->event_window);
         if ((!ec) || e_client_util_ignored_get(ec)) return 
ECORE_CALLBACK_RENEW;
      }
    if (ec->comp_data->deleted) return ECORE_CALLBACK_RENEW;

-- 


Reply via email to