sdl2: use only QKeyCode in sdl2_process_key()

Also: sdl2_process_key is never called with scon == NULL.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-id: 20190122092814.14919-5-kraxel@redhat.com
This commit is contained in:
Gerd Hoffmann 2019-01-22 10:28:10 +01:00
parent 07333e1ca3
commit 06f894dbcc

View file

@ -34,20 +34,19 @@ void sdl2_process_key(struct sdl2_console *scon,
SDL_KeyboardEvent *ev) SDL_KeyboardEvent *ev)
{ {
int qcode; int qcode;
QemuConsole *con = scon ? scon->dcl.con : NULL; QemuConsole *con = scon->dcl.con;
if (ev->keysym.scancode >= qemu_input_map_usb_to_qcode_len) { if (ev->keysym.scancode >= qemu_input_map_usb_to_qcode_len) {
return; return;
} }
qcode = qemu_input_map_usb_to_qcode[ev->keysym.scancode]; qcode = qemu_input_map_usb_to_qcode[ev->keysym.scancode];
qkbd_state_key_event(scon->kbd, qcode, ev->type == SDL_KEYDOWN); qkbd_state_key_event(scon->kbd, qcode, ev->type == SDL_KEYDOWN);
if (!qemu_console_is_graphic(con)) { if (!qemu_console_is_graphic(con)) {
bool ctrl = qkbd_state_modifier_get(scon->kbd, QKBD_MOD_CTRL); bool ctrl = qkbd_state_modifier_get(scon->kbd, QKBD_MOD_CTRL);
if (ev->type == SDL_KEYDOWN) { if (ev->type == SDL_KEYDOWN) {
switch (ev->keysym.scancode) { switch (qcode) {
case SDL_SCANCODE_RETURN: case Q_KEY_CODE_RET:
kbd_put_keysym_console(con, '\n'); kbd_put_keysym_console(con, '\n');
break; break;
default: default: