New Classes and Functions in Qt 6.11 | Qt 6.12
Description: A list of new APIs in Qt 6.11.

- Qt 6.12
- New Classes and Functions in Qt 6.11
- Qt 6.12.0 Reference Documentation

# New Classes and Functions in Qt 6.11

This page contains a comprehensive list of all new classes and functions introduced in Qt 6.11.

- New Namespaces
- New Classes
- New Member Functions
- New Functions in Namespaces
- New Macros
- New Enum Types
- New Enum Values
- New Type Aliases
- New Properties
- New Variables
- New QML Types
- New QML Properties
- New QML Signals
- New QML Methods

### New Namespaces

`(technology preview)` namespace | QtTaskTree

### New Classes

A
  Axes (QQuaternion)
  Axis (QQuaternion)

B
  QBarrier (QtTaskTree)

C
  ColumnIterator (QRangeModelAdapter)
  ConstColumnIterator (QRangeModelAdapter)
  ConstIterator: QtCore (QMetaAssociation::Iterable)
  ConstIterator: QtCore (QMetaSequence::Iterable)
  ConstPointer (QVariant)
  ConstReference (QVariant)
  ConstRowIterator (QRangeModelAdapter)
  ConstRowReference (QRangeModelAdapter)
  QCanvasBoxGradient
  QCanvasBoxShadow
  QCanvasBrush
  QCanvasConicalGradient
  QCanvasCustomBrush
  QCanvasGradient
  QCanvasGradientStop
  QCanvasGridPattern
  QCanvasImage
  QCanvasImagePattern
  QCanvasLinearGradient
  QCanvasOffscreenCanvas
  QCanvasPainter
  QCanvasPainterFactory
  QCanvasPainterItem
  QCanvasPainterItemRenderer
  QCanvasPainterWidget
  QCanvasPath
  QCanvasRadialGradient
  QCanvasRhiPaintDriver
  QCocoaScreen (QNativeInterface)
  QCustomSeries
  QCustomTask (QtTaskTree)

D
  DataReference (QRangeModelAdapter)
  Do (QtTaskTree)
  QDefaultTaskAdapter (QtTaskTree)

E
  Else (QtTaskTree)
  ElseIf (QtTaskTree)
  EulerAngles (QQuaternion)
  ExecutableItem (QtTaskTree)
  ExecutionMode (QtTaskTree)

F
  FinalizeResultChar (QStringConverter)
  For (QtTaskTree)
  Forever (QtTaskTree)
  ForeverIterator (QtTaskTree)

G
  Group (QtTaskTree)
  GroupItem (QtTaskTree)
  QGrpcCancelInterceptor
  QGrpcFinishedInterceptor
  QGrpcInitialMetadataInterceptor
  QGrpcInterceptionContext
  QGrpcInterceptorChain
  QGrpcMessageReceivedInterceptor
  QGrpcStartInterceptor
  QGrpcTrailingMetadataInterceptor
  QGrpcWriteMessageInterceptor
  QGrpcWritesDoneInterceptor

I
  If (QtTaskTree)
  ItemAccess (QRangeModel)
  Iterable: QtCore (QMetaSequence)
  Iterable: QtCore (QMetaAssociation)
  Iterator: QtTaskTree (QtTaskTree)
  Iterator: QtCore (QMetaAssociation::Iterable)
  Iterator: QtCore (QMetaSequence::Iterable)

L
  ListIterator (QtTaskTree)

M
  QMappedTaskTreeRunner (QtTaskTree)

N
  QNetworkReplyWrapper (QtTaskTree)

O
  ObjectSignal (QtTaskTree)

P
  ParallelLimit (QtTaskTree)
  Pointer (QVariant)
  QParallelTaskTreeRunner (QtTaskTree)
  QProcessTaskDeleter (QtTaskTree)

Q
  QQuick3DTextureProviderExtension

