Home | History | Annotate | Download | only in skin

Lines Matching refs:keyboard

12 #include "android/skin/keyboard.h"
32 ** implement the Unicode keyboard mode (SDL key up event always have
64 skin_keyboard_set_keyset( SkinKeyboard* keyboard, SkinKeyset* kset )
68 if (keyboard->kset && keyboard->kset != android_keyset) {
69 skin_keyset_free(keyboard->kset);
71 keyboard->kset = kset;
76 skin_keyboard_set_rotation( SkinKeyboard* keyboard,
79 keyboard->rotation = (rotation & 3);
83 skin_keyboard_on_command( SkinKeyboard* keyboard, SkinKeyCommandFunc cmd_func, void* cmd_opaque )
85 keyboard->command_func = cmd_func;
86 keyboard->command_opaque = cmd_opaque;
90 skin_keyboard_on_key_press( SkinKeyboard* keyboard, SkinKeyEventFunc press_func, void* press_opaque )
92 keyboard->press_func = press_func;
93 keyboard->press_opaque = press_opaque;
113 skin_keyboard_cmd( SkinKeyboard* keyboard,
117 if (keyboard->command_func) {
118 keyboard->command_func( keyboard->command_opaque, command, param );
124 skin_keyboard_find_last( SkinKeyboard* keyboard,
127 LastKey* k = keyboard->last_keys;
128 LastKey* end = k + keyboard->last_count;
138 skin_keyboard_add_last( SkinKeyboard* keyboard,
143 LastKey* k = keyboard->last_keys + keyboard->last_count;
145 if (keyboard->last_count < MAX_LAST_KEYS) {
150 keyboard->last_count += 1;
155 skin_keyboard_remove_last( SkinKeyboard* keyboard,
158 LastKey* k = keyboard->last_keys;
159 LastKey* end = k + keyboard->last_count;
167 keyboard->last_count -= 1;
174 skin_keyboard_clear_last( SkinKeyboard* keyboard )
176 keyboard->last_count = 0;
180 skin_keyboard_rotate_sym( SkinKeyboard* keyboard,
183 switch (keyboard->rotation) {
217 skin_keyboard_key_to_code( SkinKeyboard* keyboard,
228 sym = skin_keyboard_rotate_sym(keyboard, sym);
241 if (!keyboard->raw_keys) {
245 LastKey* k = skin_keyboard_find_last(keyboard, sym);
248 skin_keyboard_remove_last( keyboard, sym );
251 skin_keyboard_add_last( keyboard, sym, mod, 0);
260 if (doAltL) skin_keyboard_add_key_event( keyboard, kKeyCodeAltLeft, 1 );
261 if (doAltR) skin_keyboard_add_key_event( keyboard, kKeyCodeAltRight, 1 );
262 if (doCapL) skin_keyboard_add_key_event( keyboard, kKeyCodeCapLeft, 1 );
263 if (doCapR) skin_keyboard_add_key_event( keyboard, kKeyCodeCapRight, 1 );
265 skin_keyboard_add_key_event(keyboard, code, down);
268 if (doCapR) skin_keyboard_add_key_event( keyboard, kKeyCodeCapRight, 0 );
269 if (doCapL) skin_keyboard_add_key_event( keyboard, kKeyCodeCapLeft, 0 );
270 if (doAltR) skin_keyboard_add_key_event( keyboard, kKeyCodeAltRight, 0 );
271 if (doAltL) skin_keyboard_add_key_event( keyboard, kKeyCodeAltLeft, 0 );
303 command = skin_keyset_get_command( keyboard->kset, sym, mod );
307 skin_keyboard_cmd( keyboard, command, down );
366 /* these are qwerty keys not on a device keyboard */
414 skin_keyboard_enable( SkinKeyboard* keyboard,
417 keyboard->enabled = enabled;
419 SDL_EnableUNICODE(!keyboard->raw_keys);
439 /* first, try the keyboard-mode-independent keys */
460 D( "switching keyboard to %s mode", kb->raw_keys ? "raw" : "unicode" );
546 skin_keyboard_free( SkinKeyboard* keyboard )
548 if (keyboard) {
549 AFREE(keyboard);