diff --git a/compositor.c b/compositor.c index 32f9d11b..1959ed2c 100644 --- a/compositor.c +++ b/compositor.c @@ -635,8 +635,14 @@ compositor_create_surface(struct wl_client *client, wl_list_insert(ec->surface_list.prev, &surface->link); surface->base.base.destroy = destroy_surface; - wl_client_add_surface(client, &surface->base, - &surface_interface, id); + + surface->base.base.base.id = id; + surface->base.base.base.interface = &wl_surface_interface; + surface->base.base.base.implementation = + (void (**)(void)) &surface_interface; + surface->base.client = client; + + wl_client_add_resource(client, &surface->base.base); } static void diff --git a/wayland-server.c b/wayland-server.c index 869bdd96..eb003fc8 100644 --- a/wayland-server.c +++ b/wayland-server.c @@ -262,22 +262,6 @@ wl_client_destroy(struct wl_client *client) free(client); } -WL_EXPORT int -wl_client_add_surface(struct wl_client *client, - struct wl_surface *surface, - const struct wl_surface_interface *implementation, - uint32_t id) -{ - surface->base.base.id = id; - surface->base.base.interface = &wl_surface_interface; - surface->base.base.implementation = (void (**)(void)) implementation; - surface->client = client; - - wl_client_add_resource(client, &surface->base); - - return 0; -} - WL_EXPORT void wl_client_send_acknowledge(struct wl_client *client, struct wl_compositor *compositor, diff --git a/wayland-server.h b/wayland-server.h index 4292be05..ee2906d7 100644 --- a/wayland-server.h +++ b/wayland-server.h @@ -156,12 +156,6 @@ wl_display_set_compositor(struct wl_display *display, struct wl_compositor *compositor, const struct wl_compositor_interface *implementation); -int -wl_client_add_surface(struct wl_client *client, - struct wl_surface *surface, - const struct wl_surface_interface *implementation, - uint32_t id); - void wl_client_send_acknowledge(struct wl_client *client, struct wl_compositor *compositor,