R
  QRangeModelAdapter
  Reference (QVariant)
  RepeatIterator (QtTaskTree)
  RowIterator (QRangeModelAdapter)
  RowReference (QRangeModelAdapter)
  RowReferenceBase (QRangeModelAdapter)
  RpcDescriptor (QtGrpc)

S
  QSequentialTaskTreeRunner (QtTaskTree)
  QSingleTaskTreeRunner (QtTaskTree)
  QSSGRenderTextureProviderExtension
  QStartedBarrier (QtTaskTree)
  QStyleOptionMenuItemV2
  QSyncTask (QtTaskTree)
  Storage (QtTaskTree)

T
  QTaskInterface (QtTaskTree)
  QTaskTree (QtTaskTree)
  QTcpSocketWrapper (QtTaskTree)
  QThreadFunction (QtTaskTree)
  QThreadFunctionBase (QtTaskTree)
  Then (QtTaskTree)

U
  UntilIterator (QtTaskTree)

W
  QWebView
  QWebViewLoadingInfo
  QWebViewSettings
  When (QtTaskTree)

### New Member Functions

Class QAudioSink:

`(since 6.11)` void | start(Callback &&cb)

Class QAudioSource:

`(since 6.11)` void | start(Callback &&cb)

Class QAuthenticator:

`(since 6.11)` void | clear()

Class QByteArray:

`(since 6.11)` QByteArray | fromPercentEncoding(QByteArray &&input, char percent = '%')
`(since 6.11)` QByteArray | percentDecoded(char percent = '%') &&

Class QDate:

`(since 6.11)` QDate & | operator++(QDate &date)
`(since 6.11)` QDate | operator++(QDate &date, int)
`(since 6.11)` QDate & | operator--(QDate &date)
`(since 6.11)` QDate | operator--(QDate &date, int)

Class QGrpcCallOptions:

`(since 6.11)` std::optional<bool> | filterServerMetadata() const
`(since 6.11)` bool | operator!=(const QGrpcCallOptions &lhs, const QGrpcCallOptions &rhs)
`(since 6.11)` bool | operator==(const QGrpcCallOptions &lhs, const QGrpcCallOptions &rhs)
`(since 6.11)` QGrpcCallOptions & | setFilterServerMetadata(bool value)

Class QGrpcChannelOptions:

`(since 6.11)` std::optional<bool> | filterServerMetadata() const
`(since 6.11)` bool | operator!=(const QGrpcChannelOptions &lhs, const QGrpcChannelOptions &rhs)
`(since 6.11)` bool | operator==(const QGrpcChannelOptions &lhs, const QGrpcChannelOptions &rhs)
`(since 6.11)` QGrpcChannelOptions & | setFilterServerMetadata(bool value)

Class QGrpcOperation:

`(since 6.11)` void | serverInitialMetadataReceived(const QMultiHash<QByteArray, QByteArray> &metadata)

Class QGrpcOperationContext:

`(since 6.11)` QtGrpc::RpcDescriptor | descriptor() const
`(since 6.11)` quint64 | operationId() const
`(since 6.11)` void | serverInitialMetadataReceived(const QMultiHash<QByteArray, QByteArray> &metadata)

Class QHash:

`(since 6.11)` QHash<Key, T>::iterator | insert(Key &&key, T &&value)
`(since 6.11)` QHash<Key, T>::iterator | insert(Key &&key, const T &value)
`(since 6.11)` QHash<Key, T>::iterator | insert(const Key &key, T &&value)

Class QHttpServerConfiguration:

`(since 6.11)` qint64 | maximumBodySize() const
`(since 6.11)` qint64 | maximumHeaderFieldCount() const
`(since 6.11)` qint64 | maximumHeaderFieldSize() const
`(since 6.11)` qint64 | maximumTotalHeaderSize() const
`(since 6.11)` qint64 | maximumUrlSize() const
`(since 6.11)` void | setMaximumBodySize(qint64 maxSize)
`(since 6.11)` void | setMaximumHeaderFieldCount(qint64 maxSize)
`(since 6.11)` void | setMaximumHeaderFieldSize(qint64 maxSize)
`(since 6.11)` void | setMaximumTotalHeaderSize(qint64 maxSize)
`(since 6.11)` void | setMaximumUrlSize(qint64 maxSize)

