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