diff options
Diffstat (limited to 'include/wlr')
-rw-r--r-- | include/wlr/types/wlr_keyboard_group.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/include/wlr/types/wlr_keyboard_group.h b/include/wlr/types/wlr_keyboard_group.h index 023887f3..0b3df226 100644 --- a/include/wlr/types/wlr_keyboard_group.h +++ b/include/wlr/types/wlr_keyboard_group.h @@ -18,6 +18,30 @@ struct wlr_keyboard_group { struct wlr_input_device *input_device; struct wl_list devices; // keyboard_group_device::link struct wl_list keys; // keyboard_group_key::link + + struct { + /* + * Sent when a keyboard has entered the group with keys currently + * pressed that are not pressed by any other keyboard in the group. The + * data for this signal will be a wl_array containing the key codes. + * This should be used to update the compositor's internal state. + * Bindings should not be triggered based off of these key codes and + * they should also not notify any surfaces of the key press. + */ + struct wl_signal enter; + + /* + * Sent when a keyboard has left the group with keys currently pressed + * that are not pressed by any other keyboard in the group. The data for + * this signal will be a wl_array containing the key codes. This should + * be used to update the compositor's internal state. Bindings should + * not be triggered based off of these key codes. Additionally, surfaces + * should only be notified if they received a corresponding key press + * for the key code. + */ + struct wl_signal leave; + } events; + void *data; }; |