aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorBrian Ashworth <bosrsf04@gmail.com>2019-07-17 17:12:20 -0400
committerSimon Ser <contact@emersion.fr>2019-07-23 20:45:46 +0300
commit6effca7b61e87c7d17885d007d94e556a0137651 (patch)
tree686cc1e219d8236f8c9864c9992b3cb6b44c9583 /include
parent36aa67e549609ce6c786c382f14ab866536cac47 (diff)
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.h1
-rw-r--r--include/sway/input/keyboard.h1
-rw-r--r--include/sway/ipc-server.h2
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 {
// sway-specific event types
IPC_EVENT_BAR_STATE_UPDATE = ((1<<31) | 20),
+ IPC_EVENT_INPUT = ((1<<31) | 21),
};
#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 {
struct sway_seat_device *seat_device;
struct xkb_keymap *keymap;
+ xkb_layout_index_t effective_layout;
struct wl_listener keyboard_key;
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 @@
#define _SWAY_IPC_SERVER_H
#include <sys/socket.h>
#include "sway/config.h"
+#include "sway/input/input-manager.h"
#include "sway/tree/container.h"
#include "ipc.h"
@@ -19,5 +20,6 @@ void ipc_event_bar_state_update(struct bar_config *bar);
void ipc_event_mode(const char *mode, bool pango);
void ipc_event_shutdown(const char *reason);
void ipc_event_binding(struct sway_binding *binding);
+void ipc_event_input(const char *change, struct sway_input_device *device);
#endif