diff options
-rw-r--r-- | protocol/wayland.xml | 8 | ||||
-rw-r--r-- | src/wayland-client.c | 20 | ||||
-rw-r--r-- | src/wayland-server.c | 19 |
3 files changed, 3 insertions, 44 deletions
diff --git a/protocol/wayland.xml b/protocol/wayland.xml index 70b505d..23a70e7 100644 --- a/protocol/wayland.xml +++ b/protocol/wayland.xml @@ -76,14 +76,6 @@ <arg name="id" type="uint" /> </event> - <!-- Internal, deprecated, and will be changed. This is an object - IDs range that is used by the client to allocate object IDs - in "new_id" type arguments. The server sends range - allocations to the client before the next range is about to - be depleted. --> - <event name="range"> - <arg name="base" type="uint"/> - </event> </interface> <interface name="wl_callback" version="1"> diff --git a/src/wayland-client.c b/src/wayland-client.c index f4920d7..4850c9b 100644 --- a/src/wayland-client.c +++ b/src/wayland-client.c @@ -62,7 +62,7 @@ struct wl_display { struct wl_proxy proxy; struct wl_connection *connection; int fd; - uint32_t id, id_count, next_range; + uint32_t id; uint32_t mask; struct wl_hash_table *objects; struct wl_list global_listener_list; @@ -245,18 +245,10 @@ display_handle_global_remove(void *data, } } -static void -display_handle_range(void *data, - struct wl_display *display, uint32_t range) -{ - display->next_range = range; -} - static const struct wl_display_listener display_listener = { display_handle_error, display_handle_global, display_handle_global_remove, - display_handle_range, }; static int @@ -341,8 +333,9 @@ wl_display_connect(const char *name) wl_list_init(&display->global_listener_list); wl_list_init(&display->global_list); + display->id = 1; display->proxy.object.interface = &wl_display_interface; - display->proxy.object.id = 1; + display->proxy.object.id = display->id++; display->proxy.display = display; display->proxy.object.implementation = @@ -504,13 +497,6 @@ wl_display_flush(struct wl_display *display) WL_EXPORT uint32_t wl_display_allocate_id(struct wl_display *display) { - if (display->id_count == 0) { - display->id_count = 256; - display->id = display->next_range; - } - - display->id_count--; - return display->id++; } diff --git a/src/wayland-server.c b/src/wayland-server.c index d9b2593..a0d365e 100644 --- a/src/wayland-server.c +++ b/src/wayland-server.c @@ -70,7 +70,6 @@ struct wl_display { int run; struct wl_list callback_list; - uint32_t client_id_range; uint32_t id; struct wl_list global_list; @@ -241,15 +240,6 @@ wl_client_get_display(struct wl_client *client) } static void -wl_display_post_range(struct wl_display *display, struct wl_client *client) -{ - wl_resource_post_event(client->display_resource, - WL_DISPLAY_RANGE, display->client_id_range); - display->client_id_range += 256; - client->id_count += 256; -} - -static void bind_display(struct wl_client *client, void *data, uint32_t version, uint32_t id); @@ -292,11 +282,6 @@ WL_EXPORT void wl_client_add_resource(struct wl_client *client, struct wl_resource *resource) { - struct wl_display *display = client->display; - - if (client->id_count-- < 64) - wl_display_post_range(display, client); - resource->client = client; wl_list_init(&resource->destroy_listener_list); wl_hash_table_insert(client->objects, resource->object.id, resource); @@ -576,8 +561,6 @@ bind_display(struct wl_client *client, wl_client_add_object(client, &wl_display_interface, &display_interface, id, display); - wl_display_post_range(display, client); - wl_list_for_each(global, &display->global_list, link) wl_resource_post_event(client->display_resource, WL_DISPLAY_GLOBAL, @@ -611,8 +594,6 @@ wl_display_create(void) wl_list_init(&display->socket_list); wl_list_init(&display->client_list); - display->client_id_range = 256; /* Gah, arbitrary... */ - display->id = 1; if (!wl_display_add_global(display, &wl_display_interface, |