|
|
|
@ -17,6 +17,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
|
|
|
|
|
|
|
|
#include QMK_KEYBOARD_H |
|
|
|
|
|
|
|
|
|
enum layer_names { |
|
|
|
|
_QW = 0, |
|
|
|
|
_LWR, |
|
|
|
|
_RSE, |
|
|
|
|
_ADJ |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
#ifdef RGBLIGHT_ENABLE |
|
|
|
|
|
|
|
|
|
const rgblight_segment_t PROGMEM my_qwerty_layer[] = RGBLIGHT_LAYER_SEGMENTS({0, RGBLED_NUM, HSV_PURPLE}); |
|
|
|
@ -148,14 +155,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t* record) { |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#ifdef ENCODER_ENABLE |
|
|
|
|
|
|
|
|
|
bool encoder_update_user(uint8_t index, bool clockwise) { |
|
|
|
|
my_encoders(index, clockwise); |
|
|
|
|
return true; |
|
|
|
|
} |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
layer_state_t layer_state_set_user(layer_state_t state) { |
|
|
|
|
#ifdef RGBLIGHT_ENABLE |
|
|
|
|
|
|
|
|
@ -180,3 +179,38 @@ void keyboard_post_init_user(void) { |
|
|
|
|
rgblight_layers = my_rgb_layers; |
|
|
|
|
} |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
#ifdef ENCODER_ENABLE |
|
|
|
|
|
|
|
|
|
# define MEDIA_KEY_DELAY 10 |
|
|
|
|
|
|
|
|
|
static inline void my_encoders(const uint8_t index, const bool clockwise) { |
|
|
|
|
if (index == 0) { /* First encoder */ |
|
|
|
|
if (IS_LAYER_ON(_LWR)) { |
|
|
|
|
if (clockwise) { |
|
|
|
|
rgblight_decrease_val_noeeprom(); |
|
|
|
|
} else { |
|
|
|
|
rgblight_increase_val_noeeprom(); |
|
|
|
|
} |
|
|
|
|
} else if (IS_LAYER_ON(_RSE)) { |
|
|
|
|
if (clockwise) { |
|
|
|
|
rgblight_decrease_hue_noeeprom(); |
|
|
|
|
} else { |
|
|
|
|
rgblight_increase_hue_noeeprom(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} else { |
|
|
|
|
if (clockwise) { |
|
|
|
|
tap_code_delay(KC_VOLD, MEDIA_KEY_DELAY); |
|
|
|
|
} else { |
|
|
|
|
tap_code_delay(KC_VOLU, MEDIA_KEY_DELAY); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
bool encoder_update_user(uint8_t index, bool clockwise) { |
|
|
|
|
my_encoders(index, clockwise); |
|
|
|
|
return true; |
|
|
|
|
} |
|
|
|
|
#endif |
|
|
|
|