From 7090b784165829dcf650cf8bf6950a51bbd25181 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@887 be3aeb3a-fb24-0410-a615-afba39da0efa --- platform/common/menu.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/platform/common/menu.c b/platform/common/menu.c index 691eda4c..35ab449c 100644 --- a/platform/common/menu.c +++ b/platform/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