diff options
author | Brian Ashworth <bosrsf04@gmail.com> | 2019-07-17 17:12:20 -0400 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2019-07-23 20:45:46 +0300 |
commit | 6effca7b61e87c7d17885d007d94e556a0137651 (patch) | |
tree | 686cc1e219d8236f8c9864c9992b3cb6b44c9583 /include | |
parent | input_cmd_xkb_switch_layout: support input types (diff) | |
download | sway-6effca7b61e87c7d17885d007d94e556a0137651.tar.gz sway-6effca7b61e87c7d17885d007d94e556a0137651.tar.zst sway-6effca7b61e87c7d17885d007d94e556a0137651.zip |
ipc: add an input event
This adds an ipc event related to input devices. Currently the
following changes are supported:
- added: when an input device becomes available
- removed: when an input device is no longer available
- xkb_keymap_changed: (keyboards only) the keymap changed
- xkb_layout_changed: (keyboards only) the effective layout changed
Diffstat (limited to 'include')
-rw-r--r-- | include/ipc.h | 1 | ||||
-rw-r--r-- | include/sway/input/keyboard.h | 1 | ||||
-rw-r--r-- | include/sway/ipc-server.h | 2 |
3 files changed, 4 insertions, 0 deletions
diff --git a/include/ipc.h b/include/ipc.h index 6063f69c..7ae21ab3 100644 --- a/include/ipc.h +++ b/include/ipc.h | |||
@@ -34,6 +34,7 @@ enum ipc_command_type { | |||
34 | 34 | ||
35 | // sway-specific event types | 35 | // sway-specific event types |
36 | IPC_EVENT_BAR_STATE_UPDATE = ((1<<31) | 20), | 36 | IPC_EVENT_BAR_STATE_UPDATE = ((1<<31) | 20), |
37 | IPC_EVENT_INPUT = ((1<<31) | 21), | ||
37 | }; | 38 | }; |
38 | 39 | ||
39 | #endif | 40 | #endif |
diff --git a/include/sway/input/keyboard.h b/include/sway/input/keyboard.h index 90214af9..1ff63c94 100644 --- a/include/sway/input/keyboard.h +++ b/include/sway/input/keyboard.h | |||
@@ -52,6 +52,7 @@ struct sway_keyboard { | |||
52 | struct sway_seat_device *seat_device; | 52 | struct sway_seat_device *seat_device; |
53 | 53 | ||
54 | struct xkb_keymap *keymap; | 54 | struct xkb_keymap *keymap; |
55 | xkb_layout_index_t effective_layout; | ||
55 | 56 | ||
56 | struct wl_listener keyboard_key; | 57 | struct wl_listener keyboard_key; |
57 | struct wl_listener keyboard_modifiers; | 58 | struct wl_listener keyboard_modifiers; |
diff --git a/include/sway/ipc-server.h b/include/sway/ipc-server.h index 3c43f74d..bc4f781a 100644 --- a/include/sway/ipc-server.h +++ b/include/sway/ipc-server.h | |||
@@ -2,6 +2,7 @@ | |||
2 | #define _SWAY_IPC_SERVER_H | 2 | #define _SWAY_IPC_SERVER_H |
3 | #include <sys/socket.h> | 3 | #include <sys/socket.h> |
4 | #include "sway/config.h" | 4 | #include "sway/config.h" |
5 | #include "sway/input/input-manager.h" | ||
5 | #include "sway/tree/container.h" | 6 | #include "sway/tree/container.h" |
6 | #include "ipc.h" | 7 | #include "ipc.h" |
7 | 8 | ||
@@ -19,5 +20,6 @@ void ipc_event_bar_state_update(struct bar_config *bar); | |||
19 | void ipc_event_mode(const char *mode, bool pango); | 20 | void ipc_event_mode(const char *mode, bool pango); |
20 | void ipc_event_shutdown(const char *reason); | 21 | void ipc_event_shutdown(const char *reason); |
21 | void ipc_event_binding(struct sway_binding *binding); | 22 | void ipc_event_binding(struct sway_binding *binding); |
23 | void ipc_event_input(const char *change, struct sway_input_device *device); | ||
22 | 24 | ||
23 | #endif | 25 | #endif |