- Qt 6.11
- What's new in Qt 6
- What's New in Qt 6.11
- Qt 6.11.0 Reference Documentation

# What's New in Qt 6.11

## New and Restored Modules in Qt 6.11

Qt 6.11 adds the following modules and tools:

- Qt Canvas Painter - Accelerated 2D painting solution for Qt Quick and QRhi-based render targets.
- Qt OpenAPI - An extension of the upstream Open API generator that generates Qt HTTP clients, typically used for RESTful APIs.
- Qt TaskTree - Provides a declarative way to compose and execute asynchronous task workflows.

## New Features in Qt 6.11

### Qt CoAP Module

- QCoapClient::bindInterface allows to bind the communication to a specific network interface.

### Qt Core Module

- QDate is now weakly incrementable, i.e. implements pre- and post-fix increment (and decrement) operators, and can be used in a C++20 `std::views::iota`.
- QJniObject APIs can now be called with `std::expected` (or an equivalent type) as the return type, in which case Java exceptions are not consumed by the framework and instead passed back to the caller as the unexpected result.
- QRangeModel::ItemAccess provides a customization point for accessing role data of a multi-role item type.
- QRangeModel can now be used with C++ ranges that don't provide a constant `std::begin/end` implementation, such as C++20 `std::views::filter`.
- With ranges that use the same QObject subclass for multi-role items, the new QRangeModel::autoConnectPolicy can be set to Full or OnRead to connect the changed-signals of all exposed properties of QObject items to the corresponding dataChanged() signal emission.
- QRangeModelAdapter provides a typical C++ container API to the range a QRangeModel operates on, ensuring that relevant QAbstractItemModel signals are emitted on changes, without user code having to work with QModelIndex. This new class is under technology preview.

### Qt DBus Module

### Qt Graphs Module

- Added new QCustomSeries class to allow users to create their own 2D graph types, such as candlestick or box-plot graphs
- Added multi-axis support to 3D graphs in the form of rowAxis, valueAxis, and columnAxis properties in QBar3DSeries, and axisX, axisY, and axisZ properties in QScatter3DSeries and QSurface3DSeries
- Added subSlicesCount, subSlicesSum, subSlicesRatio, and sliceChildren properties in QPieSlice to allow creating sub slices in pie and donut graphs
- Added visualMin and visualMax properties in QDateTimeAxis and QValueAxis to hold the visible axis ranges
- Added gradient and selectedGradient properties in QAreaSeries to allow using gradients in area graphs
- Added labelPosition property in QBarCategoryAxis to allow adjusting the label placement in bar graphs
- Added timeZone property in QDateTimeAxis to allow setting your own time zone for the axis
- Added pan and zoom properties in QDateTimeAxis to allow panning and zooming the same way as in QValueAxis
- Added color and subColor properties in QAbstractAxis to allow overriding theme colors for the axes
- Added joinStyle, lineStyle, strokeStyle, dashOffset, and dashPattern properties in QLineSeries to allow further styling in line graphs
- Added optimized property in QSplineSeries to allow using Catmull-Rom interpolation instead of the more performance-heavy and accurate default method
- Added customRowLabels and customColumnLabels properties in QBar3DSeries to allow overriding row and column labels
- Added rotationAbsolute property in QCustom3DItem to fix problems in custom item rotations
- Added rowsSanitized property in QSurface3DSeries to automatically remove rows with invalid data
- Added cutoffMargin in GraphsItem3D and Q3DGraphsWidgetItem to adjust the sensitivity of culling items near graph margins

### Qt GRPC Module

### Qt GUI Module

### Qt HttpServer Module

### Qt Lottie Animation

- Added support for path fill rules.
- Added CMAKE command qt_target_qml_from_lottie() for converting from Lottie to QML at build time.
- lottietoqml and VectorImage backend are no longer tech preview.
- VectorImage: Added support for animating shapes along paths.
- VectorImage: Added support for morphing animations (interpolating between two shapes.)
- VectorImage: Added support for matte layers.

### Qt Multimedia Module

- Added callback-based overloads for the start methods of QAudioSource and QAudioSink to allow real-time audio processing.

