summaryrefslogtreecommitdiff
path: root/quantum
diff options
context:
space:
mode:
authorJack Humbert <jack.humb@gmail.com>2016-03-28 11:55:19 -0400
committerJack Humbert <jack.humb@gmail.com>2016-03-28 11:55:19 -0400
commitfd9e5d151028e428249e4c42921e4bf2597d5f0d (patch)
treea1a95c9278260e31eaba0da21219b0c24e9087a4 /quantum
parent5e2c497d9a3aeb26e1ac9f3d9840fa213e67a339 (diff)
parentbcebb3447c155056819d42668943110ab0868517 (diff)
Merge pull request #214 from cdlm/action-hook
Add per-event user hook function
Diffstat (limited to 'quantum')
-rw-r--r--quantum/template/template.c20
-rw-r--r--quantum/template/template.h5
2 files changed, 19 insertions, 6 deletions
diff --git a/quantum/template/template.c b/quantum/template/template.c
index 58e73cb09f..cc52e496ff 100644
--- a/quantum/template/template.c
+++ b/quantum/template/template.c
@@ -11,6 +11,11 @@ void matrix_scan_user(void) {
}
__attribute__ ((weak))
+void process_action_user(keyrecord_t *record) {
+ // leave this function blank - it can be defined in a keymap file
+}
+
+__attribute__ ((weak))
void led_set_user(uint8_t usb_led) {
// leave this function blank - it can be defined in a keymap file
}
@@ -18,19 +23,26 @@ void led_set_user(uint8_t usb_led) {
void matrix_init_kb(void) {
// put your keyboard start-up code here
// runs once when the firmware starts up
-
+
matrix_init_user();
}
void matrix_scan_kb(void) {
- // put your looping keyboard code here
- // runs every cycle (a lot)
+ // put your looping keyboard code here
+ // runs every cycle (a lot)
matrix_scan_user();
}
+void process_action_kb(keyrecord_t *record) {
+ // put your per-action keyboard code here
+ // runs for every action, just before processing by the firmware
+
+ process_action_user(record);
+}
+
void led_set_kb(uint8_t usb_led) {
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
led_set_user(usb_led);
-} \ No newline at end of file
+}
diff --git a/quantum/template/template.h b/quantum/template/template.h
index ba91abac3e..b1c34d3cbe 100644
--- a/quantum/template/template.h
+++ b/quantum/template/template.h
@@ -17,10 +17,11 @@
{ \
{ k00, k01, k02 }, \
{ k10, KC_NO, k11 }, \
-}
+}
void matrix_init_user(void);
void matrix_scan_user(void);
+void process_action_user(keyrecord_t *record);
void led_set_user(uint8_t usb_led);
-#endif \ No newline at end of file
+#endif