Gtk_primary_selection_server.Gtk_primary_selection_devicetype 'v t =
  ([ `Gtk_primary_selection_device ], 'v, [ `Server ]) Wayland.Proxy.tval selection : 
  [< `V1 ] t ->
  ([ `Gtk_primary_selection_offer ], 'a, [ `Server ]) Wayland.Proxy.t option ->
  unitAdvertise a new primary selection.
The wp_primary_selection_device.selection event is sent to notify the client of a new primary selection. This event is sent after the wp_primary_selection.data_offer event introducing this object, and after the offer has announced its mimetypes through wp_primary_selection_offer.offer.
The data_offer is valid until a new offer or NULL is received or until the client loses keyboard focus. The client must destroy the previous selection data_offer, if any, upon receiving this event.
val data_offer : 
  [< `V1 ] as 'a t ->
  [[ `Gtk_primary_selection_offer ], 'b, [ `Server ]] Wayland.Proxy.Handler.t ->
  ([ `Gtk_primary_selection_offer ], 'c, [ `Server ]) Wayland.Proxy.tIntroduce a new wp_primary_selection_offer.
Introduces a new wp_primary_selection_offer object that may be used to receive the current primary selection. Immediately following this event, the new wp_primary_selection_offer object will send wp_primary_selection_offer.offer events to describe the offered mime types.
Note: Servers will always want to use v1.
class virtual +'a v1 : object ... endHandler for a proxy with version >= 1.