From 23a07aaed9ad55af16f2eb920f9fcf3f2828765b Mon Sep 17 00:00:00 2001 From: Johan Malm Date: Fri, 27 Dec 2019 20:48:58 +0000 Subject: [PATCH] sed -i 's/tinywl_//' * --- labwc.h | 34 +++++++++++++++++----------------- main.c | 40 ++++++++++++++++++++-------------------- output.c | 10 +++++----- server.c | 28 ++++++++++++++-------------- view.c | 34 +++++++++++++++++----------------- xdg.c | 16 ++++++++-------- xwl.c | 14 +++++++------- 7 files changed, 88 insertions(+), 88 deletions(-) diff --git a/labwc.h b/labwc.h index acb4b694..6ac70e88 100644 --- a/labwc.h +++ b/labwc.h @@ -34,13 +34,13 @@ #define XWL_WINDOW_BORDER (3) /* For brevity's sake, struct members are annotated where they are used. */ -enum tinywl_cursor_mode { +enum cursor_mode { TINYWL_CURSOR_PASSTHROUGH, TINYWL_CURSOR_MOVE, TINYWL_CURSOR_RESIZE, }; -struct tinywl_server { +struct server { struct wl_display *wl_display; struct wlr_backend *backend; struct wlr_renderer *renderer; @@ -64,8 +64,8 @@ struct tinywl_server { struct wl_listener new_input; struct wl_listener request_cursor; struct wl_list keyboards; - enum tinywl_cursor_mode cursor_mode; - struct tinywl_view *grabbed_view; + enum cursor_mode cursor_mode; + struct view *grabbed_view; double grab_x, grab_y; int grab_width, grab_height; uint32_t resize_edges; @@ -75,9 +75,9 @@ struct tinywl_server { struct wl_listener new_output; }; -struct tinywl_output { +struct output { struct wl_list link; - struct tinywl_server *server; + struct server *server; struct wlr_output *wlr_output; struct wl_listener frame; }; @@ -87,10 +87,10 @@ enum view_type { LAB_XWAYLAND_VIEW }; -struct tinywl_view { +struct view { enum view_type type; struct wl_list link; - struct tinywl_server *server; + struct server *server; struct wlr_xdg_surface *xdg_surface; struct wlr_xwayland_surface *xwayland_surface; struct wlr_surface *surface; @@ -111,9 +111,9 @@ struct tinywl_view { int x, y; }; -struct tinywl_keyboard { +struct keyboard { struct wl_list link; - struct tinywl_server *server; + struct server *server; struct wlr_input_device *device; struct wl_listener modifiers; @@ -127,22 +127,22 @@ void xdg_toplevel_request_move(struct wl_listener *listener, void *data); void xdg_toplevel_request_resize(struct wl_listener *listener, void *data); void xdg_surface_new(struct wl_listener *listener, void *data); -int xwl_nr_parents(struct tinywl_view *view); +int xwl_nr_parents(struct view *view); void xwl_surface_map(struct wl_listener *listener, void *data); void xwl_surface_unmap(struct wl_listener *listener, void *data); void xwl_surface_destroy(struct wl_listener *listener, void *data); void xwl_surface_configure(struct wl_listener *listener, void *data); void xwl_surface_new(struct wl_listener *listener, void *data); -void focus_view(struct tinywl_view *view, struct wlr_surface *surface); -void view_focus_next_toplevel(struct tinywl_server *server); -void begin_interactive(struct tinywl_view *view, enum tinywl_cursor_mode mode, uint32_t edges); -bool is_toplevel(struct tinywl_view *view); -struct tinywl_view *desktop_view_at(struct tinywl_server *server, double lx, double ly, +void focus_view(struct view *view, struct wlr_surface *surface); +void view_focus_next_toplevel(struct server *server); +void begin_interactive(struct view *view, enum cursor_mode mode, uint32_t edges); +bool is_toplevel(struct view *view); +struct view *desktop_view_at(struct server *server, double lx, double ly, struct wlr_surface **surface, double *sx, double *sy); /* TODO: try to refactor to remove from header file */ -struct tinywl_view *first_toplevel(struct tinywl_server *server); +struct view *first_toplevel(struct server *server); void server_cursor_motion(struct wl_listener *listener, void *data); void server_cursor_motion_absolute(struct wl_listener *listener, void *data); diff --git a/main.c b/main.c index 36f14584..128f8a7d 100644 --- a/main.c +++ b/main.c @@ -6,8 +6,8 @@ #include #include -static struct tinywl_view *last_toplevel(struct tinywl_server *server) { - struct tinywl_view *view; +static struct view *last_toplevel(struct server *server) { + struct view *view; wl_list_for_each_reverse(view, &server->views, link) { if (!view->been_mapped) { @@ -21,12 +21,12 @@ static struct tinywl_view *last_toplevel(struct tinywl_server *server) { return NULL; } -static void view_focus_last_toplevel(struct tinywl_server *server) { +static void view_focus_last_toplevel(struct server *server) { /* TODO: write view_nr_toplevel_views() */ if (wl_list_length(&server->views) < 2) { return; } - struct tinywl_view *view = last_toplevel(server); + struct view *view = last_toplevel(server); focus_view(view, view->surface); } @@ -34,7 +34,7 @@ static void keyboard_handle_modifiers( struct wl_listener *listener, void *data) { /* This event is raised when a modifier key, such as shift or alt, is * pressed. We simply communicate this to the client. */ - struct tinywl_keyboard *keyboard = + struct keyboard *keyboard = wl_container_of(listener, keyboard, modifiers); /* * A seat can only have one keyboard, but this is a limitation of the @@ -48,7 +48,7 @@ static void keyboard_handle_modifiers( &keyboard->device->keyboard->modifiers); } -static void xdg_debug_show_one_view(struct tinywl_view *view) { +static void xdg_debug_show_one_view(struct view *view) { fprintf(stderr, "XDG "); switch (view->xdg_surface->role) { case WLR_XDG_SURFACE_ROLE_NONE: @@ -70,7 +70,7 @@ static void xdg_debug_show_one_view(struct tinywl_view *view) { view->xdg_surface->geometry.width); } -static void xwl_debug_show_one_view(struct tinywl_view *view) { +static void xwl_debug_show_one_view(struct view *view) { fprintf(stderr, "XWL "); if (!view->been_mapped) { fprintf(stderr, "- "); @@ -104,15 +104,15 @@ static void xwl_debug_show_one_view(struct tinywl_view *view) { */ } -static void debug_show_one_view(struct tinywl_view *view) { +static void debug_show_one_view(struct view *view) { if (view->type == LAB_XDG_SHELL_VIEW) xdg_debug_show_one_view(view); else if (view->type == LAB_XWAYLAND_VIEW) xwl_debug_show_one_view(view); } -static void debug_show_views(struct tinywl_server *server) { - struct tinywl_view *view; +static void debug_show_views(struct server *server) { + struct view *view; fprintf(stderr, "---\n"); fprintf(stderr, "TYPE NR_PNT NR_CLD MAPPED VIEW-POINTER NAME\n"); @@ -120,7 +120,7 @@ static void debug_show_views(struct tinywl_server *server) { debug_show_one_view(view); } -static bool handle_keybinding(struct tinywl_server *server, xkb_keysym_t sym) { +static bool handle_keybinding(struct server *server, xkb_keysym_t sym) { /* * Here we handle compositor keybindings. This is when the compositor is * processing keys, rather than passing them on to the client for its own @@ -157,9 +157,9 @@ static bool handle_keybinding(struct tinywl_server *server, xkb_keysym_t sym) { static void keyboard_handle_key( struct wl_listener *listener, void *data) { /* This event is raised when a key is pressed or released. */ - struct tinywl_keyboard *keyboard = + struct keyboard *keyboard = wl_container_of(listener, keyboard, key); - struct tinywl_server *server = keyboard->server; + struct server *server = keyboard->server; struct wlr_event_keyboard_key *event = data; struct wlr_seat *seat = server->seat; @@ -188,10 +188,10 @@ static void keyboard_handle_key( } } -static void server_new_keyboard(struct tinywl_server *server, +static void server_new_keyboard(struct server *server, struct wlr_input_device *device) { - struct tinywl_keyboard *keyboard = - calloc(1, sizeof(struct tinywl_keyboard)); + struct keyboard *keyboard = + calloc(1, sizeof(struct keyboard)); keyboard->server = server; keyboard->device = device; @@ -219,7 +219,7 @@ static void server_new_keyboard(struct tinywl_server *server, wl_list_insert(&server->keyboards, &keyboard->link); } -static void server_new_pointer(struct tinywl_server *server, +static void server_new_pointer(struct server *server, struct wlr_input_device *device) { /* We don't do anything special with pointers. All of our pointer handling * is proxied through wlr_cursor. On another compositor, you might take this @@ -231,7 +231,7 @@ static void server_new_pointer(struct tinywl_server *server, static void server_new_input(struct wl_listener *listener, void *data) { /* This event is raised by the backend when a new input device becomes * available. */ - struct tinywl_server *server = + struct server *server = wl_container_of(listener, server, new_input); struct wlr_input_device *device = data; switch (device->type) { @@ -255,7 +255,7 @@ static void server_new_input(struct wl_listener *listener, void *data) { } static void seat_request_cursor(struct wl_listener *listener, void *data) { - struct tinywl_server *server = wl_container_of( + struct server *server = wl_container_of( listener, server, request_cursor); /* This event is rasied by the seat when a client provides a cursor image */ struct wlr_seat_pointer_request_set_cursor_event *event = data; @@ -293,7 +293,7 @@ int main(int argc, char *argv[]) { return 0; } - struct tinywl_server server; + struct server server; /* The Wayland display is managed by libwayland. It handles accepting * clients from the Unix socket, manging Wayland globals, and so on. */ server.wl_display = wl_display_create(); diff --git a/output.c b/output.c index 6bafbe12..4e28aaa8 100644 --- a/output.c +++ b/output.c @@ -7,11 +7,11 @@ struct render_data { struct wlr_output *output; struct wlr_renderer *renderer; - struct tinywl_view *view; + struct view *view; struct timespec *when; }; -static void render_decorations(struct wlr_output *output, struct tinywl_view *view) { +static void render_decorations(struct wlr_output *output, struct view *view) { if (!view->surface) return; if (view->type != LAB_XWAYLAND_VIEW) @@ -39,7 +39,7 @@ static void render_surface(struct wlr_surface *surface, int sx, int sy, void *data) { /* This function is called for every surface that needs to be rendered. */ struct render_data *rdata = data; - struct tinywl_view *view = rdata->view; + struct view *view = rdata->view; struct wlr_output *output = rdata->output; /* We first obtain a wlr_texture, which is a GPU resource. wlroots @@ -100,7 +100,7 @@ static void render_surface(struct wlr_surface *surface, void output_frame(struct wl_listener *listener, void *data) { /* This function is called every time an output is ready to display a frame, * generally at the output's refresh rate (e.g. 60Hz). */ - struct tinywl_output *output = + struct output *output = wl_container_of(listener, output, frame); struct wlr_renderer *renderer = output->server->renderer; @@ -122,7 +122,7 @@ void output_frame(struct wl_listener *listener, void *data) { /* Each subsequent window we render is rendered on top of the last. Because * our view list is ordered front-to-back, we iterate over it backwards. */ - struct tinywl_view *view; + struct view *view; wl_list_for_each_reverse(view, &output->server->views, link) { if (!view->mapped) { /* An unmapped view should not be rendered. */ diff --git a/server.c b/server.c index bd5044d8..a46fe670 100644 --- a/server.c +++ b/server.c @@ -1,13 +1,13 @@ #include "labwc.h" -static void process_cursor_move(struct tinywl_server *server, uint32_t time) +static void process_cursor_move(struct server *server, uint32_t time) { /* Move the grabbed view to the new position. */ server->grabbed_view->x = server->cursor->x - server->grab_x; server->grabbed_view->y = server->cursor->y - server->grab_y; } -static void process_cursor_resize(struct tinywl_server *server, uint32_t time) +static void process_cursor_resize(struct server *server, uint32_t time) { /* * Resizing the grabbed view can be a little bit complicated, because we @@ -19,7 +19,7 @@ static void process_cursor_resize(struct tinywl_server *server, uint32_t time) * you'd wait for the client to prepare a buffer at the new size, then * commit any movement that was prepared. */ - struct tinywl_view *view = server->grabbed_view; + struct view *view = server->grabbed_view; double dx = server->cursor->x - server->grab_x; double dy = server->cursor->y - server->grab_y; double x = view->x; @@ -49,7 +49,7 @@ static void process_cursor_resize(struct tinywl_server *server, uint32_t time) wlr_xdg_toplevel_set_size(view->xdg_surface, width, height); } -static void process_cursor_motion(struct tinywl_server *server, uint32_t time) +static void process_cursor_motion(struct server *server, uint32_t time) { /* If the mode is non-passthrough, delegate to those functions. */ if (server->cursor_mode == TINYWL_CURSOR_MOVE) { @@ -64,7 +64,7 @@ static void process_cursor_motion(struct tinywl_server *server, uint32_t time) double sx, sy; struct wlr_seat *seat = server->seat; struct wlr_surface *surface = NULL; - struct tinywl_view *view = desktop_view_at(server, + struct view *view = desktop_view_at(server, server->cursor->x, server->cursor->y, &surface, &sx, &sy); if (!view) { /* If there's no view under the cursor, set the cursor image to a @@ -100,7 +100,7 @@ void server_cursor_motion(struct wl_listener *listener, void *data) { /* This event is forwarded by the cursor when a pointer emits a _relative_ * pointer motion event (i.e. a delta) */ - struct tinywl_server *server = + struct server *server = wl_container_of(listener, server, cursor_motion); struct wlr_event_pointer_motion *event = data; /* The cursor doesn't move unless we tell it to. The cursor automatically @@ -121,7 +121,7 @@ void server_cursor_motion_absolute(struct wl_listener *listener, void *data) * move the mouse over the window. You could enter the window from any edge, * so we have to warp the mouse there. There is also some hardware which * emits these events. */ - struct tinywl_server *server = + struct server *server = wl_container_of(listener, server, cursor_motion_absolute); struct wlr_event_pointer_motion_absolute *event = data; wlr_cursor_warp_absolute(server->cursor, event->device, event->x, event->y); @@ -132,7 +132,7 @@ void server_cursor_button(struct wl_listener *listener, void *data) { /* This event is forwarded by the cursor when a pointer emits a button * event. */ - struct tinywl_server *server = + struct server *server = wl_container_of(listener, server, cursor_button); struct wlr_event_pointer_button *event = data; /* Notify the client with pointer focus that a button press has occurred */ @@ -140,7 +140,7 @@ void server_cursor_button(struct wl_listener *listener, void *data) event->time_msec, event->button, event->state); double sx, sy; struct wlr_surface *surface; - struct tinywl_view *view = desktop_view_at(server, + struct view *view = desktop_view_at(server, server->cursor->x, server->cursor->y, &surface, &sx, &sy); if (event->state == WLR_BUTTON_RELEASED) { /* If you released any buttons, we exit interactive move/resize mode. */ @@ -154,7 +154,7 @@ void server_cursor_button(struct wl_listener *listener, void *data) void server_cursor_axis(struct wl_listener *listener, void *data) { /* This event is forwarded by the cursor when a pointer emits an axis event, * for example when you move the scroll wheel. */ - struct tinywl_server *server = + struct server *server = wl_container_of(listener, server, cursor_axis); struct wlr_event_pointer_axis *event = data; /* Notify the client with pointer focus of the axis event. */ @@ -168,7 +168,7 @@ void server_cursor_frame(struct wl_listener *listener, void *data) { * event. Frame events are sent after regular pointer events to group * multiple events together. For instance, two axis events may happen at the * same time, in which case a frame event won't be sent in between. */ - struct tinywl_server *server = + struct server *server = wl_container_of(listener, server, cursor_frame); /* Notify the client with pointer focus of the frame event. */ wlr_seat_pointer_notify_frame(server->seat); @@ -178,7 +178,7 @@ void server_new_output(struct wl_listener *listener, void *data) { /* This event is rasied by the backend when a new output (aka a display or * monitor) becomes available. */ - struct tinywl_server *server = + struct server *server = wl_container_of(listener, server, new_output); struct wlr_output *wlr_output = data; @@ -194,8 +194,8 @@ void server_new_output(struct wl_listener *listener, void *data) } /* Allocates and configures our state for this output */ - struct tinywl_output *output = - calloc(1, sizeof(struct tinywl_output)); + struct output *output = + calloc(1, sizeof(struct output)); output->wlr_output = wlr_output; output->server = server; /* Sets up a listener for the frame notify event. */ diff --git a/view.c b/view.c index f4918eba..92daf8ab 100644 --- a/view.c +++ b/view.c @@ -1,6 +1,6 @@ #include "labwc.h" -static void activate_view(struct tinywl_view *view) { +static void activate_view(struct view *view) { if (view->type == LAB_XDG_SHELL_VIEW) { wlr_xdg_toplevel_set_activated(view->xdg_surface, true); } else if (view->type == LAB_XWAYLAND_VIEW) { @@ -26,17 +26,17 @@ static void set_activated(struct wlr_surface *s, bool activated) { } } -static void move_to_front(struct tinywl_view *view) { +static void move_to_front(struct view *view) { wl_list_remove(&view->link); wl_list_insert(&view->server->views, &view->link); } -void focus_view(struct tinywl_view *view, struct wlr_surface *surface) { +void focus_view(struct view *view, struct wlr_surface *surface) { /* Note: this function only deals with keyboard focus. */ if (view == NULL) { return; } - struct tinywl_server *server = view->server; + struct server *server = view->server; struct wlr_seat *seat = server->seat; struct wlr_surface *prev_surface; @@ -68,9 +68,9 @@ void focus_view(struct tinywl_view *view, struct wlr_surface *surface) { keyboard->num_keycodes, &keyboard->modifiers); } -static struct tinywl_view *next_toplevel(struct tinywl_view *current) +static struct view *next_toplevel(struct view *current) { - struct tinywl_view *tmp = current; + struct view *tmp = current; do { tmp = wl_container_of(tmp->link.next, tmp, link); @@ -78,19 +78,19 @@ static struct tinywl_view *next_toplevel(struct tinywl_view *current) return tmp; } -void view_focus_next_toplevel(struct tinywl_server *server) { - struct tinywl_view *view; +void view_focus_next_toplevel(struct server *server) { + struct view *view; view = first_toplevel(server); view = next_toplevel(view); focus_view(view, view->surface); } -void begin_interactive(struct tinywl_view *view, - enum tinywl_cursor_mode mode, uint32_t edges) { +void begin_interactive(struct view *view, + enum cursor_mode mode, uint32_t edges) { /* This function sets up an interactive move or resize operation, where the * compositor stops propegating pointer events to clients and instead * consumes them itself, to move or resize windows. */ - struct tinywl_server *server = view->server; + struct server *server = view->server; struct wlr_surface *focused_surface = server->seat->pointer_state.focused_surface; if (view->surface != focused_surface) { @@ -125,7 +125,7 @@ void begin_interactive(struct tinywl_view *view, server->resize_edges = edges; } -bool is_toplevel(struct tinywl_view *view) { +bool is_toplevel(struct view *view) { switch (view->type) { case LAB_XWAYLAND_VIEW: return xwl_nr_parents(view) > 0 ? false : true; @@ -135,8 +135,8 @@ bool is_toplevel(struct tinywl_view *view) { return false; } -struct tinywl_view *first_toplevel(struct tinywl_server *server) { - struct tinywl_view *view; +struct view *first_toplevel(struct server *server) { + struct view *view; wl_list_for_each(view, &server->views, link) { if (!view->been_mapped) { @@ -150,7 +150,7 @@ struct tinywl_view *first_toplevel(struct tinywl_server *server) { return NULL; } -static bool view_at(struct tinywl_view *view, +static bool view_at(struct view *view, double lx, double ly, struct wlr_surface **surface, double *sx, double *sy) { /* @@ -188,11 +188,11 @@ static bool view_at(struct tinywl_view *view, return false; } -struct tinywl_view *desktop_view_at(struct tinywl_server *server, double lx, double ly, +struct view *desktop_view_at(struct server *server, double lx, double ly, struct wlr_surface **surface, double *sx, double *sy) { /* This iterates over all of our surfaces and attempts to find one under the * cursor. This relies on server->views being ordered from top-to-bottom. */ - struct tinywl_view *view; + struct view *view; wl_list_for_each(view, &server->views, link) { if (view_at(view, lx, ly, surface, sx, sy)) { return view; diff --git a/xdg.c b/xdg.c index 2cf6f6a5..c1a42d6a 100644 --- a/xdg.c +++ b/xdg.c @@ -3,7 +3,7 @@ void xdg_surface_map(struct wl_listener *listener, void *data) { /* Called when the surface is mapped, or ready to display on-screen. */ - struct tinywl_view *view = wl_container_of(listener, view, map); + struct view *view = wl_container_of(listener, view, map); view->mapped = true; view->been_mapped = true; view->surface = view->xdg_surface->surface; @@ -12,14 +12,14 @@ void xdg_surface_map(struct wl_listener *listener, void *data) void xdg_surface_unmap(struct wl_listener *listener, void *data) { - struct tinywl_view *view = wl_container_of(listener, view, unmap); + struct view *view = wl_container_of(listener, view, unmap); view->mapped = false; view_focus_next_toplevel(view->server); } void xdg_surface_destroy(struct wl_listener *listener, void *data) { - struct tinywl_view *view = wl_container_of(listener, view, destroy); + struct view *view = wl_container_of(listener, view, destroy); wl_list_remove(&view->link); free(view); } @@ -31,7 +31,7 @@ void xdg_toplevel_request_move(struct wl_listener *listener, void *data) * decorations. Note that a more sophisticated compositor should check the * provied serial against a list of button press serials sent to this * client, to prevent the client from requesting this whenever they want. */ - struct tinywl_view *view = wl_container_of(listener, view, request_move); + struct view *view = wl_container_of(listener, view, request_move); begin_interactive(view, TINYWL_CURSOR_MOVE, 0); } @@ -43,21 +43,21 @@ void xdg_toplevel_request_resize(struct wl_listener *listener, void *data) * provied serial against a list of button press serials sent to this * client, to prevent the client from requesting this whenever they want. */ struct wlr_xdg_toplevel_resize_event *event = data; - struct tinywl_view *view = wl_container_of(listener, view, request_resize); + struct view *view = wl_container_of(listener, view, request_resize); begin_interactive(view, TINYWL_CURSOR_RESIZE, event->edges); } void xdg_surface_new(struct wl_listener *listener, void *data) { - struct tinywl_server *server = + struct server *server = wl_container_of(listener, server, new_xdg_surface); struct wlr_xdg_surface *xdg_surface = data; if (xdg_surface->role != WLR_XDG_SURFACE_ROLE_TOPLEVEL) { return; } - struct tinywl_view *view = - calloc(1, sizeof(struct tinywl_view)); + struct view *view = + calloc(1, sizeof(struct view)); view->server = server; view->type = LAB_XDG_SHELL_VIEW; view->xdg_surface = xdg_surface; diff --git a/xwl.c b/xwl.c index a5127893..7fbe354b 100644 --- a/xwl.c +++ b/xwl.c @@ -1,6 +1,6 @@ #include "labwc.h" -int xwl_nr_parents(struct tinywl_view *view) { +int xwl_nr_parents(struct view *view) { struct wlr_xwayland_surface *s = view->xwayland_surface; int i = 0; @@ -16,7 +16,7 @@ int xwl_nr_parents(struct tinywl_view *view) { } void xwl_surface_map(struct wl_listener *listener, void *data) { - struct tinywl_view *view = wl_container_of(listener, view, map); + struct view *view = wl_container_of(listener, view, map); view->mapped = true; view->been_mapped = true; view->x = view->xwayland_surface->x; @@ -26,32 +26,32 @@ void xwl_surface_map(struct wl_listener *listener, void *data) { } void xwl_surface_unmap(struct wl_listener *listener, void *data) { - struct tinywl_view *view = wl_container_of(listener, view, unmap); + struct view *view = wl_container_of(listener, view, unmap); view->mapped = false; if (is_toplevel(view)) view_focus_next_toplevel(view->server); } void xwl_surface_destroy(struct wl_listener *listener, void *data) { - struct tinywl_view *view = wl_container_of(listener, view, destroy); + struct view *view = wl_container_of(listener, view, destroy); wl_list_remove(&view->link); free(view); } void xwl_surface_configure(struct wl_listener *listener, void *data) { - struct tinywl_view *view = wl_container_of(listener, view, request_configure); + struct view *view = wl_container_of(listener, view, request_configure); struct wlr_xwayland_surface_configure_event *event = data; wlr_xwayland_surface_configure(view->xwayland_surface, event->x, event->y, event->width, event->height); } void xwl_surface_new(struct wl_listener *listener, void *data) { - struct tinywl_server *server = + struct server *server = wl_container_of(listener, server, new_xwayland_surface); struct wlr_xwayland_surface *xwayland_surface = data; wlr_xwayland_surface_ping(xwayland_surface); - struct tinywl_view *view = calloc(1, sizeof(struct tinywl_view)); + struct view *view = calloc(1, sizeof(struct view)); view->server = server; view->type = LAB_XWAYLAND_VIEW; view->xwayland_surface = xwayland_surface; -- 2.52.0