discomfitor pushed a commit to branch master.

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

commit 8c7364b682e5eb1732404ce3a6194fd09a874269
Author: Derek Foreman <der...@osg.samsung.com>
Date:   Fri Mar 6 18:55:39 2015 -0500

    Don't update xkbstate when no app has focus
    
    Summary:
    We still update the keyboard array.  focus_in adds everything in the
    array to xkbstate anyway, so adding it when there's no focus results
    in a double update of state and potentially stuck modifiers.
    
    Reviewers: zmike, devilhorns
    
    Subscribers: cedric
    
    Differential Revision: https://phab.enlightenment.org/D2111
---
 src/bin/e_comp_wl.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c
index 88b0b9f..c4fa5d5 100644
--- a/src/bin/e_comp_wl.c
+++ b/src/bin/e_comp_wl.c
@@ -809,11 +809,11 @@ _e_comp_wl_cb_key_down(void *event)
    k = wl_array_add(&cdata->kbd.keys, sizeof(*k));
    *k = keycode;
 
-   /* update modifier state */
-   e_comp_wl_input_keyboard_state_update(cdata, keycode, EINA_TRUE);
-
    if ((ec = e_client_focused_get()))
      {
+        /* update modifier state */
+        e_comp_wl_input_keyboard_state_update(cdata, keycode, EINA_TRUE);
+
         if (ec->comp_data->surface)
           {
              struct wl_client *wc;

-- 


Reply via email to