From: Dan Nicholson Date: Sat, 28 Mar 2009 22:51:06 +0000 (-0700) Subject: Add xkbcommon macro for XkbKSIsKeypad and XkbKSIsDeadKey(k) X-Git-Tag: accepted/2.0alpha-wayland/20121109.204519~472 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=28de09e51564f32fe96924889b32d08808b12677;p=profile%2Fivi%2Flibxkbcommon.git Add xkbcommon macro for XkbKSIsKeypad and XkbKSIsDeadKey(k) IsKeypad is used in symbols, but we'll just grab them both. It might be better to split parts of XKBfile.h out eventually. --- diff --git a/include/X11/extensions/XKBcommon.h b/include/X11/extensions/XKBcommon.h index b207219..3e6852a 100644 --- a/include/X11/extensions/XKBcommon.h +++ b/include/X11/extensions/XKBcommon.h @@ -52,6 +52,11 @@ typedef struct _XkbcDesc { XkbGeometryPtr geom; } XkbcDescRec, *XkbcDescPtr; +#define XkbcKSIsKeypad(k) \ + (((k) >= XK_KP_Space) && ((k) <= XK_KP_Equal)) +#define XkbcKSIsDeadKey(k) \ + (((k) >= XK_dead_grave) && ((k) <= XK_dead_semivoiced_sound)) + _XFUNCPROTOBEGIN extern char * diff --git a/src/xkbcomp/symbols.c b/src/xkbcomp/symbols.c index f8d8ddf..f200a5c 100644 --- a/src/xkbcomp/symbols.c +++ b/src/xkbcomp/symbols.c @@ -1802,7 +1802,7 @@ FindAutomaticType(int width, KeySym * syms, Atom * typeNameRtrn, { *typeNameRtrn = XkbcInternAtom("ALPHABETIC", False); } - else if (syms && (XkbKSIsKeypad(syms[0]) || XkbKSIsKeypad(syms[1]))) + else if (syms && (XkbcKSIsKeypad(syms[0]) || XkbcKSIsKeypad(syms[1]))) { *typeNameRtrn = XkbcInternAtom("KEYPAD", False); *autoType = True; @@ -1823,7 +1823,7 @@ FindAutomaticType(int width, KeySym * syms, Atom * typeNameRtrn, *typeNameRtrn = XkbcInternAtom("FOUR_LEVEL_SEMIALPHABETIC", False); - else if (syms && (XkbKSIsKeypad(syms[0]) || XkbKSIsKeypad(syms[1]))) + else if (syms && (XkbcKSIsKeypad(syms[0]) || XkbcKSIsKeypad(syms[1]))) *typeNameRtrn = XkbcInternAtom("FOUR_LEVEL_KEYPAD", False); else *typeNameRtrn = XkbcInternAtom("FOUR_LEVEL", False);