org.freedesktop.wayland.client.WlDataSourceEvents Maven / Gradle / Ivy
Show all versions of wayland Show documentation
package org.freedesktop.wayland.client;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
//
//
// Copyright © 2008-2011 Kristian Høgsberg
// Copyright © 2010-2011 Intel Corporation
// Copyright © 2012-2013 Collabora, Ltd.
//
// Permission to use, copy, modify, distribute, and sell this
// software and its documentation for any purpose is hereby granted
// without fee, provided that the above copyright notice appear in
// all copies and that both that copyright notice and this permission
// notice appear in supporting documentation, and that the name of
// the copyright holders not be used in advertising or publicity
// pertaining to distribution of the software without specific,
// written prior permission. The copyright holders make no
// representations about the suitability of this software for any
// purpose. It is provided "as is" without express or implied
// warranty.
//
// THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
// SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
// FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY
// SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
// AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
// ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
// THIS SOFTWARE.
//
/**
* 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.
*
*/
public interface WlDataSourceEvents {
int VERSION = 1;
/**
* a target accepts an offered mime type
*
*
* Sent when a target accepts pointer_focus or motion events. If
* a target does not accept any of the offered types, type is NULL.
*
* Used for feedback during drag-and-drop.
*
* @param emitter The protocol object that emitted the event.
* @param mimeType
*/
public void target(WlDataSourceProxy emitter, @Nullable String mimeType);
/**
* send the data
*
*
* Request for data from the client. Send the data as the
* specified mime type over the passed file descriptor, then
* close it.
*
* @param emitter The protocol object that emitted the event.
* @param mimeType
* @param fd
*/
public void send(WlDataSourceProxy emitter, @Nonnull String mimeType, int fd);
/**
* selection was cancelled
*
*
* This data source has been replaced by another data source.
* The client should clean up and destroy this data source.
*
* @param emitter The protocol object that emitted the event.
*/
public void cancelled(WlDataSourceProxy emitter);
}