diff options
Diffstat (limited to 'include/sway/input')
| -rw-r--r-- | include/sway/input/cursor.h | 26 | ||||
| -rw-r--r-- | include/sway/input/input-manager.h | 22 | ||||
| -rw-r--r-- | include/sway/input/seat.h | 21 | 
3 files changed, 69 insertions, 0 deletions
diff --git a/include/sway/input/cursor.h b/include/sway/input/cursor.h new file mode 100644 index 00000000..91421964 --- /dev/null +++ b/include/sway/input/cursor.h @@ -0,0 +1,26 @@ +#ifndef _SWAY_CURSOR_H +#define _SWAY_CURSOR_H + +#include "sway/input/seat.h" + +struct sway_cursor { +	struct wlr_cursor *cursor; + +	struct wl_listener motion; +	struct wl_listener motion_absolute; +	struct wl_listener button; +	struct wl_listener axis; + +	struct wl_listener touch_down; +	struct wl_listener touch_up; +	struct wl_listener touch_motion; + +	struct wl_listener tool_axis; +	struct wl_listener tool_tip; + +	struct wl_listener request_set_cursor; +}; + +struct sway_cursor *sway_cursor_create(struct sway_seat *seat); + +#endif diff --git a/include/sway/input/input-manager.h b/include/sway/input/input-manager.h new file mode 100644 index 00000000..5dc75ba7 --- /dev/null +++ b/include/sway/input/input-manager.h @@ -0,0 +1,22 @@ +#ifndef _SWAY_INPUT_MANAGER_H +#define _SWAY_INPUT_MANAGER_H +#include <libinput.h> +#include "sway/server.h" +#include "sway/config.h" +#include "list.h" + +struct sway_input_manager { +	struct wl_listener input_add; +	struct wl_listener input_remove; +	struct sway_server *server; +	list_t *seats; +}; + +struct input_config *new_input_config(const char* identifier); + +char* libinput_dev_unique_id(struct libinput_device *dev); + +struct sway_input_manager *sway_input_manager_create( +		struct sway_server *server); + +#endif diff --git a/include/sway/input/seat.h b/include/sway/input/seat.h new file mode 100644 index 00000000..a84b7efd --- /dev/null +++ b/include/sway/input/seat.h @@ -0,0 +1,21 @@ +#ifndef _SWAY_SEAT_H +#define _SWAY_SEAT_H + +#include <wlr/types/wlr_seat.h> +#include "sway/input/input-manager.h" + +struct sway_seat { +	struct wlr_seat *seat; +	struct sway_cursor *cursor; +}; + +struct sway_seat *sway_seat_create(struct wl_display *display, +		const char *seat_name); + +void sway_seat_add_device(struct sway_seat *seat, +		struct wlr_input_device *device); + +void sway_seat_remove_device(struct sway_seat *seat, +		struct wlr_input_device *device); + +#endif  | 
