Qt Wayland Compositor QML Types

The Qt Wayland module provides QML types that can be used to create custom display servers supporting the Wayland protocol.

The QML types can be imported into your application using the following import statement:

Using the Module

Using a Qt module's C++ API requires linking against the module library, either directly or through other dependencies. Several build tools have dedicated support for this, including CMake and qmake.

Building with CMake

Use the find_package() command to locate the needed module component in the Qt6 package:

find_package(Qt6 REQUIRED COMPONENTS WaylandCompositor)
target_link_libraries(mytarget PRIVATE Qt6::WaylandCompositor)

For more details, see the Build with CMake overview.

Building with qmake

To configure the module for building with qmake, add the module as a value of the QT variable in the project's .pro file:

QT += waylandcompositor

QML import

import QtWayland.Compositor

For more information about using these types in your application, see the Qt Wayland Compositor documentation.

IdleInhibitManagerV1

Provides an extension that allows to inhibit the idle behavior of the compositor

QtTextInputMethodManager

Provides access to input methods in the compositor

ShellSurface

Provides a common interface for surface roles specified by shell extensions

ShellSurfaceItem

A Qt Quick item type for displaying and interacting with a ShellSurface

TextInputManager

Provides access to input methods in the compositor

WaylandClient

Represents a client connecting to the WaylandCompositor

WaylandCompositor

Manages the Wayland display server

WaylandHardwareLayer

Makes a parent WaylandQuickItem use hardware layers for rendering

WaylandOutput

Provides access to a displayable area managed by the compositor

WaylandQuickItem

Provides a Qt Quick item that represents a WaylandView

WaylandSeat

Provides access to keyboard, mouse, and touch input

WaylandSurface

Represents a rectangular area on an output device

WaylandView

Represents a view of a surface on an output

© 2023 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.