summaryrefslogtreecommitdiffstats
path: root/include/sway/input/keyboard.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/sway/input/keyboard.h')
-rw-r--r--include/sway/input/keyboard.h18
1 files changed, 12 insertions, 6 deletions
diff --git a/include/sway/input/keyboard.h b/include/sway/input/keyboard.h
index 8ec3eb35..c9a8d514 100644
--- a/include/sway/input/keyboard.h
+++ b/include/sway/input/keyboard.h
@@ -3,7 +3,13 @@
3 3
4#include "sway/input/seat.h" 4#include "sway/input/seat.h"
5 5
6#define SWAY_KEYBOARD_PRESSED_KEYSYMS_CAP 32 6#define SWAY_KEYBOARD_PRESSED_KEYS_CAP 32
7
8struct sway_shortcut_state {
9 uint32_t pressed_keys[SWAY_KEYBOARD_PRESSED_KEYS_CAP];
10 uint32_t pressed_keycodes[SWAY_KEYBOARD_PRESSED_KEYS_CAP];
11 int last_key_index;
12};
7 13
8struct sway_keyboard { 14struct sway_keyboard {
9 struct sway_seat_device *seat_device; 15 struct sway_seat_device *seat_device;
@@ -13,11 +19,11 @@ struct sway_keyboard {
13 struct wl_listener keyboard_key; 19 struct wl_listener keyboard_key;
14 struct wl_listener keyboard_modifiers; 20 struct wl_listener keyboard_modifiers;
15 21
16 xkb_keysym_t pressed_keysyms_translated[SWAY_KEYBOARD_PRESSED_KEYSYMS_CAP]; 22 struct sway_shortcut_state state_keysyms_translated;
17 uint32_t modifiers_translated; 23 struct sway_shortcut_state state_keysyms_raw;
18 24 struct sway_shortcut_state state_keycodes;
19 xkb_keysym_t pressed_keysyms_raw[SWAY_KEYBOARD_PRESSED_KEYSYMS_CAP]; 25 struct sway_binding *held_binding;
20 uint32_t modifiers_raw; 26 uint32_t last_modifiers;
21}; 27};
22 28
23struct sway_keyboard *sway_keyboard_create(struct sway_seat *seat, 29struct sway_keyboard *sway_keyboard_create(struct sway_seat *seat,