discomfitor pushed a commit to branch master.

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

commit 14c038d7302172cbd20adc334592a65176204835
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 ea91632..4f1e922 100644
--- a/src/bin/e_comp_x.c
+++ b/src/bin/e_comp_x.c
@@ -2183,6 +2183,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())
@@ -2209,6 +2211,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 (_e_comp_x_client_data_get(ec)->deleted) return ECORE_CALLBACK_RENEW;

-- 


Reply via email to