From fffe1d099cf5c86d4f134d78ee2ffb4bbdbe24a1 Mon Sep 17 00:00:00 2001 From: dalter <dalterus@gmail.com> Date: Sun, 31 Jul 2016 17:56:40 +0300 Subject: [PATCH] Fix imput in RetroArch menu --- input/drivers/rwebinput_input.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/input/drivers/rwebinput_input.c b/input/drivers/rwebinput_input.c index ac7139facd..7f07705e16 100644 --- a/input/drivers/rwebinput_input.c +++ b/input/drivers/rwebinput_input.c @@ -67,20 +67,19 @@ error: return NULL; } -static bool rwebinput_key_pressed(void *data, int key) +static bool rwebinput_key_pressed__(void *data, int key) { unsigned sym; + bool ret; rwebinput_input_t *rwebinput = (rwebinput_input_t*)data; if (key >= RETROK_LAST) return false; sym = input_keymaps_translate_rk_to_keysym((enum retro_key)key); + ret = rwebinput->state.keys[sym >> 3] & (1 << (sym & 7)); - if (rwebinput->state.keys[sym >> 3] & (1 << (sym & 7))) - return true; - - return false; + return ret; } static bool rwebinput_meta_key_pressed(void *data, int key) @@ -96,12 +95,18 @@ static bool rwebinput_is_pressed(rwebinput_input_t *rwebinput, if (id < RARCH_BIND_LIST_END) { const struct retro_keybind *bind = &binds[id]; - return bind->valid && rwebinput_key_pressed(rwebinput, binds[id].key); + return bind->valid && rwebinput_key_pressed__(rwebinput, binds[id].key); } return false; } +static bool rwebinput_key_pressed(void *data, int key) +{ + rwebinput_input_t *rwebinput = (rwebinput_input_t*)data; + settings_t *settings = config_get_ptr(); + return rwebinput_is_pressed(rwebinput, settings->input.binds[0], key); +} static int16_t rwebinput_mouse_state(rwebinput_input_t *rwebinput, unsigned id) { switch (id)