From 2bc4a216dfbb83a6d2b57da397d370210087cff5 Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 11 Feb 2022 13:31:19 +1100 Subject: maxr1998/pulse4k: Move Combo code to keymap level (#16301) * maxr1998/pulse4k: Move Combo code to keymap level * Reorder code --- .../maxr1998/pulse4k/keymaps/default/keymap.c | 40 ++++++++++++++++++++++ .../maxr1998/pulse4k/keymaps/default/rules.mk | 1 + .../maxr1998/pulse4k/keymaps/maxr1998/keymap.c | 40 ++++++++++++++++++++++ .../maxr1998/pulse4k/keymaps/maxr1998/rules.mk | 1 + 4 files changed, 82 insertions(+) create mode 100644 keyboards/maxr1998/pulse4k/keymaps/default/rules.mk create mode 100644 keyboards/maxr1998/pulse4k/keymaps/maxr1998/rules.mk (limited to 'keyboards/maxr1998/pulse4k/keymaps') diff --git a/keyboards/maxr1998/pulse4k/keymaps/default/keymap.c b/keyboards/maxr1998/pulse4k/keymaps/default/keymap.c index 1ed4b5f1af..243a96ba74 100644 --- a/keyboards/maxr1998/pulse4k/keymaps/default/keymap.c +++ b/keyboards/maxr1998/pulse4k/keymaps/default/keymap.c @@ -21,6 +21,10 @@ enum layers { DEFAULT }; +enum combo_events { + LED_ADJUST +}; + const uint16_t PROGMEM led_adjust_combo[] = {KC_LEFT, KC_RGHT, COMBO_END}; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -29,3 +33,39 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LEFT, KC_DOWN, KC_RGHT ) }; + +combo_t key_combos[COMBO_COUNT] = { + [LED_ADJUST] = COMBO_ACTION(led_adjust_combo) +}; + +bool led_adjust_active = false; + +void process_combo_event(uint16_t combo_index, bool pressed) { + if (combo_index == LED_ADJUST) { + led_adjust_active = pressed; + } +} + +bool encoder_update_user(uint8_t index, bool clockwise) { + if (index == 0) { + if (led_adjust_active) { + if (clockwise) { + rgblight_increase_val(); + } else { + rgblight_decrease_val(); + } + return false; + } + } else if (index == 1) { + if (led_adjust_active) { + if (clockwise) { + rgblight_increase_hue(); + } else { + rgblight_decrease_hue(); + } + return false; + } + } + + return true; +} diff --git a/keyboards/maxr1998/pulse4k/keymaps/default/rules.mk b/keyboards/maxr1998/pulse4k/keymaps/default/rules.mk new file mode 100644 index 0000000000..ab1e438182 --- /dev/null +++ b/keyboards/maxr1998/pulse4k/keymaps/default/rules.mk @@ -0,0 +1 @@ +COMBO_ENABLE = yes diff --git a/keyboards/maxr1998/pulse4k/keymaps/maxr1998/keymap.c b/keyboards/maxr1998/pulse4k/keymaps/maxr1998/keymap.c index 9eec3f0ae7..2aad1fa346 100644 --- a/keyboards/maxr1998/pulse4k/keymaps/maxr1998/keymap.c +++ b/keyboards/maxr1998/pulse4k/keymaps/maxr1998/keymap.c @@ -21,6 +21,10 @@ enum layers { DEFAULT }; +enum combo_events { + LED_ADJUST +}; + const uint16_t PROGMEM led_adjust_combo[] = {KC_F22, KC_F24, COMBO_END}; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -30,6 +34,42 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ) }; +combo_t key_combos[COMBO_COUNT] = { + [LED_ADJUST] = COMBO_ACTION(led_adjust_combo) +}; + +bool led_adjust_active = false; + +void process_combo_event(uint16_t combo_index, bool pressed) { + if (combo_index == LED_ADJUST) { + led_adjust_active = pressed; + } +} + +bool encoder_update_user(uint8_t index, bool clockwise) { + if (index == 0) { + if (led_adjust_active) { + if (clockwise) { + rgblight_increase_val(); + } else { + rgblight_decrease_val(); + } + return false; + } + } else if (index == 1) { + if (led_adjust_active) { + if (clockwise) { + rgblight_increase_hue(); + } else { + rgblight_decrease_hue(); + } + return false; + } + } + + return true; +} + void encoder_one_update(bool clockwise) { tap_code(!clockwise ? KC_F18 : KC_F19); } diff --git a/keyboards/maxr1998/pulse4k/keymaps/maxr1998/rules.mk b/keyboards/maxr1998/pulse4k/keymaps/maxr1998/rules.mk new file mode 100644 index 0000000000..ab1e438182 --- /dev/null +++ b/keyboards/maxr1998/pulse4k/keymaps/maxr1998/rules.mk @@ -0,0 +1 @@ +COMBO_ENABLE = yes -- cgit v1.2.3