- Qt 5.15
- Qt Wayland Compositor
- C++ Classes
- QWaylandXdgShellV5
- Qt 5.15.18 Reference Documentation

# QWaylandXdgShellV5 Class

The QWaylandXdgShellV5 class is an extension for desktop-style user interfaces. More...

Header: | #include <QWaylandXdgShellV5>
qmake: | QT += waylandcompositor
Since: | Qt 5.8
Inherits: | QWaylandShellTemplate

This class is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.

This class was introduced in Qt 5.8.

- List of all members, including inherited members

## Public Functions

| QWaylandXdgShellV5(QWaylandCompositor *compositor)
| QWaylandXdgShellV5()

## Reimplemented Public Functions

virtual void | initialize() override

## Public Slots

uint | ping(QWaylandClient *client)

## Signals

void | pong(uint serial)
void | xdgPopupCreated(QWaylandXdgPopupV5 *xdgPopup)
void | xdgPopupRequested(QWaylandSurface *surface, QWaylandSurface *parent, QWaylandSeat *seat, const QPoint &position, const QWaylandResource &resource)
void | xdgSurfaceCreated(QWaylandXdgSurfaceV5 *xdgSurface)
void | xdgSurfaceRequested(QWaylandSurface *surface, const QWaylandResource &resource)

## Static Public Members

const struct wl_interface * | interface()

## Detailed Description

The QWaylandXdgShellV5 extension provides a way to associate a QWaylandXdgSurfaceV5 with a regular Wayland surface. Using the xdg_surface interface, the client can request that the surface is resized, moved, and so on.

QWaylandXdgShellV5 corresponds to the Wayland interface `xdg_shell`.

## Member Function Documentation

### QWaylandXdgShellV5::QWaylandXdgShellV5(QWaylandCompositor *compositor)

Constructs a QWaylandXdgShellV5 object for the provided compositor.

### QWaylandXdgShellV5::QWaylandXdgShellV5()

Constructs a QWaylandXdgShellV5 object.

### `[slot]` uint QWaylandXdgShellV5::ping(QWaylandClient *client)

Sends a ping event to the client. If the client replies to the event, the pong signal will be emitted.

### `[signal]` void QWaylandXdgShellV5::pong(uint serial)

This signal is emitted when the client has responded to a ping event with serial serial.

See also QWaylandXdgShellV5::ping().

### `[signal]` void QWaylandXdgShellV5::xdgPopupCreated(QWaylandXdgPopupV5 *xdgPopup)

This signal is emitted when the client has created an `xdg_popup`. A common use case is to let the handler of this signal instantiate a QWaylandShellSurfaceItem or QWaylandQuickItem for displaying xdgPopup in a QtQuick scene.

### `[signal]` void QWaylandXdgShellV5::xdgPopupRequested(QWaylandSurface *surface, QWaylandSurface *parent, QWaylandSeat *seat, const QPoint &position, const QWaylandResource &resource)

This signal is emitted when the client has requested an `xdg_surface` to be associated with surface. The handler for this signal may create the xdg poup for resource and initialize it within the scope of the signal emission. Otherwise a QWaylandXdgPopupV5 will be created automatically.

The seat is the `wl_seat` that caused the popup to be opened.

position is the desired position of the popup, relative to the parent.

### `[signal]` void QWaylandXdgShellV5::xdgSurfaceCreated(QWaylandXdgSurfaceV5 *xdgSurface)

This signal is emitted when the client has created an `xdg_surface`. A common use case is to let the handler of this signal instantiate a QWaylandShellSurfaceItem or QWaylandQuickItem for displaying xdgSurface in a QtQuick scene.

### `[signal]` void QWaylandXdgShellV5::xdgSurfaceRequested(QWaylandSurface *surface, const QWaylandResource &resource)

This signal is emitted when the client has requested an `xdg_surface` to be associated with surface. The handler for this signal may create the shell surface for resource and initialize it within the scope of the signal emission. Otherwise a QWaylandXdgSurfaceV5 will be created automatically.

### `[override virtual]` void QWaylandXdgShellV5::initialize()

Initializes the shell extension.

### `[static]` const struct wl_interface *QWaylandXdgShellV5::interface()

Returns the Wayland interface for the QWaylandXdgShellV5.