From f478438f01e081514f255ce67f7b75935ee7b51a Mon Sep 17 00:00:00 2001 From: Pete Johanson Date: Mon, 18 May 2020 13:42:41 -0400 Subject: Implement raise/lower for default keymap. * Properly allow includes for keymaps to allow defining custom keycodes, and then adding them to the keymap.overlay file. * Fix keymap.c loading after build refactor. * Fix for deactivating a layer working properly. * Fix default keymap to put transparent in proper spots to make raise/lower keycodes work as expected. * Add custom raise/lower keycode handling to default keymap. --- .../keymaps/default/include/keymap.h | 5 ++++ .../petejohanson_handwire/keymaps/default/keymap.c | 27 ++++++++++++++++++++++ .../keymaps/default/keymap.overlay | 13 ++++++----- 3 files changed, 39 insertions(+), 6 deletions(-) create mode 100644 boards/shields/petejohanson_handwire/keymaps/default/include/keymap.h (limited to 'boards') diff --git a/boards/shields/petejohanson_handwire/keymaps/default/include/keymap.h b/boards/shields/petejohanson_handwire/keymaps/default/include/keymap.h new file mode 100644 index 0000000..01cd9e5 --- /dev/null +++ b/boards/shields/petejohanson_handwire/keymaps/default/include/keymap.h @@ -0,0 +1,5 @@ + +#include + +#define CC_RAIS ZC_CSTM(1) +#define CC_LOWR ZC_CSTM(2) \ No newline at end of file diff --git a/boards/shields/petejohanson_handwire/keymaps/default/keymap.c b/boards/shields/petejohanson_handwire/keymaps/default/keymap.c index 349d755..067cd08 100644 --- a/boards/shields/petejohanson_handwire/keymaps/default/keymap.c +++ b/boards/shields/petejohanson_handwire/keymaps/default/keymap.c @@ -1,7 +1,34 @@ #include +#include +#include bool zmk_handle_key_user(struct zmk_key_event *key_event) { + switch (key_event->key) + { + case CC_LOWR: + if (key_event->pressed) + { + zmk_keymap_layer_activate(1); + } + else + { + zmk_keymap_layer_deactivate(1); + } + + return false; + case CC_RAIS: + if (key_event->pressed) + { + zmk_keymap_layer_activate(2); + } + else + { + zmk_keymap_layer_deactivate(2); + } + return false; + } + return true; }; diff --git a/boards/shields/petejohanson_handwire/keymaps/default/keymap.overlay b/boards/shields/petejohanson_handwire/keymaps/default/keymap.overlay index 9e7d3d8..ccc4230 100644 --- a/boards/shields/petejohanson_handwire/keymaps/default/keymap.overlay +++ b/boards/shields/petejohanson_handwire/keymaps/default/keymap.overlay @@ -1,4 +1,5 @@ #include +#include / { chosen { @@ -14,22 +15,22 @@ compatible = "zmk,layers"; default: layer_0 { - label = "Default"; + label = "DEFAULT"; keys = < KC_A KC_B - KC_C ZC_CSTM(1) + CC_RAIS CC_LOWR >; }; lower: layer_1 { - label = "Lower"; - keys = ; + label = "LOWER"; + keys = ; }; raise: layer_2 { - label = "Raise"; - keys = ; + label = "RAISE"; + keys = ; }; }; }; -- cgit v1.2.3