Wayland_client.Wl_data_source
Offer to transfer data.
The wl_data_source object is the source side of a wl_data_offer. It is created by the source client in a data transfer and provides a way to describe the offered data and a way to respond to requests to transfer the data.
type 'v t = ([ `Wl_data_source ], 'v, [ `Client ]) Proxy.t
module Error = Wayland_proto.Wl_data_source.Error
val destroy : [< `V1 | `V2 | `V3 ] t -> unit
Destroy the data source.
Destroy the data source.
val offer : [< `V1 | `V2 | `V3 ] t -> mime_type:string -> unit
Add an offered mime type.
This request adds a mime type to the set of mime types advertised to targets. Can be called several times to offer multiple types.
val set_actions : [< `V3 ] t -> dnd_actions:int32 -> unit
Set the available drag-and-drop actions.
Sets the actions that the source side client supports for this operation. This request may trigger wl_data_source.action and wl_data_offer.action events if the compositor needs to change the selected action.
The dnd_actions argument must contain only values expressed in the wl_data_device_manager.dnd_actions enum, otherwise it will result in a protocol error.
This request must be made once only, and can only be made on sources used in drag-and-drop, so it must be performed before wl_data_device.start_drag. Attempting to use the source other than for drag-and-drop will raise a protocol error.
Note: Servers will always want to use v1
.
class virtual +'a v1 : object ... end
Handler for a proxy with version >= 1.
class virtual +'a v2 : object ... end
Handler for a proxy with version >= 2.
class virtual +'a v3 : object ... end
Handler for a proxy with version >= 3.