1
0
Fork 0

Leader key implementation (#326)

* implements leader key for planck experimental

* allows override of leader timeout

* adds ability to use the leader key in seq

* fixes leader keycode

* adds chording prototype

* fixes keycode detection

* moves music mode to quantum.c

* disables chording by default

* updates process_action functions to return bool
This commit is contained in:
Erez Zukerman 2016-05-15 00:27:32 -04:00 committed by Jack Humbert
parent 79d26f331a
commit 1a8c0dd22d
20 changed files with 290 additions and 64 deletions

View file

@ -70,7 +70,9 @@ void process_action_nocache(keyrecord_t *record)
#endif
__attribute__ ((weak))
void process_action_kb(keyrecord_t *record) {}
bool process_action_quantum(keyrecord_t *record) {
return true;
}
void process_action(keyrecord_t *record)
{
@ -89,7 +91,8 @@ void process_action(keyrecord_t *record)
}
#endif
process_action_kb(record);
if (!process_action_quantum(record))
return;
action_t action = store_or_get_action(event.pressed, event.key);
dprint("ACTION: "); debug_action(action);

View file

@ -59,7 +59,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt);
void action_function(keyrecord_t *record, uint8_t id, uint8_t opt);
/* keyboard-specific key event (pre)processing */
void process_action_kb(keyrecord_t *record);
bool process_action_quantum(keyrecord_t *record);
/* Utilities for actions. */
#if !defined(NO_ACTION_LAYER) && defined(PREVENT_STUCK_MODIFIERS)

View file

@ -64,8 +64,8 @@ void matrix_power_up(void);
void matrix_power_down(void);
/* keyboard-specific setup/loop functionality */
void matrix_init_kb(void);
void matrix_scan_kb(void);
void matrix_init_quantum(void);
void matrix_scan_quantum(void);
#ifdef __cplusplus
}