Class QHttpServerResponder:

`(since 6.11)` bool | isResponseCanceled() const

Class QMetaProperty:

`(since 6.11)` bool | isOverride() const
`(since 6.11)` bool | isVirtual() const

Class QMultiHash:

`(since 6.11)` QMultiHash<Key, T>::iterator | insert(Key &&key, T &&value)
`(since 6.11)` QMultiHash<Key, T>::iterator | insert(Key &&key, const T &value)
`(since 6.11)` QMultiHash<Key, T>::iterator | insert(const Key &key, T &&value)

Class QNetworkRequest:

`(since 6.11)` void | setTcpKeepAliveIdleTimeBeforeProbes(std::chrono::seconds idle)
`(since 6.11)` void | setTcpKeepAliveIntervalBetweenProbes(std::chrono::seconds interval)
`(since 6.11)` void | setTcpKeepAliveProbeCount(int probes)
`(since 6.11)` std::chrono::seconds | tcpKeepAliveIdleTimeBeforeProbes() const
`(since 6.11)` std::chrono::seconds | tcpKeepAliveIntervalBetweenProbes() const
`(since 6.11)` int | tcpKeepAliveProbeCount() const

Class QObject:

`(since 6.11)` bool | isQmlExposed() const

Class QPainter:

`(since 6.11)` QPointF | brushOriginF() const
`(since 6.11)` void | setBrush(QBrush &&brush)
`(since 6.11)` void | setPen(QPen &&pen)

Class QProtobufMessage:

`(since 6.11)` To | qprotobufmessage_cast(QProtobufMessage *from)
`(since 6.11)` To | qprotobufmessage_cast(const QProtobufMessage *from)

Class QQmlContext:

`(since 6.11)` QList<QQmlContext *> | childContexts() const
`(since 6.11)` QObject * | findObjectRecursively(const QString &id) const
`(since 6.11)` QList<QObject *> | findObjectsRecursively(const QString &id) const

Class QQuaternion:

`(since 6.11)` QQuaternion::EulerAngles<float> | eulerAngles() const
`(since 6.11)` QQuaternion | fromAxes(QQuaternion::Axes axes)
`(since 6.11)` QQuaternion | fromEulerAngles(QQuaternion::EulerAngles<float> angles)
`(since 6.11)` QQuaternion::Axes | toAxes() const

Class Axis:

`(since 6.11)` bool | qFuzzyIsNull(QQuaternion::Axis axis)

Class QQuickWindow:

`(since 6.11)` void | devicePixelRatioChanged()

Class QRawFont:

`(since 6.11)` quint32 | glyphCount() const
`(since 6.11)` QString | glyphName(quint32 glyphIndex) const

Class QRhiGraphicsPipeline:

`(since 6.11)` bool | hasDepthClamp() const
`(since 6.11)` void | setDepthClamp(bool enable)

Class QSaveFile:

`(since 6.11)` std::filesystem::path | filesystemFileName() const
`(since 6.11)` void | setFileName(const std::filesystem::path &name)

Class QScopeGuard:

`(since 6.11)` void | commit()

Class QStack:

`(since 6.11)` void | push(T &&t)

Class QStringDecoder:

`(since 6.11)` QStringDecoder::FinalizeResult | finalize()
`(since 6.11)` QStringDecoder::FinalizeResultQChar | finalize(QChar *out, qsizetype maxlen)
`(since 6.11)` QStringDecoder::FinalizeResult | finalize(char16_t *out, qsizetype maxlen)

Class QStringEncoder:

`(since 6.11)` QStringEncoder::FinalizeResult | finalize()
`(since 6.11)` QStringEncoder::FinalizeResult | finalize(char *out, qsizetype maxlen)

