refactor(hid): add mask to HID_USAGE_PAGE macro
This commit is contained in:
parent
131d001e8d
commit
ff739a9918
3 changed files with 3 additions and 3 deletions
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#define HID_USAGE(page, id) ((page << 16) | id)
|
#define HID_USAGE(page, id) ((page << 16) | id)
|
||||||
#define HID_USAGE_ID(usage) (usage & 0xFFFF)
|
#define HID_USAGE_ID(usage) (usage & 0xFFFF)
|
||||||
#define HID_USAGE_PAGE(usage) (usage >> 16)
|
#define HID_USAGE_PAGE(usage) ((usage >> 16) & 0xFF)
|
||||||
|
|
||||||
/* WARNING: DEPRECATED from dt-bindings/zmk/keys.h */
|
/* WARNING: DEPRECATED from dt-bindings/zmk/keys.h */
|
||||||
#define USAGE_KEYPAD (0x07) // WARNING: DEPRECATED (DO NOT USE)
|
#define USAGE_KEYPAD (0x07) // WARNING: DEPRECATED (DO NOT USE)
|
||||||
|
|
|
@ -23,7 +23,7 @@ ZMK_EVENT_DECLARE(zmk_keycode_state_changed);
|
||||||
|
|
||||||
static inline struct zmk_keycode_state_changed_event *
|
static inline struct zmk_keycode_state_changed_event *
|
||||||
zmk_keycode_state_changed_from_encoded(uint32_t encoded, bool pressed, int64_t timestamp) {
|
zmk_keycode_state_changed_from_encoded(uint32_t encoded, bool pressed, int64_t timestamp) {
|
||||||
uint16_t page = HID_USAGE_PAGE(encoded) & 0xFF;
|
uint16_t page = HID_USAGE_PAGE(encoded);
|
||||||
uint16_t id = HID_USAGE_ID(encoded);
|
uint16_t id = HID_USAGE_ID(encoded);
|
||||||
uint8_t implicit_modifiers = 0x00;
|
uint8_t implicit_modifiers = 0x00;
|
||||||
uint8_t explicit_modifiers = 0x00;
|
uint8_t explicit_modifiers = 0x00;
|
||||||
|
|
|
@ -190,7 +190,7 @@ static int sticky_key_keycode_state_changed_listener(const zmk_event_t *eh) {
|
||||||
|
|
||||||
if (strcmp(sticky_key->config->behavior.behavior_dev, "KEY_PRESS") == 0 &&
|
if (strcmp(sticky_key->config->behavior.behavior_dev, "KEY_PRESS") == 0 &&
|
||||||
HID_USAGE_ID(sticky_key->param1) == ev->keycode &&
|
HID_USAGE_ID(sticky_key->param1) == ev->keycode &&
|
||||||
(HID_USAGE_PAGE(sticky_key->param1) & 0xFF) == ev->usage_page &&
|
HID_USAGE_PAGE(sticky_key->param1) == ev->usage_page &&
|
||||||
SELECT_MODS(sticky_key->param1) == ev->implicit_modifiers) {
|
SELECT_MODS(sticky_key->param1) == ev->implicit_modifiers) {
|
||||||
// don't catch key down events generated by the sticky key behavior itself
|
// don't catch key down events generated by the sticky key behavior itself
|
||||||
continue;
|
continue;
|
||||||
|
|
Loading…
Add table
Reference in a new issue