From 5c5f4580d2ed5208b4b8342aaa8d33e9d6953baa Mon Sep 17 00:00:00 2001 From: "jhyuni.kang" Date: Thu, 7 May 2015 09:24:54 -0400 Subject: [PATCH] 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 --- src/lib/ecore_wayland/ecore_wl_input.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) mode change 100644 => 100755 src/lib/ecore_wayland/ecore_wl_input.c 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)) { -- 2.7.4