[Keymap] Various enhancements for dshields user space and keymaps. (#6816)
- Add oneshot mod/layer unlocking - Fix Planck rev 3 backlight breathing - Fix Planck rev 6 build with arm gcc 9.2.0 - General code clean upbetter_chibios_wait
parent
0f9e2659c9
commit
00abe5d8ed
@ -1,30 +1,31 @@ |
|||||||
extern keymap_config_t keymap_config; |
#include "quantum.h" |
||||||
|
#include "dshields.h" |
||||||
|
|
||||||
/* uncomment to reset
|
extern bool process_record_dynamic_macro(uint16_t keycode, keyrecord_t *record); |
||||||
void matrix_init_user(void) { |
|
||||||
eeconfig_init(); |
|
||||||
}; |
|
||||||
*/ |
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
||||||
if (!process_record_dynamic_macro(keycode, record)) { |
if (!process_record_dynamic_macro(keycode, record)) { |
||||||
return false; |
return false; |
||||||
} |
} |
||||||
return true; |
if (keycode == KC_ESC && record->event.pressed) { |
||||||
} |
bool rc = true; |
||||||
|
uint8_t mods = 0; |
||||||
// work in progress
|
if ((mods = get_oneshot_mods()) && !has_oneshot_mods_timed_out()) { |
||||||
uint32_t layer_state_set_user(uint32_t state) { |
clear_oneshot_mods(); |
||||||
switch (biton32(state)) { |
unregister_mods(mods); |
||||||
case DEF: |
rc = false; |
||||||
set_all_leds_to(0,0,0); |
} |
||||||
break; |
if ((mods = get_oneshot_locked_mods())) { |
||||||
case FUN: |
clear_oneshot_locked_mods(); |
||||||
// TODO light the fn keys
|
unregister_mods(mods); |
||||||
// set_led_to(?, 0, 128, 0);
|
rc = false; |
||||||
// set_led_to(?, 0, 128, 0);
|
|
||||||
break; |
|
||||||
} |
} |
||||||
return state; |
if (is_oneshot_layer_active()) { |
||||||
|
layer_clear(); |
||||||
|
rc = false; |
||||||
|
} |
||||||
|
return rc; |
||||||
|
} |
||||||
|
return true; |
||||||
} |
} |
||||||
|
|
||||||
|
Loading…
Reference in new issue