| Commit message (Collapse) | Author | Age | Files | Lines |
| |\
| |
| |
| |
| |
| |
| |
| |
| | |
Qt 6.2.13-lts release
Conflicts solved:
dependencies.yaml
Change-Id: I3cbe1ce4293179888e236dd1a3a299cd2c66c950
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When syncView is requested to do a relayout, it will tell
the sync children to do relayout as well. A relayout alone
will not change the top-left delegate item in the viewport,
only layout the existing delegate items.
But as it turns out, it can happen that the relayout leaves
empty space in the viewport that needs to be refilled with
new rows and columns. This is typically the case if some of
the columns were resized smaller than what they used to be.
And this can change which cell ends up as top-left, or
move it to a different position.
We therefore need to extend the check in syncSyncView to also
include the _position_ of the top-left cell, and not only if
the top-left cell itself has changed.
As it stood, we also did a viewportOnly rebuild every time a
new row or column was flicked into the viewport. This is very
unnecessary, and slows down performance. Instead, we only need
to do this when if the sync child is told to do (at least)
a LayoutOnly. Only then can any of the visible rows or columns
have been resized.
Fixes: QTBUG-127809
Change-Id: I815a47e9d6453871172ff7136f8cfbd51a5bc789
Reviewed-by: Santhosh Kumar <santhosh.kumar.selvaraj@qt.io>
(cherry picked from commit 25348bc0e67f019232aa70c5558988a0c17bd15e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit a5d0cfe092cc8411469ef53df13f2dac12051bf4)
(cherry picked from commit 6f699d343c3dab086acf927c8601c88580317365)
(cherry picked from commit dd507a05b3d0743627f8503785000a5e75f9cbcb)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Both the object and the listmodel may be deleted during the life time of
ModelObject. Don't crash when that happens.
Also, fix QV4QPointer to actually name the type of the pointer it
stores. Apparently this is the first time we add a QV4QPointer of
something that's not a plain QObject.
Pick-to: 5.15
Task-number: QTBUG-118024
Change-Id: I208d8749bcd67970f7bfbe569eed7a472f909508
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 90c55e859ea258350da815acd3e1967d5ff54100)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit aa253878fedee9bc699ec333d3c0c600e24f316f)
(cherry picked from commit f7182e0124776acf0bfb1348192e09e3ccc86f0e)
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
(cherry picked from commit ca5bd206d49fafb813c52570a89006ed1967b17c)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If we remove a binding we don't want any later code to restore it. This
works quite well if the binding we remove already exists.
removeFromObject() resets the binding bit and that settles it. However,
if the binding doesn't exist yet, we so far didn't reset the bit and
when the binding appeared we would still add it to the object. That was
quite wrong.
Fixes: QTBUG-124553
Change-Id: I58c115d78b3701ad4e8837772261a9154b971dbb
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit c9d7620bc2e47d3e1b84f824eb5b643f269f4a56)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit bd75b606ca78b3b92dd9596359b232da3358608e)
(cherry picked from commit 3b4ec8930c20f107d48134f88b7113df2825ef7a)
(cherry picked from commit ed3a387333f1a4448c5e173b59deb5828790e82c)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In case the sections are displayed using ViewSection.CurrentLabelAtStart,
the section size should be taken into account while snapping the items.
This patch extends the fixup() method to perform such checks.
The drawback of this approach is that the position adjustment takes
some time (because of the animation) and happens after the scrolling is
finished.
A better solution would be to fix the scrolling process in such a way,
that no adjustment is needed during fixup.
Had to explicitly initialize the 'pos' variable, effectively backporting
8f895ea26d5d524677dd5b63f43bdd7e81339840 to the 6.2 branch, to suppress
gcc warnings and fix the build.
Fixes: QTBUG-30768
Change-Id: I31a1a3af55afe8be4e8d7980cbb163622e3283bc
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
(cherry picked from commit 249fe4ba127e834a33950a045d06628187987f99)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit b29bfa7ca03470afd06c4bdfada9ac6712957c32)
(cherry picked from commit 174e6b59ecb76393c678341dfe74e482a35c8b19)
(cherry picked from commit 1bcce82ff84c3403d0c86bccbf38f7f4e0d52d8a)
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The size of a distance field for a glyph is calculated
as:
w = ceil((boundingRect.width() + 2 * margin) / scale)
h = ceil((boundingRect.height() + 2 * margin) / scale)
In addition, the RHI-specific cache subclass adds
padding on the outside of this.
This was done in multiple places, both in Qt Base and
Qt Declarative. If they got out of sync, then we would
crash, since the distance field size is expected to
match up with the allocated rect in the cache's
texture.
For the most part this worked since the formula was
copied everywhere, but since the QDistanceField does
a translate() on the path before getting the bounding
rect, we could get a result which was off by a very
small amount (0.0000000000000071 in this case). A
qCeil() turned this into an off-by-one, and memory
corruption occurred.
To avoid duplicating this formula in both Qt Base
and Qt Declarative, we explicitly pass in the size
we expect when creating the QDistanceField.
Pick-to: 5.15
Fixes: QTBUG-124572
Change-Id: I6bb8ab4db17b43fe8ddf9db35de5b7d51ccb54de
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
(cherry picked from commit 2370cb0eb9f9be62472a84247a3933d176b4cef4)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit e180e53359accb7a11371bc951626cddaec732ef)
(cherry picked from commit a1c733ff180739e08ffc887bf2ebb255b1d89a30)
(cherry picked from commit a0a2f3b5828daa98fda3d23d0b53b22024b438b8)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The documentation mentions SnapNever as a value for DragHandler SnapMode
The correct value is NoSnap. Amends
f228af06c2c712302ee1dcdaf761cd24504b473e
Pick-to: 5.15
Change-Id: I240d63b5ac989d37f2b7a611cab75ccd4bab2368
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
(cherry picked from commit 33b99d65f609d48929da1781ed3e1405db5edbe6)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 1073f4dd9b0d34e8a08181d66c4920ac3abaede7)
(cherry picked from commit 119b08fed6889fe914d4a2825d25134cc6af7539)
(cherry picked from commit 0bac8975c221b270442cd882677df840fa23422c)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The hovered state of the item within the quick popup has not been
reset when another modal popup is placed over it. This is because,
after patch 48da34f3d797f58b3eda9ed0a98aa1776d75d946, the overlay
filters the hover events of the quick controls which are modally
blocked.
But this can create an issue if the child item of the pop is
already in a hovered state and there is another modal popup placed
over it, as any further hover events (including the HoverLeave of
the control item) will be forwarded and handled by the modal popup
which doesn't allow the child item to resets its hovered state.
This patch allows the child item of the popup to handle hover
release event when it's already in the hovered state.
Fixes: QTBUG-126626
Change-Id: Ibf7f5ad8653a8c0df9968114ab6b8228acba9d6e
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
(cherry picked from commit 7712fbc0f0b779b01117312ba0d98f16173120aa)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 6958577abdd668066c8c9bd0c8d8402e878da727)
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit ceace5f3a64c2133e2820e1366aa88e7541bedba)
(cherry picked from commit b2cfed01bea64861e91bc8eb783df982347c10fd)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Link to the Drag attached property, which has been referring to a
snippet using DragHandler since 5971a6faaa1124f5ef3f0b42d4ed0298cf8096a3
Task-number: QTBUG-68078
Pick-to: 5.15
Change-Id: I2199e0e08f39ed1b136c5ea71da6631a032c4d48
Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
(cherry picked from commit 4506b936b4dcaeb42d91e3b25789ec91d13b584e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 899b8baef71954cd3ea54e1e7432d9f070773271)
(cherry picked from commit 76ecedaf64270675a1734f466b6fad4eb837b9be)
(cherry picked from commit 56eacc22e31c46504005932c3747f2853ca78e1e)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This also fixes a crash in this peculiar condition:
Item {
width: 0
height: 0
RowLayout {
anchors.fill: parent
anchors.leftMargin: 1
anchors.bottomMargin: 1
}
}
Reason for crash:
As a consequence the layout was rearranged with size == (-1, -1), (which
happens to be the value of uninitialized QSizeF).
This invalid size was passed down to QGridLayoutEngine::setGeometries()
(in the contentsGeometry QRect), and again to ensureGeometries().
ensureGeometries() would return early because of the condition
if (q_cachedSize == size)
(q_cachedSize is an uninitialized QSizeF by default, and size == (-1, -1)
This caused the q_xx, q_yy, q_widths, and q_height to not be properly
initialized, and it would crash inside
QGridLayoutEngine::setGeometries() when accessing the list:
qreal x = q_xx.at(item->firstColumn());
Fixes: QTBUG-124456
Change-Id: I2e3586389aa1728c3622e92bd589af87d11955ae
Reviewed-by: Santhosh Kumar <santhosh.kumar.selvaraj@qt.io>
(cherry picked from commit 6f7deef6d54dea7e033f5bf2c3ba0ee54ab562ed)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 0bd1fa6ce83d4d6f32d72011bb6febd6037b0596)
(cherry picked from commit 1bc30751db82b7d0f2e24d617bfedae9ebc09c6a)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The setRunning logic can call the setRunning recursively while changing
the property. This might cause missmatch between whether the animation
is actually running and the running property. If we detect recursive
call, make sure that the d->running property matches with the animation
job running status.
Fixes: QTBUG-125224
Pick-to: 5.15
Change-Id: I2e580d45cea7fd9cb010bc37a366def083b24abb
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
(cherry picked from commit cdf71ef7b62dd92d23a7485a3490527d28097db5)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 1ef06979983ab87f2f0b0d15d36c98d4a05deeea)
(cherry picked from commit 5f16dfbe6fecc8315c9752876afc71a96c182d29)
(cherry picked from commit 5e2878df39850f22240151471aa2211d54721702)
Reviewed-by: Antti Määttä <antti.maatta@qt.io>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
DragHandler docs have been showing TapHandler code snippets, because
both DragHandler and TapHandler inherit properties from
PointerDeviceHandler, which is abstract and uses TapHandler code
snippets in some of its property documentation.
Override documentation for acceptedDevices, acceptedModifiers,
acceptedPointerTypes and margin by adding to the DragHandler class, and
add testable snippets for a couple of them. draggableGridView is adapted
from examples/quick/draganddrop/views/gridview.qml.
Fixes: QTBUG-119866
Change-Id: I9f98d831ec1691c84da6a38a7625f9aba086cebf
Reviewed-by: Santhosh Kumar <santhosh.kumar.selvaraj@qt.io>
(cherry picked from commit 7ddbb8f972fadc9073d1a8fd651dc08783b92a3a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 8890effa5f9bd702ff9abd781947ff3eb5a3510f)
(cherry picked from commit 05106ec5794f453d1d5fd7e9b24507c59f3c7bdc)
(cherry picked from commit 39c3655d2d770e6d1daf252efcf5a89e2a98bbac)
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The style shader doesn't support color glyphs, and would result in
a grayscale glyph/emoji as a result. As raising or outlining color
glyphs is not typically how the native platforms handle color glyphs
we opt out of these styles if we're dealing with color glyphs.
Fixes: QTBUG-82311
Change-Id: I52b02ed4d95dbc8655f19118eebc7634f122ff8b
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
(cherry picked from commit 8b179cebb755059888a61fe69e2c4b4561c50a87)
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It doesn't return the number of items in the view, it returns
the number of elements in the model
Pick-to: 5.15
Change-Id: Iea479ef0fef1823718d7681ae30bb49f60025237
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
(cherry picked from commit ca207f3e63f91426589f7afc775ae3fecc5e49b2)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit a7debb56f25558cb6a9afdf8d799555aa881d3eb)
(cherry picked from commit 1921468b1a64726053d3b65c34071d365e99ae5d)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The current module landing page only has qmake instructions. Add CMake
example code and separate CMake and qmake into tabs.
Fixes: QTBUG-123227
Change-Id: I507b6dafa1bb24ea8eaeff3e9ed6cfa31ab56f0d
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
(cherry picked from commit 76764b0cd3361db064c50582f7440b7fc2b37def)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit fbfdedf58d3fc5615931f57f71e1e7fd42c88ac9)
(cherry picked from commit 25e0a7ca82089718b04cf80782cafa6a64fc3ae8)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We want to look at the precise type when converting list properties.
Otherwise we get a list property without any methods back when
converting.
Change-Id: I012c0360ef1578c768362d5a4648252d3e6803d8
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 37bd19f30102d3e266386e3b81068f2e9cb20425)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit a61222c44714756c058b5407613ac3b95e30e4e2)
(cherry picked from commit 5c31551e116c11af2f1f7895f006ce35005b2151)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Using setX() and setY() instead can remove the binding for them.
Fixes: QTBUG-120033
Change-Id: I77fc5360b2d10436b5e258b5f0ceb96b949eccbe
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit bb7ba7667b4cf3565aa1849d08cc71b9ac011e77)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit ac17f948cdb46e0fe900c72af35fc3ac84e29000)
(cherry picked from commit 118f9999fe6438261faa697905aa89b1557c3774)
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
(cherry picked from commit 3f9cfda16910d17f2a4c2372a8a50b89384cbc40)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
reuseItems, pooled(), and reused() can be used in GridView as well,
since QQuickGridView and QQuickListView both inherits from
QQuickItemView.
Fixes: QTBUG-122250
Pick-to: 5.15
Change-Id: Ie9875f5b3abd98f9b14134d06fbfce0286d56444
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
(cherry picked from commit a35950db9523ab910feb8622f97432ee4482de83)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit d34f33c3fd48850a11dbdc33a9ced030faea69ba)
(cherry picked from commit 677c9a0598496bdb7bb5f01f1577e53a1306e256)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Commit 127c79fb7fda16b9a48ce8c425d1700d1aa7502d already addressed the
issue, but didn't take into account the fact that the old width can be
negative when the non-zero margins are set.
Provide a trivial fix and extend the unit-tests.
Amends 127c79fb7fda16b9a48ce8c425d1700d1aa7502d.
Fixes: QTBUG-83408
Fixes: QTBUG-33608
Change-Id: I7c43bd72f63d577995138ad4aa3e1195011b6bc9
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
(cherry picked from commit 235bbe8c644415a83e3f5103eff7c4ef4181164a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 892576b7499a221b4b46e2421442dd577813d36a)
(cherry picked from commit 04d78da3f459021d189f7f805ba9559559487967)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fixes a heap-buffer-overflow issue in ESTable::remove due to an off by
one error in the count provided to memmove calls.
Pick-to: 5.15
Task-number: QTBUG-123999
Change-Id: I4ee0fbc16ba8936ea921e5f1d1bb267dae0b1d5f
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit d3e36454830012e4fd4c538ddeab7cddbfacdc24)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 3241bb2e5e9a4a8c35254fc279d216b6da81780e)
(cherry picked from commit 42b8085b50627fa7aa14cd6d5af7ad7fbfce85d0)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The root node of a sparse array can be null.
Pick-to: 5.15
Fixes: QTBUG-123596
Change-Id: I5ea7fd73aeec460082d0cf19c7fc8a01993ed1f9
Reviewed-by: Semih Yavuz <semih.yavuz@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit e221e1e942f58750af0a93232354a2ad35c74bcf)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 590db8ac18f92c594ff7dbf4b4c020aaec546c44)
(cherry picked from commit 08a318b3dc377a0a6fea88332ceebf166ac741f1)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We cannot be sure the current context is still alive when a function is
called. We may be left with a skeleton context that doesn't have an
engine anymore.
However, we can always query the QJSEngine given in the AOT context.
That one cannot disappear and is generally the right one for capturing
properties.
Fixes: QTBUG-123395
Change-Id: I2a6c38baa159fa790f3ba2aba225fdc9cc37001e
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit eb79815fbfad7d4e7fb4be856dc0dd43be76fdb9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 8228f07a216dc6996be6584108d262829d68016b)
(cherry picked from commit 1586ea1f15b78aa1319447b8a6a41b23c19eb2e0)
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
(cherry picked from commit 724971240f07d659fdd8ce4ded375e692492b76f)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Correctly propagate the isClass and RegisterEnumClassesUnscoped
information from metatypes to qmltypes, then read it correctly.
For historical reasons, enums are unscoped by default, even if they are
declared as "enum class".
Furthermore, QML enums can be accessed in both scoped and unscoped way.
Scoped C++ enums can only be accessed by explicitly stating the scope,
and unscoped C++ enums can only be accessed without scope.
We cannot test this using qmllint because qmllint in 6.2 cannot properly
analyze enums, yet. We need it to fix qmlsc miscompiling the relevant
code, though.
Task-number: QTBUG-107143
Change-Id: If1ee9a10479cffb46067ccb5e683906905c24160
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 7da544e862a92cc0a9d97cbed68a35c532699116)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 806af3541056a580d0c2c6c5d7a518efbc473b68)
(cherry picked from commit 65fa7ff2c98c433843ee25b5a80dc79427aca9f8)
(cherry picked from commit e28fee2d26f6002a524d2bf8cc32c4514f6f557e)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Usually, a QTouchEvent comes from a touchscreen, and we want those touch
events in Qt Quick. But on macOS, there are no touchscreens, and
WA_AcceptTouchEvents has a different meaning: since qtbase
03d057ff01332333b98f5298c3d0bd85b5604ac9, QApplication::notify()
calls the native-integration function registertouchwindow() to change
NSView::allowedTouchTypes to include NSTouchTypeMaskIndirect when the
trackpad cursor enters the window, and removes that mask when the cursor
exits. In other words, WA_AcceptTouchEvents enables getting discrete
touchpoints from the trackpad. We rather prefer to get mouse, wheel and
native gesture events from the trackpad (because those provide more of a
"native feel"). The only exception is for MultiPointTouchArea, and it
takes care of that for itself. So don't automatically set
WA_AcceptTouchEvents on macOS. The user can still do it, but we don't
recommend it. Amends dc8f44b14501ecd4acc196f5138aeff3f7502d0a
Fixes: QTBUG-113384
Change-Id: I8b0e1d247adfc95f1c9a0881a6020eab1a42b0ab
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
(cherry picked from commit 2f1be4c51a1655697933468c10ba53316306d207)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 485388263f55ac7c40c53fa3b0d4bfaa275e55f1)
(cherry picked from commit 9580f7970cc394e2a499a3b5b65d3391b5bb6442)
(cherry picked from commit 779f434e818d3945347d8d363c4445e44af84b5c)
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We have to depend on valid types mentioned in function signatures, but
we can ignore invalid ones.
Fixes: QTBUG-121128
Fixes: QTBUG-120506
Fixes: QTBUG-122252
Change-Id: Ie12f0d503ae8d8d238346948981803c1c07e8515
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit e516ef519b116f27d7ed5387275be27a4215a792)
(cherry picked from commit 1d2be36ee8b28cef11ac97c7c5a422ae986d60e3)
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
(cherry picked from commit 68bf4948ffec9ef4246e359ca16119c9969ee6c9)
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
(cherry picked from commit 60fd389d4ef7fdebc9af8b7c4f76eb2741a5f1e4)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
2^30 was used as a "big number" sentinel and assumed to
always be higher than the particle system's age. But
a particle system running for a bit over 12 days will
hit this limit. The result was that such particle
systems would never exit the loop in recycle() and
deadlock.
Instead we add the check for an empty heap to the
loop condition itself.
Pick-to: 5.15
Fixes: QTBUG-123111
Change-Id: I6bf9c5a27271e74f56728c0ad7bdabdd87e028b2
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
(cherry picked from commit 9c54252914634a6756b39261b027b48b96c6ea7b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit fd53ed433a18a369984d87614921bbeed92997b1)
(cherry picked from commit c34daa62e6efad6566fab478c3f937030f1828fb)
(cherry picked from commit 2a389f2575219de6d8d264a6e244a0420ee92b87)
|
| |\|
| |
| |
| |
| |
| |
| |
| |
| | |
Qt 6.2.12-lts release
Conflicts solved:
dependencies.yaml
Change-Id: Ia7410afbc9d94f061fb13da84b6361428725b530
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Fix typos.
* Show rich text Markdown example.
* Be consistent with relative clauses (that vs which).
* Where it makes sense, use active voice instead of passive voice.
Fixes: QTBUG-119485
Pick-to: 5.15
Change-Id: I7843a3276f277172e25f5891f08e2a830d713c4e
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
(cherry picked from commit ec3b799824ef03cd332297024db57acce60e76ed)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit ce366ee66e33647cc7a48fb2f251cab112bb88cc)
(cherry picked from commit 1e58c059977ee5e07aa2df8df434d0fe24a1623d)
(cherry picked from commit 6afbf84b7a0ff536ce48e8189eb1ac7696d4872c)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fixes: QTBUG-120105
Change-Id: I5d07068a6ed639b461cd3c9e314869a72d13f5b0
Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
(cherry picked from commit 198a90f56255bf9e5cf4416b973682cdc708d77b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit b156a1f1f93b4d374a455f10bf13c642746325a7)
(cherry picked from commit 11dcf2d228838f146626185204caf2de2506a4a1)
(cherry picked from commit 5e4b4b02f22f72c4143085e26dcf8d87031b423d)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The application could call mlockall(MCL_CURRENT|MCL_FUTURE) to lock all
its memory for performance reasons, causing the madvise call to fail.
There's no need to crash. Instead, manually zero-out the memory when
decommitting.
Fixes: QTBUG-120450
Pick-to: 5.15
Change-Id: I6f1a8968853cc5e61561371bd2a435a686eaf0e4
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit 524d260c5c135d193e06350e48357444ddb13ddb)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 1ead022dfea5a6b3bed8ca80de85c20cea6c809f)
(cherry picked from commit a2e0061317954fdab6f9af1ab0490944bca33873)
(cherry picked from commit 5c42f57e88681be521e3d59f9e527d3bcd4d5732)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This used to work and we cannot just take it away.
Amends commit 3ea55bf398412d373daab9c92b1498f45de70e96.
Fixes: QTBUG-121710
Change-Id: I7f856140286bba9d49b7ed1abfdf398a65fb1962
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit f3bcbfd6a50fb7e74f4ff6714d3b3066fa74e253)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit ec692b22e7b45bef016280a15c8205969e808e12)
(cherry picked from commit 3a8028b393f6b5345f5653d81f49efa31021fae1)
(cherry picked from commit 444810849bcafe5d52927a2ae2f972d087d36193)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The same object can be the context object of a hierarchy of contexts. So
far we would only clear one of them, leaving dangling pointers in the
others. Clear all the contexts.
Pick-to: 5.15
Fixes: QTBUG-119326
Change-Id: I509f257672813866e3736b51f430f1243a8577f0
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 27ba69af2f64a8b194655c9fbb276ce981075f75)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 833f4f6913835a18c37b02bd4784d62cbb4d0701)
(cherry picked from commit 477c3c3c25d478caa5b833a9c64f3945b3d3a83e)
(cherry picked from commit 7318fadc42e462babeca473864d12cfd033ffa42)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When an IC was rebuilt, we must not set members that were deleted,
otherwise we'll trigger an assertion. Since the nameMap has to match the
data we still allocate memory for such members and fill it with
undefined. This could be avoided with some deeper refactoring, but a
simple solution is to be preferred because this needs to be picked back
all the way to 6.2.
Fixes: QTBUG-111729
Change-Id: I730d6b4634d989191434225600a08cf0208e72f8
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
(cherry picked from commit 642d531e42fb233709155f8c8feb7d429c48db38)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 308f785c7842267a8744381148bd82b21c536033)
(cherry picked from commit f17168ef874f05b4ea57088cadcc2d5a8fd2c5a0)
(cherry picked from commit 912886afe4d58130eb218342843fe85e15128f17)
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
They can in fact not be combined.
Change-Id: Ic01edf9328d7235511f305ed15114360b79d0a36
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 5a8663664ea49722a6f561bd2fad8fb30b4e7860)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 8bd24a76b6e685bc1b0be351686365e84b1747cb)
(cherry picked from commit f48bc1291f26bfedd5d43dd5cbc40e7ade066eb2)
(cherry picked from commit 27506c2ccfb79532215bc69ee284f73a1ed2d9e7)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We rely on QQuickDeliveryAgentPrivate::flushFrameSynchronousEvents()
mostly, but it doesn't get invoked without a window update request.
So there is a special case when a touchpoint moves _out_ of an item
that has a HoverHandler but is not reacting to touch in other ways:
we just need to send another artificial hover event for each touchpoint
to each hovered item to inform handlers about the new hover position.
Fixes: QTBUG-120346
Change-Id: I479362a2663943eb495fe0be418009165c7134bd
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Santhosh Kumar <santhosh.kumar.selvaraj@qt.io>
(cherry picked from commit ff4c2c311f1957ebacb66f0d35406a51da2a544e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 7ef31a576328a2a8a94885cf2056dc0ddd9e5a2f)
(cherry picked from commit 4a7ff2b6ad61dc8d5296a49066da279a87929c8b)
(cherry picked from commit 2e3e3adf0f257d4c48c5907d579a35badbc1eb5b)
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The generated qmldir files that are used by QML engine specify the
relative path to the QML plugins that are build within modules. So
it's usually expected that plugins are located on the same level as
the qmldir files. In Multi-Config builds all libraries are located in
the build-specific directories by default. In this case QML engine is
unable to locate the plugin and the application cannot be run without
extra manual steps. This fixes this issue, by using the top-level
plugin OUTPUT_DIRECTORY for the "default"(first) config as
RUNTIME/LIBRARY_OUTPUT_DIRECTORY.
In Windows platforms we need to make the same for non-static backing
libraries, since we cannot rely on RPATH there.
Task-number: QTBUG-99061
Change-Id: I51a8864743b87fd6ec4ba7179e13f311c5bee403
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
(cherry picked from commit 2dbae968e7a15aca2ff5c8795e2a6dcb2e0a5744)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 91a25a8e3c576e666ad719da302eb30e256ef5ee)
(cherry picked from commit dc1a16345214db9665d305934c39ebd7eca2a62d)
(cherry picked from commit 01b55816d5d4a77dac7165a68a1c4e2909a9dc57)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add the explanation what is PluginName and how it's computed when using
the modern QML API.
Fixes: QTBUG-119372
Change-Id: I7346f7b7f82c717ee79b07f4dcec0c0d1dc733b2
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
(cherry picked from commit 48241a49d96f27cfb64218a91a3aa7a8d1174a91)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit db9171d0c3011613131965e5576a4efe261f08c2)
(cherry picked from commit ab160d2cb4c10f2f28fed26ce80d1b79f5453437)
(cherry picked from commit 890a22aa32a0f87aebc447edf3b3bd2355432340)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Expect boundingRect, which was added in Qt 6.6, so can't be
cherry-picked.
Pick-to: 5.15
Change-Id: I03aeb808acdf60e207eba45e7b6761d29714d6f2
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
(cherry picked from commit a35f65a5fa140c3ba0ddfa9093a7b7526382b22e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 1e21dc33261dcf1c6f7c30d4eac7625264f98279)
(cherry picked from commit 29862ca7d8377cd6ba129d1bda03109ded954588)
(cherry picked from commit a1e725ecf394d64bf5ddf41569401c7e55e0b805)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fixes: QTBUG-120349
Pick-to: 5.15
Change-Id: I070927d0bd8b454925b4a2ab0ddf259d47d31335
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
(cherry picked from commit 6efc9f1406a4f08f7a04d3bb52a4c19214d5cbb1)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 319e10f9a9b16ad9f8576e5efe2220eebf49291a)
(cherry picked from commit 2b6ebb68b8b792ab15294e89e7fd056073cf9040)
(cherry picked from commit b36d3fcf2de5531593e9825f596cfd78fbd561ed)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since we can now get more interesting types in StoreNameSloppy, we
actually need to convert them correctly. 6.6 and later already do so
since commit 46cc70e2aafc84db6caeaf747629ee6e825b0a4d.
Task-number: QTBUG-111624
Change-Id: Icbc772065ba362994eaa8cb23025ed0bb95eee9b
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Semih Yavuz <semih.yavuz@qt.io>
(cherry picked from commit 2a998f2b043242df965bb1d21495fd5e299de322)
(cherry picked from commit 19557d27fbbc0e36ac62d2cd2be1de4352259bbf)
(cherry picked from commit b5416f1931e6e3acb68120a65e277ed1dee2f1a4)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The target might change several times, or worse have been destroyed,
while updates are still queued, and since the effect pointer isn't
updated until the postSync() call, the effect pointer can get out of
sync leaving it pointing to the wrong object, or a destroyed one.
To avoid operating on an destroyed or old handle, check if the current
effect is valid and matches the target before applying the uniform
values in updateCurrentTime().
Fixes: QTBUG-119363
Change-Id: I5172ccf9405c1d789f197a0cf8cec4c749bd7d28
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
(cherry picked from commit 60e49dfbe3cf8276aabfcf7bf00dc532dea78baf)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 9c1065ce400b1cf1dd5599c1e9efbf12c61516fa)
(cherry picked from commit e1b190c8d644c1f5489f96fa8566f85470078013)
(cherry picked from commit fb0e70886425c8c7018adbd999bd2b6501bc5516)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QQuickSinglePointHandler is not only for QSinglePointEvent, but rather
it's the intermediate base class of any handler that only knows how to
handle one QEventPoint, regardless which device it came from.
The naked cast was quite wrong for touch events, such that the
result returned from buttons() could come from reinterpreted
data of some kind.
Amends a97759a336c597327cb82eebc9f45c793aec32c9 (and then
79cde77f23358adbe57ab8ce08730d2de5bb1288). QQuickPointerEvent
had buttons(), but QPointerEvent doesn't; so the cast became necessary,
but should have been done safely.
f2ba3bd9792500b4d3fcfd23b03098a32641ef4f began checking the buttons
here. In case of a touch event, buttons() always returned NoButton
(regardless whether the touchpoint was being pressed or released);
so in Qt 5, QQuickSinglePointHandler::handlePointerEventImpl() in fact
caused the ungrab and reset() to occur when a touchpoint was released.
We continue doing that: if the event is not a QSinglePointEvent,
buttons() are irrelevant, and we deactivate the handler when handling
the release of the chosen point (as remembered by pointInfo).
But for QSinglePointEvents, checking buttons() is necessary to keep
QTBUG-66360 fixed.
Task-number: QTBUG-66360
Task-number: QTBUG-83980
Fixes: QTBUG-117387
Change-Id: I1bc7a72629f5840e660635f2228bf2c0abb7d2bd
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
(cherry picked from commit 7b8bea13e7c0b80ffc307cc8ccb94d73a6743544)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 07e0138fa5ade030f5b157b6e75c9e083910a017)
(cherry picked from commit 1c7ada23e46330c639378856a7f8bf7d4ebc48d9)
(cherry picked from commit 75512d6cdf7eca82d62a90bf37229130f47c855d)
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
Change-Id: I837e72448577e6814acf20cef49f4528e2ac6ba7
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
(cherry picked from commit 33299c2fc393c66f2993ebbded9d217ee3f62513)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 186299e814a52f33b323be19e102626e745e10cf)
(cherry picked from commit e1afd77ed579dbe8f26829f24e68e61867cd81ab)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We should be careful about emitting signals while we do a rebuild.
The reason is that the application might listen to those signals
and change Flickable properties (especially contentX/Y) behind
TableView's back.
A bug is seen from this if the application is setting a very
large contentY upon receiving rowsChanged(). In that case
TableView will not detect that it should do a "fast-flick"
directly to the new contentY, but instead start to
loadAndUnloadVisibleEdges() until it reaches the current
viewport. And this can take a really long time, and therefore
block the UI.
This patch will wait to emit rows/columnsChanged until we're
done rebuilding. At that point, it's safe to change properties
such as contentX/Y from the application.
The main usecase this patch is solving, is to be able to
always position the viewport on the last row as new rows
are added to the model. This can now be done by listening
to onRowsChanged or onContentHeightChanged, and position
the viewport at the end. The included auto test will
therefore test this exact use case.
Fixes: QTBUG-118897
Change-Id: I6124fbd0e7097a2bbb89c887fe594c3028726aa7
Reviewed-by: Santhosh Kumar <santhosh.kumar.selvaraj@qt.io>
(cherry picked from commit bff7aca8695e4cacc252d0235dc70cf3a46c032e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 5800bf98860a2546429d05ba50c1bf3a58040b09)
(cherry picked from commit 11ee3dcf352c74367cbabf3d5ce0dfb7cfb2cbb4)
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It's int, not string.
Pick-to: 5.15
Change-Id: I68fec372d534eb173b0e3dfa52aa19b56c135515
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
(cherry picked from commit 6216aac9e02799fa5f1ad9e7f3f8f057ec1cd00e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 8fc2ddca39940499961af9af40d04275ccc831a4)
(cherry picked from commit 40f574faf507faa2ccb8978f80b78dc92f51c565)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
grabToImage() is asynchronous. 4b982c744f538a24e21a2af146c45f93d27dd1cb
started it on mouse press, which generally gave it enough time before
the QDrag became active; but 5971a6faaa1124f5ef3f0b42d4ed0298cf8096a3
changed it to call grabToImage() in DragHandler.onActiveChanged, which
means waiting until the drag threshold is exceeded. (DragHandler doesn't
offer a way to detect when the point is pressed. One could probably use
a separate TapHandler or PointHandler just to detect the press; but
that's also inefficient and inconvenient.) If we also bind Drag.active
to DragHandler.active, it's very likely that the binding is updated
before grabToImage() is done; and as documented, setting imageSource
after the drag has started has no effect (that in turn is a limitation
in QDrag and the platform support, probably a limitation on actual
platforms). So just wait until the screen-grab is done before setting
Drag.active, as a workaround for now.
This is a step back in declarativeness, using JS rather than a binding.
But setting imageSource to a screen-grab unfortunately requires JS
anyway; so we might as well delay making the Drag active until the
screen-grab is done.
Fixes: QTBUG-112673
Fixes: QTBUG-115491
Change-Id: I0317613aa0288ad99b55ebd8a470500432b2ea02
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
(cherry picked from commit a3dea1b4f8e20babb84c501e578a9208961b7ca7)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 85f6ffc9b8d511b7bf01daacd179df88b9a54dee)
(cherry picked from commit 9d1e8deefcbba6cfb343406dd2536226525535f6)
|
| |\|
| |
| |
| |
| |
| |
| |
| |
| | |
Qt 6.2.11-lts release
Conflicts solved:
dependencies.yaml
Change-Id: I088fe99748b323fbdf49c3766c262eb2a05131d9
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The interactive property of the Menu's contentItem depends on its Menu
(control) when Window.window is valid. In the case of a fixed-height
menu, even if the contentItem's height is smaller than
Window.window.height, the interactive property of the contentItem would
be false if the menu's height is smaller than the window's height and
also smaller than its contentItem's height.
Update (patch 3): Menu is removed from each of the styles from
tst_Sanity::attachedObjects_data() (in tst_sanity.cpp file).
Fixes: QTBUG-93856
Change-Id: If95080250c3953d4293a9e1dbcc6225d21ee034f
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
(cherry picked from commit d0a83e33305f0ab11751627446b2084bdc85de68)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit e6478662c1f2dfe47023bdf35ebf344c60d1b3d4)
(cherry picked from commit 933ef033321e5113dd1beaddfd883b40f3658bab)
Reviewed-by: MohammadHossein Qanbari <mohammad.qanbari@qt.io>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The quick table view can have both QAbstractItemModel and JS value
as its model. The table view release and load the items (or rebuild)
when its assigned with new model. The newmodel always be compared
with existing model before rebuild via
QQuickTableViewPrivate::syncModel. This comparison works with
QAbstractItemModel but the same fails with JS model.
This patch adds additional validation in
QQuickTableViewPrivate::syncModel and QQuickTableViewPrivate::setModel
for comparing JS model to avoid rebuild when existing model
overwritten with same model again.
Fixes: QTBUG-117917
Change-Id: Ic15145c4b8998c68ae6471a2abf4aef727041eea
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
(cherry picked from commit 79b34126850c4235a1914e95f8e4235cfddba007)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit d02351d8debe3c089434ff6baf2caff6be52602a)
(cherry picked from commit 82e47c8b38117dbaafbef9234e16776d50bcf5f5)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We may have additional bindings scheduled for the deep alias, but those
are to be overridden by the alias. They should therefore be removed like
bindings to target properties of shallow aliases.
For QProperty bindings we have to apply a separate trick and set and
clear the binding bit in the right places. We don't have access to the
actual binding when writing the value, after all.
Fixes: QTBUG-115579
Change-Id: Ia915e59905d7e3185a17c5b6613926264ad9bc6b
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 0fdf9042ce36c1dcfed64d1600f1526ac176768d)
(cherry picked from commit c07f63d06402ff76ae85508afe9576cad038b4f6)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 11045230c3b8db2b615e59e2d6622c1df4fad12d)
|