Class QSvgGenerator:

`(since 6.11)` virtual void | initPainter(QPainter *painter) const override

Class QTemporaryFile:

`(since 6.11)` bool | renameOverwrite(const QString &newName)
`(since 6.11)` bool | renameOverwrite(const std::filesystem::path &newName)

Class QTextBoundaryFinder:

`(since 6.11)` QTextBoundaryFinder & | operator=(QTextBoundaryFinder &&other)
`(since 6.11)` void | swap(QTextBoundaryFinder &other)

Class QTextCharFormat:

`(since 6.11)` QMap<QFont::Tag, quint32> | fontFeatures() const
`(since 6.11)` QMap<QFont::Tag, float> | fontVariableAxes() const
`(since 6.11)` void | setFontFeatures(const QMap<QFont::Tag, quint32> &fontFeatures)
`(since 6.11)` void | setFontVariableAxes(const QMap<QFont::Tag, float> &fontVariableAxes)

Class QWebSocketServer:

`(since 6.11)` void | sslErrorsOccurred(QSslSocket *socket, const QList<QSslError> &errors)

Class qfloat16:

`(since 6.11)` qfloat16 | copysign(qfloat16 x, qfloat16 sign)
`(since 6.11)` bool | signbit(qfloat16 x)

### New Functions in Namespaces

`(since 6.11)` const char * | currentGlobalDataTag()

### New Macros

`(since 6.11)` | QT_NO_SINGLE_ARGUMENT_QHASH_OVERLOAD
`(since 6.11)` void | Q_PRESUME(bool expr)

### New Enum Types

`(since 6.11)` enum class | InterceptorCapability { Start, InitialMetadata, MessageReceived, WriteMessage, WritesDone, …, Cancel }
`(since 6.11)` enum class | LabelPosition { Center, OnValue }
`(since 6.11)` enum class | Continuation { Proceed, Drop }
`(since 6.11)` enum class | LineStyle { Straight, StepLeft, StepRight, StepCenter }
`(since 6.11)` enum class | StrokeStyle { SolidLine, DashLine }
`(since 6.11)` enum class | AutoConnectPolicy { None, Full, OnRead }
`(since 6.11)` enum class | RpcType { UnaryCall, ServerStreaming, ClientStreaming, BidiStreaming }

### New Enum Values

enum value | Attribute::Orientation
enum value | Event::RoleChanged
enum value | Language::Ladin
enum value | Language::Shan
enum value | PersistentCookiesPolicy::OnlyPersistentCookies
enum value | PersistentCookiesPolicy::OnlyPersistentCookies
enum value | Role::Switch
enum value | ScopeType::BindingFunctionScope
enum value | ScopeType::SignalHandlerFunctionScope
enum value | Script::Script_BeriaErfe
enum value | Script::Script_Sidetic
enum value | Script::Script_TaiYo
enum value | Script::Script_TolongSiki
enum value | UnicodeVersion::Unicode_17_0
enum value | WebAttribute::TrimAccessibilityIdentifiers

### New Type Aliases

`(since 6.11)` flags | InterceptorCapabilities

### New Properties

