diff options
| -rw-r--r-- | wayland-client.c | 13 | ||||
| -rw-r--r-- | wayland-client.h | 3 |
2 files changed, 16 insertions, 0 deletions
diff --git a/wayland-client.c b/wayland-client.c index 3c977b2..e60d028 100644 --- a/wayland-client.c +++ b/wayland-client.c @@ -64,6 +64,7 @@ struct wl_proxy { struct wl_object base; struct wl_display *display; struct wl_list listener_list; + void *user_data; }; struct wl_compositor { @@ -618,3 +619,15 @@ wl_surface_damage(struct wl_surface *surface, wl_proxy_marshal(&surface->proxy, WL_SURFACE_DAMAGE, x, y, width, height); } + +WL_EXPORT void +wl_surface_set_user_data(struct wl_surface *surface, void *user_data) +{ + surface->proxy.user_data = user_data; +} + +WL_EXPORT void * +wl_surface_get_user_data(struct wl_surface *surface) +{ + return surface->proxy.user_data; +} diff --git a/wayland-client.h b/wayland-client.h index cb2bd29..13b4776 100644 --- a/wayland-client.h +++ b/wayland-client.h @@ -95,6 +95,9 @@ void wl_surface_copy(struct wl_surface *surface, int32_t dst_x, int32_t dst_y, void wl_surface_damage(struct wl_surface *surface, int32_t x, int32_t y, int32_t width, int32_t height); +void wl_surface_set_user_data(struct wl_surface *surface, void *user_data); +void *wl_surface_get_user_data(struct wl_surface *surface); + struct wl_output; struct wl_output_listener { void (*geometry)(void *data, |
