QWaylandWlShellSurface Class
The QWaylandWlShellSurface class provides desktop-style compositor-specific features to a surface. More...
| Header: | #include <QWaylandWlShellSurface> |
| qmake: | QT += waylandcompositor |
| Inherits: | QWaylandShellSurfaceTemplate<QWaylandWlShellSurface> |
This class is under development and is subject to change.
Public Types
| enum | FocusPolicy { DefaultFocus, NoKeyboardFocus } |
| enum | FullScreenMethod { DefaultFullScreen, ScaleFullScreen, DriverFullScreen, FillFullScreen } |
| enum | ResizeEdge { NoneEdge, TopEdge, BottomEdge, LeftEdge, ..., BottomRightEdge } |
Properties
- className : const QString
- focusPolicy : const FocusPolicy
- surface : QWaylandSurface * const
- title : const QString
Public Functions
| QWaylandWlShellSurface() | |
| QWaylandWlShellSurface(QWaylandWlShell *shell, QWaylandSurface *surface, const QWaylandResource &res) | |
| QString | className() const |
| FocusPolicy | focusPolicy() const |
| void | initialize(QWaylandWlShell *shell, QWaylandSurface *surface, const QWaylandResource &resource) |
| void | sendConfigure(const QSize &size, ResizeEdge edges) |
| void | sendPopupDone() |
| QSize | sizeForResize(const QSizeF &size, const QPointF &delta, ResizeEdge edges) |
| QWaylandSurface * | surface() const |
| QString | title() const |
Reimplemented Public Functions
| virtual QWaylandQuickShellIntegration * | createIntegration(QWaylandQuickShellSurfaceItem *item) |
- 1 public function inherited from QWaylandShellSurface
- 4 public functions inherited from QWaylandCompositorExtension
- 5 public functions inherited from QWaylandObject
Public Slots
| void | ping() |
Signals
| void | classNameChanged() |
| void | focusPolicyChanged() |
| void | pong() |
| void | setDefaultToplevel() |
| void | setFullScreen(FullScreenMethod method, uint framerate, QWaylandOutput *output) |
| void | setMaximized(QWaylandOutput *output) |
| void | setPopup(QWaylandInputDevice *inputDevice, QWaylandSurface *parentSurface, const QPoint &relativeToParent) |
| void | setTransient(QWaylandSurface *parentSurface, const QPoint &relativeToParent, FocusPolicy focusPolicy) |
| void | startMove(QWaylandInputDevice *inputDevice) |
| void | startResize(QWaylandInputDevice *inputDevice, ResizeEdge edges) |
| void | surfaceChanged() |
| void | titleChanged() |
Static Public Members
| QWaylandWlShellSurface * | fromResource(wl_resource *resource) |
| QWaylandSurfaceRole * | role() |
Additional Inherited Members
- 1 protected function inherited from QWaylandCompositorExtension
Detailed Description
The QWaylandWlShellSurface class provides desktop-style compositor-specific features to a surface.
This class is part of the QWaylandWlShell extension and provides a way to extend the functionality of an existing QWaylandSurface with features specific to desktop-style compositors, such as resizing and moving the surface.
It corresponds to the Wayland interface wl_shell_surface.
Member Type Documentation
enum QWaylandWlShellSurface::FocusPolicy
This enum type is used to specify the focus policy of a shell surface.
| Constant | Value | Description |
|---|---|---|
QWaylandWlShellSurface::DefaultFocus | 0 | The default focus policy should be used. |
QWaylandWlShellSurface::NoKeyboardFocus | 1 | The shell surface should not get keyboard focus. |
enum QWaylandWlShellSurface::FullScreenMethod
enum QWaylandWlShellSurface::ResizeEdge
This enum type provides a way to specify an edge or corner of the surface.
| Constant | Value | Description |
|---|---|---|
QWaylandWlShellSurface::NoneEdge | 0 | No edge. |
QWaylandWlShellSurface::TopEdge | 1 | The top edge. |
QWaylandWlShellSurface::BottomEdge | 2 | The bottom edge. |
QWaylandWlShellSurface::LeftEdge | 4 | The left edge. |
QWaylandWlShellSurface::TopLeftEdge | 5 | The top left corner. |
QWaylandWlShellSurface::BottomLeftEdge | 6 | The bottom left corner. |
QWaylandWlShellSurface::RightEdge | 8 | The right edge. |
QWaylandWlShellSurface::TopRightEdge | 9 | The top right corner. |
QWaylandWlShellSurface::BottomRightEdge | 10 | The bottom right corner. |
Property Documentation
className : const QString
This property holds the class name of the QWaylandWlShellSurface.
Access functions:
| QString | className() const |
Notifier signal:
| void | classNameChanged() |
focusPolicy : const FocusPolicy
This property holds the focus policy of the QWaylandWlShellSurface.
Access functions:
| FocusPolicy | focusPolicy() const |
Notifier signal:
| void | focusPolicyChanged() |
surface : QWaylandSurface * const
This property holds the surface associated with this QWaylandWlShellSurface.
Access functions:
| QWaylandSurface * | surface() const |
Notifier signal:
| void | surfaceChanged() |
title : const QString
This property holds the title of the QWaylandWlShellSurface.
Access functions:
| QString | title() const |
Notifier signal:
| void | titleChanged() |
Member Function Documentation
QWaylandWlShellSurface::QWaylandWlShellSurface()
Constructs a QWaylandWlShellSurface.
QWaylandWlShellSurface::QWaylandWlShellSurface(QWaylandWlShell *shell, QWaylandSurface *surface, const QWaylandResource &res)
Constructs a QWaylandWlShellSurface for surface and initializes it with the given shell and resource res.
[virtual] QWaylandQuickShellIntegration *QWaylandWlShellSurface::createIntegration(QWaylandQuickShellSurfaceItem *item)
[static] QWaylandWlShellSurface *QWaylandWlShellSurface::fromResource(wl_resource *resource)
Returns the QWaylandWlShellSurface object associated with the given resource, or null if no such object exists.
void QWaylandWlShellSurface::initialize(QWaylandWlShell *shell, QWaylandSurface *surface, const QWaylandResource &resource)
Initializes the QWaylandWlShellSurface and associates it with the given shell, surface, and resource.
[slot] void QWaylandWlShellSurface::ping()
Sends a ping event to the client. If the client replies to the event the pong signal will be emitted.
[signal] void QWaylandWlShellSurface::pong()
[static] QWaylandSurfaceRole *QWaylandWlShellSurface::role()
void QWaylandWlShellSurface::sendConfigure(const QSize &size, ResizeEdge edges)
Sends a configure event to the client, suggesting that it resize its surface to the provided size. The edges provide a hint about how the surface was resized.
void QWaylandWlShellSurface::sendPopupDone()
Sends a popup_done event to the client to indicate that the user has clicked somewhere outside the client's surfaces.