diff options
Diffstat (limited to 'keyboards/nullbitsco/snap/snap.c')
| -rw-r--r-- | keyboards/nullbitsco/snap/snap.c | 84 | 
1 files changed, 19 insertions, 65 deletions
| diff --git a/keyboards/nullbitsco/snap/snap.c b/keyboards/nullbitsco/snap/snap.c index 7308572f95..bd0ea5b731 100644 --- a/keyboards/nullbitsco/snap/snap.c +++ b/keyboards/nullbitsco/snap/snap.c @@ -15,11 +15,6 @@   */  #include "snap.h" -// Macro variables -bool is_alt_tab_active = false; -uint16_t alt_tab_timer = 0; -bool muted = false; -  void matrix_init_kb(void) {      set_bitc_LED(LED_OFF);      matrix_init_remote_kb(); @@ -27,23 +22,16 @@ void matrix_init_kb(void) {  }  void keyboard_post_init_kb(void) { -    #ifdef CONSOLE_ENABLE +#ifdef CONSOLE_ENABLE      debug_enable = true;      debug_matrix = true; -    #endif +#endif      keyboard_post_init_user();  }  void matrix_scan_kb(void) {      matrix_scan_remote_kb();      matrix_scan_user(); - -    if (is_alt_tab_active) { -        if (timer_elapsed(alt_tab_timer) > 1000) { -            unregister_code(KC_LALT); -            is_alt_tab_active = false; -        } -    }  }  // Use Bit-C LED to show CAPS LOCK and NUM LOCK status @@ -51,63 +39,29 @@ void led_update_ports(led_t led_state) {      set_bitc_LED(led_state.caps_lock ? LED_DIM : LED_OFF);  } +bool shutdown_kb(bool jump_to_bootloader) { +    if (!shutdown_user(jump_to_bootloader)) { +        return false; +    } + +    set_bitc_LED(LED_DIM); +#ifdef RGBLIGHT_ENABLE +    rgblight_disable_noeeprom(); +#endif +#ifdef OLED_ENABLE +    oled_off(); +#endif +    return true; +} +  bool process_record_kb(uint16_t keycode, keyrecord_t *record) {      // If console is enabled, it will print the matrix position and status of each key pressed -    #ifdef CONSOLE_ENABLE +#ifdef CONSOLE_ENABLE      dprintf("kc: 0x%04X, col: %u, row: %u, pressed: %b, time: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time); -    #endif +#endif      process_record_remote_kb(keycode, record);      if (!process_record_user(keycode, record)) return false; -    switch (keycode) { -        case QK_BOOT: -            if (record->event.pressed) { -                set_bitc_LED(LED_DIM); -                #ifdef RGBLIGHT_ENABLE -                rgblight_disable_noeeprom(); -                #endif -                #ifdef OLED_ENABLE -                oled_off(); -                #endif -                bootloader_jump();  // jump to bootloader -            } -            return false; - -        case DISC_MUTE: -            if (record->event.pressed) { -                tap_code(KC_F23); -                #ifdef RGBLIGHT_ENABLE -                if (!rgblight_is_enabled()) break; - -                if (muted) { -                    rgblight_enable_noeeprom(); -                } else { -                    rgblight_timer_disable(); -                    uint8_t val = rgblight_get_val(); -                    rgblight_sethsv_range(255, 255, val, 1, 5); -                } -                #endif -                muted = !muted; -            } -            break; - -        case SUPER_ALT_TAB: -            if (record->event.pressed) { -                if (!is_alt_tab_active) { -                    is_alt_tab_active = true; -                    register_code(KC_LALT); -                } -                alt_tab_timer = timer_read(); -                register_code(KC_TAB); -            } else { -                unregister_code(KC_TAB); -            } -            break; - -        default: -            break; -    } -      return true;  } | 
