native,dev,input: receive repeated keys

This commit is contained in:
Zihao Yu 2019-02-07 23:59:14 +08:00
parent a9b1d441ec
commit be897c1bcc
1 changed files with 7 additions and 9 deletions

View File

@ -25,15 +25,13 @@ static int event_thread(void *args) {
{
SDL_Keysym k = event.key.keysym;
int keydown = event.key.type == SDL_KEYDOWN;
if (event.key.repeat == 0) {
int scancode = k.scancode;
if (keymap[scancode] != 0) {
int am_code = keymap[scancode] | (keydown ? KEYDOWN_MASK : 0);
SDL_LockMutex(key_queue_lock);
key_queue[key_r] = am_code;
key_r = (key_r + 1) % KEY_QUEUE_LEN;
SDL_UnlockMutex(key_queue_lock);
}
int scancode = k.scancode;
if (keymap[scancode] != 0) {
int am_code = keymap[scancode] | (keydown ? KEYDOWN_MASK : 0);
SDL_LockMutex(key_queue_lock);
key_queue[key_r] = am_code;
key_r = (key_r + 1) % KEY_QUEUE_LEN;
SDL_UnlockMutex(key_queue_lock);
}
}
break;