]> Pileus Git - ~andy/gtk/commitdiff
wayland: data_device.data_offer now has a safe object wrapper
authorRob Bradford <rob@linux.intel.com>
Mon, 16 Jul 2012 12:39:32 +0000 (13:39 +0100)
committerRob Bradford <rob@linux.intel.com>
Mon, 16 Jul 2012 12:44:29 +0000 (13:44 +0100)
The prototype for the listener has changed to provide a typesafe object rather
than an id that you have to bind into an object yourself.

gdk/wayland/gdkdevice-wayland.c

index c45eb217a8b397ffcab95d115c4881ef68e4e348..07911b935b1587d66c357eac12c542ffbece3fc1 100644 (file)
@@ -818,23 +818,17 @@ static const struct wl_data_offer_listener data_offer_listener = {
 static void
 data_device_data_offer (void                  *data,
                         struct wl_data_device *data_device,
-                        uint32_t               id)
+                        struct wl_data_offer  *_offer)
 {
   DataOffer *offer;
 
-  g_debug (G_STRLOC ": %s data_device = %p id = %lu",
-           G_STRFUNC, data_device, (long unsigned int)id);
-
   /* This structure is reference counted to handle the case where you get a
    * leave but are in the middle of transferring data
    */
   offer = g_new0 (DataOffer, 1);
   offer->ref_count = 1;
   offer->types = g_ptr_array_new_with_free_func (g_free);
-  offer->offer = (struct wl_data_offer *)
-    wl_proxy_create_for_id ((struct wl_proxy *) data_device,
-                            id,
-                            &wl_data_offer_interface);
+  offer->offer = _offer;
 
   /* The DataOffer structure is then retrieved later since this sets the user
    * data.