4 #define MEDIA_KEY_DELAY 10
8 uint32_t layer_state_set_kb(uint32_t state) {
9 state = layer_state_set_user(state);
10 layer = biton32(state);
14 void encoder_update_kb(uint8_t index, bool clockwise) {
15 uint16_t mapped_code = 0;
21 mapped_code = KC_VOLU;
24 mapped_code = KC_MEDIA_NEXT_TRACK;
27 mapped_code = KC_PGDN;
34 mapped_code = KC_VOLD;
37 mapped_code = KC_MEDIA_PREV_TRACK;
40 mapped_code = KC_PGUP;
44 uint16_t held_keycode_timer = timer_read();
45 register_code(mapped_code);
46 while (timer_elapsed(held_keycode_timer) < MEDIA_KEY_DELAY){ /* no-op */ }
47 unregister_code(mapped_code);