| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| | |
tqtc/lts-5.15-opensource
Change-Id: I39595f8b7ad212c842709b939226d95531819391
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Not sure what the XXX TODO was for, but maybe some error checking...
This infinite recursion seems to happen in some pathological case, but
not normally, of course.
Pick-to: 6.1
Change-Id: I6ad56e4b3002d151b2e6007669c46f0507d7f0e0
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
(cherry picked from commit 463ac8b43d0df8eea8efda7fc240fbb7a313010b)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In any case an empty QTextLine should not be used. Q_ASSERT doesn't help
in non-debug build.
Pick-to: 6.1
Change-Id: I10b7895bc9b4cfd061aea086f810a9f8bf6d301a
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
(cherry picked from commit 447831e6e0fcc37e8617430827702b59856d5edb)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- \c true and \c false
- indentation
- mention containmentMask()
- overwritten -> overridden
- hit-testing is for all pointing devices, not just the mouse
Pick-to: 6.1
Change-Id: I1debe1f0b3a4f729225c462b20dd10bc4e1cf8b0
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
(cherry picked from commit 66a0a93c0acf53d4e050066c1c480c66cd635f15)
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The position of cursor delegate needs to be updated when we change
padding, otherwise it will be in a wrong position.
Fixes: QTBUG-91867
Change-Id: I89ca84fe893ebf517ab67890196eede14a4055d7
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
(cherry picked from commit d98694c4023881673259ba040c10df7e71ec3d37)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
...else the analyser gets confused. mapFn only is true when argc is
greater than 2, and the second argument is actually a function. In that
case, we know that mapArguments is not null, as we've called
scope.alloc.
Silences report 0b232fda14.
Pick-to: 6.1
Change-Id: I8d20ad2fcb0b9fcc4a6451e85f61e9a63679ee26
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit 5cd39d8418df74fb8e5b50fdeff591cfc951ece2)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously QQmlApplicationEngine did not handle any errors that occurred during object creation
(i.e. failures to initialize required properties) which lead to QObject::connect errors and to
the error messages not getting printed among other issues.
Change-Id: I69bc566a6d349c786cae82a963a621388684c8f5
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 890cb4cb236333fd5b112fffc0e9088ecb43f2df)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Cannot possibly do reasonable overlap checks when we have no idea how
such lines are rasterized, meaning we do not know the real bounds of
the geometry.
Fixes: QTBUG-91749
Change-Id: Ia444232330da2f1d29841589f0e65bb52822c4ae
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
(cherry picked from commit 74c458f9fdf0639cd68684b5184bf561166e14cb)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
String converters are removed in 6.2 anyway.
Fixes: QTBUG-89892
Change-Id: I504c00d99580e3d27d04f420295dd97251657ef4
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit d250e0070701e9c511ef5b1fb0d23995872ad844)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Not applicable to Qt 6. But in Qt 5 GL_DEPTH_TEST must be re-enabled
after the QSGRenderNode has done with its work, and the rendernode
specified DepthAwareRendering. For rendernodes without this flag
everything is fine, but when the flag is set, the usage of the
depth buffer, and so depth testing in the alpha pass, stays enabled,
which means leaving GL_DEPTH_TEST as disabled will lead to incorrect
rendering with semi-transparent nodes that come after the rendernode.
Fixes: QTBUG-92036
Change-Id: Ide9e862e3504ded31eba5ee2a4caf804b69812e3
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The inline components do not hold a strong reference to their outer type
because that would be a reference cycle.
Fixes: QTBUG-92236
Change-Id: I6d76a114352653210f0ece6c198cf761d3b4eda1
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit d0d4cc528ba9e3c39c15a2292066dac1d457abd5)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In TestCaseCollector::enumerateTestCases, we visit the super compilation
unit of QML tpyes to check if they might be instances of TestCase.
However, in the case of inline components, the super unit is the current
compilation unit, and we would recurse endlessly.
This does not address the issue that an inline component might actually
inherit TestCase. However, as this only affects the enumeration output
and does not actually affect test execution, this is not that much of an
issue. It should also be noted that the enumeration also fails in any
case where TestCases are loaded dynamically (with a loader), so the
method is not 100% accurate even in the absence of inline components.
Fixes: QTBUG-90740
Task-number: QTBUG-90762
Change-Id: I7e133d62c4f62fc46e9bd3999ff755f7ded3c386
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit edca9f3d60141a823a3b4401039f260c2c7f7888)
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If an item was removed from the DelegateModelGroup before it was
completed it caused subsequent items in the model to be missing in
some cases.
The reason was that while populating the ListView, it iterated with an
index for each item to call createItem() on.
However, createItem() might call onCompleted (which in the case of
QTBUG-86708 removed the item from the DelegateModel), which caused the
next index we called createItem() with to be wrong (it became one step
ahead).
We therefore add a helper class MutableModelIterator, which keeps track
of if a index in the model got removed (and if the iterator index needs
to be adjusted because of that)....
Task-number: QTBUG-86708
Change-Id: I33537b43727aed4f2b9bdda794b011b6684c44b4
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
(cherry picked from commit 0ff9db566c48172c688bf9327fe6a781dc4a1c34)
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This ensures that clang-tidy does not report it as a warning when it is
used on application code.
Change-Id: I5b84759ff87e7a5b9d119ef27650d92c86f9f831
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit c2634e14273b77f8e4cb77585ab9d7eb7880bf34)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If you have a TableView with only a couple of rows, and you add
a third one, the contentHeight doesn't update. This is fine if
not all rows are loaded (some are outside the viewport), but when
they are all inside, it should update to reflect the exact height.
The same is also the case for the contentWidth. If you add a new
row that increases the with of a column (and all columns are
visible), the contentWidth should update.
This patch adds an extra check when we do a rebuild (which we do
when you add a new row), to see if all rows or columns are
loaded. And if that is the case, we update contentHeight or
contentWidth, respecitively.
Fixes: QTBUG-92099
Change-Id: I806bfb7c3606fca97c5d27cbb91856cc40df9fb8
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
(cherry picked from commit d6a5afd120838647e0dd2a420dacf06389f0a48e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Don't mark geometry and material as dirty if there is nothing to change.
Task-number: QTBUG-41867
Change-Id: I016d2d76f4ebf731f5bfc931ba616ee5d074bc65
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
(cherry picked from commit e3cb305a6a19bf394c1068a7e483e1c95e11c22b)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As it stood, we would return early from forceLayout if no items
were loaded. This made sense, since when no items are
loaded, there would be no items to lay out.
But after we changed the logic so that an application can
show or hide rows and columns by returning an empty size
from the size providers, we now always need to do a layout
to check if some rows or columns should become visible.
Fixes: QTBUG-92076
Change-Id: I2a07bf8e62cfeebcbe36c01aa92eca3ed8227cd3
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
(cherry picked from commit 9ba9336ec4515d157a1207fad1dcd2de311527ac)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fix static analyzer warning bff6cb4333f531d5a72f7bf6dc1485f6.
If ownership of viaData is not passed to the viaAction, then the object
might be leaked. Use std::unique_ptr to make ownership transfer explicit
and implicitly delete unowned objects.
Change-Id: I89f2a6b630941a98a74db302bc1ab08055c71974
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit 78aea267209c34abeb4895712dc76c923aa46165)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This reverts commit 02c6e7bc3aca42a188b772aa9794b919e60017e7. It broke text
selection, the currentClipNode pointer must not be reset to nullptr even if
ownership is transferred to a node.
Change-Id: Ia66f7ed4be17916f3725bd3cb2cbd0e7c9d6327a
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
(cherry picked from commit 68324c56c1b8f4ad5dfcdc6f77abda3eedaf2dfd)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When a UNC path is used to locate the qmldir then when it is checked
later on the original path will be compared against the one that QUrl
returns. However, QUrl will convert the case of the host name to be
all lower-case whereas the original string may have been in upper-case.
For example, QUrl::fromLocalFile("//QT-L-R90X9VHB/tasks").toString()
will output "file://qt-l-r90x9vhb/tasks".
So in this case, the absoluteFilePath is changed at this point so that
it will match what QUrl has for the same path to avoid a problem with
it no being found.
Change-Id: I2cd5d74bfec06c01635f80574ac1a6d479792855
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit e0400d08755bb40c303bbe330bc3bd6045436c22)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The clang static analyzer warns in 3df1fff15a10a64372ed4f92ba05271f about
a potential memory leak. While that particular claim is a false positive
(the loop is always entered if sortedIndex is not empty), the re-use of
the currentClipNode variable makes it hard to follow the object ownership,
and there might still be a potential memory leak.
Use std::unique_ptr to force explicit transfer of ownership, and get
implicit destruction of objects not owned at the end of the scope.
Change-Id: If826e1d81b92f1da60aae2262b628dcaaa2e592a
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
(cherry picked from commit 02c6e7bc3aca42a188b772aa9794b919e60017e7)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-91276
Change-Id: I1ddbb4a3326d61ff94e3881beb64a14dade11c46
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit 31ad81d81e623a34cd71567b9507f16601f1c1d4)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QQuickItem returns whether it contains QGuiApplicationPrivate's
lastCursorPosition. Since that position stores the coordinate last seen
by Qt (the window border), it will always be within the window, and
within an item that covers that part of the window's border.
However, QQuickWindow stores the lastMousePosition as well, and resets
that value when it receives a QEvent::Leave. We can use that to test
whether the window that contains the item has seen a Leave event, in
which case the item is definitely not under the mouse.
Notes on the test: That we use QPointF() as the "reset" value leave the
small possibility that the cursor might be at position 0,0 of the window
(ie inside the window), and the QQuickItem there will not be under the
mouse. We can't confirm this (through an expected failure test), as
QTest::mouseMove interprets a QPoint(0, 0) as "center of the window".
And since we can't simulate mouse moves outside a window's boundary
using QTest::mouseMove, the test needs to explicitly synthesize a
QEvent::Leave for the window.
Fixes: QTBUG-87197
Change-Id: I04870d6e914092275d9d790312fc702fb99f2935
Done-with: Ivan Solovev <ivan.solovev@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
(cherry picked from commit ba1246c543118515ea244787f3d7f9c1133ccf0f)
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Connections could accumulate. Because the newest one was invoked
last due to how signal-slot invocations are ordered, rendering
was correct, but the stale connections caused unnecessary updates
(and wasted a small amount of memory).
This comes from a misunderstanding I had at the time about how
QMetaObject::Connection works. Destroying or overwriting one does
not affect the actual connection.
While at it, also modernize the connect().
Change-Id: Idde81bdbff8947ed517bf2740d623a395c0acb74
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
(cherry picked from commit 9f8292d48913c5bc50377749c2b3e030cf16d703)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
New text should not be inserted during pre-edition. Before handling new
text from key press event pre-edition need to be commit.
Fixes: QTBUG-90362
Change-Id: Ib6a7d67738bba18b7e904347b3e631416063029b
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit 5688486289f503dcde99578c72b7b768f19e8eb9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously HeapObject::GeneratorObject utilized a ValueArray member to store stack information.
As we rely on all HeapObject members to have a constant size in order for QV4Table::inlinePropertyOffset
to remain accurate, this lead to a memory conflict when a user defined his own property on the Generator.
Please do not use ValueArray for any types that are user accessible or that you intend to add properties to.
Now the stack information is stored into ArrayObjects instead which circumvents the issue.
Fixes: QTBUG-91491
Change-Id: Id6f638bf36a3ae3c9320ac99e67214c48dc81226
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
(cherry picked from commit 7ea690c61dabd2485e80e7fae9aed392ba02c846)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Fixes: QTBUG-91519
Change-Id: Idfe3116c2e94b8e96300d72e15db0bc78425f517
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit 2cb306c194625626957fcde44bd56473b0436f83)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Previously this would always return the inline component with ID 1.
Change-Id: I49dc6eb64fcd8428667f3b22afcb7212aa792db3
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 7104a3a6f8fe518bd8a0d0d246c0f65df340ee38)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If validation did not pass after text pre-editing is finished, it need
to be roll back to state before pre-editing started.
Before this change, if validation did not pass, text was always rolled
back to previous state. In pre-editing text case, it means back to the
state in which part of the text was removed (and later changed to
pre-edited text). It may cause a situation of removing part of the text
that was already validated
Fixes: QTBUG-90239
Change-Id: I3ec39e0f6b8a93d4e6fd190af30d4c80a0e495eb
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit b1ae151acc80254ab0ec2937c55b99223205875c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Document the property not the enum type.
Fixes: QTBUG-91196
Change-Id: Id11a436caf1c683a0e70a1b8e8ce86c6118725d8
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
(cherry picked from commit 3670395af58f21f203ce2289a04feef7c6de53f5)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QQmlData::get expects a non-null pointer, therefore we need to check
whether the object still exists.
Note that while this fixes the crash in the referenced bug,
PropertyChanges still does not support a dynamic target.
Task-number: QTBUG-46350
Change-Id: Ifeecf5df83e87468a1d314ce2b120006124d6f4b
Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit 1ff376e64bf5af6df7e0079700d2b9164037dc89)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Do not set m_cursor (cursor position) before calling
removeSelectedText() in processInputMethodEvent(QInputMethodEvent *)
method.
Before this change, DeleteSelection command was added to history with
new cursor position. If this command will be later rolled back, cursor
position will not be set correctly. It should be set to position
before handling the event.
Task-number: QTBUG-90239
Change-Id: Ib5e46d232e6b32f904e745da4f9e5bc03a58963f
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit 6ec8c62ca22c363fa00e085de10198a90e3d65dc)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|/
|
|
|
|
|
|
|
|
|
| |
This reverts commit 7b1331c789df0ac12d7cf5aa5f8967b8651a4cfa.
Revert of commercial license headers is required for Qt 5.15.3
opensource release.
Task-number: QTBUG-91108
Change-Id: I47eb004523bdb3beb16e9fd51e40da6f738f9f34
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In some cases, when the QGuiApplication is shutting down while there
is an active QAnimationDriver and an incubating object, the
QQuickWindowIncubationController will try to access an already
destroyed QSGRenderLoop. So use a QPointer to guard the QSGRenderLoop
access.
Fixes: QTBUG-90489
Change-Id: I528e06ff22dfcad804593db6771d9163b21808f4
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
(cherry picked from commit bac93541ba324e75c532c1987e861109e1c5b131)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch removes a workaround for old versions of MSVC; we should be
able to rely on the standard library nowadays.
Original-patch-by: Alexander Neumann
Fixes: QTBUG-89203
Change-Id: I8047565000fc7e4e3b8ac28584ff4a479b648274
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit fb4de27768935393744cbd67e9789d325e70e742)
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As it stood we would never updated the paint node upon
changes to padding. The result was that if you changed
padding after start-up, you would not see any visual changes.
This patch will ensure that we update the paint node
when we change padding.
Change-Id: I2e9ed4406e8f01c26d1fa2ef09fe35a50f28411c
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
(cherry picked from commit eb08da3249fcbffe845e209ea48ba38484783d29)
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Commit 37fcffa035d55ac00f85f57ce1390fff3be213c6 fixed the issue for
remove rows, but it can also happen with model reset.
Fixes: QTBUG-83352
Change-Id: I0ec1a67e822e4f8fe5b8f87f38dfae1f26b3fab5
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit d99d192884608408759492bd656ab99a2f4f23ed)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently removing an item connected to a particle
only invalidate the particle that will be reused for
the next item set. This has the effect that the new
item inserted appears in the same position as the
old one just removed. This patch force killing the
particle to assign next item to a new particle
starting from initial position.
Change-Id: Ic937a6d7aea65368cceb1405bb81ef1502d988a5
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit d0b1bef8b889ab852eaf906fdc9cd4219238872e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
setCurrentAnimation() can indirectly delete the animation group job
itself by invoking the animation controller. Use the RETURN_IF_DELETED
mechanism to avoid the resulting dangling pointers.
Task-number: QTBUG-90401
Change-Id: Ibd0ad21e8d3af4760604c3ff37dc46101d5f49ad
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 680f28b08f65ad38c8d5498b5738231b2a2779a3)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When binding a Shortcut to a standard key sequence like
QKeySequence::FullScreen, it binds only to one key
sequence, even though there might be multiple key sequences
associated.
This patch changes the code to emit a warning in this case
and allows to bind to multiple key sequences using
'sequences: [ <key> ]'.
Fixes: QTBUG-88682
Change-Id: I88998aa8858d8f2c0c86e46bae94afd7ceb15b66
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 6511b17038627ac30cb6622b13c7d46d9877bac5)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Normally the cursor will change position inside a text input after
receiving a touch or a keypress event. But it can also change
position by sending it a QInputMethodEvent. But as it stood, we
would in that case not inform the platform input context about
it, which meant that the IM state in QQuickTextInput would be
different from the IM state in QPA.
A bug on iOS could be seen from this when dragging the cursor
around using the magnifier glass. In that case QIOSTextResponder
would move the cursor in QQuickTextInput using QInputMethodEvents.
But since this would not be forwarded back to UITextInput, the
result would be that if you e.g pushed backspace on the input panel,
you would delete the character at the position the cursor
had before the drag.
This patch will ensure that we update platform IM state whenever
the cursor changes position from QInputMethodEvents.
Fixes: QTBUG-72757
Change-Id: Ic39c60fbce982f80d014befddbb2d4439ddeea4f
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
(cherry picked from commit 04c0615352e947a23bcd52a0da4f901b3decdb87)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If a QML component wants to mark properties of its "parent" component as
required, it can do so via
required propertyName
The information about those properties is stored in a
RequiredPropertyExtraData data structure. This structure is already
serialized to disk in the QQmlIRWriter. However, we neglected to restore
it so far in the loader.
Fixes: QTBUG-90538
Change-Id: I789daff9bc881e4f35c942c77f5116b5284de81b
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit b322a971f06823a4356f2b3aa331501aa4d0dc7f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
| |
\code must be closed with \endcode.
Fixes: QTBUG-89738
Change-Id: I0cadb14b6726a6fdc6c3fb773155066d30490e74
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
(cherry picked from commit 357e426d9849a048d3063030f2a1355f22c259e0)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updated header.COMM to the files in tqtc-qtdeclarative.
Examples, documentation files or tests are not updated.
The commercial license header may contain some
additional lines so that its line count equals with
the earlier license header. Reason for this is that
some autotests use hard coded line numbers and a
change in the line count causes failures in tests.
Task-number: QTQAINFRA-4161
Change-Id: Ic1d011aa01b1fe7242bcbbf72d5ab454d1015cf9
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some animation classes store the property to animate in a
QQmlProperty.
In some cases (e.g. ListView delegates), the item that is animated
(and therefore the context) might get destroyed while the animation
is running. And since the QQmlContextData in QQmlProperty was not
guarded, it could sometimes cause a access violation crash as the
task demonstrates.
Fixes: QTBUG-86567
Change-Id: I2c8c4f0dca8029887702adeae542eadc47451f60
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a ListModel is modified in a workerscript, we reconciliate the
state in ListModel::sync. However, the logic for moving elements was
wrong, causing crashes in endMoveRows due to invalid moves.
This patch ensures that elements are moved to the correct position.
Notably, whenever an element is moved, we must update the targetIndex of
all elements affected by that move.
Amends 3accc1dae76575120e71cadb547e961ecd50bcb0.
Task-number: QTBUG-85557
Change-Id: I1a1ffa43eab39ed2315f1916527d897b208c2c3b
Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io>
(cherry picked from commit 2996439993c587bc9c7169e4f152169f28247c21)
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some tricky cases of setting layout width based on parent layout width
were leading to infinite recursive loop of layout size calculation
(see the attached example in the related Jira task).
Initially the QQuickGridLayoutBase::rearrange() method already had
a recurse check, but it seemed to happen too late, so that the
recursive calls kept happening from the ensureLayoutItemsUpdated()
calls.
This commit moves the recursion check up, so that it's actually
executed before we have a chance to get to the next level of recursion.
Fixes: QTBUG-87253
Change-Id: I473ee219e7b5b13547e33ebbd3a6d884de2c7d45
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
(cherry picked from commit 4f8041b01445fd4eec0beb133719645d00d0b2ac)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is needed in order to make controls in qtquickcontrols2 module
more accessible. Their accessibility implementation can now inherit
from QAcccessibleQuickItem
Task-number: QTBUG-75042
Change-Id: I30deba018825937a4ebd757e5250efca87519822
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
(cherry picked from commit 21b975f186e6cec81914b6ee9a6aae5b847069d1)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The subclasses are already dead at that point. We don't need to notify
them anymore. Rather, refactor the code so that we can clean up
QAnimationGroupJob itself without virtual calls.
Task-number: QTBUG-90401
Change-Id: I6917bf299ceb1383b9d29687e5bf53ae36803ecf
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
(cherry picked from commit 75437f824d4c3a608af9eb1afddcb4d8c1a25944)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A while ago, QQuickShortcut was extended to not only have a shortcut
m_shortcut but in addition a list m_shortcuts. During this extension,
the setContext method was missed: Shortcuts in m_shortcuts are
not re-grabbed on context change. This patch fixes this.
Task-number: QTBUG-88682
Change-Id: Ie73d516f2a325a328b6e975d69490eea29a18401
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 28f515e6334fd1c15a2f7f18de6be7bfe1f9c302)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|