From: jhyuni.kang Date: Thu, 7 May 2015 13:24:54 +0000 (-0400) Subject: Check a key repeat using xkb ruled keycode X-Git-Tag: v1.15.0-alpha1~674 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5c5f4580d2ed5208b4b8342aaa8d33e9d6953baa;p=platform%2Fupstream%2Fefl.git Check a key repeat using xkb ruled keycode Summary: ecore_wayland get a key information using libxkbcommon's functions. Also generate key repeat check xkb keymap's information using xkb_keymap_key_repeats(). But xkb rules reflect X broken keycodes, so offset by 8. In ecore_wayland backend, other xkb funtions using offset keycode but only use default keycode to check key repeat. So I fix it to use xkb ruled keycode. Test Plan: Long press a key and watch repeated key events generate well Reviewers: devilhorns, raster Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2475 --- diff --git a/src/lib/ecore_wayland/ecore_wl_input.c b/src/lib/ecore_wayland/ecore_wl_input.c old mode 100644 new mode 100755 index 1792d7f..b0297e9 --- a/src/lib/ecore_wayland/ecore_wl_input.c +++ b/src/lib/ecore_wayland/ecore_wl_input.c @@ -829,7 +829,7 @@ _ecore_wl_input_cb_keyboard_key(void *data, struct wl_keyboard *keyboard EINA_UN else ecore_event_add(ECORE_EVENT_KEY_UP, e, NULL, NULL); - if (!xkb_keymap_key_repeats(input->xkb.keymap, keycode)) return; + if (!xkb_keymap_key_repeats(input->xkb.keymap, code)) return; if ((!state) && (keycode == input->repeat.key)) {