| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
| |
We did not mark the wasapi sink as "stopped" in the error handler,
causing an assertion failure in the stream destructor.
Fixes: QTBUG-142480
Pick-to: 6.10 6.11
Change-Id: Ifd53bf1c36ce30173d552c9852a3d4f7d7a11987
Reviewed-by: Mikko Hallamaa <mikko.hallamaa@qt.io>
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
setResolvedAudioDevice will create a new player, if it owned a player
before. This can lead to situations where the setting a new device after
unsetting the sample can crash inside setResolvedAudioDevice due to a
nullptr dereference.
Clearing/unrefing the player when clearing sample will prevent this
situation from happening.
Fixes: QTBUG-142743
Pick-to: 6.10 6.11
Change-Id: Ifce32658ba77275d6e466798e99bc1c994721e0b
Reviewed-by: Mikko Hallamaa <mikko.hallamaa@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
UV line stride in planar YUV and YV formats is calculated from overall
frame size in bytes, frame height, and the known Y-plane stride.
The overall size comes from bytesRequired in texture description, which
aligned the U and V plane heights to the nearest even number. This
caused an inaccuracy in the calculation for UV stride for resolutions
where the U and V planes have odd heights.
The increase of horizontal scaling in packed texture formats (fallback
for YUV420p10) increased this error, and caused an extra pixel to be
added to the stride.
This patch replaces the alignment in bytesRequired of these formats, to
align the sum of U and V plane heights instead, and re-enables
previously failing tests.
Pick-to: 6.11 6.10 6.8
Change-Id: I9c8912eeba4729b0117bdd7e87a76c43569cb87a
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
If the sample format is not supported, we should inform the caller about
it. Otherwise we may crash.
Fixes: QTBUG-142694
Pick-to: 6.10 6.11
Change-Id: Id63735da02177472d6c63087f0dfbaa7c248f087
Reviewed-by: Vladimir Belyavsky <belyavskyv@gmail.com>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some FFmpeg decoding implementations for specific graphic cards
produces frames with non-null AVHWFramesContext::free.
We should consider the case, specifically, save and call the original
deleter.
Fixes: QTBUG-142242
Pick-to: 6.11 6.10 6.8
Change-Id: I17ca8e337db08ffd9ec3dbcb12e00c25aa7c7bf2
Reviewed-by: Mikko Hallamaa <mikko.hallamaa@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
autoPlay only worked if changing source while stopped, because our call
to QMediaPlayer::setSource inside QQuickMediaPlayer::qmlSetSource
triggered a mediaStatusChanged, which in turn caused m_wasMediaLoaded
to become true inside QQuickMediaPlayer::onMediaStatusChanged, before
the new media was actually loaded.
Fixes: QTBUG-138223
Pick-to: 6.11 6.10
Change-Id: Idf4515542cf4c964ee90f284af520ccc8589ba25
Reviewed-by: Bror Wetlesen Vedeld <bror.vedeld@qt.io>
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
* remove unused forward declarations
* remove unused includes
* clean up include style
Pick-to: 6.11 6.10 6.8
Change-Id: Ied02b763d647aa6e78c64705ffd76c46c370ab85
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Mikko Hallamaa <mikko.hallamaa@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
* `createBackend` was declared, but not defined.
* `aspectRatioMode` was unused
* group all full-screen related members
Pick-to: 6.8 6.10 6.11
Change-Id: Iad72bc9e69746f345cbcaab40703182f02e9b79e
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
| |
Fixes: QTBUG-142695
Pick-to: 6.11 6.10 6.8
Change-Id: I0d3ad3f5c0617127386e99754d9457b7a1df0665
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
examples will be compiled with QT_NO_URL_CAST_FROM_STRING in a separate
commit.
Use QUrl::fromLocalFile() where it's obvious the path is a local file.
Use QCOMPARE() instead of QVERIFY(a == b).
Drive-by, use Qt string literals.
Pick-to: 6.11
Change-Id: I2fa3e02ccdd36e66e135435e324f38ae61e0e201
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
|
| |
|
|
|
|
|
|
| |
Fixes: QTBUG-142503
Pick-to: 6.10 6.11
Change-Id: I056bee3d886062b7c6b937fa6cbf552cfc6d5c4e
Reviewed-by: Nils Petter Skålerud <nils.petter.skalerud@qt.io>
Reviewed-by: David Boddie <david.boddie@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
The concatenated string is clearly a local file path.
Amends e98bce0c5ff5afa609fdd8cde65a0405a77a4fa8.
Pick-to: 6.11 6.10 6.8 6.5
Change-Id: I6bda2e778fa04fffb2463d4c8c4ee814ca0af53d
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
Reviewed-by: Lorn Potter <lorn.potter@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
Reworking Android audio sinks to the new architecture also fixed buffer
size returning 0, as it now returns our ringbuffer size.
This patch removes the workaround for this in buffer loading time code.
Pick-to: 6.11
Change-Id: Ica524cef3fd54cdab3374c5ae2ebb190ae2eca8e
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
This enables links to permissions in the QtQmlCore module, such as
CameraPermission.
Pick-to: 6.11
Task-number: QTBUG-142503
Change-Id: I16619ddd46b0636b0e7edfb1de0a7be997270637
Reviewed-by: Jerome Pasion <jerome.pasion@qt.io>
|
| |
|
|
|
|
|
|
| |
This patch adds [[maybe_unused]] in cases where a variable is used only
with specific configurations, operating systems etc.
Change-Id: I8fbb12b09978c5a788b39d67044892d46b269346
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
QAudioSink/QAudioSource gain a new `start` method that allow users to
register a callback that will be called from the audio thread. This
allows more fine-grained control over the Audio device.
[ChangeLog] Added a callback-based audio IO for QAudioSink/QAudioSource
via a new `start()` signature.
Task-number: QTBUG-138267
Change-Id: I08c9aaf6357dd78b65bdbc07ac0d02ca15b989a1
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
This reverts commit 1379c85ebf9b03f329619ac7d6afb2119d73d5c2.
Reason for revert:
Fixed in qtbase
Change-Id: I950f0441838ef9a0d90139c982cc53e955d1e444
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
x11 screencapturing may depend on window managers
Different window managers change the behavior of screencapturing.
This different behavior should be documented as a limitation.
Task-number: QTBUG-141727
Pick-to: 6.10
Change-Id: I52de3bc5c4417ea309f08b298d446f11e25469a7
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
| |
QtMultimedia includes some heavy system headers, that could be
precompiled
Pick-to: 6.10
Change-Id: I8bc685b9203c398ddf0191fa2770374af9b71647
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
|
|
|
|
|
|
|
| |
Do not set exact device when id is null string
Pick-to: 6.10
Change-Id: I1f714f81c899cd9965c346205734d6be698db108
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
Without this, we get Failed to construct 'VideoFrame': Invalid source
state
Pick-to: 6.10
Change-Id: I2e17008c46b64d12b80a648cb2fd0abe7386f048
Fixes: QTBUG-142140
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
We use the 'clone' method on the resolved stream object to raise the
scope, as it was being destroyed when the scope of the promise resolve
function went out of scope.
Pick-to: 6.10
Change-Id: Ia13b2861a04897505a83070215a3528fcca89288
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Reviewed-by: Even Oscar Andersen <even.oscar.andersen@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QAudio::convertVolume was added to removed_api.cpp, but since the header
used the wrong guarding macro, the symbol was not generated.
QT_MULTIMEDIA_REMOVED_SINCE should have been used instead of
QT_CORE_REMOVED_SINCE
Pick-to: 6.10
Fixes: QTBUG-142166
Change-Id: I6a3c8d345942ee8d16f5619cda2d605bd128e4e9
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Nils Petter Skålerud <nils.petter.skalerud@qt.io>
Reviewed-by: Lars Sutterud <lars.sutterud@qt.io>
Reviewed-by: Mikko Hallamaa <mikko.hallamaa@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Linking the *Private libraries is good enough for propagating usage
requirements, but not for propagating headers for precompilation. i.e.
when only linking Qt::CorePrivate, <QtCore/QtCore> will not be
precompiled.
We therefore ensure to link both public and private libaries.
Pick-to: 6.10 6.8
Change-Id: Ifd13bf057429e797ba0bd17f3c214fdbfeb50bc1
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes the following build failure seen with a
local -no-pch build:
.../qt5/qtmultimedia/src/multimediaquick/qquickimagepreviewprovider.cpp:16:14: error: no member named 'lock_guard' in namespace 'std'
16 | std::lock_guard guard(mutex);
| ~~~~~^
.../qt5/qtmultimedia/src/multimediaquick/qquickimagepreviewprovider.cpp:16:25: error: use of undeclared identifier 'guard'
16 | std::lock_guard guard(mutex);
This amends d3508f485257a43ae4e91cb85dc608b0c9d20256.
Change-Id: I2ee0354d6089f098a01d4f1625d1e94848016748
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
`QtAudio::UnderrunError` is equivalent with `QAudio::IdleState`. It has
nothing to do with hardware xruns, which is a common misunderstanding.
This patch deprecates this error code and removes its use from qnx and
wasm backends.
Change-Id: I2a1b44f4f27efe9d7aaf8267fd735c6a78358135
Reviewed-by: Mikko Hallamaa <mikko.hallamaa@qt.io>
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
|
| |
|
|
|
|
|
|
|
| |
This patch converts it to QChronoTimer which allows higher presicison
with std::chrono::nanoseconds.
Fixes: QTBUG-141821
Change-Id: I0873ff05a506bd59dffe155993aaaba4f2c3e1e5
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
|
| |
|
|
|
|
|
|
|
| |
Q_PRESUME is Q_ASSUME with c++23 semantics. We can use it instead of our
own implementation
Change-Id: I7d7b1e124a6eda25d63cb6a57782b3c070d93fda
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
We want to remove the retired voices, so we need to return the correct
predicate.
Pick-to: 6.10
Change-Id: I5e43d94a8562f4e04854b66ef003a3f11a6f8175
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
Reviewed-by: Mikko Hallamaa <mikko.hallamaa@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
If we render in non-ui thread, we have to check ThreadedOpenGL
and PlatformOffscreenSurface qpa capabilities.
Pick-to: 6.8 6.10
Fixes: QTBUG-135598
Task-number: QTBUG-131107
Change-Id: I24efa91a647e2927193ef4c623e51b691fa7d731
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
AndroidMediaRecorder depends on setting the preferred audio device of
the MediaRecorder by calling the setAudioInput method which was
removed in the fix to QTBUG-126028.
This patch refactors QAndroidMediaCaptureSession to set the preferred
audio device of the MediaRecorder directly, and then performs the device
preparation introduced in the earlier patch.
Pick-to: 6.10 6.8
Change-Id: I624da2b5557b71542f3c5228f9b56e44c969ce82
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
|
| |
|
|
|
|
| |
Change-Id: I77a996e2469fdcbfacaee57cf3e2fbde66411afd
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
At the moment we'd get the stream classified as Music (which is the
default) even though QRtAudioEngine seems to be used mostly for
non-music purposes (i.e. sound effects). Declare it as such so the
system isn't entirely verbose over these.
This would mean processes using QtVirtualKeyboard get registered as
Music players, which isn't intended.
Pick-to: 6.10
Change-Id: I34c1f613b1e61c0b2674da16cf12a652e3a4ae8e
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
|
| |
|
|
|
|
|
|
|
| |
mingw/gcc-13 builds warn (with an error about a redundant move).
Pick-to: 6.8 6.10
Change-Id: Iaf4048bc1e2a55825322f9ce18feee0e7009347d
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
X11 has two limitations when it comes to screenrecording.
The first is when windows are partly off screen.
The other is when windows are wholly off screen.
Pick-to: 6.10
Fixes: QTBUG-141727
Change-Id: Ie8cd88b35b9289e14852f98a2feb727b222c4a5d
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Nils Petter Skålerud <nils.petter.skalerud@qt.io>
Reviewed-by: Kaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>
|
| |
|
|
|
|
|
|
|
|
|
| |
A window may be minimized or located on a workspace that is not
currently visible. On some window managers, such windows change their
map_state and cannot be captured. The patch adds a more accurate error
message and gets around unnecessary retries.
Pick-to: 6.10
Change-Id: I5f423e956310c2e17d42cfb8e1381022cbc3ca62
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Arch linux and derivatives allow users to install PipeWire and
PulseAudio in parallel. This is problematic, as there is no good way to
determine if PipeWire manages audio devices from PipeWire's API.
This patch adds a rather ugly workaround to first try to connect to
PulseAudio and detect if it's PipeWire's emulation. If we detect vanilla
PulseAudio, we skip pipewire. Unfortunately this will increase the
startup times by a few milliseconds.
Fixes: QTBUG-141836
Fixes: QTBUG-140938
Pick-to: 6.10
Change-Id: I7cc1257212805c7413dba5a3ba9d9638e170df03
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It might have supported constexpr initialization, but the use of
QUniqueHandle implied a load-time cost anyway to install the destructor
atexit() time.
And now QUniqueHandle no longer allows constexpr.
qgstpipeline_p.h:34:15: error: explicitly defaulted function ‘constexpr QGstPipeline::QGstPipeline()’ cannot be declared ‘constexpr’ because the implicit declaration is not ‘constexpr’:
qgst_p.h:805:7: note: defaulted constructor calls non-‘constexpr’ ‘QGstBin::QGstBin()’
qgst_p.h:556:7: note: defaulted constructor calls non-‘constexpr’ ‘QGstElement::QGstElement()’
qgst_p.h:381:7: note: defaulted constructor calls non-‘constexpr’ ‘QGstObject::QGstObject()’
qsharedhandle_p.h:102:5: note: defaulted constructor calls non-‘constexpr’ ‘QtPrivate::QSharedHandle<HandleTraits>::QSharedHandle() [with HandleTraits = QSharedGstObjectTraits]’
quniquehandle_p.h:196:14: note: defaulted constructor calls non-‘constexpr’ ‘QUniqueHandle<HandleTraits, Deleter>::QUniqueHandle(const Type&) [with typename std::enable_if<is_default_constructible_v<Deleter>, bool>::type <anonymous> = 1; HandleTraits = QtPrivate::UniqueHandleTraitsFromSharedHandleTraits<QSharedGstObjectTraits>; Deleter = QtUniqueHandleTraits::DefaultDeleter<QtPrivate::UniqueHandleTraitsFromSharedHandleTraits<QSharedGstObjectTraits> >; Type = GstObject*]’
Change-Id: I6c8153900d510dcc9309fffd827a5a9c03b0a97b
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
One should be able to set the preferred thread local QRhi backend before
it's initialized, so this patch moves it out from being a member and as
a static thread_local instead.
Pick-to: 6.10 6.8
Change-Id: I548f9e772155ef99007529390198d90b13cc80f5
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
QWindowsAudioDevice::open may fail. We need to detect this to prevent
nullptr dereferences in openAudioClient.
Fixes: QTBUG-141787
Pick-to: 6.10 6.10.1
Change-Id: I5eaa3c23aba976664a451b288064bf7d91e2b59b
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Mikko Hallamaa <mikko.hallamaa@qt.io>
|
| |
|
|
|
|
|
|
| |
we can move the image scaling out of the mutex.
Change-Id: I85f56a56b7d011b7e5a0e7c179e042fdf21187fb
Reviewed-by: Nils Petter Skålerud <nils.petter.skalerud@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
QQuickImagePreviewProvider only provided a single preview image. This
will break when people use multiple instances in their applications.
We now keep track of the QQuickImageCapture instances and keep on
preview image per instance. This means that we also need to change the
URI to take the instance ID into account.
Change-Id: I85694dff67ff643564fcdd130839b047102c3382
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Nils Petter Skålerud <nils.petter.skalerud@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
Capturing may fail if the window geometry changes between the invocation
of update and XShmGetImage. Retrying the operation a few times makes
such failures improbable.
Pick-to: 6.10
Change-Id: I6a46dc6e8463c41b5f8029a0e5de225e7fd76d90
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We report supporting all sample formats Qt supports on Android, as
we can do sample format conversion. AAudio supports formats except
uint8, but in some cases other formats such as int32 can be unsupported
by Android mixer. There seems to be no way to directly query this
support, only what the audio device itself supports, which is not
equivalent.
This patch adds a fallback mechanism to perform sample format conversion
to float if opening a stream with the original format fails, but opening
it with float succeeds.
Fixes: QTBUG-141852
Pick-to: 6.10
Change-Id: I0b0524ddd2712beeb3a7ecdd37928544610b4a4a
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
|
| |
|
|
|
|
|
|
| |
The return code was unnecessarily complex.
Pick-to: 6.10
Change-Id: I4ba158e4109be7e5db7a8fbabe5b5db72e94f34f
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
It seems that in certain condition, stopping the audio client will not
cause the worker thread to wake up. In these cases we signal the win32
event handle explicitly in order to wake the worker thread.
Fixes: QTBUG-141840
Task-number: QTBUG-141789
Pick-to: 6.10 6.10.1 6.8
Change-Id: I013e27365bb909fcf781b16d99d8e9649bea01df
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
| |
Task-number: QTBUG-140629
Change-Id: Ic4afee9319d8eff499e2f6d7a99cab128c7ed1e2
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
- Update the capture size according to the visible window region,
and capture only it.
- Emit an error if the whole captured window is out-of-screen.
Pick-to: 6.10
Task-number: QTBUG-141727
Change-Id: I6513839a451be25efca341a652f2f90db9a9ca05
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
For testing purposes, it would be useful to specify a specific backend
for thread local QRhi instances, even if another backend would be
available, such as OpenGL instead of Metal.
This patch adds private API as an environment variable to specify a QRhi
backend to create when required as a static QRhi instance.
Pick-to: 6.10 6.8
Change-Id: I6fb3aad4c76ce20b2c07348799a78c1129b1d807
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|
| |
|
|
|
|
|
|
|
| |
`isEglfsQPA` is only used for egl/dmabuf, causing unused variable
warnings in other configurations.
Pick-to: 6.8 6.10
Change-Id: Idc55da3584c5613e8be005cc6dcd1c933e44b2b6
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
|