summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/dt-bindings/zmk/keys.h22
-rw-r--r--include/zmk/hid.h2
-rw-r--r--include/zmk/keys.h1
3 files changed, 20 insertions, 5 deletions
diff --git a/include/dt-bindings/zmk/keys.h b/include/dt-bindings/zmk/keys.h
index 4c975db..5a2d97a 100644
--- a/include/dt-bindings/zmk/keys.h
+++ b/include/dt-bindings/zmk/keys.h
@@ -60,13 +60,25 @@
#define KC_APP 0x65
+#define KC_LCTL 0xE0
+#define KC_LSFT 0xE1
+#define KC_LALT 0xE2
+#define KC_LGUI 0xE3
+#define KC_RCTL 0xE4
+#define KC_RSFT 0xE5
+#define KC_RALT 0xE6
#define KC_RGUI 0xE7
-#define MD_SHFT 0x01
-#define KC_ALT 0x02
-#define KC_CTRL 0x03
-
#define ZC_TRNS 0xF0
#define ZC_NOOP 0xF1
-#define ZC_CSTM(n) (0xFF + n) \ No newline at end of file
+#define ZC_CSTM(n) (0xFF + n)
+
+#define MOD_LCTL 0x00
+#define MOD_LSFT 0x01
+#define MOD_LALT 0x02
+#define MOD_LGUI 0x03
+#define MOD_RCTL 0x04
+#define MOD_RSFT 0x05
+#define MOD_RALT 0x06
+#define MOD_RGUI 0x07 \ No newline at end of file
diff --git a/include/zmk/hid.h b/include/zmk/hid.h
index 9f0760a..8fbcf4f 100644
--- a/include/zmk/hid.h
+++ b/include/zmk/hid.h
@@ -101,6 +101,8 @@ struct zmk_hid_report
u8_t keys[13];
} __packed;
+int zmk_hid_register_mod(zmk_mod modifier);
+int zmk_hid_unregister_mod(zmk_mod modifier);
int zmk_hid_press_key(zmk_key key);
int zmk_hid_release_key(zmk_key key);
diff --git a/include/zmk/keys.h b/include/zmk/keys.h
index b61ef81..be05784 100644
--- a/include/zmk/keys.h
+++ b/include/zmk/keys.h
@@ -4,6 +4,7 @@
#include <dt-bindings/zmk/keys.h>
typedef u64_t zmk_key;
+typedef u8_t zmk_mod;
struct zmk_key_event
{