public interface WlDataDeviceEventsV3 extends WlDataDeviceEventsV2
There is one wl_data_device per seat which can be obtained from the global wl_data_device_manager singleton.
A wl_data_device provides access to inter-client data transfer mechanisms such as copy-and-paste and drag-and-drop.
| Modifier and Type | Field and Description |
|---|---|
static int |
VERSION |
| Modifier and Type | Method and Description |
|---|---|
void |
dataOffer(WlDataDeviceProxy emitter,
WlDataOfferProxy id)
introduce a new wl_data_offer
|
void |
drop(WlDataDeviceProxy emitter)
end drag-and-drop session successfully
|
void |
enter(WlDataDeviceProxy emitter,
int serial,
WlSurfaceProxy surface,
org.freedesktop.wayland.util.Fixed x,
org.freedesktop.wayland.util.Fixed y,
WlDataOfferProxy id)
initiate drag-and-drop session
|
void |
leave(WlDataDeviceProxy emitter)
end drag-and-drop session
|
void |
motion(WlDataDeviceProxy emitter,
int time,
org.freedesktop.wayland.util.Fixed x,
org.freedesktop.wayland.util.Fixed y)
drag-and-drop session motion
|
void |
selection(WlDataDeviceProxy emitter,
WlDataOfferProxy id)
advertise new selection
|
static final int VERSION
void dataOffer(WlDataDeviceProxy emitter, @Nonnull WlDataOfferProxy id)
The data_offer event introduces a new wl_data_offer object, which will subsequently be used in either the data_device.enter event (for drag-and-drop) or the data_device.selection event (for selections). Immediately following the data_device_data_offer event, the new data_offer object will send out data_offer.offer events to describe the mime types it offers.
dataOffer in interface WlDataDeviceEventsdataOffer in interface WlDataDeviceEventsV2emitter - The protocol object that emitted the event.id - the new data_offer objectvoid enter(WlDataDeviceProxy emitter, int serial, @Nonnull WlSurfaceProxy surface, @Nonnull org.freedesktop.wayland.util.Fixed x, @Nonnull org.freedesktop.wayland.util.Fixed y, @Nullable WlDataOfferProxy id)
This event is sent when an active drag-and-drop pointer enters a surface owned by the client. The position of the pointer at enter time is provided by the x and y arguments, in surface-local coordinates.
enter in interface WlDataDeviceEventsenter in interface WlDataDeviceEventsV2emitter - The protocol object that emitted the event.serial - serial number of the enter eventsurface - client surface enteredx - surface-local x coordinatey - surface-local y coordinateid - source data_offer objectvoid leave(WlDataDeviceProxy emitter)
This event is sent when the drag-and-drop pointer leaves the surface and the session ends. The client must destroy the wl_data_offer introduced at enter time at this point.
leave in interface WlDataDeviceEventsleave in interface WlDataDeviceEventsV2emitter - The protocol object that emitted the event.void motion(WlDataDeviceProxy emitter, int time, @Nonnull org.freedesktop.wayland.util.Fixed x, @Nonnull org.freedesktop.wayland.util.Fixed y)
This event is sent when the drag-and-drop pointer moves within the currently focused surface. The new position of the pointer is provided by the x and y arguments, in surface-local coordinates.
motion in interface WlDataDeviceEventsmotion in interface WlDataDeviceEventsV2emitter - The protocol object that emitted the event.time - timestamp with millisecond granularityx - surface-local x coordinatey - surface-local y coordinatevoid drop(WlDataDeviceProxy emitter)
The event is sent when a drag-and-drop operation is ended because the implicit grab is removed.
The drag-and-drop destination is expected to honor the last action received through wl_data_offer.action, if the resulting action is "copy" or "move", the destination can still perform wl_data_offer.receive requests, and is expected to end all transfers with a wl_data_offer.finish request.
If the resulting action is "ask", the action will not be considered final. The drag-and-drop destination is expected to perform one last wl_data_offer.set_actions request, or wl_data_offer.destroy in order to cancel the operation.
drop in interface WlDataDeviceEventsdrop in interface WlDataDeviceEventsV2emitter - The protocol object that emitted the event.void selection(WlDataDeviceProxy emitter, @Nullable WlDataOfferProxy id)
The selection event is sent out to notify the client of a new wl_data_offer for the selection for this device. The data_device.data_offer and the data_offer.offer events are sent out immediately before this event to introduce the data offer object. The selection event is sent to a client immediately before receiving keyboard focus and when a new selection is set while the client has keyboard focus. The data_offer is valid until a new data_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.
selection in interface WlDataDeviceEventsselection in interface WlDataDeviceEventsV2emitter - The protocol object that emitted the event.id - selection data_offer objectCopyright © 2016. All rights reserved.