From 36d3902504d6aa0d2bdac88c90339c902ade11b3 Mon Sep 17 00:00:00 2001 From: Konstantin Đorđević Date: Thu, 25 Jul 2019 21:31:40 +0200 Subject: [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() --- users/konstantin/config.h | 6 +++++ users/konstantin/konstantin.c | 52 ++++++++++++++++++++++++++----------------- users/konstantin/konstantin.h | 22 +++++++++--------- users/konstantin/rgb.c | 7 +++--- users/konstantin/rgb.h | 12 +++++++--- users/konstantin/tap_dance.c | 2 +- users/konstantin/tap_dance.h | 4 ++-- 7 files changed, 66 insertions(+), 39 deletions(-) (limited to 'users') diff --git a/users/konstantin/config.h b/users/konstantin/config.h index 4edab2baab..d712e79d3f 100644 --- a/users/konstantin/config.h +++ b/users/konstantin/config.h @@ -13,6 +13,12 @@ #define NO_ACTION_MACRO #define NO_ACTION_ONESHOT +#undef RGBLIGHT_ANIMATIONS +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE + #define PERMISSIVE_HOLD #define TAPPING_TERM 200 #define TAPPING_TOGGLE 2 diff --git a/users/konstantin/konstantin.c b/users/konstantin/konstantin.c index 9e3caca414..c56c9490fc 100644 --- a/users/konstantin/konstantin.c +++ b/users/konstantin/konstantin.c @@ -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<