static void gdk_registry_handle_global_remove(void *data, struct wl_registry *registry, uint32_t id) { GdkWaylandDisplay *display_wayland = data; GdkDisplay *display = GDK_DISPLAY (display_wayland); _gdk_wayland_device_manager_remove_seat (display->device_manager, id); _gdk_wayland_screen_remove_output (display_wayland->screen, id); /* FIXME: the object needs to be destroyed here, we're leaking */ }
static void gdk_registry_handle_global_remove (void *data, struct wl_registry *registry, uint32_t id) { GdkWaylandDisplay *display_wayland = data; GdkDisplay *display = GDK_DISPLAY (display_wayland); GDK_NOTE (MISC, g_message ("remove global %u", id)); _gdk_wayland_device_manager_remove_seat (display->device_manager, id); _gdk_wayland_screen_remove_output (display_wayland->screen, id); g_hash_table_remove (display_wayland->known_globals, GUINT_TO_POINTER (id)); /* FIXME: the object needs to be destroyed here, we're leaking */ }