diff --git a/src/wayland-client.c b/src/wayland-client.c index fb69ed83..1a24abf9 100644 --- a/src/wayland-client.c +++ b/src/wayland-client.c @@ -583,3 +583,9 @@ wl_proxy_get_user_data(struct wl_proxy *proxy) { return proxy->user_data; } + +WL_EXPORT uint32_t +wl_proxy_get_id(struct wl_proxy *proxy) +{ + return proxy->object.id; +} diff --git a/src/wayland-client.h b/src/wayland-client.h index 5746e856..5c7fd2f8 100644 --- a/src/wayland-client.h +++ b/src/wayland-client.h @@ -45,6 +45,7 @@ int wl_proxy_add_listener(struct wl_proxy *proxy, void (**implementation)(void), void *data); void wl_proxy_set_user_data(struct wl_proxy *proxy, void *user_data); void *wl_proxy_get_user_data(struct wl_proxy *proxy); +uint32_t wl_proxy_get_id(struct wl_proxy *proxy); void *wl_display_bind(struct wl_display *display, uint32_t name, const struct wl_interface *interface);