`(since 6.11)` cutoffMargin : qreal `(since 6.11)` keyboardSearchFlags : Qt::MatchFlags `(since 6.11)` gradient : QQuickShapeGradient* `(since 6.11)` selectedGradient : QQuickShapeGradient* `(since 6.11)` columnAxis : QCategory3DAxis* `(since 6.11)` customColumnLabels : QStringList `(since 6.11)` customRowLabels : QStringList `(since 6.11)` rowAxis : QCategory3DAxis* `(since 6.11)` valueAxis : QValue3DAxis* `(since 6.11)` labelPosition : LabelPosition `(since 6.11)` bindInterface : QNetworkInterface `(since 6.11)` previewColumnVisible : bool `(since 6.11)` rotationAbsolute : bool `(since 6.11)` pan : qreal `(since 6.11)` timeZone : QTimeZone `(since 6.11)` visualMax : QDateTime `(since 6.11)` visualMin : QDateTime | `(since 6.11)` zoom : qreal `(since 6.11)` dashOffset : qreal `(since 6.11)` dashPattern : QList<qreal> `(since 6.11)` joinStyle : Qt::PenJoinStyle `(since 6.11)` lineStyle : QLineSeries::LineStyle `(since 6.11)` strokeStyle : QLineSeries::StrokeStyle `(since 6.11)` samplerHint : SamplerHint `(since 6.11)` devicePixelRatio : qreal `(since 6.11)` autoConnectPolicy : AutoConnectPolicy `(since 6.11)` axisX : QValue3DAxis* `(since 6.11)` axisY : QValue3DAxis* `(since 6.11)` axisZ : QValue3DAxis* `(since 6.11)` axisX : QValue3DAxis* `(since 6.11)` axisY : QValue3DAxis* `(since 6.11)` axisZ : QValue3DAxis* `(since 6.11)` visualMax : qreal `(since 6.11)` visualMin : qreal

### New Variables

`(since 6.11)` const QOperatingSystemVersionBase | Windows11_25H2
`(since 6.11)` std::atomic<std::chrono::milliseconds> | defaultTryTimeout

### New QML Types

A
  AddDefine

C
  ColorAttachment
  ContentLayer
  CustomSeries

D
  DepthStencilAttachment
  DepthTextureAttachment
  DoubleSpinBox

E
  Easing
  easingCurve

I
  ItemSpy

P
  ParticleSceneShape3D
  PathInterpolated
  PipelineStateOverride

R
  RenderablesFilter
  RenderOutputProvider
  RenderPass
  RenderPassTexture
  renderTargetBlend

S
  SimpleQuadRenderer
  SubRenderPass

T
  TextureProviderExtension

### New QML Properties

QML Type AreaSeries:

`(since 6.11)` | gradient : ShapeGradient
`(since 6.11)` | selectedGradient : ShapeGradient

QML Type AudioEngine:

`(since 6.11)` | distanceScale : real

QML Type BarCategoryAxis:

`(since 6.11)` | labelPosition : enumeration

QML Type Custom3DItem:

`(since 6.11)` | rotationAbsolute : bool

QML Type DateTimeAxis:

`(since 6.11)` | pan : real
`(since 6.11)` | timeZone : QTimeZone
`(since 6.11)` | visualMax : real
`(since 6.11)` | visualMin : real
`(since 6.11)` | zoom : real

QML Type DialogButtonBox:

`(since 6.11)` | defaultButton : AbstractButton
`(since 6.11)` | defaultStandardButton : enumeration

QML Type ExtendedSceneEnvironment:

`(since 6.11)` | ssgiBufferSizeFactor : real
`(since 6.11)` | ssgiEnabled : bool
`(since 6.11)` | ssgiHitThickness : real
`(since 6.11)` | ssgiIndirectLightBoost : real
`(since 6.11)` | ssgiIndirectLightEnabled : bool
`(since 6.11)` | ssgiSampleCount : int
`(since 6.11)` | ssgiSampleRadius : real
`(since 6.11)` | ssgiSimulatedBounceEnabled : bool
`(since 6.11)` | ssgiSimulatedBounceFactor : real
`(since 6.11)` | ssgiSliceCount : int
`(since 6.11)` | ssrEnabled : bool

QML Type GraphsItem3D:

`(since 6.11)` | cutoffMargin : real

QML Type KeyboardStyle:

`(since 6.11)` | keyboardDesignMaximumHeight : real

QML Type LineSeries:

`(since 6.11)` | dashOffset : real
`(since 6.11)` | dashPattern : list<real>
`(since 6.11)` | joinStyle : Qt::PenJoinStyle
`(since 6.11)` | lineStyle : QLineSeries::LineStyle
`(since 6.11)` | strokeStyle : enumeration

