discomfitor pushed a commit to branch master.

commit c93467177aeeeddcbc185ce0b251763b9c9f056c
Author: Mike Blumenkrantz <[email protected]>
Date:   Wed Aug 21 07:17:33 2013 +0100

    another ecore-x instance in wl_desktop_shell
---
 src/modules/wl_desktop_shell/e_mod_main.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/modules/wl_desktop_shell/e_mod_main.c 
b/src/modules/wl_desktop_shell/e_mod_main.c
index 5015398..d41a4d5 100644
--- a/src/modules/wl_desktop_shell/e_mod_main.c
+++ b/src/modules/wl_desktop_shell/e_mod_main.c
@@ -1383,6 +1383,7 @@ _e_wl_shell_shell_surface_cb_key_up(void *data, 
Evas_Object *obj EINA_UNUSED, vo
    struct wl_keyboard_grab *grab;
    unsigned int key = 0, *end, *k;
    unsigned int serial = 0;
+   xkb_keysym_t sym = XKB_KEY_NoSymbol;
 
    ev = event;
 
@@ -1399,7 +1400,11 @@ _e_wl_shell_shell_surface_cb_key_up(void *data, 
Evas_Object *obj EINA_UNUSED, vo
    if (kbd->focus != ews->wl.surface) return;
 
    /* get the keycode for this key from X */
-   key = ecore_x_keysym_keycode_get(ev->keyname) - 8;
+   sym = xkb_keysym_from_name(ev->keyname, 0);
+   if (!sym) 
+     sym = xkb_keysym_from_name(ev->keyname, XKB_KEYSYM_CASE_INSENSITIVE);
+
+   key = sym - 8;
 
    end = (kbd->keys.data + kbd->keys.size);
    for (k = kbd->keys.data; k < end; k++)

-- 

------------------------------------------------------------------------------
Introducing Performance Central, a new site from SourceForge and 
AppDynamics. Performance Central is your source for news, insights, 
analysis and resources for efficient Application Performance Management. 
Visit us today!
http://pubads.g.doubleclick.net/gampad/clk?id=48897511&iu=/4140/ostg.clktrk

Reply via email to