From fe6f707a856044c754911b6b742f5518b3caaa22 Mon Sep 17 00:00:00 2001 From: adophoxia <100170946+adophoxia@users.noreply.github.com> Date: Wed, 5 Oct 2022 10:42:21 -0700 Subject: [Keyboard] Add encoder map support for GMMK Pro (#18600) --- keyboards/gmmk/pro/rev1/ansi/keymaps/default/keymap.c | 16 ++++++---------- keyboards/gmmk/pro/rev1/ansi/keymaps/default/rules.mk | 1 + keyboards/gmmk/pro/rev1/ansi/keymaps/via/keymap.c | 18 ++++++++---------- keyboards/gmmk/pro/rev1/ansi/keymaps/via/rules.mk | 1 + keyboards/gmmk/pro/rev1/iso/keymaps/default/keymap.c | 14 +++++--------- keyboards/gmmk/pro/rev1/iso/keymaps/default/rules.mk | 1 + keyboards/gmmk/pro/rev1/iso/keymaps/via/keymap.c | 18 ++++++++---------- keyboards/gmmk/pro/rev1/iso/keymaps/via/rules.mk | 1 + keyboards/gmmk/pro/rev2/ansi/keymaps/default/keymap.c | 16 ++++++---------- keyboards/gmmk/pro/rev2/ansi/keymaps/default/rules.mk | 1 + keyboards/gmmk/pro/rev2/iso/keymaps/default/keymap.c | 14 +++++--------- keyboards/gmmk/pro/rev2/iso/keymaps/default/rules.mk | 1 + 12 files changed, 44 insertions(+), 58 deletions(-) create mode 100644 keyboards/gmmk/pro/rev1/ansi/keymaps/default/rules.mk create mode 100644 keyboards/gmmk/pro/rev1/iso/keymaps/default/rules.mk create mode 100644 keyboards/gmmk/pro/rev2/ansi/keymaps/default/rules.mk create mode 100644 keyboards/gmmk/pro/rev2/iso/keymaps/default/rules.mk (limited to 'keyboards/gmmk/pro') diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/default/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/default/keymap.c index 91f29f8d62..6557734f59 100644 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/default/keymap.c +++ b/keyboards/gmmk/pro/rev1/ansi/keymaps/default/keymap.c @@ -60,13 +60,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; // clang-format on -#ifdef ENCODER_ENABLE -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - return false; -} -#endif // ENCODER_ENABLE +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) } +}; +#endif \ No newline at end of file diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/default/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/default/rules.mk new file mode 100644 index 0000000000..a40474b4d5 --- /dev/null +++ b/keyboards/gmmk/pro/rev1/ansi/keymaps/default/rules.mk @@ -0,0 +1 @@ +ENCODER_MAP_ENABLE = yes \ No newline at end of file diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/via/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/via/keymap.c index 1f59b52999..71e3ecd5e6 100644 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/via/keymap.c +++ b/keyboards/gmmk/pro/rev1/ansi/keymaps/via/keymap.c @@ -77,13 +77,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; // clang-format on -#ifdef ENCODER_ENABLE -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - return false; -} -#endif // ENCODER_ENABLE +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [0] = { ENCODER_CCW_CW(KC_VOLU, KC_VOLD) }, + [1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }, + [2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }, + [3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) } +}; +#endif \ No newline at end of file diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/via/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/via/rules.mk index 1e5b99807c..4253f570f0 100644 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/via/rules.mk +++ b/keyboards/gmmk/pro/rev1/ansi/keymaps/via/rules.mk @@ -1 +1,2 @@ VIA_ENABLE = yes +ENCODER_MAP_ENABLE = yes \ No newline at end of file diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/default/keymap.c b/keyboards/gmmk/pro/rev1/iso/keymaps/default/keymap.c index 0aedb78285..af0366d20d 100644 --- a/keyboards/gmmk/pro/rev1/iso/keymaps/default/keymap.c +++ b/keyboards/gmmk/pro/rev1/iso/keymaps/default/keymap.c @@ -60,13 +60,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; // clang-format on -#ifdef ENCODER_ENABLE -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - return false; -} +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) } +}; #endif diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/default/rules.mk b/keyboards/gmmk/pro/rev1/iso/keymaps/default/rules.mk new file mode 100644 index 0000000000..a40474b4d5 --- /dev/null +++ b/keyboards/gmmk/pro/rev1/iso/keymaps/default/rules.mk @@ -0,0 +1 @@ +ENCODER_MAP_ENABLE = yes \ No newline at end of file diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/via/keymap.c b/keyboards/gmmk/pro/rev1/iso/keymaps/via/keymap.c index 7d0693c18c..9a37242a4e 100644 --- a/keyboards/gmmk/pro/rev1/iso/keymaps/via/keymap.c +++ b/keyboards/gmmk/pro/rev1/iso/keymaps/via/keymap.c @@ -79,13 +79,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; // clang-format on -#ifdef ENCODER_ENABLE -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - return false; -} -#endif // ENCODER_ENABLE +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [0] = { ENCODER_CCW_CW(KC_VOLU, KC_VOLD) }, + [1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }, + [2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }, + [3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) } +}; +#endif diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/via/rules.mk b/keyboards/gmmk/pro/rev1/iso/keymaps/via/rules.mk index 1e5b99807c..4253f570f0 100644 --- a/keyboards/gmmk/pro/rev1/iso/keymaps/via/rules.mk +++ b/keyboards/gmmk/pro/rev1/iso/keymaps/via/rules.mk @@ -1 +1,2 @@ VIA_ENABLE = yes +ENCODER_MAP_ENABLE = yes \ No newline at end of file diff --git a/keyboards/gmmk/pro/rev2/ansi/keymaps/default/keymap.c b/keyboards/gmmk/pro/rev2/ansi/keymaps/default/keymap.c index dc56a9ff8f..30fd283d7d 100644 --- a/keyboards/gmmk/pro/rev2/ansi/keymaps/default/keymap.c +++ b/keyboards/gmmk/pro/rev2/ansi/keymaps/default/keymap.c @@ -60,13 +60,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; // clang-format on -#ifdef ENCODER_ENABLE -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - return false; -} -#endif // ENCODER_ENABLE +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) } +}; +#endif \ No newline at end of file diff --git a/keyboards/gmmk/pro/rev2/ansi/keymaps/default/rules.mk b/keyboards/gmmk/pro/rev2/ansi/keymaps/default/rules.mk new file mode 100644 index 0000000000..a40474b4d5 --- /dev/null +++ b/keyboards/gmmk/pro/rev2/ansi/keymaps/default/rules.mk @@ -0,0 +1 @@ +ENCODER_MAP_ENABLE = yes \ No newline at end of file diff --git a/keyboards/gmmk/pro/rev2/iso/keymaps/default/keymap.c b/keyboards/gmmk/pro/rev2/iso/keymaps/default/keymap.c index c44e4905d0..9da9bb2490 100644 --- a/keyboards/gmmk/pro/rev2/iso/keymaps/default/keymap.c +++ b/keyboards/gmmk/pro/rev2/iso/keymaps/default/keymap.c @@ -60,13 +60,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; // clang-format on -#ifdef ENCODER_ENABLE -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - return false; -} +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [0] = { ENCODER_CCW_CW(KC_VOLU, KC_VOLD) }, + [1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) } +}; #endif diff --git a/keyboards/gmmk/pro/rev2/iso/keymaps/default/rules.mk b/keyboards/gmmk/pro/rev2/iso/keymaps/default/rules.mk new file mode 100644 index 0000000000..a40474b4d5 --- /dev/null +++ b/keyboards/gmmk/pro/rev2/iso/keymaps/default/rules.mk @@ -0,0 +1 @@ +ENCODER_MAP_ENABLE = yes \ No newline at end of file -- cgit v1.2.3