summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@osg.samsung.com>2016-11-22 11:29:54 -0500
committerMike Blumenkrantz <zmike@osg.samsung.com>2016-11-22 11:33:50 -0500
commit37eb433a417a318838a00b84da51251c25401893 (patch)
treefe080cc60717f3e9ffc15bddc332f8bd20fba65f
parent7c38e4edb4d000d291f03eb682a692dcab053ffa (diff)
make fake mouse-out upon focus-out conditional on pending pointer warp
in the case where warping would not occur and a mouse-based focus policy was not in use, this would break mouse eventing on wayland when a window lost focus but the cursor remained inside the window ref 3e6d6b348fd856d161aab98f5024e2293c292bd9
-rw-r--r--src/bin/e_client.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/bin/e_client.c b/src/bin/e_client.c
index 6098d29af..361a5af65 100644
--- a/src/bin/e_client.c
+++ b/src/bin/e_client.c
@@ -3402,7 +3402,8 @@ e_client_focused_set(E_Client *ec)
3402 ec_unfocus->want_focus = ec_unfocus->focused = 0; 3402 ec_unfocus->want_focus = ec_unfocus->focused = 0;
3403 if (!e_object_is_del(E_OBJECT(ec_unfocus))) 3403 if (!e_object_is_del(E_OBJECT(ec_unfocus)))
3404 e_focus_event_focus_out(ec_unfocus); 3404 e_focus_event_focus_out(ec_unfocus);
3405 if (ec_unfocus->mouse.in && ec && (!e_client_util_is_popup(ec))) 3405 if (ec_unfocus->mouse.in && ec && (!e_client_util_is_popup(ec)) &&
3406 (e_config->focus_policy != E_FOCUS_CLICK) && e_config->pointer_slide)
3406 e_client_mouse_out(ec_unfocus, ec_unfocus->x - 1, ec_unfocus->y - 1); 3407 e_client_mouse_out(ec_unfocus, ec_unfocus->x - 1, ec_unfocus->y - 1);
3407 3408
3408 E_FREE_FUNC(ec_unfocus->raise_timer, ecore_timer_del); 3409 E_FREE_FUNC(ec_unfocus->raise_timer, ecore_timer_del);