QML Type Model:

`(since 6.11)` | motionVectorEnabled : bool
`(since 6.11)` | motionVectorScale : real

QML Type RectangleShape:

`(since 6.11)` | drawBottom : bool
`(since 6.11)` | drawLeft : bool
`(since 6.11)` | drawRight : bool
`(since 6.11)` | drawTop : bool

QML Type RectangularShadow:

`(since 6.11)` | bottomLeftRadius : real
`(since 6.11)` | bottomRightRadius : real
`(since 6.11)` | topLeftRadius : real
`(since 6.11)` | topRightRadius : real

QML Type Rotation:

`(since 6.11)` | distanceToPlane : real

QML Type SceneEnvironment:

`(since 6.11)` | oitMethod : enumeration
`(since 6.11)` | temporalAAMode : enumeration

QML Type ShapePath:

`(since 6.11)` | cosmeticStroke : bool

QML Type SplineSeries:

`(since 6.11)` | optimized : bool

QML Type TextSelection:

`(since 6.11)` | document : TextDocument
`(since 6.11)` | selectionEnd : int
`(since 6.11)` | selectionStart : int

QML Type ValueAxis:

`(since 6.11)` | visualMax : real
`(since 6.11)` | visualMin : real

QML Type VectorImage:

`(since 6.11)` | asynchronousShapes : bool

QML Type VirtualKeyboardSettings:

`(since 6.11)` | arrowKeyNavigationEnabled : bool

QML Type sslConfiguration:

`(since 6.11)` | sslOptionFlags : QSsl::SslOptions

QML Type sslDtlsConfiguration:

`(since 6.11)` | sslOptionFlags : QSsl::SslOptions

### New QML Signals

`(since 6.11)` | dashOffsetChanged(qreal newDashOffset)
`(since 6.11)` | dashPatternChanged(QList<qreal> newDashPattern)
`(since 6.11)` | gradientChanged()
`(since 6.11)` | joinStyleChanged(Qt::PenJoinStyle newJoinStyle)
`(since 6.11)` | lineStyleChanged(QLineSeries::LineStyle newLineStyle)
`(since 6.11)` | optimizedChanged()
`(since 6.11)` | selectedGradientChanged()
`(since 6.11)` | strokeStyleChanged(QLineSeries::StrokeStyle newStrokeStyle)
`(since 6.11)` | timeZoneChanged()
`(since 6.11)` | zoomChanged()

### New QML Methods

QML Type DateTimeAxis:

`(since 6.11)` string | timeZoneAsString()
`(since 6.11)` QTimeZone | timeZoneFromString(string zoneId)

QML Type Flickable:

`(since 6.11)` void | flickTo(point position)
`(since 6.11)` void | flickToChild(QQuickItem *child, PositionMode mode, point offset)
`(since 6.11)` void | positionViewAtChild(QQuickItem *child, PositionMode mode, point offset)

QML Type Qt:

`(since 6.11)` ArrayBuffer | atob(ArrayBuffer data)
`(since 6.11)` var | atob(var data)
`(since 6.11)` ArrayBuffer | btoa(ArrayBuffer data)
`(since 6.11)` var | btoa(var data)

QML Type TextSelection:

`(since 6.11)` void | duplicate()
`(since 6.11)` void | linkTo(url destination)
`(since 6.11)` void | moveSelectionEnd(MoveOperation op, int n)
`(since 6.11)` bool | moveSelectionStart(MoveOperation op, int n)

QML Type View3D:

`(since 6.11)` pickResult | closestPointPick(vector3d origin, float radius, Model model)
`(since 6.11)` list<Object3D> | pickInRect(point start, point end)
`(since 6.11)` pickResult | rayPick(vector3d origin, vector3d direction, Model model)

QML Type XrView:

`(since 6.11)` pickResult | closestPointPick(vector3d origin, float radius, Model model)
`(since 6.11)` pickResult | rayPick(vector3d origin, vector3d direction, Model model)