- Qt 6.8
- Qt Wayland Compositor
- C++ Classes
- QWaylandIviApplication
- Qt Wayland Compositor | Commercial or GPLv3

# QWaylandIviApplication Class

The QWaylandIviApplication class is an extension for embedded-style user interfaces. More...

Header: | `#include <QWaylandIviApplication>`
CMake: | `find_package(Qt6 REQUIRED COMPONENTS WaylandCompositor)` `target_link_libraries(mytarget PRIVATE Qt6::WaylandCompositor)`
qmake: | `QT += waylandcompositor`
In QML: | IviApplication
Inherits: | QWaylandCompositorExtensionTemplate

- List of all members, including inherited members

## Public Functions

| QWaylandIviApplication()
| QWaylandIviApplication(QWaylandCompositor *compositor)

## Reimplemented Public Functions

virtual void | initialize() override

## Signals

void | iviSurfaceCreated(QWaylandIviSurface *iviSurface)
void | iviSurfaceRequested(QWaylandSurface *surface, uint iviId, const QWaylandResource &resource)

## Static Public Members

const struct wl_interface * | interface()

## Detailed Description

The QWaylandIviApplication extension provides a way to associate an QWaylandIviSurface with a regular Wayland surface. Using the QWaylandIviSurface interface, the client can identify itself by giving an ivi id, and the compositor can ask the client to resize.

QWaylandIviApplication corresponds to the Wayland `ivi_application` interface.

## Member Function Documentation

### QWaylandIviApplication::QWaylandIviApplication()

Constructs a QWaylandIviApplication object.

### QWaylandIviApplication::QWaylandIviApplication(QWaylandCompositor *compositor)

Constructs a QWaylandIviApplication object for the provided compositor.

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

Reimplements: QWaylandCompositorExtension::initialize().

Initializes the shell extension.

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

Returns the Wayland interface for the QWaylandIviApplication.

### `[signal]` void QWaylandIviApplication::iviSurfaceCreated(QWaylandIviSurface *iviSurface)

This signal is emitted when an IviSurface, iviSurface, has been created.

### `[signal]` void QWaylandIviApplication::iviSurfaceRequested(QWaylandSurface *surface, uint iviId, const QWaylandResource &resource)

This signal is emitted when the client has requested an `ivi_surface` to be associated with surface, which is identified by iviId. The handler for this signal is expected to create the ivi surface for resource and initialize it within the scope of the signal emission. If no ivi surface is created, a default one will be created instead.