Home | History | Annotate | Download | only in src

Lines Matching refs:keysym

4 /* This module converts keysym values into the corresponding ISO 10646
7 * The array keysymtab[] contains pairs of X11 keysym values for graphical
9 * keysym2ucs() maps a keysym onto a Unicode value using a binary search,
10 * therefore keysymtab[] must remain SORTED by keysym value.
12 * The keysym -> UTF-8 conversion will hopefully one day be provided
17 * U-00FFFFFF by a keysym value in the range 0x01000000 to 0x01ffffff.
22 * U+ABCD you can directly use keysym 0x0100abcd.
44 uint16_t keysym;
840 bin_search(const struct codepair *table, size_t length, xkb_keysym_t keysym)
845 if (keysym < table[0].keysym || keysym > table[length].keysym)
851 if (table[mid].keysym < keysym)
853 else if (table[mid].keysym > keysym)
864 xkb_keysym_to_utf32(xkb_keysym_t keysym)
867 if ((keysym >= 0x0020 && keysym <= 0x007e) ||
868 (keysym >= 0x00a0 && keysym <= 0x00ff))
869 return keysym;
872 if (keysym == XKB_KEY_KP_Space)
876 if ((keysym >= XKB_KEY_BackSpace && keysym <= XKB_KEY_Clear) ||
877 (keysym >= XKB_KEY_KP_Multiply && keysym <= XKB_KEY_KP_9) ||
878 keysym == XKB_KEY_Return || keysym == XKB_KEY_Escape ||
879 keysym == XKB_KEY_Delete || keysym == XKB_KEY_KP_Tab ||
880 keysym == XKB_KEY_KP_Enter || keysym == XKB_KEY_KP_Equal)
881 return keysym & 0x7f;
884 if ((keysym & 0xff000000) == 0x01000000)
885 return keysym & 0x00ffffff;
888 return bin_search(keysymtab, ARRAY_SIZE(keysymtab) - 1, keysym);
917 xkb_keysym_to_utf8(xkb_keysym_t keysym, char *buffer, size_t size)
924 codepoint = xkb_keysym_to_utf32(keysym);