diff options
author | Harry Jeffery <harry@exec64.co.uk> | 2019-08-23 23:34:02 +0100 |
---|---|---|
committer | Harry Jeffery <harry@exec64.co.uk> | 2019-08-23 23:34:02 +0100 |
commit | 9e1d6e24a028ec96fb11ba943769764665fb024c (patch) | |
tree | 50eaaf19bbff64e6309ebe8c2b1ab1c4b58f3df9 /src/wl_window.c | |
parent | 9850d9c6a2be489a912ff3c98c83eef77198fccc (diff) | |
download | imv-9e1d6e24a028ec96fb11ba943769764665fb024c.tar.gz |
wl_window: Maintain keyboard modifiers state
Diffstat (limited to 'src/wl_window.c')
-rw-r--r-- | src/wl_window.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/wl_window.c b/src/wl_window.c index ace66f0..e9a8a0f 100644 --- a/src/wl_window.c +++ b/src/wl_window.c @@ -152,13 +152,21 @@ static void keyboard_modifiers(void *data, struct wl_keyboard *keyboard, uint32_t serial, uint32_t mods_depressed, uint32_t mods_latched, uint32_t mods_locked, uint32_t group) { - (void)data; (void)keyboard; (void)serial; - (void)mods_depressed; - (void)mods_latched; - (void)mods_locked; (void)group; + struct imv_window *window = data; + struct imv_event e = { + .type = IMV_EVENT_KEYBOARD_MODS, + .data = { + .keyboard_mods = { + .depressed = mods_depressed, + .latched = mods_latched, + .locked = mods_locked, + } + } + }; + imv_window_push_event(window, &e); } static void keyboard_repeat(void *data, struct wl_keyboard *keyboard, |