wayland: Store key press/release serials on MetaWaylandKeyboard
https://bugzilla.gnome.org/show_bug.cgi?id=756296
This commit is contained in:
parent
43a1d43f2b
commit
dd5a4ecdf9
@ -251,11 +251,12 @@ notify_key (MetaWaylandKeyboard *keyboard,
|
|||||||
{
|
{
|
||||||
struct wl_client *client = wl_resource_get_client (keyboard->focus_surface->resource);
|
struct wl_client *client = wl_resource_get_client (keyboard->focus_surface->resource);
|
||||||
struct wl_display *display = wl_client_get_display (client);
|
struct wl_display *display = wl_client_get_display (client);
|
||||||
uint32_t serial = wl_display_next_serial (display);
|
|
||||||
|
keyboard->key_serial = wl_display_next_serial (display);
|
||||||
|
|
||||||
wl_resource_for_each (resource, l)
|
wl_resource_for_each (resource, l)
|
||||||
{
|
{
|
||||||
wl_keyboard_send_key (resource, serial, time, key, state);
|
wl_keyboard_send_key (resource, keyboard->key_serial, time, key, state);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -68,6 +68,7 @@ struct _MetaWaylandKeyboard
|
|||||||
MetaWaylandSurface *focus_surface;
|
MetaWaylandSurface *focus_surface;
|
||||||
struct wl_listener focus_surface_listener;
|
struct wl_listener focus_surface_listener;
|
||||||
uint32_t focus_serial;
|
uint32_t focus_serial;
|
||||||
|
uint32_t key_serial;
|
||||||
|
|
||||||
MetaWaylandXkbInfo xkb_info;
|
MetaWaylandXkbInfo xkb_info;
|
||||||
enum xkb_state_component mods_changed;
|
enum xkb_state_component mods_changed;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user