- Qt 6.9
- Qt Wayland Compositor
- Qt Wayland Compositor QML Types
- Qt Wayland Compositor | Commercial or GPLv3

# 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