refactor(app): change HID usages to 32-bit (page + id) by definition
Improves readability of `keys.h` and lays the groundwork for upcoming improvements. PR: #382
This commit is contained in:
parent
e2d51e8b27
commit
c66557aa58
5 changed files with 8028 additions and 2952 deletions
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -24,7 +24,7 @@ static const uint8_t zmk_hid_report_desc[] = {
|
|||
HID_USAGE_GD,
|
||||
/* USAGE (Keyboard) */
|
||||
HID_LI_USAGE,
|
||||
HID_USAGE_GD_KEYBOARD,
|
||||
HID_USAGE_ID(HID_USAGE_GD_KEYBOARD),
|
||||
/* COLLECTION (Application) */
|
||||
HID_MI_COLLECTION,
|
||||
COLLECTION_APPLICATION,
|
||||
|
@ -36,10 +36,10 @@ static const uint8_t zmk_hid_report_desc[] = {
|
|||
HID_USAGE_KEY,
|
||||
/* USAGE_MINIMUM (Keyboard LeftControl) */
|
||||
HID_LI_USAGE_MIN(1),
|
||||
HID_USAGE_KEY_KEYBOARD_LEFTCONTROL,
|
||||
HID_USAGE_ID(HID_USAGE_KEY_KEYBOARD_LEFTCONTROL),
|
||||
/* USAGE_MAXIMUM (Keyboard Right GUI) */
|
||||
HID_LI_USAGE_MAX(1),
|
||||
HID_USAGE_KEY_KEYBOARD_RIGHT_GUI,
|
||||
HID_USAGE_ID(HID_USAGE_KEY_KEYBOARD_RIGHT_GUI),
|
||||
/* LOGICAL_MINIMUM (0) */
|
||||
HID_GI_LOGICAL_MIN(1),
|
||||
0x00,
|
||||
|
@ -102,7 +102,7 @@ static const uint8_t zmk_hid_report_desc[] = {
|
|||
HID_USAGE_CONSUMER,
|
||||
/* USAGE (Consumer Control) */
|
||||
HID_LI_USAGE,
|
||||
HID_USAGE_CONSUMER_CONSUMER_CONTROL,
|
||||
HID_USAGE_ID(HID_USAGE_CONSUMER_CONSUMER_CONTROL),
|
||||
/* Consumer Page */
|
||||
HID_MI_COLLECTION,
|
||||
COLLECTION_APPLICATION,
|
||||
|
|
|
@ -429,8 +429,9 @@ static int position_state_changed_listener(const struct zmk_event_header *eh) {
|
|||
}
|
||||
|
||||
static inline bool only_mods(struct keycode_state_changed *ev) {
|
||||
return ev->usage_page == HID_USAGE_KEY && ev->keycode >= HID_USAGE_KEY_KEYBOARD_LEFTCONTROL &&
|
||||
ev->keycode <= HID_USAGE_KEY_KEYBOARD_RIGHT_GUI;
|
||||
return ev->usage_page == HID_USAGE_KEY &&
|
||||
ev->keycode >= HID_USAGE_ID(HID_USAGE_KEY_KEYBOARD_LEFTCONTROL) &&
|
||||
ev->keycode <= HID_USAGE_ID(HID_USAGE_KEY_KEYBOARD_RIGHT_GUI);
|
||||
}
|
||||
|
||||
static int keycode_state_changed_listener(const struct zmk_event_header *eh) {
|
||||
|
|
|
@ -78,16 +78,18 @@ int zmk_hid_implicit_modifiers_release() {
|
|||
}
|
||||
|
||||
int zmk_hid_keyboard_press(zmk_key code) {
|
||||
if (code >= HID_USAGE_KEY_KEYBOARD_LEFTCONTROL && code <= HID_USAGE_KEY_KEYBOARD_RIGHT_GUI) {
|
||||
return zmk_hid_register_mod(code - HID_USAGE_KEY_KEYBOARD_LEFTCONTROL);
|
||||
if (code >= HID_USAGE_ID(HID_USAGE_KEY_KEYBOARD_LEFTCONTROL) &&
|
||||
code <= HID_USAGE_ID(HID_USAGE_KEY_KEYBOARD_RIGHT_GUI)) {
|
||||
return zmk_hid_register_mod(code - HID_USAGE_ID(HID_USAGE_KEY_KEYBOARD_LEFTCONTROL));
|
||||
}
|
||||
TOGGLE_KEYBOARD(0U, code);
|
||||
return 0;
|
||||
};
|
||||
|
||||
int zmk_hid_keyboard_release(zmk_key code) {
|
||||
if (code >= HID_USAGE_KEY_KEYBOARD_LEFTCONTROL && code <= HID_USAGE_KEY_KEYBOARD_RIGHT_GUI) {
|
||||
return zmk_hid_unregister_mod(code - HID_USAGE_KEY_KEYBOARD_LEFTCONTROL);
|
||||
if (code >= HID_USAGE_ID(HID_USAGE_KEY_KEYBOARD_LEFTCONTROL) &&
|
||||
code <= HID_USAGE_ID(HID_USAGE_KEY_KEYBOARD_RIGHT_GUI)) {
|
||||
return zmk_hid_unregister_mod(code - HID_USAGE_ID(HID_USAGE_KEY_KEYBOARD_LEFTCONTROL));
|
||||
}
|
||||
TOGGLE_KEYBOARD(code, 0U);
|
||||
return 0;
|
||||
|
|
Loading…
Add table
Reference in a new issue