aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoremersion <contact@emersion.fr>2017-09-22 19:26:11 +0200
committeremersion <contact@emersion.fr>2017-09-22 19:26:11 +0200
commitc38d7949ef662e3d5208bca888facd61f050f31e (patch)
tree701c43d4efbf4829a95f7db3ab902f68d1e2507a
parente5e6dab7fdbbcc5ce62a40a14b138b4e59a148d9 (diff)
Use wl_display_next_serial
-rw-r--r--examples/compositor.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/examples/compositor.c b/examples/compositor.c
index 721ae6bf..53b385b7 100644
--- a/examples/compositor.c
+++ b/examples/compositor.c
@@ -350,8 +350,8 @@ static void handle_keyboard_key(struct keyboard_state *keyboard,
if (res != sample->focus && seat_handle && seat_handle->keyboard) {
struct wl_array keys;
wl_array_init(&keys);
- wl_keyboard_send_enter(seat_handle->keyboard, ++sample->serial, res,
- &keys);
+ uint32_t serial = wl_display_next_serial(state->display);
+ wl_keyboard_send_enter(seat_handle->keyboard, serial, res, &keys);
sample->focus = res;
}
@@ -364,10 +364,12 @@ static void handle_keyboard_key(struct keyboard_state *keyboard,
XKB_STATE_MODS_LOCKED);
uint32_t group = xkb_state_serialize_layout(keyboard->xkb_state,
XKB_STATE_LAYOUT_EFFECTIVE);
- wl_keyboard_send_modifiers(seat_handle->keyboard, ++sample->serial,
+ uint32_t modifiers_serial = wl_display_next_serial(state->display);
+ uint32_t key_serial = wl_display_next_serial(state->display);
+ wl_keyboard_send_modifiers(seat_handle->keyboard, modifiers_serial,
depressed, latched, locked, group);
- wl_keyboard_send_key(seat_handle->keyboard, ++sample->serial, 0,
- keycode, key_state);
+ wl_keyboard_send_key(seat_handle->keyboard, key_serial, 0, keycode,
+ key_state);
}
if (sym == XKB_KEY_Super_L || sym == XKB_KEY_Super_R) {