diff options
Diffstat (limited to 'include/rootston')
-rw-r--r-- | include/rootston/config.h | 1 | ||||
-rw-r--r-- | include/rootston/input.h | 22 | ||||
-rw-r--r-- | include/rootston/view.h | 7 |
3 files changed, 19 insertions, 11 deletions
diff --git a/include/rootston/config.h b/include/rootston/config.h index 66347c3c..5fa4890f 100644 --- a/include/rootston/config.h +++ b/include/rootston/config.h @@ -42,6 +42,7 @@ struct roots_config { struct wl_list devices; struct wl_list bindings; char *config_path; + char *startup_cmd; }; struct roots_config *parse_args(int argc, char *argv[]); diff --git a/include/rootston/input.h b/include/rootston/input.h index 516104a7..ddd5a05d 100644 --- a/include/rootston/input.h +++ b/include/rootston/input.h @@ -24,18 +24,12 @@ struct roots_keyboard { struct roots_pointer { struct roots_input *input; struct wlr_input_device *device; - // We don't listen to any pointer events directly - they go through - // wlr_cursor struct wl_list link; }; struct roots_touch { struct roots_input *input; struct wlr_input_device *device; - struct wl_listener down; - struct wl_listener up; - struct wl_listener motion; - struct wl_listener cancel; struct wl_list link; }; @@ -70,6 +64,13 @@ struct roots_input_event { struct wlr_input_device *device; }; +struct roots_touch_point { + struct roots_touch *device; + int32_t slot; + double x, y; + struct wl_list link; +}; + struct roots_input { struct roots_config *config; struct roots_server *server; @@ -104,9 +105,16 @@ struct roots_input { struct wl_listener cursor_motion_absolute; struct wl_listener cursor_button; struct wl_listener cursor_axis; + + struct wl_listener cursor_touch_down; + struct wl_listener cursor_touch_up; + struct wl_listener cursor_touch_motion; + struct wl_listener cursor_tool_axis; struct wl_listener cursor_tool_tip; + struct wl_list touch_points; + struct wl_listener pointer_grab_end; struct wl_listener request_set_cursor; @@ -120,6 +128,8 @@ void pointer_add(struct wlr_input_device *device, struct roots_input *input); void pointer_remove(struct wlr_input_device *device, struct roots_input *input); void keyboard_add(struct wlr_input_device *device, struct roots_input *input); void keyboard_remove(struct wlr_input_device *device, struct roots_input *input); +void touch_add(struct wlr_input_device *device, struct roots_input *input); +void touch_remove(struct wlr_input_device *device, struct roots_input *input); void tablet_tool_add(struct wlr_input_device *device, struct roots_input *input); void tablet_tool_remove(struct wlr_input_device *device, struct roots_input *input); diff --git a/include/rootston/view.h b/include/rootston/view.h index ad722225..7d297329 100644 --- a/include/rootston/view.h +++ b/include/rootston/view.h @@ -8,13 +8,12 @@ struct roots_wl_shell_surface { struct roots_view *view; + // TODO: Maybe destroy listener should go in roots_view struct wl_listener destroy; struct wl_listener ping_timeout; struct wl_listener request_move; struct wl_listener request_resize; - struct wl_listener request_set_fullscreen; - struct wl_listener request_set_maximized; struct wl_listener surface_commit; }; @@ -25,15 +24,13 @@ struct roots_xdg_surface_v6 { // TODO: Maybe destroy listener should go in roots_view struct wl_listener commit; struct wl_listener destroy; - struct wl_listener ping_timeout; - struct wl_listener request_minimize; struct wl_listener request_move; struct wl_listener request_resize; - struct wl_listener request_show_window_menu; }; struct roots_xwayland_surface { struct roots_view *view; + // TODO: Maybe destroy listener should go in roots_view struct wl_listener destroy; struct wl_listener request_configure; |