input: store the grab serial of the keyboard
The serial can be checked against the one passed to wl_shell.set_popup or equivalent. Reviewed-by: Daniel Stone <daniels@collabora.com>
This commit is contained in:
parent
023b265b44
commit
b6ddf6c229
@ -1321,8 +1321,6 @@ notify_key(struct weston_seat *seat, uint32_t time, uint32_t key,
|
||||
|
||||
if (state == WL_KEYBOARD_KEY_STATE_PRESSED) {
|
||||
weston_compositor_idle_inhibit(compositor);
|
||||
keyboard->grab_key = key;
|
||||
keyboard->grab_time = time;
|
||||
} else {
|
||||
weston_compositor_idle_release(compositor);
|
||||
}
|
||||
@ -1361,6 +1359,13 @@ notify_key(struct weston_seat *seat, uint32_t time, uint32_t key,
|
||||
key,
|
||||
state);
|
||||
}
|
||||
|
||||
if (state == WL_KEYBOARD_KEY_STATE_PRESSED) {
|
||||
keyboard->grab_serial =
|
||||
wl_display_get_serial(compositor->wl_display);
|
||||
keyboard->grab_time = time;
|
||||
keyboard->grab_key = key;
|
||||
}
|
||||
}
|
||||
|
||||
WL_EXPORT void
|
||||
|
Loading…
x
Reference in New Issue
Block a user