From 0da6562c4df570729889690e21061229c5648b73 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Sat, 18 Jun 2022 14:37:51 -0700 Subject: Make default layer size 16-bit (#15286) Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> --- keyboards/cannonkeys/ortho75/ortho75.c | 73 +++++++++++++++++----------------- 1 file changed, 37 insertions(+), 36 deletions(-) (limited to 'keyboards/cannonkeys/ortho75/ortho75.c') diff --git a/keyboards/cannonkeys/ortho75/ortho75.c b/keyboards/cannonkeys/ortho75/ortho75.c index 7c722d7156..58b7396a1b 100644 --- a/keyboards/cannonkeys/ortho75/ortho75.c +++ b/keyboards/cannonkeys/ortho75/ortho75.c @@ -5,47 +5,48 @@ uint8_t layer = 0; -uint32_t layer_state_set_kb(uint32_t state) { - state = layer_state_set_user(state); - layer = biton32(state); - return state; +layer_state_t layer_state_set_kb(layer_state_t state) { + state = layer_state_set_user(state); + layer = get_highest_layer(state); + return state; } bool encoder_update_kb(uint8_t index, bool clockwise) { if (!encoder_update_user(index, clockwise)) return false; - uint16_t mapped_code = 0; - if (index == 0) { - if (clockwise) { - switch(layer){ - case 0: - default: - mapped_code = KC_VOLU; - break; - case 1: - mapped_code = KC_MEDIA_NEXT_TRACK; - break; - case 2: - mapped_code = KC_PGDN; - break; + uint16_t mapped_code = 0; + if (index == 0) { + if (clockwise) { + switch (layer) { + case 0: + default: + mapped_code = KC_VOLU; + break; + case 1: + mapped_code = KC_MEDIA_NEXT_TRACK; + break; + case 2: + mapped_code = KC_PGDN; + break; + } + } else { + switch (layer) { + case 0: + default: + mapped_code = KC_VOLD; + break; + case 1: + mapped_code = KC_MEDIA_PREV_TRACK; + break; + case 2: + mapped_code = KC_PGUP; + break; + } } - } else { - switch(layer){ - case 0: - default: - mapped_code = KC_VOLD; - break; - case 1: - mapped_code = KC_MEDIA_PREV_TRACK; - break; - case 2: - mapped_code = KC_PGUP; - break; + uint16_t held_keycode_timer = timer_read(); + register_code(mapped_code); + while (timer_elapsed(held_keycode_timer) < MEDIA_KEY_DELAY) { /* no-op */ } + unregister_code(mapped_code); } - uint16_t held_keycode_timer = timer_read(); - register_code(mapped_code); - while (timer_elapsed(held_keycode_timer) < MEDIA_KEY_DELAY){ /* no-op */ } - unregister_code(mapped_code); - } - return true; + return true; } -- cgit v1.2.3