QWaylandSurface Class
The QWaylandSurface class represents a rectangular area on an output device. More...
Header: | #include <QWaylandSurface> |
qmake: | QT += waylandcompositor |
Since: | Qt 5.8 |
Inherits: | QWaylandObject |
Public Types
enum | Origin { OriginTopLeft, OriginBottomLeft } |
Properties
|
|
- 1 property inherited from QObject
Public Functions
QWaylandSurface() | |
QWaylandSurface(QWaylandCompositor *compositor, QWaylandClient *client, uint id, int version) | |
virtual | ~QWaylandSurface() override |
int | bufferScale() const |
QWaylandClient * | client() const |
QWaylandCompositor * | compositor() const |
Qt::ScreenOrientation | contentOrientation() const |
void | destroy() |
void | frameStarted() |
bool | hasContent() const |
void | initialize(QWaylandCompositor *compositor, QWaylandClient *client, uint id, int version) |
QWaylandInputMethodControl * | inputMethodControl() const |
bool | inputRegionContains(const QPoint &p) const |
bool | isCursorSurface() const |
bool | isDestroyed() const |
bool | isInitialized() const |
void | markAsCursorSurface(bool cursorSurface) |
QWaylandSurface::Origin | origin() const |
QWaylandView * | primaryView() const |
struct wl_resource * | resource() const |
QWaylandSurfaceRole * | role() const |
void | sendFrameCallbacks() |
void | setPrimaryView(QWaylandView *view) |
bool | setRole(QWaylandSurfaceRole *role, wl_resource *errorResource, uint32_t errorCode) |
QSize | size() const |
QList<QWaylandView *> | views() const |
::wl_client * | waylandClient() const |
- 31 public functions inherited from QObject
Public Slots
void | updateSelection() |
- 1 public slot inherited from QObject
Signals
void | bufferScaleChanged() |
void | childAdded(QWaylandSurface *child) |
void | configure(bool hasBuffer) |
void | contentOrientationChanged() |
void | cursorSurfaceChanged() |
void | damaged(const QRegion &rect) |
void | dragStarted(QWaylandDrag *drag) |
void | hasContentChanged() |
void | offsetForNextFrame(const QPoint &offset) |
void | originChanged() |
void | parentChanged(QWaylandSurface *newParent, QWaylandSurface *oldParent) |
void | redraw() |
void | sizeChanged() |
void | subsurfacePlaceAbove(QWaylandSurface *sibling) |
void | subsurfacePlaceBelow(QWaylandSurface *sibling) |
void | subsurfacePositionChanged(const QPoint &position) |
void | surfaceDestroyed() |
- 2 signals inherited from QObject
Static Public Members
QWaylandSurface * | fromResource(::wl_resource *res) |
const QMetaObject | staticMetaObject |
- 9 static public members inherited from QObject
Additional Inherited Members
- 9 protected functions inherited from QObject
Detailed Description
The QWaylandSurface class represents a rectangular area on an output device.
This class encapsulates a rectangular area of pixels that is displayed on an output device. It corresponds to the interface wl_surface
in the Wayland protocol.
Member Type Documentation
enum QWaylandSurface::Origin
This enum type is used to specify the origin of a QWaylandSurface's buffer.
Constant | Value | Description |
---|---|---|
QWaylandSurface::OriginTopLeft |
0 |
The origin is the top left corner of the buffer. |
QWaylandSurface::OriginBottomLeft |
1 |
The origin is the bottom left corner of the buffer. |
Property Documentation
bufferScale : const int
This property holds the QWaylandSurface's buffer scale. The buffer scale lets a client supply higher resolution buffer data for use on high resolution outputs.
Access functions:
int | bufferScale() const |
Notifier signal:
void | bufferScaleChanged() |
client : QWaylandClient* const
This property holds the client using this QWaylandSurface.
Access functions:
QWaylandClient * | client() const |
contentOrientation : const Qt::ScreenOrientation
This property holds the orientation of the QWaylandSurface's contents.
Access functions:
Qt::ScreenOrientation | contentOrientation() const |
Notifier signal:
void | contentOrientationChanged() |
See also QWaylandOutput::transform.
cursorSurface : bool
This property holds whether the QWaylandSurface is a cursor surface.
Access functions:
bool | isCursorSurface() const |
void | markAsCursorSurface(bool cursorSurface) |
Notifier signal:
void | cursorSurfaceChanged() |
hasContent : const bool
This property holds whether the QWaylandSurface has content.
Access functions:
bool | hasContent() const |
Notifier signal:
void | hasContentChanged() |
origin : const QWaylandSurface::Origin
This property holds the origin of the QWaylandSurface's buffer, or QWaylandSurface::OriginTopLeft if the surface has no buffer.
Access functions:
QWaylandSurface::Origin | origin() const |
Notifier signal:
void | originChanged() |
size : const QSize
This property holds the QWaylandSurface's size in pixels.
Access functions:
QSize | size() const |
Notifier signal:
void | sizeChanged() |
Member Function Documentation
QWaylandSurface::QWaylandSurface()
Constructs a an uninitialized QWaylandSurface.
QWaylandSurface::QWaylandSurface(QWaylandCompositor *compositor, QWaylandClient *client, uint id, int version)
Constructs and initializes a QWaylandSurface for the given compositor and client, and with the given id and version.
[override virtual]
QWaylandSurface::~QWaylandSurface()
Destroys the QWaylandSurface.
[signal]
void QWaylandSurface::childAdded(QWaylandSurface *child)
This signal is emitted when a wl_subsurface, child, has been added to the surface.
QWaylandCompositor *QWaylandSurface::compositor() const
Returns the compositor for this QWaylandSurface.
[signal]
void QWaylandSurface::configure(bool hasBuffer)
[signal]
void QWaylandSurface::damaged(const QRegion &rect)
void QWaylandSurface::destroy()
Destroys the QWaylandSurface.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
[signal]
void QWaylandSurface::dragStarted(QWaylandDrag *drag)
This signal is emitted when a drag has started from this surface.
void QWaylandSurface::frameStarted()
Prepares all frame callbacks for sending.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
[static]
QWaylandSurface *QWaylandSurface::fromResource(::wl_resource *res)
Returns the QWaylandSurface corresponding to the Wayland resource res.
void QWaylandSurface::initialize(QWaylandCompositor *compositor, QWaylandClient *client, uint id, int version)
Initializes the QWaylandSurface with the given compositor and client, and with the given id and version.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
QWaylandInputMethodControl *QWaylandSurface::inputMethodControl() const
bool QWaylandSurface::inputRegionContains(const QPoint &p) const
Returns true
if the QWaylandSurface's input region contains the point p. Otherwise returns false
.
bool QWaylandSurface::isDestroyed() const
Returns true if the QWaylandSurface has been destroyed. Otherwise returns false.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
bool QWaylandSurface::isInitialized() const
Returns true if the QWaylandSurface has been initialized.
[signal]
void QWaylandSurface::offsetForNextFrame(const QPoint &offset)
[signal]
void QWaylandSurface::parentChanged(QWaylandSurface *newParent, QWaylandSurface *oldParent)
QWaylandView *QWaylandSurface::primaryView() const
Returns this QWaylandSurface's primary view.
See also QWaylandView::advance() and QWaylandSurface::setPrimaryView().
[signal]
void QWaylandSurface::redraw()
struct wl_resource *QWaylandSurface::resource() const
Returns the Wayland resource corresponding to this QWaylandSurface.
QWaylandSurfaceRole *QWaylandSurface::role() const
See also setRole().
void QWaylandSurface::sendFrameCallbacks()
Sends pending frame callbacks.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
void QWaylandSurface::setPrimaryView(QWaylandView *view)
Sets this QWaylandSurface's primary view to view, in case there are multiple views of this surface. The primary view is the view that governs the client's refresh rate. It takes care of discarding buffer references when QWaylandView::advance() is called. See the documentation for QWaylandView::advance() for more details.
In shell surface integrations, such as QWaylandWlShellIntegration and QWaylandXdgShellV5Integration, maximize and fullscreen requests from the client will only have an effect if the integration has the primary view of the surface.
See also primaryView() and QWaylandView::advance().
bool QWaylandSurface::setRole(QWaylandSurfaceRole *role, wl_resource *errorResource, uint32_t errorCode)
Sets a role on the surface. A role defines how a surface will be mapped on screen, without a role a surface is supposed to be hidden. Only one role at all times can be set on a surface. Although setting the same role many times is allowed, attempting to change the role of a surface will trigger a protocol error to the errorResource and send an errorCode to the client.
See also role().
[signal]
void QWaylandSurface::subsurfacePlaceAbove(QWaylandSurface *sibling)
[signal]
void QWaylandSurface::subsurfacePlaceBelow(QWaylandSurface *sibling)
[signal]
void QWaylandSurface::subsurfacePositionChanged(const QPoint &position)
[signal]
void QWaylandSurface::surfaceDestroyed()
This signal is emitted when the corresponing wl_surface is destroyed.
[slot]
void QWaylandSurface::updateSelection()
Updates the surface with the compositor's retained clipboard selection. Although this is done automatically when the surface receives keyboard focus, this function is useful for updating clients which do not have keyboard focus.
QList<QWaylandView *> QWaylandSurface::views() const
Returns the views for this QWaylandSurface.
::wl_client *QWaylandSurface::waylandClient() const
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qwaylandsurface.html