ecore-wl2: Don't check twice if a key repeats and also fix issue of
authorChris Michael <cp.michael@samsung.com>
Wed, 7 Oct 2015 13:51:19 +0000 (09:51 -0400)
committerChris Michael <cp.michael@samsung.com>
Thu, 3 Dec 2015 17:02:40 +0000 (12:02 -0500)
repeating keys getting delayed

Signed-off-by: Chris Michael <cp.michael@samsung.com>
src/lib/ecore_wl2/ecore_wl2_input.c

index 711d249..1b5195e 100644 (file)
@@ -818,8 +818,7 @@ _keyboard_cb_key(void *data, struct wl_keyboard *keyboard EINA_UNUSED, unsigned
         if (input->repeat.timer) ecore_timer_del(input->repeat.timer);
         input->repeat.timer = NULL;
      }
-   else if ((state == WL_KEYBOARD_KEY_STATE_PRESSED) &&
-            (xkb_keymap_key_repeats(input->xkb.keymap, code)))
+   else if (state == WL_KEYBOARD_KEY_STATE_PRESSED)
      {
         /* don't setup key repeat timer if not enabled */
         if (!input->repeat.enabled) return;
@@ -832,9 +831,8 @@ _keyboard_cb_key(void *data, struct wl_keyboard *keyboard EINA_UNUSED, unsigned
           {
              input->repeat.timer =
                ecore_timer_add(input->repeat.rate, _keyboard_cb_repeat, input);
+             ecore_timer_delay(input->repeat.timer, input->repeat.delay);
           }
-
-        ecore_timer_delay(input->repeat.timer, input->repeat.delay);
      }
 }