aboutsummaryrefslogtreecommitdiff
path: root/rootston/input.c
diff options
context:
space:
mode:
Diffstat (limited to 'rootston/input.c')
-rw-r--r--rootston/input.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/rootston/input.c b/rootston/input.c
index b4427212..9700b840 100644
--- a/rootston/input.c
+++ b/rootston/input.c
@@ -40,7 +40,7 @@ static void input_add_notify(struct wl_listener *listener, void *data) {
//touch_add(device, input);
break;
case WLR_INPUT_DEVICE_TABLET_TOOL:
- //tablet_tool_add(device, input);
+ tablet_tool_add(device, input);
break;
default:
break;
@@ -61,7 +61,7 @@ static void input_remove_notify(struct wl_listener *listener, void *data) {
//touch_remove(device, input);
break;
case WLR_INPUT_DEVICE_TABLET_TOOL:
- //tablet_tool_remove(device, input);
+ tablet_tool_remove(device, input);
break;
default:
break;
@@ -71,6 +71,8 @@ static void input_remove_notify(struct wl_listener *listener, void *data) {
struct roots_input *input_create(struct roots_server *server,
struct roots_config *config) {
wlr_log(L_DEBUG, "Initializing roots input");
+ assert(server->desktop);
+
struct roots_input *input = calloc(1, sizeof(struct roots_input));
assert(input);
@@ -104,6 +106,11 @@ struct roots_input *input_create(struct roots_server *server,
cursor_initialize(input);
wlr_cursor_set_xcursor(input->cursor, input->xcursor);
+ wlr_cursor_attach_output_layout(input->cursor, server->desktop->layout);
+ wlr_cursor_map_to_region(input->cursor, config->cursor.mapped_box);
+ cursor_load_config(config, input->cursor,
+ input, server->desktop);
+
return input;
}