51class Q_WAYLANDCOMPOSITOR_EXPORT
QWaylandSeatPrivate :
public QObjectPrivate,
public QtWaylandServer::wl_seat
54 Q_DECLARE_PUBLIC(QWaylandSeat)
56 QWaylandSeatPrivate(QWaylandSeat *seat);
57 ~QWaylandSeatPrivate() override;
59 void setCapabilities(QWaylandSeat::CapabilityFlags caps);
61 static QWaylandSeatPrivate *get(QWaylandSeat *device) {
return device->d_func(); }
63#if QT_CONFIG(wayland_datadevice)
64 void clientRequestedDataDevice(QtWayland::DataDeviceManager *dndSelection,
struct wl_client *client, uint32_t id);
65 QtWayland::DataDevice *dataDevice()
const {
return data_device.data(); }
69 void seat_bind_resource(wl_seat::Resource *resource) override;
71 void seat_get_pointer(wl_seat::Resource *resource,
72 uint32_t id) override;
73 void seat_get_keyboard(wl_seat::Resource *resource,
74 uint32_t id) override;
75 void seat_get_touch(wl_seat::Resource *resource,
76 uint32_t id) override;
78 void seat_destroy_resource(wl_seat::Resource *resource) override;
81 bool isInitialized =
false;
82 QWaylandCompositor *compositor =
nullptr;
83 QWaylandView *mouseFocus =
nullptr;
84 QWaylandSurface *keyboardFocus =
nullptr;
85 QWaylandSeat::CapabilityFlags capabilities;
87 QScopedPointer<QWaylandPointer> pointer;
88 QScopedPointer<QWaylandKeyboard> keyboard;
89 QScopedPointer<QWaylandTouch> touch;
90#if QT_CONFIG(wayland_datadevice)
91 QScopedPointer<QtWayland::DataDevice> data_device;
92# if QT_CONFIG(draganddrop)
93 QScopedPointer<QWaylandDrag> drag_handle;
96 QScopedPointer<QWaylandKeymap> keymap;