18struct xcb_selection_request_event_t;
19struct xcb_xfixes_selection_notify_event_t;
23class DataDeviceInterface;
24class DataSourceInterface;
25class AbstractDataSource;
65 xcb_timestamp_t m_timestamp = XCB_CURRENT_TIME;
67 xcb_window_t m_window;
84 void sendTargets(xcb_selection_request_event_t *event);
94 bool checkStartTransfer(xcb_selection_request_event_t *event);
98 QList<QString> m_offers;
99 QMetaObject::Connection m_offerConnection;
104using Mimes = QList<QPair<QString, xcb_atom_t>>;
137 void handleTargets();
The AbstractDataSource class abstracts the data that can be transferred to another client.
xcb_timestamp_t timestamp() const
SelectionSource(Selection *selection)
void setWindow(xcb_window_t window)
void setTimestamp(xcb_timestamp_t time)
xcb_window_t window() const
Selection * selection() const
WlSource(Selection *selection)
bool handleSelectionRequest(xcb_selection_request_event_t *event)
void sendTargets(xcb_selection_request_event_t *event)
void transferReady(xcb_selection_request_event_t *event, qint32 fd)
void sendSelectionNotify(xcb_selection_request_event_t *event, bool success)
void receiveOffer(const QString &mime)
void sendTimestamp(xcb_selection_request_event_t *event)
void setDataSourceIface(AbstractDataSource *dsi)
bool handleSelectionNotify(xcb_selection_notify_event_t *event)
void offersChanged(const QStringList &added, const QStringList &removed)
X11Source(Selection *selection, xcb_xfixes_selection_notify_event_t *event)
void transferReady(xcb_atom_t target, qint32 fd)
void startTransfer(const QString &mimeName, qint32 fd)
void setRequestor(xcb_window_t window)
void setOffers(const Mimes &offers)
QList< QPair< QString, xcb_atom_t > > Mimes