| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Pick-to: 6.5
Change-Id: I9468f2a4ff6ca93b6a1b66cd6cb79659fec85524
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Add some code examples and images.
Task-number: QTBUG-110757
Pick-to: 6.5
Change-Id: I599bef3374c597e4ab2afa4478748100d3963d84
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|
|
|
|
|
| |
Pick-to: 6.2 6.4 6.5
Change-Id: I81b01ea4c8d0c29d58b36e3ac9d146f95d1f777c
Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Writing AUTO_RESOURCE_PREFIX in every qt_add_qml_module call seems
rather pointless.
In addition:
- Add documentation for QTP0001.
- Adjust some of the examples to use QTP0001 policy.
- Improved the error message.
Pick-to: 6.5
Task-number: QTBUG-96233
Change-Id: I6e19a491acba97493893bf1953fca3462296c1ea
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this patch QQuickImageParticle will now properly re-query
the m_rhi member the next time updatePaintNode() is called
Additionally a new (override)
QQuickImageParticle::invalidateSceneGraph()
will call reset() so that potential sub-nodes (e.g. SpriteParticle)
will also be re-created
Last but not least: QQuickSpriteEngine::startAssemblingImage()
was missing to reset it's sprites container
(without that the sprites would pile up and eventually
fail with "Too many animations" error)
Pick-to: 6.5 6.4 6.2
Change-Id: I172fd23ddfac475542aabc6cc17d8fee74f728b2
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adding requestPaint() at the end of invalidateSceneGraph()
will make sure that painting is trigger properly again,
including the (re-)creation of the painting context.
As that request of painting will also recreate the painting
context, it will also allow the creation of a new QSGNode
Without this patch a nullptr will be returned as QSGNode
until a "proper" dirty or update() happens due to property changes
or explicit update calls.
Pick-to: 6.5 6.4 6.2
Change-Id: If1e79d135d3d1f5253cb41a3be1630cfed3865dd
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|
|
|
|
|
|
| |
Fixes: QTBUG-109035
Pick-to: 6.5
Change-Id: Idf4bf0a114529dd1715c4b9db0b3fdeea5b78bf1
Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
|
|
|
|
|
|
| |
Change-Id: If368424ffa75921c001a9a72c4c8e46779ae52e1
Reviewed-by: Matthias Rauter <matthias.rauter@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
|
|
|
| |
The signal is new in Qt 6.5, so better list it separately (with \since
tag).
Pick-to: 6.5
Change-Id: If83cc1d48f0fdeafbd6a67691170932ec9ea5e04
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
While you can, technically, have URIs that contain '$', or '幽', '霊',
'文', and '字', you really shouldn't.
Amends commit 9e4f6d92111bff0d422609704673cc0d9a46cafd.
Pick-to: 6.5 6.4 6.2
Fixes: QTBUG-106074
Change-Id: Ic0f13b6ea2bb704d2bd9f4fa5841aa69a88cd5a7
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
Reviewed-by: Semih Yavuz <semih.yavuz@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We should generate type checking code for only strict comparison
of var against null/undefined types or vice versa cases. The non-
strict comparison should be handled elsewhere. Removed pragma Strict to
allow to add warning emitting tests of non-strict comparison.
This amends 6a816a9e0dfc2b41a4f86c721679f2517ec27eb6
Pick-to: 6.5
Fixes: QTBUG-110769
Change-Id: I7f9a457e71a621a005f377216e841bec01667454
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
We don't store a QObject* there anymore.
Amends commit 718f3469f693eb179f1504a41b18280656a2325d.
Pick-to: 6.5
Change-Id: Ib3088b8d4966c761af0c3fc815b85092361555b1
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Introduce clearCache() method in QQuickAnimatedImagePrivate and use
it wherever applicable to make the code a bit cleaner. Also don't clean
the cache explicitly on setSource(), as it's still cleared in setMovie()
call.
Change-Id: I299b138371534ff091248013ac833d734d8a6607
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
| |
Pick-to: 6.5
Change-Id: I97680ad83968ec33f70a5d16e6fb6e484764fa11
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
| |
Pick-to: 6.5
Change-Id: I7f700d64694c8651769841a0109d32e8f9a839b2
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
The behavior of qmlformat has changed. Update the documentation to
reflect it.
Pick-to: 6.5
Fixes: QTBUG-107213
Change-Id: I7a53ad7b62edce0f078782dbef340236d20c9781
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bound components can only be instantiated in the context they're
declared in. Adding a context in between before instantiating a
component makes it impossible to bind the component. We want to use
bound components so that we can safely use IDs of other objects from
the same context inside the objects created from the component.
See also commit fc683799fee933757abdd3953048f136e750690b.
Pick-to: 6.5
Fixes: QTBUG-110697
Change-Id: I8ac9afe13a3d88a4c8e432f5cd701abee8a7f6ac
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Partially versioned imports should not be sorted useing the generic
comparison operators. We have to check each component individually.
Pick-to: 6.5
Fixes: QTBUG-110320
Change-Id: Id75ab73ff6a4b5b040b9fcbb426e6bcf893d3d8b
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
No, you cannot use kebab case.
Pick-to: 6.5 6.4 6.2
Fixes: QTBUG-106074
Change-Id: I9e3bdfd71d40177f16c99330ffc51d899384f407
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is the simplest way to prevent the garbage collector from
destroying the object while at the same time allowing a manual
destruction.
Pick-to: 6.5 6.4 6.2
Task-number: QTBUG-95895
Task-number: QTBUG-96167
Fixes: QTBUG-91390
Change-Id: Ic3f3146bc555991068ce3367971e050f745d235d
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
| |
And build standalone DOM against Qt 6.5 (beta)
Change-Id: I9395b4932ecdedd28f10d1e791e2abe445516183
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Apparently there is quite some outdated information on JavaScript memory
management on the internet. Clarify what the memory manager actually
does and link the description from a prominent place.
Pick-to: 6.5
Fixes: QTBUG-105498
Change-Id: I5e53d063ccef0d85cfa8e852f72c08fe93d35b01
Reviewed-by: Andreas Eliasson <andreas.eliasson@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Add example to showcase keybord navigation for the TableView QML type
together with 'current' and 'selected' properties.
Fixes: QTBUG-107889
Pick-to: 6.5 6.4
Change-Id: Ie95d85aa09e574bee16c23a2dff27056bc0bcd05
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
This dropes its reset method, which was only used for its side effect of
starting the timer. We however do not actually need support for
resetting interrupts: Any reset logic should be done inside
QQmlIncubationController subclasses.
Change-Id: I8626c745c46d1e941bfaf82c069c001322cc5598
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also, drop all the VERSION 1.0 lines from the examples and tests. 1.0 is
actually a bad default version since it's before all the Qt versions.
[ChangeLog][QML] You can now omit the VERSION argument to
qt_add_qml_module(). This will automatically generate the highest
possible version.
Pick-to: 6.5
Task-number: QTBUG-99146
Change-Id: Ic10ec69b87c224e0e94e1785f65653815d4c778c
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
When we allocate a new chunk of memory, there may still be a bit of
memory left at the end of the previous one. Throwing that away is a
waste.
Change-Id: I2b70b581cb835161b0819c3e11c2354010c6ca1c
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Fix typos, eliminate some duplication, and mention AUTO_RESOURCE_PREFIX
earlier.
Pick-to: 6.5
Change-Id: I258149ef539b0af2e57731f3a4dc7ed4ab1f79b2
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
Reviewed-by: Andreas Eliasson <andreas.eliasson@qt.io>
|
|
|
|
|
|
|
|
|
| |
We're not using gray items anywhere. There is no need to waste the
memory for the bitmap.
Change-Id: I26983cbc005531184ed955cea6026b9a8c5be910
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Combined the "Internationalization and Localization with Qt Quick"
topic with the "Internationalization with Qt" topic. Fixed links
accordingly.
Pick-to: 6.5
Task-number: QTBUG-71876
Change-Id: Ib7bfac33921da8e261c0516c9da3aa7fc943027c
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There are many ways to "hide" the qmldir from the engine at run time,
which turns singletons into regular types. While all of this is invalid,
we should not assert on it, but rather produce a legible warning.
Furthermore, sharpen the importing of extra modules from qrc as implicit
imports. We should really only import modules the file in question can
ever be part of. Otherwise we needlessly produce the above situation and
hide legitimate warning messages.
Amends commit 7517c1b3ae9aa92f36b19d74a4b2de5e8531309b.
Now we need to teach our tools about the default import paths in the
resorurce file system. They cannot guess any type they may find in any
resource file anymore.
Pick-to: 6.5
Task-number: QTBUG-106929
Change-Id: Ic8c02396d10830a7f461e8a81649bb8c9a1add1f
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
We probably don't want to close the editor if we didn't handle the tab
key.
Amends commit ed83f0f795132ef20ee6fafbad911a3da0a6c481.
Pick-to: 6.5
Change-Id: I11c8f52d5ec8e1b67074ebf25d4cf4b35eb6b7e8
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
qmlformat currently discards ES classes, and only reformats the element
list inside that class. Implement a class declaration visitor which
reformats ES classes in qml file.
Pick-to: 6.5 6.2
Fixes: QTBUG-110321
Change-Id: I9fa2561902dbcfde5e8fb041bc5dedcc56bb66cc
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We had the tst_qmlsplitlib test failing in in-source builds only,
because qt6_wrap_cpp is called on the generated sources and this sets
SKIP_AUTOMOC ON. Later in the build, the consumer of the
corresponding moc_XXX.cpp.json file errors out, because it cannot find
the file.
The test worked in out-of-source builds, because the paths of the
generated files were relative: add_custom_command generated the files in
the build dir. qt6_wrap_cpp got the relative paths and assumed them
relative to the source dir and did set SKIP_AUTOMOC on non-existent
source files. AUTOMOC took care of generating moc_XXX.cpp and
moc_XXX.cpp.json, and all was well.
Clearly, the consumer of the moc_XXX.cpp.json files expects them to be
generated by AUTOMOC.
Fix this by
- using absolute paths for the generated files to make sure
target_sources gets the correct paths
- removing the qt6_wrap_cpp call
Pick-to: 6.5 6.4
Fixes: QTBUG-110117
Change-Id: I01bcd8e37f57cf30ea06a7dd1fd8844367b58a14
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We are treating global constructor functions as methods. But while they
are callable, they also have properties that can be accessed.
Accessing those should not trigger any warning. However, prior to this
commit, any property access to a method would yield a warning.
As we don't store the list of known properties in the
jsroot.qmltypes, we cannot really validate them. Moreover, it is also
possilbe to extend the prototypes, so it might never be feasible to
generate warnings.
Thus, for now simply don't create warnings for JS globals in
QQmlJSTypePropagator::isRestricted.
Fixes: QTBUG-109204
Pick-to: 6.5 6.4
Change-Id: I992365ea716827a562886d7204b2401062772f9a
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
|
|
|
|
|
| |
Pick-to: 6.5
Change-Id: I6d871abe494a946ef88bfbff414745fbb2cbc1bf
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Based on the API review, adjust the MultiEffect API.
- Change mask threshold Low/Up to Min/Max and for spread AtMin/AtMax.
- Change colorize to colorization so it is more symmetric with
brightness, saturation etc.
Task-number: QTBUG-109557
Pick-to: 6.5
Change-Id: I96ff2a13e20405998c5ed0cb38ad3b5911daf94c
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|
|
|
|
|
|
|
|
| |
It has actually been writable since Qt 5 and it is useful to keep it
writable since DelayButton can be used as a progress button that way.
Pick-to: 6.5 6.4 6.2
Change-Id: I680e0392b1135f0a37d0866c14ae1039b053fef9
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
You should be able to assign any list of QObjects to any other list of
QObjects.
Pick-to: 6.5
Fixes: QTBUG-108155
Change-Id: I6ddf0b49f7248ad56cc9560d217f3ea316c648a8
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This allows to reduce memory consumption and improve performance
when you need to load and play hi-res GIF files or animated SVG.
[ChangeLog][QtQuick][AnimatedImage] It's now possible to configure
sourceSize property for AnimatedImage. This might be useful when you
need e.g. to play hi-res GIF files in some smaller size.
Fixes: QTBUG-57501
Change-Id: I26d464855bbc20e155a8fb589a48842986a3dea4
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
| |
Pick-to: 6.4 6.5
Fixes: QTBUG-110628
Change-Id: Ifc5023a3bfeb575df3102c3ea363903ebffa88ba
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If a property is changed and reverted in short order, any animation
attached to it may not get a chance to take effect in between. In such a
case it looks like we don't have to update the interceptor when
reverting, but we actually have to. The animation needs to be canceled,
after all.
We now have to fix the case of writing different properties of a value
type sequentially, where one has an animation attached to it, though. If
that happens, we cannot drop the animation when a _different_ property
is written later on, but we do still have to update the whole value
type. So, pass an additional argument in the relevant metacalls that
declares the property we intended to change.
Pick-to: 6.5
Fixes: QTBUG-54860
Change-Id: I3b6cad2d4707d30312cda98283928fd419c40345
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The threadObject is not actually owned by the the class, but rather by
the thread that creates it. Make sure to delete it in the same thread.
Amends b94bbd7a0b032eb6428d44bfb86feac577786a1f
Pick-to: 6.5
Fixes: QTBUG-110590
Change-Id: I59d0175cf558ab3523c03a288668e1876b7329e8
Reviewed-by: Mikołaj Boc <Mikolaj.Boc@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
| |
We can use QSequentialIterable for this.
Pick-to: 6.5
Fixes: QTBUG-110438
Change-Id: I7e82d0f089c9bb9eab46be46dedc2db3726e64b0
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We do this for function return types, property types, and function
argument types already. Formally, we would have to store some
"isPointer" somewhere, but considering that we never read it anyway,
let's not go there.
This allows the compilers to recognize lists of QObject-derived types as
proper lists. This way we can generate better code for moving them
around or getting their length.
Pick-to: 6.5
Task-number: QTBUG-110438
Change-Id: I35e0fc21d574afc18799e9c3cef402f05b60a3ed
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
|
|
|
|
|
|
|
|
| |
When building with CMake, you now build the lupdate target to
run lupdate.
Change-Id: I72ab7bbc0a013f23c38bc04cdcd543e03feff65e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
We had accidentally changed it to always export the tip of the current
major version by default.
Amends commit aba13583ac1e42ca1a8b0c0a0fac9e0ec3d72460.
Pick-to: 6.5
Change-Id: I2ab7da1136cf05041f663a14e1c67383974767b0
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The header/footer positioning code would otherwise call qBound() with
max < min when a PullBackHeader/Footer is used and the delegates do not
fill the whole content area (i.e. the list does not need scrolling).
After qtbase ad5c5bb541ae20a205ac07122153b302dee1d3e1 that was causing
an assertion failure.
Even though relying on the old qBound() behavior seems strange, it
does produce the correct header/footer positioning, while swapping
the min/max values (in case max < min) does not. So we need to call
qMin and qMax explicitly rather than using qBound, to avoid the assert.
Task-number: QTBUG-104679
Pick-to: 6.4 6.5
Change-Id: Iefc50e347e77ed51c6d90ddbc6e1cf21d76fc62c
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
| |
Fixes: QTBUG-110585
Pick-to: 6.5
Change-Id: I6acd1ea2a171bd5978bed752f52b8af262936cc2
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
In 6.5, you can now set resizableRows and resizableColumns
on a HeaderView. Follow the same logic as in QHeaderView, and
let them be true by default.
Pick-to: 6.5
Change-Id: I184f2682e52460447efdf713586308c270c95e06
Reviewed-by: Santhosh Kumar <santhosh.kumar.selvaraj@qt.io>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
There is a section for this on Container's page, so let's link to it in
more places.
Task-number: QTBUG-109996
Pick-to: 6.5 6.2
Change-Id: I8c96f0cb0998d65a2c2669b6358236a14e0352dc
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|