summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@osg.samsung.com>2016-04-01 06:56:47 -0400
committerMike Blumenkrantz <zmike@osg.samsung.com>2016-04-01 06:56:47 -0400
commit7f20ff52c9b51f8dc5a9c2bdba52d2622d9759a8 (patch)
tree6e9a056df781a141330cd97189c95af76f76dddf
parentc70054174ed9814a9e6ffc83d64df952112958c7 (diff)
downloadenlightenment-7f20ff52c9b51f8dc5a9c2bdba52d2622d9759a8.tar.gz
reapply client focus after input grab, only handle focus for wayland compositors
this was looking too weird ref 4a73e9f29ac5a3bafdff8d05c2f544ab47d4000b
-rw-r--r--src/bin/e_comp.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/bin/e_comp.c b/src/bin/e_comp.c
index 79ffe83390..7c1fe65913 100644
--- a/src/bin/e_comp.c
+++ b/src/bin/e_comp.c
@@ -1653,11 +1653,22 @@ e_comp_grab_input(Eina_Bool mouse, Eina_Bool kbd)
if ((e_comp->input_mouse_grabs && e_comp->input_key_grabs) ||
e_grabinput_get(mwin, 0, kwin))
{
- if (e_client_focused_get())
- evas_object_focus_set(e_client_focused_get()->frame, 0);
+ E_Client *ec = e_client_focused_get();
+
+ if (e_comp->comp_type == E_PIXMAP_TYPE_WL)
+ {
+ if (ec)
+ evas_object_focus_set(ec->frame, 0);
+ }
+
ret = EINA_TRUE;
e_comp->input_mouse_grabs += mouse;
e_comp->input_key_grabs += kbd;
+ if (e_comp->comp_type == E_PIXMAP_TYPE_WL)
+ {
+ if (ec)
+ evas_object_focus_set(ec->frame, 1);
+ }
}
return ret;
}