QWaylandQuickItem Class
The QWaylandQuickItem class provides a Qt Quick item representing a QWaylandView. More...
Header: | #include <QWaylandQuickItem> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS WaylandCompositor) target_link_libraries(mytarget PRIVATE Qt6::WaylandCompositor) |
qmake: | QT += waylandcompositor |
Instantiated By: | WaylandQuickItem |
Inherits: | QQuickItem |
Inherited By: |
Properties
|
|
Public Functions
QWaylandQuickItem(QQuickItem *parent = nullptr) | |
virtual | ~QWaylandQuickItem() override |
bool | allowDiscardFrontBuffer() const |
QWaylandCompositor * | compositor() const |
bool | focusOnClick() const |
bool | inputEventsEnabled() const |
bool | inputRegionContains(const QPointF &localPosition) const |
bool | isBufferLocked() const |
bool | isPaintEnabled() const |
QPointF | mapFromSurface(const QPointF &point) const |
QPointF | mapToSurface(const QPointF &point) const |
QWaylandSurface::Origin | origin() const |
QWaylandOutput * | output() const |
void | setAllowDiscardFrontBuffer(bool discard) |
void | setBufferLocked(bool locked) |
void | setFocusOnClick(bool focus) |
void | setInputEventsEnabled(bool enabled) |
void | setOutput(QWaylandOutput *output) |
void | setPrimary() |
void | setSubsurfaceHandler(QObject *) |
void | setSurface(QWaylandSurface *surface) |
void | setTouchEventsEnabled(bool enabled) |
QObject * | subsurfaceHandler() const |
QWaylandSurface * | surface() const |
bool | touchEventsEnabled() const |
QWaylandView * | view() const |
Reimplemented Public Functions
virtual QSGTextureProvider * | textureProvider() const override |
Public Slots
void | setPaintEnabled(bool paintEnabled) |
virtual void | takeFocus(QWaylandSeat *device = nullptr) |
Signals
void | allowDiscardFrontBufferChanged() |
void | bufferLockedChanged() |
void | compositorChanged() |
void | focusOnClickChanged() |
void | inputEventsEnabledChanged() |
void | originChanged() |
void | outputChanged() |
void | paintEnabledChanged() |
void | subsurfaceHandlerChanged() |
void | surfaceChanged() |
void | surfaceDestroyed() |
void | touchEventsEnabledChanged() |
Detailed Description
When writing a QWaylandCompositor in Qt Quick, this class can be used to display a client's contents on an output device and will pass user input to the client.
Property Documentation
allowDiscardFrontBuffer : bool
By default, the item locks the current buffer until a new buffer is available and updatePaintNode() is called. Set this property to true to allow Qt to release the buffer immediately when the throttling view is no longer using it. This is useful for items that have slow update intervals.
Access functions:
bool | allowDiscardFrontBuffer() const |
void | setAllowDiscardFrontBuffer(bool discard) |
Notifier signal:
void | allowDiscardFrontBufferChanged() |
bufferLocked : bool
This property holds whether the item's buffer is currently locked. As long as the buffer is locked, it will not be released and returned to the client.
The default is false.
Access functions:
bool | isBufferLocked() const |
void | setBufferLocked(bool locked) |
Notifier signal:
void | bufferLockedChanged() |
[read-only]
compositor : QWaylandCompositor* const
This property holds the compositor for the surface rendered by this QWaylandQuickItem.
Access functions:
QWaylandCompositor * | compositor() const |
Notifier signal:
void | compositorChanged() |
focusOnClick : bool
This property specifies whether the QWaylandQuickItem should take focus when it is clicked or touched.
The default is true
.
Access functions:
bool | focusOnClick() const |
void | setFocusOnClick(bool focus) |
Notifier signal:
void | focusOnClickChanged() |
[read-only]
origin : const QWaylandSurface::Origin
This property holds the origin of the QWaylandQuickItem.
Access functions:
QWaylandSurface::Origin | origin() const |
Notifier signal:
void | originChanged() |
output : QWaylandOutput*
This property holds the output on which this item is displayed.
Access functions:
QWaylandOutput * | output() const |
void | setOutput(QWaylandOutput *output) |
Notifier signal:
void | outputChanged() |
paintEnabled : bool
Holds true
if the item is hidden, though the texture is still updated. As opposed to hiding the item by setting visible to false
, setting this property to false
will not prevent mouse or keyboard input from reaching item.
Access functions:
bool | isPaintEnabled() const |
void | setPaintEnabled(bool paintEnabled) |
Notifier signal:
void | paintEnabledChanged() |
surface : QWaylandSurface*
This property holds the surface rendered by this QWaylandQuickItem.
Access functions:
QWaylandSurface * | surface() const |
void | setSurface(QWaylandSurface *surface) |
Notifier signal:
void | surfaceChanged() |
touchEventsEnabled : bool
This property holds true
if touch events are forwarded to the client surface, false
otherwise.
Access functions:
bool | touchEventsEnabled() const |
void | setTouchEventsEnabled(bool enabled) |
Notifier signal:
void | touchEventsEnabledChanged() |
Member Function Documentation
QWaylandQuickItem::QWaylandQuickItem(QQuickItem *parent = nullptr)
Constructs a QWaylandQuickItem with the given parent.
[override virtual noexcept]
QWaylandQuickItem::~QWaylandQuickItem()
Destroy the QWaylandQuickItem.
bool QWaylandQuickItem::inputRegionContains(const QPointF &localPosition) const
Returns true
if the input region of this item's surface contains the position given by localPosition.
[invokable]
QPointF QWaylandQuickItem::mapFromSurface(const QPointF &point) const
Maps the given point in the Wayland surfaces's coordinate system to the equivalent point within this item's coordinate system, and returns the mapped coordinate.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
[invokable]
QPointF QWaylandQuickItem::mapToSurface(const QPointF &point) const
Maps the given point in this item's coordinate system to the equivalent point within the Wayland surface's coordinate system, and returns the mapped coordinate.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
[invokable]
void QWaylandQuickItem::setPrimary()
Makes this QWaylandQuickItem's view the primary view for the surface.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
See also QWaylandSurface::primaryView.
[signal]
void QWaylandQuickItem::surfaceDestroyed()
This signal is emitted when the client has destroyed the wl_surface
associated with the QWaylandQuickItem. The handler for this signal is expected to either destroy the QWaylandQuickItem immediately or start a close animation and then destroy the Item.
If an animation is started, bufferLocked should be set to ensure the item keeps its content until the animation finishes
See also QWaylandQuickItem::bufferLocked.
[virtual slot]
void QWaylandQuickItem::takeFocus(QWaylandSeat *device = nullptr)
Calling this function causes the item to take the focus of the input device.
[override virtual]
QSGTextureProvider *QWaylandQuickItem::textureProvider() const
Reimplements: QQuickItem::textureProvider() const.
Returns the texture provider of this QWaylandQuickItem.
QWaylandView *QWaylandQuickItem::view() const
Returns the view rendered by this QWaylandQuickItem.