summaryrefslogtreecommitdiff
path: root/app/src/hid_listener.c
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/hid_listener.c')
-rw-r--r--app/src/hid_listener.c136
1 files changed, 65 insertions, 71 deletions
diff --git a/app/src/hid_listener.c b/app/src/hid_listener.c
index 9f68ca2..4467e6d 100644
--- a/app/src/hid_listener.c
+++ b/app/src/hid_listener.c
@@ -15,90 +15,84 @@ LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
#include <zmk/hid.h>
#include <zmk/endpoints.h>
+static int hid_listener_keycode_pressed(u8_t usage_page, u32_t keycode) {
+ int err;
+ LOG_DBG("usage_page 0x%02X keycode 0x%02X", usage_page, keycode);
-static int hid_listener_keycode_pressed(u8_t usage_page, u32_t keycode)
-{
- int err;
- LOG_DBG("usage_page 0x%02X keycode 0x%02X", usage_page, keycode);
-
- switch (usage_page) {
- case USAGE_KEYPAD:
- err = zmk_hid_keypad_press(keycode);
- if (err) {
- LOG_ERR("Unable to press keycode");
- return err;
+ switch (usage_page) {
+ case USAGE_KEYPAD:
+ err = zmk_hid_keypad_press(keycode);
+ if (err) {
+ LOG_ERR("Unable to press keycode");
+ return err;
+ }
+ break;
+ case USAGE_CONSUMER:
+ err = zmk_hid_consumer_press(keycode);
+ if (err) {
+ LOG_ERR("Unable to press keycode");
+ return err;
+ }
+ break;
}
- break;
- case USAGE_CONSUMER:
- err = zmk_hid_consumer_press(keycode);
- if (err) {
- LOG_ERR("Unable to press keycode");
- return err;
- }
- break;
- }
- return zmk_endpoints_send_report(usage_page);
+ return zmk_endpoints_send_report(usage_page);
}
-static int hid_listener_keycode_released(u8_t usage_page, u32_t keycode)
-{
- int err;
- LOG_DBG("usage_page 0x%02X keycode 0x%02X", usage_page, keycode);
-
- switch (usage_page) {
- case USAGE_KEYPAD:
- err = zmk_hid_keypad_release(keycode);
- if (err) {
- LOG_ERR("Unable to release keycode");
- return err;
- }
- break;
- case USAGE_CONSUMER:
- err = zmk_hid_consumer_release(keycode);
- if (err) {
- LOG_ERR("Unable to release keycode");
- return err;
+static int hid_listener_keycode_released(u8_t usage_page, u32_t keycode) {
+ int err;
+ LOG_DBG("usage_page 0x%02X keycode 0x%02X", usage_page, keycode);
+
+ switch (usage_page) {
+ case USAGE_KEYPAD:
+ err = zmk_hid_keypad_release(keycode);
+ if (err) {
+ LOG_ERR("Unable to release keycode");
+ return err;
+ }
+ break;
+ case USAGE_CONSUMER:
+ err = zmk_hid_consumer_release(keycode);
+ if (err) {
+ LOG_ERR("Unable to release keycode");
+ return err;
+ }
+ break;
}
- break;
- }
- return zmk_endpoints_send_report(usage_page);
+ return zmk_endpoints_send_report(usage_page);
}
-static int hid_listener_modifiers_pressed(zmk_mod_flags modifiers)
-{
- LOG_DBG("modifiers %d", modifiers);
-
- zmk_hid_register_mods(modifiers);
- return zmk_endpoints_send_report(USAGE_KEYPAD);
+static int hid_listener_modifiers_pressed(zmk_mod_flags modifiers) {
+ LOG_DBG("modifiers %d", modifiers);
+
+ zmk_hid_register_mods(modifiers);
+ return zmk_endpoints_send_report(USAGE_KEYPAD);
}
-static int hid_listener_modifiers_released(zmk_mod_flags modifiers)
-{
- LOG_DBG("modifiers %d", modifiers);
-
- zmk_hid_unregister_mods(modifiers);
- return zmk_endpoints_send_report(USAGE_KEYPAD);
+static int hid_listener_modifiers_released(zmk_mod_flags modifiers) {
+ LOG_DBG("modifiers %d", modifiers);
+
+ zmk_hid_unregister_mods(modifiers);
+ return zmk_endpoints_send_report(USAGE_KEYPAD);
}
-int hid_listener(const struct zmk_event_header *eh)
-{
- if (is_keycode_state_changed(eh)) {
- const struct keycode_state_changed *ev = cast_keycode_state_changed(eh);
- if (ev->state) {
- hid_listener_keycode_pressed(ev->usage_page, ev->keycode);
- } else {
- hid_listener_keycode_released(ev->usage_page, ev->keycode);
- }
- } else if (is_modifiers_state_changed(eh)) {
- const struct modifiers_state_changed *ev = cast_modifiers_state_changed(eh);
- if (ev->state) {
- hid_listener_modifiers_pressed(ev->modifiers);
- } else {
- hid_listener_modifiers_released(ev->modifiers);
+int hid_listener(const struct zmk_event_header *eh) {
+ if (is_keycode_state_changed(eh)) {
+ const struct keycode_state_changed *ev = cast_keycode_state_changed(eh);
+ if (ev->state) {
+ hid_listener_keycode_pressed(ev->usage_page, ev->keycode);
+ } else {
+ hid_listener_keycode_released(ev->usage_page, ev->keycode);
+ }
+ } else if (is_modifiers_state_changed(eh)) {
+ const struct modifiers_state_changed *ev = cast_modifiers_state_changed(eh);
+ if (ev->state) {
+ hid_listener_modifiers_pressed(ev->modifiers);
+ } else {
+ hid_listener_modifiers_released(ev->modifiers);
+ }
}
- }
- return 0;
+ return 0;
}
ZMK_LISTENER(hid_listener, hid_listener);