|
|
|
|
@ -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
|
|
|
|
|
|