From 96ec16da9246c3c7c07986a0c6a2900d3bbfddaa Mon Sep 17 00:00:00 2001 From: Pete Johanson Date: Tue, 30 Jun 2020 10:43:09 -0400 Subject: Modifier event, tweaks for linker script. --- app/include/linker/zmk-events.ld | 6 ------ app/include/zmk/events.h | 6 ------ app/include/zmk/events/keycode-state-changed.h | 12 +++++++++++- app/include/zmk/events/modifiers-state-changed.h | 22 ++++++++++++++++++++++ 4 files changed, 33 insertions(+), 13 deletions(-) create mode 100644 app/include/zmk/events/modifiers-state-changed.h (limited to 'app/include') diff --git a/app/include/linker/zmk-events.ld b/app/include/linker/zmk-events.ld index f1ee9f7..f2bf833 100644 --- a/app/include/linker/zmk-events.ld +++ b/app/include/linker/zmk-events.ld @@ -1,16 +1,10 @@ #include - SECTION_PROLOGUE(event_types,,) - { __event_type_start = .; \ KEEP(*(".event_type")); \ __event_type_end = .; \ - } GROUP_LINK_IN(ROMABLE_REGION) - SECTION_PROLOGUE(event_subscriptions,,) - { __event_subscriptions_start = .; \ KEEP(*(".event_subscription")); \ __event_subscriptions_end = .; \ - } GROUP_LINK_IN(ROMABLE_REGION) diff --git a/app/include/zmk/events.h b/app/include/zmk/events.h index 5be2beb..178686c 100644 --- a/app/include/zmk/events.h +++ b/app/include/zmk/events.h @@ -2,14 +2,8 @@ #include -int zmk_events_position_pressed(u32_t position); -int zmk_events_position_released(u32_t position); -int zmk_events_keycode_pressed(u8_t usage_page, u32_t keycode); -int zmk_events_keycode_released(u8_t usage_page, u32_t keycode); int zmk_events_modifiers_pressed(zmk_mod_flags modifiers); int zmk_events_modifiers_released(zmk_mod_flags modifiers); -int zmk_events_consumer_key_pressed(u32_t usage); -int zmk_events_consumer_key_released(u32_t usage); // TODO: Encoders? // TODO: Sensors? \ No newline at end of file diff --git a/app/include/zmk/events/keycode-state-changed.h b/app/include/zmk/events/keycode-state-changed.h index 48cdddc..dc6e37e 100644 --- a/app/include/zmk/events/keycode-state-changed.h +++ b/app/include/zmk/events/keycode-state-changed.h @@ -10,4 +10,14 @@ struct keycode_state_changed { bool state; }; -ZMK_EVENT_DECLARE(keycode_state_changed); \ No newline at end of file +ZMK_EVENT_DECLARE(keycode_state_changed); + +inline struct keycode_state_changed* create_keycode_state_changed(u8_t usage_page, u32_t keycode, bool state) +{ + struct keycode_state_changed* ev = new_keycode_state_changed(); + ev->usage_page = usage_page; + ev->keycode = keycode; + ev->state = state; + + return ev; +} \ No newline at end of file diff --git a/app/include/zmk/events/modifiers-state-changed.h b/app/include/zmk/events/modifiers-state-changed.h new file mode 100644 index 0000000..57596b2 --- /dev/null +++ b/app/include/zmk/events/modifiers-state-changed.h @@ -0,0 +1,22 @@ +#pragma once + +#include +#include +#include + +struct modifiers_state_changed { + struct zmk_event_header header; + zmk_mod_flags modifiers; + bool state; +}; + +ZMK_EVENT_DECLARE(modifiers_state_changed); + +inline struct modifiers_state_changed* create_modifiers_state_changed(zmk_mod_flags modifiers, bool state) +{ + struct modifiers_state_changed* ev = new_modifiers_state_changed(); + ev->modifiers = modifiers; + ev->state = state; + + return ev; +} \ No newline at end of file -- cgit v1.2.3