1
0
Fork 0

[User] Update personal userspace and keymaps, add reactive underglow (#6410)

* Update MODERN_DOLCH_RED color

* Remove unused RAL_LAL tap dance

* Disable Space Cadet on all boards

* Rework SEND_STRING_CLEAN into CLEAN_MODS, fix DST_P_R/DST_N_A

* Disable unnecessary underglow animations

* Rearrange feature flags in rules.mk files

* Change custom colors from structs to defines

* Add some explicit initializers

* Add MODERN_DOLCH_CYAN color

* Add IS_LAYER_ON_STATE()/IS_LAYER_OFF_STATE() macros

* Add led_set_keymap() template function

* Change underglow color based on Caps/Fn state

* Preserve val when changing underglow colors

* Only trigger Fn light for Fn layer

* Refactor fn_light() and caps_light() slightly

* Add comments to fn_light() and caps_light()
This commit is contained in:
Konstantin Đorđević 2019-07-25 21:31:40 +02:00 committed by Drashna Jaelre
parent f204ed67f2
commit 36d3902504
14 changed files with 151 additions and 82 deletions

View file

@ -32,26 +32,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
switch (keycode) {
case CLEAR:
if (record->event.pressed) {
SEND_STRING(SS_LCTRL("a") SS_TAP(X_DELETE));
}
return false;
case DST_P_R:
(record->event.pressed ? register_code16 : unregister_code16)(
(get_mods() & DST_MOD_MASK) ? DST_REM : DST_PRV
);
return false;
case DST_N_A:
(record->event.pressed ? register_code16 : unregister_code16)(
(get_mods() & DST_MOD_MASK) ? DST_ADD : DST_NXT
);
return false;
uint16_t kc;
#ifdef LAYER_FN
static bool fn_lock;
static bool fn_lock = false;
case FN_FNLK:
if (record->event.pressed && record->tap.count == TAPPING_TOGGLE) {
@ -77,6 +60,28 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
case CLEAR:
if (record->event.pressed) {
CLEAN_MODS(
SEND_STRING(SS_LCTRL("a") SS_TAP(X_DELETE));
)
}
return false;
case DST_P_R:
kc = (get_mods() & DST_MOD_MASK) ? DST_REM : DST_PRV;
CLEAN_MODS(
(record->event.pressed ? register_code16 : unregister_code16)(kc);
)
return false;
case DST_N_A:
kc = (get_mods() & DST_MOD_MASK) ? DST_ADD : DST_NXT;
CLEAN_MODS(
(record->event.pressed ? register_code16 : unregister_code16)(kc);
)
return false;
default:
return true;
}
@ -91,7 +96,7 @@ uint32_t layer_state_set_user(uint32_t state) {
state = layer_state_set_keymap(state);
#ifdef LAYER_NUMPAD
bool numpad = state & 1UL<<L_NUMPAD;
bool numpad = IS_LAYER_ON_STATE(state, L_NUMPAD);
bool num_lock = IS_HOST_LED_ON(USB_LED_NUM_LOCK);
if (numpad != num_lock) {
tap_code(KC_NLCK); // Toggle Num Lock to match Numpad layer state
@ -100,3 +105,10 @@ uint32_t layer_state_set_user(uint32_t state) {
return state;
}
__attribute__((weak))
void led_set_keymap(uint8_t usb_led) {}
void led_set_user(uint8_t usb_led) {
led_set_keymap(usb_led);
}