From: JengHyun Kang Date: Mon, 25 Apr 2016 09:05:46 +0000 (+0900) Subject: Add a new API to set key repeat X-Git-Tag: accepted/tizen/unified/20240109.155348~34 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;ds=sidebyside;h=73a8dae82f2fbb46396499e80f4f9212c775d18a;p=platform%2Fupstream%2Flibxkbcommon.git Add a new API to set key repeat Change-Id: If1644c4c6575b4eb7cadb8c1e11147651013d8ef --- diff --git a/include/xkbcommon/xkbcommon.h b/include/xkbcommon/xkbcommon.h index dbc39b9..2c1eb12 100644 --- a/include/xkbcommon/xkbcommon.h +++ b/include/xkbcommon/xkbcommon.h @@ -1304,6 +1304,10 @@ xkb_keymap_key_get_syms_by_level(struct xkb_keymap *keymap, int xkb_keymap_key_repeats(struct xkb_keymap *keymap, xkb_keycode_t key); +int +xkb_keymap_key_set_repeats(struct xkb_keymap *keymap, xkb_keycode_t kc, int enable); + + /** @} */ /** diff --git a/src/keymap.c b/src/keymap.c index 0291aed..5aed2a6 100644 --- a/src/keymap.c +++ b/src/keymap.c @@ -583,3 +583,17 @@ xkb_keymap_key_repeats(struct xkb_keymap *keymap, xkb_keycode_t kc) return key->repeats; } + +XKB_EXPORT int +xkb_keymap_key_set_repeats(struct xkb_keymap *keymap, xkb_keycode_t kc, int enable) +{ + struct xkb_key *key = XkbKey(keymap, kc); + + if (!key) + return 0; + + key->repeats = !!enable; + key->explicit |= EXPLICIT_REPEAT; + + return 1; +}