summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@osg.samsung.com>2016-01-21 14:43:52 -0500
committerMike Blumenkrantz <zmike@osg.samsung.com>2016-02-02 13:36:08 -0500
commit69ebda1df83e151c9d247bf3aef486aec2bef5bd (patch)
tree53cbcfd50a928789434e71931ee6049c5bc6935d
parentf4c3d3eae80ca92fc445904fc2f6c11d6e295c6e (diff)
allow instant client mouse actions to persist until mouse up
if an action triggers on a window, the triggering mouse event should not be passed to the window. the only way to determine this is if the action object lives through the entire event
-rw-r--r--src/bin/e_client.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/src/bin/e_client.c b/src/bin/e_client.c
index 9100f474b..72353742d 100644
--- a/src/bin/e_client.c
+++ b/src/bin/e_client.c
@@ -2859,11 +2859,7 @@ e_client_mouse_down(E_Client *ec, int button, Evas_Point *output, E_Binding_Even
2859 if (ec->cur_mouse_action) 2859 if (ec->cur_mouse_action)
2860 { 2860 {
2861 did_act = EINA_TRUE; 2861 did_act = EINA_TRUE;
2862 if ((!ec->cur_mouse_action->func.end_mouse) && 2862 e_object_ref(E_OBJECT(ec->cur_mouse_action));
2863 (!ec->cur_mouse_action->func.end))
2864 ec->cur_mouse_action = NULL;
2865 if (ec->cur_mouse_action)
2866 e_object_ref(E_OBJECT(ec->cur_mouse_action));
2867 } 2863 }
2868 } 2864 }
2869 if ((!did_act) || (((pfocus == e_client_focused_get()) || (ec == e_client_focused_get())) && (ec->layer >= player))) 2865 if ((!did_act) || (((pfocus == e_client_focused_get()) || (ec == e_client_focused_get())) && (ec->layer >= player)))