input: unbind old keys when new one is bound
authornotaz <notasas@gmail.com>
Mon, 6 Sep 2010 19:31:23 +0000 (19:31 +0000)
committernotaz <notasas@gmail.com>
Mon, 6 Sep 2010 19:31:23 +0000 (19:31 +0000)
git-svn-id: file:///home/notaz/opt/svn/PicoDrive@887 be3aeb3a-fb24-0410-a615-afba39da0efa

platform/common/menu.c

index 691eda4..35ab449 100644 (file)
@@ -1359,11 +1359,13 @@ static void key_config_loop(const me_bind_action *opts, int opt_cnt, int player_
                                                break;\r
                                }\r
                                continue;\r
-                       case PBTN_MBACK: return;\r
+                       case PBTN_MBACK:\r
+                               return;\r
                        case PBTN_MOK:\r
                                if (sel >= opt_cnt)\r
                                        return;\r
-                               while (in_menu_wait_any(30) & PBTN_MOK);\r
+                               while (in_menu_wait_any(30) & PBTN_MOK)\r
+                                       ;\r
                                break;\r
                        case PBTN_MA2:\r
                                in_unbind_all(dev_id, opts[sel].mask << mask_shift, bindtype);\r
@@ -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))\r
                        unbind = 0;\r
 \r
-               in_bind_key(dev_id, kc, opts[sel].mask << mask_shift, bindtype, unbind);\r
+               if (unbind)\r
+                       in_unbind_all(dev_id, opts[sel].mask << mask_shift, bindtype);\r
+\r
+               in_bind_key(dev_id, kc, opts[sel].mask << mask_shift, bindtype, 0);\r
        }\r
 }\r
 \r