diff options
author | Simon Zeni <simon@bl4ckb0ne.ca> | 2022-03-01 14:49:30 -0500 |
---|---|---|
committer | Kirill Primak <vyivel@eclair.cafe> | 2022-03-07 16:37:41 +0000 |
commit | 7dc4a3ecd71cf41dd1800c6afd3b16c83a90f031 (patch) | |
tree | bf2326174d0d01369bec23763beb90eba870b5cd /include | |
parent | 39b68ea47a661b1f7562ce283652de08f222b2be (diff) |
interface/wlr_keyboard: rework destroy sequence
The destroy member in wlr_keyboard_impl has been removed. The function
`wlr_keyboard_finish` has been introduce to clean up the resources owned by a
wlr_keyboard.
`wlr_input_device_destroy` no longer destroys the wlr_keyboard, attempting to
destroy a wlr_keyboard will result in a no-op.
The field `name` has been added to the wlr_keyboard_impl to be able to identify
a given wlr_keyboard device.
Diffstat (limited to 'include')
-rw-r--r-- | include/wlr/interfaces/wlr_keyboard.h | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/include/wlr/interfaces/wlr_keyboard.h b/include/wlr/interfaces/wlr_keyboard.h index 4bcef57b..3f4c4255 100644 --- a/include/wlr/interfaces/wlr_keyboard.h +++ b/include/wlr/interfaces/wlr_keyboard.h @@ -13,13 +13,18 @@ #include <wlr/types/wlr_keyboard.h> struct wlr_keyboard_impl { - void (*destroy)(struct wlr_keyboard *keyboard); + const char *name; void (*led_update)(struct wlr_keyboard *keyboard, uint32_t leds); }; void wlr_keyboard_init(struct wlr_keyboard *keyboard, - const struct wlr_keyboard_impl *impl, const char *name); -void wlr_keyboard_destroy(struct wlr_keyboard *keyboard); + const struct wlr_keyboard_impl *impl, const char *name); + +/** + * Cleans up all of the resources owned by wlr_keyboard. + */ +void wlr_keyboard_finish(struct wlr_keyboard *keyboard); + void wlr_keyboard_notify_key(struct wlr_keyboard *keyboard, struct wlr_event_keyboard_key *event); void wlr_keyboard_notify_modifiers(struct wlr_keyboard *keyboard, |