diff options
author | 2018-06-13 05:53:02 -0700 | |
---|---|---|
committer | 2018-06-13 05:53:02 -0700 | |
commit | 55fe5fc580c31a5e0ce67a8d515061f94f1f92d0 (patch) | |
tree | 855a5886f90dd555ae1057049d8d802d0c2b5cfb /include | |
parent | Merge pull request #2124 from emersion/drag-icons (diff) | |
parent | Fix keyboard shortcut handling inconsistencies (diff) | |
download | sway-55fe5fc580c31a5e0ce67a8d515061f94f1f92d0.tar.gz sway-55fe5fc580c31a5e0ce67a8d515061f94f1f92d0.tar.zst sway-55fe5fc580c31a5e0ce67a8d515061f94f1f92d0.zip |
Merge pull request #2130 from frsfnrrg/keyboard-tuning
Clean up keyboard handling code
Diffstat (limited to 'include')
-rw-r--r-- | include/sway/config.h | 2 | ||||
-rw-r--r-- | include/sway/input/keyboard.h | 5 |
2 files changed, 4 insertions, 3 deletions
diff --git a/include/sway/config.h b/include/sway/config.h index 81e9c382..e75b0664 100644 --- a/include/sway/config.h +++ b/include/sway/config.h | |||
@@ -30,7 +30,7 @@ struct sway_binding { | |||
30 | bool release; | 30 | bool release; |
31 | bool locked; | 31 | bool locked; |
32 | bool bindcode; | 32 | bool bindcode; |
33 | list_t *keys; | 33 | list_t *keys; // sorted in ascending order |
34 | uint32_t modifiers; | 34 | uint32_t modifiers; |
35 | char *command; | 35 | char *command; |
36 | }; | 36 | }; |
diff --git a/include/sway/input/keyboard.h b/include/sway/input/keyboard.h index e99a54b1..6713398e 100644 --- a/include/sway/input/keyboard.h +++ b/include/sway/input/keyboard.h | |||
@@ -21,7 +21,9 @@ struct sway_shortcut_state { | |||
21 | * including duplicates when a keycode generates multiple key ids. | 21 | * including duplicates when a keycode generates multiple key ids. |
22 | */ | 22 | */ |
23 | uint32_t pressed_keycodes[SWAY_KEYBOARD_PRESSED_KEYS_CAP]; | 23 | uint32_t pressed_keycodes[SWAY_KEYBOARD_PRESSED_KEYS_CAP]; |
24 | int last_key_index; | 24 | uint32_t last_keycode; |
25 | uint32_t last_raw_modifiers; | ||
26 | size_t npressed; | ||
25 | }; | 27 | }; |
26 | 28 | ||
27 | struct sway_keyboard { | 29 | struct sway_keyboard { |
@@ -36,7 +38,6 @@ struct sway_keyboard { | |||
36 | struct sway_shortcut_state state_keysyms_raw; | 38 | struct sway_shortcut_state state_keysyms_raw; |
37 | struct sway_shortcut_state state_keycodes; | 39 | struct sway_shortcut_state state_keycodes; |
38 | struct sway_binding *held_binding; | 40 | struct sway_binding *held_binding; |
39 | uint32_t last_modifiers; | ||
40 | }; | 41 | }; |
41 | 42 | ||
42 | struct sway_keyboard *sway_keyboard_create(struct sway_seat *seat, | 43 | struct sway_keyboard *sway_keyboard_create(struct sway_seat *seat, |