| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- #include QMK_KEYBOARD_H
- #include "split_util.h"
- #include "keymap_xrows.h"
- #ifdef SSD1306OLED
- #include "oled.h"
- #endif
- // keymaps definitions are moved to keymap_Xrows.c.
- bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch(keycode) {
- case KC_LOCK:
- if (record->event.pressed) {
- if (get_enable_kc_lang()) {
- SEND_STRING( SS_LCTRL(SS_LSFT(SS_TAP(X_POWER))) );
- } else {
- SEND_STRING( SS_LGUI("l") );
- }
- }
- return false;
- }
- return true;
- }
- #ifdef SSD1306OLED
- void matrix_init_keymap(void) {
- //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h
- iota_gfx_init(!has_usb()); // turns on the display
- }
- void matrix_scan_user(void) {
- iota_gfx_task(); // this is what updates the display continuously
- }
- #endif
- #ifdef RGBLIGHT_ENABLE
- uint32_t layer_state_set_keymap(uint32_t state) {
- rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
- switch (biton32(state)) {
- case _EDVORAKJ1:
- case _EDVORAKJ2:
- // _EDVORAKJ1 & J2 are same colored
- rgblight_sethsv_noeeprom_white();
- break;
- case _LOWER:
- rgblight_sethsv_noeeprom_red();
- break;
- case _RAISE:
- rgblight_sethsv_noeeprom_blue();
- break;
- case _ADJUST:
- rgblight_sethsv_noeeprom_green();
- break;
- default: // for any other layers, or the default layer
- rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_GRADIENT + 3);
- rgblight_sethsv_noeeprom_red();
- break;
- }
- return state;
- }
- #endif
|