QWaylandSeat Class
The QWaylandSeat class provides access to keyboard, mouse, and touch input. More...
Header: | #include <QWaylandSeat> |
qmake: | QT += waylandcompositor |
Since: | Qt 5.8 |
Inherits: | QWaylandObject |
Public Types
enum | CapabilityFlag { Pointer, Keyboard, Touch, DefaultCapabilities } |
flags | CapabilityFlags |
Properties
- 1 property inherited from QObject
Public Functions
QWaylandSeat(QWaylandCompositor *compositor, QWaylandSeat::CapabilityFlags capabilityFlags) | |
virtual | ~QWaylandSeat() override |
QWaylandSeat::CapabilityFlags | capabilities() const |
QWaylandCompositor * | compositor() const |
QWaylandDrag * | drag() const |
virtual void | initialize() |
bool | isInitialized() const |
QWaylandKeyboard * | keyboard() const |
QWaylandSurface * | keyboardFocus() const |
QWaylandKeymap * | keymap() |
QWaylandView * | mouseFocus() const |
QWaylandPointer * | pointer() const |
void | sendFullKeyEvent(QKeyEvent *event) |
void | sendFullTouchEvent(QWaylandSurface *surface, QTouchEvent *event) |
void | sendKeyEvent(int qtKey, bool pressed) |
void | sendKeyPressEvent(uint code) |
void | sendKeyReleaseEvent(uint code) |
void | sendMouseMoveEvent(QWaylandView *view, const QPointF &localPos, const QPointF &outputSpacePos = QPointF()) |
void | sendMousePressEvent(Qt::MouseButton button) |
void | sendMouseReleaseEvent(Qt::MouseButton button) |
void | sendMouseWheelEvent(Qt::Orientation orientation, int delta) |
void | sendTouchCancelEvent(QWaylandClient *client) |
void | sendTouchFrameEvent(QWaylandClient *client) |
uint | sendTouchPointEvent(QWaylandSurface *surface, int id, const QPointF &point, Qt::TouchPointState state) |
uint | sendTouchPointMoved(QWaylandSurface *surface, int id, const QPointF &position) |
uint | sendTouchPointPressed(QWaylandSurface *surface, int id, const QPointF &position) |
uint | sendTouchPointReleased(QWaylandSurface *surface, int id, const QPointF &position) |
bool | setKeyboardFocus(QWaylandSurface *surface) |
void | setMouseFocus(QWaylandView *view) |
QWaylandTouch * | touch() const |
- 31 public functions inherited from QObject
Signals
void | cursorSurfaceRequest(QWaylandSurface *surface, int hotspotX, int hotspotY) |
void | keyboardFocusChanged(QWaylandSurface *newFocus, QWaylandSurface *oldFocus) |
void | mouseFocusChanged(QWaylandView *newFocus, QWaylandView *oldFocus) |
- 2 signals inherited from QObject
Static Public Members
QWaylandSeat * | fromSeatResource(struct ::wl_resource *resource) |
const QMetaObject | staticMetaObject |
- 9 static public members inherited from QObject
Additional Inherited Members
Detailed Description
The QWaylandSeat class provides access to keyboard, mouse, and touch input.
The QWaylandSeat provides access to different types of user input and maintains a keyboard focus and a mouse pointer. It corresponds to the wl_seat interface in the Wayland protocol.
Member Type Documentation
enum QWaylandSeat::CapabilityFlagflags QWaylandSeat::CapabilityFlags
This enum type describes the capabilities of a QWaylandSeat.
Constant | Value | Description |
---|---|---|
QWaylandSeat::Pointer |
0x01 |
The QWaylandSeat supports pointer input. |
QWaylandSeat::Keyboard |
0x02 |
The QWaylandSeat supports keyboard input. |
QWaylandSeat::Touch |
0x04 |
The QWaylandSeat supports touch input. |
QWaylandSeat::DefaultCapabilities |
Pointer | Keyboard | Touch |
The QWaylandSeat has the default capabilities. |
The CapabilityFlags type is a typedef for QFlags<CapabilityFlag>. It stores an OR combination of CapabilityFlag values.
Property Documentation
drag : QWaylandDrag* const
Access functions:
QWaylandDrag * | drag() const |
keymap : QWaylandKeymap* const
Access functions:
QWaylandKeymap * | keymap() |
Member Function Documentation
QWaylandSeat::QWaylandSeat(QWaylandCompositor *compositor, QWaylandSeat::CapabilityFlags capabilityFlags)
Constructs a QWaylandSeat for the given compositor and with the given capabilityFlags.
[override virtual]
QWaylandSeat::~QWaylandSeat()
Destroys the QWaylandSeat
QWaylandSeat::CapabilityFlags QWaylandSeat::capabilities() const
Returns the capability flags for this QWaylandSeat.
QWaylandCompositor *QWaylandSeat::compositor() const
Returns the compositor for this QWaylandSeat.
[signal]
void QWaylandSeat::cursorSurfaceRequest(QWaylandSurface *surface, int hotspotX, int hotspotY)
QWaylandDrag *QWaylandSeat::drag() const
Returns the drag object for this QWaylandSeat.
Note: Getter function for property drag.
[static]
QWaylandSeat *QWaylandSeat::fromSeatResource(struct ::wl_resource *resource)
Returns the QWaylandSeat corresponding to the resource. The resource is expected to have the type wl_seat.
[virtual]
void QWaylandSeat::initialize()
bool QWaylandSeat::isInitialized() const
QWaylandKeyboard *QWaylandSeat::keyboard() const
Returns the keyboard for this input device.
QWaylandSurface *QWaylandSeat::keyboardFocus() const
Returns the current focused surface for keyboard input.
See also setKeyboardFocus().
[signal]
void QWaylandSeat::keyboardFocusChanged(QWaylandSurface *newFocus, QWaylandSurface *oldFocus)
QWaylandView *QWaylandSeat::mouseFocus() const
Returns the view that currently has mouse focus.
See also setMouseFocus().
[signal]
void QWaylandSeat::mouseFocusChanged(QWaylandView *newFocus, QWaylandView *oldFocus)
This signal is emitted when the mouse focus has changed from oldFocus to newFocus.
QWaylandPointer *QWaylandSeat::pointer() const
Returns the pointer device for this QWaylandSeat.
void QWaylandSeat::sendFullKeyEvent(QKeyEvent *event)
Sends the event to the keyboard device.
void QWaylandSeat::sendFullTouchEvent(QWaylandSurface *surface, QTouchEvent *event)
Sends the event to the specified surface on the touch device.
void QWaylandSeat::sendKeyEvent(int qtKey, bool pressed)
Sends a key press or release to the keyboard device.
This function was introduced in Qt 5.12.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
void QWaylandSeat::sendKeyPressEvent(uint code)
Sends a key press event with the key code to the keyboard device.
void QWaylandSeat::sendKeyReleaseEvent(uint code)
Sends a key release event with the key code to the keyboard device.
void QWaylandSeat::sendMouseMoveEvent(QWaylandView *view, const QPointF &localPos, const QPointF &outputSpacePos = QPointF())
Sets the mouse focus to view and sends a mouse move event to the pointer device with the local position localPos and output space position outputSpacePos.
void QWaylandSeat::sendMousePressEvent(Qt::MouseButton button)
Sends a mouse press event for button to the QWaylandSeat's pointer device.
void QWaylandSeat::sendMouseReleaseEvent(Qt::MouseButton button)
Sends a mouse release event for button to the QWaylandSeat's pointer device.
void QWaylandSeat::sendMouseWheelEvent(Qt::Orientation orientation, int delta)
Sends a mouse wheel event to the QWaylandSeat's pointer device with the given orientation and delta.
void QWaylandSeat::sendTouchCancelEvent(QWaylandClient *client)
Sends a cancel event to the touch device of a client.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
void QWaylandSeat::sendTouchFrameEvent(QWaylandClient *client)
Sends a frame event to the touch device of a client to indicate the end of a series of touch up, down, and motion events.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
uint QWaylandSeat::sendTouchPointEvent(QWaylandSurface *surface, int id, const QPointF &point, Qt::TouchPointState state)
Sends a touch point event to the surface on a touch device with the given id, point and state.
Returns the serial for the touch up or touch down event.
uint QWaylandSeat::sendTouchPointMoved(QWaylandSurface *surface, int id, const QPointF &position)
Sends a touch moved event for the touch point id on surface with position position.
Note: You need to send a touch frame event when you are done sending touch events.
Returns the serial for the touch motion event.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
uint QWaylandSeat::sendTouchPointPressed(QWaylandSurface *surface, int id, const QPointF &position)
Sends a touch pressed event for the touch point id on surface with position position.
Note: You need to send a touch frame event when you are done sending touch events.
Returns the serial for the touch down event.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
uint QWaylandSeat::sendTouchPointReleased(QWaylandSurface *surface, int id, const QPointF &position)
Sends a touch released event for the touch point id on surface with position position.
Note: You need to send a touch frame event when you are done sending touch events.
Returns the serial for the touch up event.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
bool QWaylandSeat::setKeyboardFocus(QWaylandSurface *surface)
Sets the current keyboard focus to surface. Returns a boolean indicating if the operation was successful.
See also keyboardFocus().
void QWaylandSeat::setMouseFocus(QWaylandView *view)
Sets the current mouse focus to view.
See also mouseFocus().
QWaylandTouch *QWaylandSeat::touch() const
Returns the touch device for this QWaylandSeat.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qwaylandseat.html