From 15ddaa7f1929aa301a325b03c57e267524d56ea8 Mon Sep 17 00:00:00 2001
From: Nurahmadie <nurahmadie@gmail.com>
Date: Sat, 11 Mar 2017 20:52:52 +0700
Subject: [PATCH] Fix layer stuck, and add numpad support

---
 keyboards/handwired/kbod/config.h             |  5 +++++
 .../handwired/kbod/keymaps/default/keymap.c   | 20 +++++++++----------
 2 files changed, 15 insertions(+), 10 deletions(-)

diff --git a/keyboards/handwired/kbod/config.h b/keyboards/handwired/kbod/config.h
index e73b7d0865..f3d0c8bf2d 100644
--- a/keyboards/handwired/kbod/config.h
+++ b/keyboards/handwired/kbod/config.h
@@ -159,4 +159,9 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 //#define NO_ACTION_MACRO
 //#define NO_ACTION_FUNCTION
 
+#define PREVENT_STUCK_MODIFIERS
+
+#undef TAPPING_TOGGLE
+#define TAPPING_TOGGLE 2
+
 #endif
diff --git a/keyboards/handwired/kbod/keymaps/default/keymap.c b/keyboards/handwired/kbod/keymaps/default/keymap.c
index a6c09dd530..65c5f552c8 100644
--- a/keyboards/handwired/kbod/keymaps/default/keymap.c
+++ b/keyboards/handwired/kbod/keymaps/default/keymap.c
@@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
       KC_TAB,  KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLASH,
       KC_CAPS,  KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCOLON, KC_QUOT, KC_ENTER,
       KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMMA, KC_DOT, KC_SLASH, KC_RSFT,
-      MO(1), KC_LCTL, KC_LALT, KC_SPACE, KC_RALT, KC_RGUI, KC_APP, KC_RCTL 
+      TT(1), KC_LCTL, KC_LALT, KC_SPACE, KC_RALT, KC_RGUI, KC_APP, KC_RCTL 
   ),
   KEYMAP( /* Cursor layer */
       KC_GRAVE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
@@ -39,19 +39,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
       _____,  _____, _____, _____, _____, _____, _____, _____, KC_PGUP, KC_PGDN, KC_END, KC_UP,
       _____,  _____, _____, _____, _____, KC_LEFT, KC_DOWN, KC_RIGHT
   ),
-  KEYMAP( /* Multimedia layer */
-      TO(0),  _____, _____, _____, _____, _____, _____, _____, _____, _____, KC_AUDIO_MUTE, KC_AUDIO_VOL_DOWN, KC_AUDIO_VOL_UP, _____,
-      _____,  _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, KC_PSCR,
-      _____,  _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____,
-      _____,  _____, _____, _____, _____, _____, _____, _____, _____, KC_MS_BTN1, KC_MS_UP, KC_MS_BTN2,
+  KEYMAP( /* Keypad layer */
+      TO(0),  _____, _____, _____, _____, _____, _____, KC_P7, KC_P8, KC_P9, _____, KC_PMNS, KC_PPLS, _____,
+      _____,  _____, _____, _____, _____, _____, _____, KC_P4, KC_P5, KC_P6, _____, _____, _____, _____,
+      _____,  _____, _____, _____, _____, _____, _____, KC_P1, KC_P2, KC_P3, _____, _____, _____,
+      _____,  _____, _____, _____, _____, _____, _____, KC_P0, _____, KC_MS_BTN1, KC_MS_UP, KC_MS_BTN2,
       _____,  _____, _____, _____, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_MS_BTN3
   ),
   KEYMAP( /* Multimedia layer */
       TO(0),  _____, _____, _____, _____, _____, _____, _____, _____, _____, KC_AUDIO_MUTE, KC_AUDIO_VOL_DOWN, KC_AUDIO_VOL_UP, _____,
-      _____,  _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, KC_PSCR,
-      _____,  _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____,
-      _____,  _____, _____, _____, _____, _____, _____, _____, _____, KC_MS_BTN1, KC_MS_WH_UP, KC_MS_BTN2,
-      _____,  _____, _____, _____, KC_MS_WH_LEFT, KC_MS_WH_DOWN, KC_MS_WH_RIGHT, KC_MS_BTN3
+      _____,  _____, KC_WAKE, _____, _____, _____, _____, _____, _____, _____, KC_MSTP, KC_MPRV, KC_MNXT, _____,
+      _____,  _____, KC_SLEP, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____,
+      _____,  _____, KC_PWR, _____, _____, _____, _____, _____, _____, KC_MS_BTN1, KC_MS_WH_UP, KC_MS_BTN2,
+      _____,  _____, _____, KC_MPLY, KC_MS_WH_LEFT, KC_MS_WH_DOWN, KC_MS_WH_RIGHT, KC_MS_BTN3
   ),
 };