diff --git a/keyboards/evolv/evolv.c b/keyboards/evolv/evolv.c index 54f92c9dbc4d..88aba531323b 100644 --- a/keyboards/evolv/evolv.c +++ b/keyboards/evolv/evolv.c @@ -16,3 +16,24 @@ along with this program. If not, see . */ #include "evolv.h" + +#ifndef MEDIA_KEY_DELAY +# define MEDIA_KEY_DELAY 100 +#endif + + +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) return false; + static uint32_t held_keycode_timer = 0; + static uint16_t mapped_code = 0; + if (clockwise) { + mapped_code = KC_VOLU; + } else { + mapped_code = KC_VOLD; + } + register_code(mapped_code); + held_keycode_timer = timer_read32(); + while (timer_elapsed32(held_keycode_timer) < MEDIA_KEY_DELAY) ; + unregister_code(mapped_code); + return true; +} diff --git a/keyboards/evolv/keymaps/default/keymap.c b/keyboards/evolv/keymaps/default/keymap.c index ed76030ae089..22866270411e 100755 --- a/keyboards/evolv/keymaps/default/keymap.c +++ b/keyboards/evolv/keymaps/default/keymap.c @@ -49,15 +49,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) }; - -uint32_t held_keycode_timer = 0; -uint16_t mapped_code = 0; -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) mapped_code = KC_VOLU; - else mapped_code = KC_VOLD; - register_code(mapped_code); - held_keycode_timer = timer_read32(); - while (timer_elapsed32(held_keycode_timer) < MEDIA_KEY_DELAY) ; - unregister_code(mapped_code); - return true; -} diff --git a/keyboards/evolv/keymaps/iso/keymap.c b/keyboards/evolv/keymaps/iso/keymap.c index 305ff805ff91..391bcdf5bbf1 100755 --- a/keyboards/evolv/keymaps/iso/keymap.c +++ b/keyboards/evolv/keymaps/iso/keymap.c @@ -49,15 +49,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) }; - -uint32_t held_keycode_timer = 0; -uint16_t mapped_code = 0; -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) mapped_code = KC_VOLU; - else mapped_code = KC_VOLD; - register_code(mapped_code); - held_keycode_timer = timer_read32(); - while (timer_elapsed32(held_keycode_timer) < MEDIA_KEY_DELAY) ; - unregister_code(mapped_code); - return true; -} diff --git a/keyboards/evolv/keymaps/via/keymap.c b/keyboards/evolv/keymaps/via/keymap.c index 305ff805ff91..391bcdf5bbf1 100755 --- a/keyboards/evolv/keymaps/via/keymap.c +++ b/keyboards/evolv/keymaps/via/keymap.c @@ -49,15 +49,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) }; - -uint32_t held_keycode_timer = 0; -uint16_t mapped_code = 0; -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) mapped_code = KC_VOLU; - else mapped_code = KC_VOLD; - register_code(mapped_code); - held_keycode_timer = timer_read32(); - while (timer_elapsed32(held_keycode_timer) < MEDIA_KEY_DELAY) ; - unregister_code(mapped_code); - return true; -}