| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The original choice was int, simply following textureId(). This was later
deemed insufficient: instead of a GLuint, the value is now often a 64-bit
value (on 64 bit systems), based on a pointer, since the identity of a texture
in the RHI world is the QRhiTexture* itself. In a custom texture implementation
it is likely that the value here is the value of a native object handle, either
a pointer or some 32 or 64 bit integer.
Inspired by the recent QSGTexture::NativeTexture struct change (void* -> quint64),
switch to a qint64 which is big enough to hold all these without truncation.
We choose a signed value here, in order to allow for the following pattern that
is widespread in material compare() implementations:
if (qint64 diff = m_texture->comparisonKey() - other->texture()->comparisonKey())
return diff;
Fixes: QTBUG-83769
Change-Id: I8bdae8cd835282358ded53b3703142b8f26e4400
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also adapts to new NativeTexture format, where the actual
handle is passed around instead of a pointer to it.
[ChangeLog][QQuickWidget][Important Behavioral Changes] In
earlier versions, the returned value from QQuickWidget::quickWindow()
would persist for the life time of the widget. This is no
longer the case, so if you are connecting to its signals, make
sure you also connect to its destroyed() signal and update the
connections when it is destroyed.
Fixes: QTBUG-78638
Change-Id: I33cee8543ef1ff5d31555ed3ac18ba78c9c45102
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
We don't need to list the dependencies in the qmltypes files. The
information given in the qmldir file should be enough. Ultimately, we
should get rid of all hidden dependencies.
Task-number: QTBUG-84286
Change-Id: Iaf67d476b449215715270043591d8c4858104ea6
Reviewed-by: Christian Kamm <mail@ckamm.de>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add the -c argument when invoking qsb. The scripts are batch files
already so they imply being run on Windows. With a standard VS prompt
one gets fxc in the PATH too so we can let qsb invoke it.
The result is that the built-in materials' qsb files do not contain HLSL
source code anymore, rather they have the intermediate format with
bytecode (conceptually this is like SPIR-V). So at run time there are
no calls to d3dCompile() anymore when these shaders are involved.
What does this mean in practice? With a few select examples:
shapes, opening the Gallery view - before: 80 ms spent on HLSL source
compilation - after: 0 ms.
imageparticle, opening the first 3 views - before: 166 ms spent on HLSL
source compilation - after: 0 ms
shadereffects - before: 77 ms spent on HLSL source compilation - after:
29 ms (because this has custom shaders that still ship HLSL source)
Long term this can hopefully be folded into qsb's to-be-implemented build
system integration, so that it can automatically invoke the appropriate
shader compiler on Windows and macOS. But for now we just do it manually
and check in the regenerated .qsb files.
Fixes: QTBUG-84268
Change-Id: Ibe2f80f99b3e52d5eb5eb808ea103cc766d22c04
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit c8bba05dc54231dbc5dc859f125d64b640e25a41.
The original commit was working around a kerning issue when text
was subpixel positioned. Since anchor centering is already pixel
aligned, it was regarded as an improvement regardless, but the main
goal was to fix the kerning issue.
But in an attempt at matching the anchor centering, we rounded
the center of the text item and instead of the left edge (my
request / mistake), and the result was that some cases were
still broken and upon closer investigation, the positioning
still did not match the anchors alignment exactly.
The original kerning issue has now been fixed in
e807f9d1d80559b8ff91f1c3cfdd755b3da56a6d, so this change is no
longer needed. Since it also does not correctly match the
alignment of the anchors, it does not have any additional purpose.
Task-number: QTBUG-84021
Task-number: QTBUG-49646
Pick-to: 5.15
Change-Id: Icf6d90c27b18a43d729007164f4e0058c51fb930
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Automatic atlasing (which is enabled by default for normal textures)
was added as an experimental, opt-in feature in 5.11. This commit
redoes that implementation for RHI, and enables it by default.
[ChangeLog] Enable automatic atlasing of compressed textures (can be
disabled with QSG_DISABLE_COMPRESSED_ATLAS=1)
Fixes: QTBUG-78582
Change-Id: Ia8344fffdc8dd8fb476bf6a77057c359e4816487
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
|
|
| |
Creating property data on the fly shall be optional, and we generally
use pointers for such "output" parameters.
Change-Id: I0e4c6c079381b60140971f4fd70a25d6548323eb
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
findProperty() can optionally create the property on the fly. We store
the result on the stack. In that case we can figure out that the
property exists, but we cannot return its value. This is OK, as we do
the same in the default case below.
Coverity-Id: 193545
Pick-to: 5.15
Pick-to: 5.12
Change-Id: I3a87fc6f577807e2daf74eeacd2aab61f40aefc8
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Drop all the double spaces, force a line break after each class, and
avoid converting empty strings to utf8.
Coverity-Id: 190711
Pick-to: 5.15
Pick-to: 5.12
Change-Id: I789291e257aeac97c2a931bfc604f453c39906eb
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
AutoFlickDirection and AutoFlickIfNeeded compare the size of the
flickable with the size of the content item. We need to take margins
into account since they might cause the need for scrolling when the
content would otherwise fit.
Fixes: QTBUG-31905
Pick-to: 5.15
Change-Id: I18d073af4c6ffb1b703f5e2b33f616b61e816e56
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Marco Martin <mart@kde.org>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Assigning -1 to a quintptr so that it later overflows in another place
when adding 1 warrants a comment. Also, assert against i overflowing the
bitmaps.
This way coverity might also understand what we are doing.
Coverity-Id: 175402
Pick-to: 5.15
Pick-to: 5.12
Change-Id: I212110cbb784f89b1865bd0c0cc775c08cd40c04
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
To make the API less error prone, we have changed the
void pointer to the texture handle to a 64-bit in
instead, since all handles are maximum 64-bit.
Task-number: QTBUG-78638
Change-Id: I9d995d6a883b3377f57d7c5b19d4bc4e15aa347b
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
| |
Fixes: QTBUG-84299
Change-Id: Ib1c73ae5e7f5df8d4390d33ce0e61c06b052cd59
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
The documentation incorrectly states that the method arguments
are integers, but the methods actually use floating point arguments.
Pick-to: 5.15
Pick-to: 5.12
Change-Id: Ib55d2a874c60c3960b88ce465b19b5d20be95662
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QQuickView is supposed to own the root item and shall also track it for
external deletion. Therefore, when we assign a new root item we need to
delete the old one. There is no point in setting a QPointer to nullptr
after deleting it. It will do that by itself. When we fail to assign a
new item, we should _not_ automatically delete the new one. Calling code
typically does not expect the argument to a set* call to be deleted
right away. Rather, return a boolean indicating whether we have
successfully set the root object. This can then be used to get rid of
the object if necessary.
Coverity-Id: 218729
Pick-to: 5.15
Pick-to: 5.12
Change-Id: I79ed37d22d304bcc6d4e3c956b83a65fe157dfe0
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
|
| |
The QML engine pokes around in QString's privates, so will break when
we change those privates to use char16_t; this patch shall fix that
up, once the char16_t-ification of QString has landed in qtbase.
Change-Id: I5302c339f3c892ff977c8ebb521ff4c82d237885
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
This is a much better fit conceptually, and it avoids inheriting from
ExecutionEngine.
Coverity-Id: 218787
Pick-to: 5.15
Change-Id: I3c1f1249e5267a180c46269829d9f0aa910ecdd0
Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
| |
Deprecated since 5.8. Replaced by GraphicsInfo.
Change-Id: Ia8133b3c14fb57ed8ba2c40488f485f3c00ee036
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
| |
Fixes: QTBUG-81392
Change-Id: Ic83091c547a7854b7fa86b44d93c575bd7426bae
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
| |
Change-Id: I89cc47d20f07095b966b3d9758beafb99359aa2e
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
| |
We still expect those to be called "plugins.qmltypes" in a few places.
Change-Id: I751b2bb9ca264fb7998d11c2f969ee46b32fb2cb
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
| |
It's relatively new, so better reflect that in the API docs.
Pick-to: 5.15
Change-Id: Iedd8e545228a47d8fcb9ec294a723b5fcd1afe75
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
When converting JS arrays to sequence<T> type, check first for the
existence of a QJSValue -> T converter function. This restores the
behavior from Qt <= 5.14. Amends ecdb4ed275a0869dc668d73d774735575d43a0a3
Fixes: QTBUG-84104
Change-Id: I14c86ab37e34a3c8cff072574d4b90fe9e558535
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
|
| |
It isn't used anywhere and it really shouldn't be used.
Change-Id: Ia101afde63b2c651ae36d719f0ba96428f12ecc9
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
| |
People should use qmltyperegistrar instead. We have plenty of
documentation for it.
Change-Id: Ib74909cb31cf856cbf80ec964959126638af08e9
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
| |
The 's' is important.
Change-Id: Ib3a5ed86aae8f5807902193e1051e361214ef20a
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
The current contents of builtins.qmltypes should really be part of
QtQml, and builtins.qmltypes should contain actual builtin types
instead. qmlplugindump is only run explicitly on "make qmltypes" anyway,
it's pointless here.
Change-Id: I026fb8b223e5b481cc9150d14dfb0af1aab32b51
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We don't need to register the Type enum for both QtQml and QtQuick.
QtQml is enough. Removing this makes the whole manual value type
registration obsolete. Furthermore, we want QEasingCurve as QML_FOREIGN
as we have several classes with properties of that type. To keep it nice
and tidy, we make the uppercase-named enum holder class a separate type.
Unfortunately, the Type enums differ in one entry:
QEasingCurve::BezierSpline is called Easing.Bezier in QML. Therefore, we
need to keep the custom enum around. We can change all users in
qtdeclarative to use the name from QEasingCurve, though.
Change-Id: Ibbc78d8bbf8938e2a8722f8c09833a0c73394c3d
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
| |
Fixes: QTBUG-83395
Change-Id: I98dd953497c6e28a1cfb5228095f05547e49b11d
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
|
| |
Coverity-Id: 274162
Pick-to: 5.15
Change-Id: I58e23d600e9778f5149258fac58657c1a165e0c0
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
|
| |
It needs to be replaced, but we should at least know that it exists.
Change-Id: Ia98a9c3b1670f69d34212b904a320617b8c6501d
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
| |
gadget types are accessed with value semantics, object types are
accessed with reference semantics, and namespaces are not accessed.
Change-Id: I5eb8f132d729416f28bf94e651f877fc4a9a5c77
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
| |
tst_qquickwindow::grab is now expected to pass in all combinations
(both direct GL and RHI with any backend).
Task-number: QTBUG-78608
Change-Id: I8c1f2ff3d50144c7dd4498160818d0860b67db15
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
When QQuickItem::setParentItem set to NULL, derefWindow can
be called. And for it item QSGNode will be destroyed.
If this item used for QQuickEffectShaderSource we will have
access to invalid QSGNode when "live" flag is enabled.
Change-Id: If785e5328a044ec9d2564a82361470f1b8091fc5
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|\ |
|
| |\
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
tests/auto/quick/qquicktextedit/BLACKLIST
Change-Id: If1868d27ea40fdc206971c2f7a24e91c5e62b1bf
|
| | |\
| | | |
| | | |
| | | | |
Change-Id: I1f653fa9586e7d1e9c23acffba4512cfe9f951b8
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We need it for release builds of the new TreeView
(for most subclasses of QQuickTableViewPrivate actually).
Task-number: QTBUG-61630
Change-Id: I35c52ef1336ecc2cdfafa8fba473890ce2cff2ba
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This duplicates the logic in qtbase/mkspecs/features/qml_module.prf
to handle this situation (also for Android builds with multiple ABI's).
Fixes: QTBUG-84019
Change-Id: I9ccbe4a3a79bb979bd6bb2758adb8c2e1ea7903e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| | | |\
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Conflicts:
src/qml/qml/qqml.h
Change-Id: I34295e4ea3fc9ec2a42cb93df498d54a5583ddf1
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
I think qdoc is once more confused by the mismatch between
the actual declaration and the signature in the \fn macro.
Change-Id: I25d1be71ffdfc20961e23e06e9132ed09d1e29d0
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Amends c83ca003248a21e368ebfbf799ef9580e0f4e6ac.
In Qt 5.x we do not support using Qt Quick with the QRhi-based
rendering path in -no-opengl builds. (such builds default to the
software backend in fact)
This is due to structural difficulties, such as QSGDefaultRenderContext
(the .cpp) being tied to direct OpenGL. This will only get solved properly
in Qt 6 when the direct OpenGL code path gets removed.
However, compilation should not break in -no-opengl builds,
regardless of which other conditions (QT_CONFIG(vulkan), Q_OS_MACOS,
etc.) evaluate to true.
The original patch missed the case when we have Vulkan enabled
or we are on macOS or iOS (which implies enabling the Metal code
path). This is now corrected by extending the scope of the condition.
Change-Id: I0e87d8b033aed8fdfaca826bcd32596a532380a7
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Inho Lee <inho.lee@qt.io>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
In QQuickWindowPrivate::sendFilteredPointerEventImpl(),
it appears that the mouse event of the QQuickPointerMouseEvent
can be reset in childMouseEventFilter(), causing a crash
in QQuickPointerMouseEvent::isPressEvent().
Add checks QQuickPointerMouseEvent to fix this.
Fixes: QTBUG-83411
Change-Id: I45f7406de4363974fc6adcac2999cdf55a0c84a7
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| | | |\ \
| | | | | |
| | | | | |
| | | | | | |
Change-Id: I07b002df6a05efd577d4ff24e12ef932a4fe7836
|
| | | |\ \ \
| | | | | |/
| | | | |/|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Conflicts:
src/imports/labsmodels/qqmltablemodel.cpp
tests/auto/qml/qqmltablemodel/tst_qqmltablemodel.cpp
This follows edc8512580fa16892dc13034e93300cc6a2bba59.
Change-Id: I42d1a977d33043045558118948db9151d03950c7
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Amends 3b806a18cc665b5ae0e12d45fe170bfc3f00352a.
Eric's change tried to tackle the issue by making the PartModel more
well-behaved. However, this still left some issues, as exhibited by the
linked bug. This time, we simply make the repeater more robust, and
setup d->deletables if it's not done yet.
Pick-to: 5.15
Fixes: QTBUG-71964
Change-Id: I58c80c84f73fddaea5d6030f92ffff219ecf2b71
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
(cherry picked from commit 28a31148ca02dbb530fd92dfafbcf71c64af4b70)
|
| | | |\ \ \
| | | | | | |
| | | | | | |
| | | | | | | |
Change-Id: Iba61fff386b0d76e8d3dbb63e5b86ed8ee79d151
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Fixes: QTBUG-83667
Change-Id: Ia54510bd7c20fb232b117c1ea0fa5facfcd1a9a5
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
scenegraph/qsgrhisupport.cpp: In member function ‘void QSGRhiSupport::applySettings()’:
warning: ‘QSting::QString(const QByteArray&)’ is deprecated
scenegraph/qsgrhisupport.cpp:161:102: note: in expansion of macro ‘qPrintable’
scenegraph/qsgrhisupport.cpp:585:112: warning: ‘void QAbstractSocket::error(QAbstractSocket::SocketError)’ is deprecated
Change-Id: I848e089f9d6d26fcb7f44e9e83883f5f971eba3e
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
(cherry picked from commit e3c64aff6579f04353608d4b218f031d9137d3f4)
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Replace it's use in the XML http request by QStringDecoder.
Change-Id: I99a36900742f2f7e1d37f866fee7ecb9ddcf914f
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|