From ec54eeef35b7f889f140df082aad1c6d3334826e Mon Sep 17 00:00:00 2001 From: notaz Date: Mon, 6 Sep 2010 19:31:23 +0000 Subject: [PATCH] input: unbind old keys when new one is bound git-svn-id: file:///home/notaz/opt/svn/PicoDrive/platform@887 be3aeb3a-fb24-0410-a615-afba39da0efa --- common/menu.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/common/menu.c b/common/menu.c index 691eda4..35ab449 100644 --- a/common/menu.c +++ b/common/menu.c @@ -1359,11 +1359,13 @@ static void key_config_loop(const me_bind_action *opts, int opt_cnt, int player_ break; } continue; - case PBTN_MBACK: return; + case PBTN_MBACK: + return; case PBTN_MOK: if (sel >= opt_cnt) return; - while (in_menu_wait_any(30) & PBTN_MOK); + while (in_menu_wait_any(30) & PBTN_MOK) + ; break; case PBTN_MA2: in_unbind_all(dev_id, opts[sel].mask << mask_shift, bindtype); @@ -1385,7 +1387,10 @@ static void key_config_loop(const me_bind_action *opts, int opt_cnt, int player_ in_get_dev_info(dev_id, IN_INFO_DOES_COMBOS)) unbind = 0; - in_bind_key(dev_id, kc, opts[sel].mask << mask_shift, bindtype, unbind); + if (unbind) + in_unbind_all(dev_id, opts[sel].mask << mask_shift, bindtype); + + in_bind_key(dev_id, kc, opts[sel].mask << mask_shift, bindtype, 0); } } -- 2.39.5