39 static QString lookupString(
struct xkb_state *
state, xkb_keycode_t code);
40 static QString lookupStringNoKeysymTransformations(xkb_keysym_t
keysym);
44 static int keysymToQtKey(xkb_keysym_t
keysym, Qt::KeyboardModifiers
modifiers);
45 static int keysymToQtKey(xkb_keysym_t
keysym, Qt::KeyboardModifiers
modifiers,
46 xkb_state *
state, xkb_keycode_t code,
47 bool superAsMeta =
true,
bool hyperAsMeta =
true);
51 static void xkbcommon_XConvertCase(xkb_keysym_t sym, xkb_keysym_t *lower, xkb_keysym_t *upper);
52 static xkb_keysym_t qxkbcommon_xkb_keysym_to_upper(xkb_keysym_t ks);
54 static Qt::KeyboardModifiers
modifiers(
struct xkb_state *
state, xkb_keysym_t
keysym = XKB_KEY_VoidSymbol);
56 static QList<int> possibleKeys(xkb_state *
state,
57 const QKeyEvent *
event,
bool superAsMeta =
false,
bool hyperAsMeta =
false);
58 static QList<QKeyCombination> possibleKeyCombinations(xkb_state *
state,
59 const QKeyEvent *
event,
bool superAsMeta =
false,
bool hyperAsMeta =
false);
61 static void verifyHasLatinLayout(xkb_keymap *keymap);
62 static xkb_keysym_t lookupLatinKeysym(xkb_state *
state, xkb_keycode_t
keycode);
65 return sym >= 0x20 && sym <= 0xff;
69 case XKB_KEY_KP_Space:
71 case XKB_KEY_KP_Enter:
79 case XKB_KEY_KP_Right:
81 case XKB_KEY_KP_Prior:
84 case XKB_KEY_KP_Begin:
85 case XKB_KEY_KP_Insert:
86 case XKB_KEY_KP_Delete:
87 case XKB_KEY_KP_Equal:
88 case XKB_KEY_KP_Multiply:
90 case XKB_KEY_KP_Separator:
91 case XKB_KEY_KP_Subtract:
92 case XKB_KEY_KP_Decimal:
93 case XKB_KEY_KP_Divide:
116 void operator()(
struct xkb_keymap *keymap)
const {
return xkb_keymap_unref(keymap); }
void operator()(struct xkb_context *context) const