### Qt Network Module

### Qt Protobuf Module

### Qt QML Module

- Added workspace support in QML Language Server.
- Added go to C++ definition support in QML Language Server.
- Added support to silence context property warnings via a `.contextProperties.ini` configuration file for qmllint.

### Qt Quick Module

- Added CMAKE command qt_target_qml_from_svg() for converting from SVG to QML at build time.

### Qt Quick Controls Module

- Added DoubleSpinBox, which is similar to SpinBox but supports floating-point values.
- Added defaultButton and defaultStandardButton to DialogButtonBox. When set, the respective button will be highlighted and receive activeFocus whenever the DialogButtonBox gets focus.

### Qt Quick Dialogs Module

### Qt Quick Effects Module

### Qt Quick 3D Module

- Added QML API for user-defined render passes, enabling custom rendering pipelines directly in QML without C++ knowledge
- Added ssrEnabled property in ExtendedSceneEnvironment to enable screen-space reflections (SSR)
- Added screen-space global illumination (SSGI) effect to ExtendedSceneEnvironment, providing ambient occlusion and real-time indirect lighting
- Added per-object motion vector generation for Temporal AA and motion blur effects
- Added layering support to allow grouping nodes and controlling which layers the camera renders
- Added linked list order-independent transparency (OIT) rendering method
- Added `NORMAL_ROUGHNESS_TEXTURE` support in post-processing effects and custom materials
- Added blue noise sampling to PCF soft shadows for improved quality with less visible noise patterns
- Added proper handling of pre-multiplied alpha for Qt Quick content in textures
- Added `VIEW_MATRIX` and `PROJECTION_MATRIX` exposure to post-processing effects
- Added pickInRect() method in QQuick3DViewport for rectangle-based object selection
- Added closestPointPick() method in View3D to find the closest point on a surface to a given point
- Added rayPick() overload that accepts a specific model parameter
- Added scene shape for particle emitters that dynamically calculates shapes based on scene geometry
- Added QQuick3DTextureProviderExtension API for simplified custom texture provider creation
- Added scheduleRenderResults() function in QSSGFrameData to request specific render pass results
- Updated Assimp to v6.0.2

### Qt Quick 3D XR Module

- Added OpenGL desktop Linux support (Monado, Xlib, Wayland platforms)
- Extended processTouch() to deliver touch events to any pickable Model, not just XrItem
- Enhanced touchpointState() to return surface position and normal vector information for 3D touch interactions
- Added Popup and Menu support in XrItem through dedicated QQuickOverlay
- Updated OpenXR to v1.1.49

### Qt Quick 3D Physics Module

### Qt Quick VectorImage Module

- Added support for SVG masks.
- Added support for SVG post-processing filters to match the support in Qt SVG: feGaussianBlur, feColorMatrix, feOffset, feFlood, feBlend, feComposite and feMerge.
- Added support for animating shapes along paths.
- Added support for the SVG <symbol> tag.

### Qt Serial Port Module

### Qt Serial Bus Module

### Qt Sql Module

### Qt SVG Module

### Qt Test Module

### Qt VirtualKeyboard Module

### Qt WebEngine Module

### Qt WebView Module

### Qt Widgets Module

### Qt XML Module

### Qt Mqtt Module

## Tools

### QDoc Documentation Generator

### Qt Linguist

## Platform Changes

### Build System Changes

### Desktop Platforms

#### Windows

#### Linux

#### macOS

#### Wayland Client on Linux

### Mobile Platforms

#### Android

##### Qt for Android

- Qt Jenny now supports implementing Java interfaces and extending Java classes in C++.

##### Qt Quick for Android

#### iOS

### Embedded Platforms

#### Boot to Qt

#### Real-Time Operating Systems

## Modules Deprecated in Qt 6.11

The following modules are deprecated. We strongly advise against using them in new code.

For more information about the life-cycle of modules in Qt, see QUIP-14.

## List of API Changes

These pages contain an overview of API changes in Qt 6.11:

- New Classes and Functions in Qt 6.11
- Obsolete Classes

## Known Issues

For information about known issues in Qt 6.11, see the Qt Wiki.