From c1b6dbbacdb1b54d1521f0952906387b8df14beb Mon Sep 17 00:00:00 2001 From: Nicolas Pouillon Date: Wed, 2 May 2012 08:46:47 +0200 Subject: server: Post new globals to current clients Globals are bursted to client on conntect. Now when new global objects are added to the server state, existing clients also get notified. --- src/wayland-server.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/wayland-server.c b/src/wayland-server.c index b19e05b..d0c31bf 100644 --- a/src/wayland-server.c +++ b/src/wayland-server.c @@ -838,6 +838,7 @@ wl_display_add_global(struct wl_display *display, void *data, wl_global_bind_func_t bind) { struct wl_global *global; + struct wl_client *client; global = malloc(sizeof *global); if (global == NULL) @@ -849,6 +850,13 @@ wl_display_add_global(struct wl_display *display, global->bind = bind; wl_list_insert(display->global_list.prev, &global->link); + wl_list_for_each(client, &display->client_list, link) + wl_resource_post_event(client->display_resource, + WL_DISPLAY_GLOBAL, + global->name, + global->interface->name, + global->interface->version); + return global; } -- cgit v1.2.3