<feed xmlns='http://www.w3.org/2005/Atom'>
<title>qt/qtdeclarative.git/src, branch 6.5.2</title>
<subtitle>Qt Declarative (Quick 2)
</subtitle>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/'/>
<entry>
<title>MouseArea: don't ignore double-click events</title>
<updated>2023-06-20T19:27:05+00:00</updated>
<author>
<name>Shawn Rutledge</name>
<email>shawn.rutledge@qt.io</email>
</author>
<published>2023-06-12T20:53:23+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=ff5baf76e5e7a35934fed8c043685c6834fe5271'/>
<id>ff5baf76e5e7a35934fed8c043685c6834fe5271</id>
<content type='text'>
In 72651a50f83aa72998822312c7b5c6235d28978f
QQuickItem::mouseDoubleClickEvent() started to ignore double-clicks by
default, which is consistent with the fact that it ignores the other
pointer event types. But now we have to worry about subclasses that
override mouseDoubleClickEvent() and call the base class implementation.

d7fac6923a6d4e4ac7dc22458256366968acbdb3 tried to fix it but neglected
the case when the MouseArea does not have an onDoubleClicked signal
handling script. Since the QQuickMouseEvent object that we emit to QML
won't be accepted if isDoubleClickConnected() is false, and since the
code before 72651a50f83aa72998822312c7b5c6235d28978f was leaving the
event accepted regardless of whether QQuickMouseEvent was accepted, we
should not need to check it now either. Perhaps we should care about the
case when onDoubleClicked sets accepted to false, but so far that
doesn't seem very useful either: if you accept the press, a parent
MouseArea will not see either the press or the double-click; if you
ignore the press, you won't see the double-click, and a parent MouseArea
will see both by default. tst_QQuickMouseArea::clickThrough() tests
accepted = false in onDoubleClicked but not onPressed, and only with
mouse, not touch.

Added tst_QQuickMouseArea::doubleTap(); also moved the autotest from
d7fac6923a6d4e4ac7dc22458256366968acbdb3 which has nothing to do with
pointer handlers.

Fixes: QTBUG-112434
Fixes: QTBUG-109393
Change-Id: I426827c20cdb2373e77744987dffba59cd941edc
Reviewed-by: Fabian Kosmale &lt;fabian.kosmale@qt.io&gt;
Reviewed-by: Doris Verria &lt;doris.verria@qt.io&gt;
(cherry picked from commit 35b5511189f0f9dbb8cfd8b3ec97cca2c65b3e2e)
Reviewed-by: Shawn Rutledge &lt;shawn.rutledge@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In 72651a50f83aa72998822312c7b5c6235d28978f
QQuickItem::mouseDoubleClickEvent() started to ignore double-clicks by
default, which is consistent with the fact that it ignores the other
pointer event types. But now we have to worry about subclasses that
override mouseDoubleClickEvent() and call the base class implementation.

d7fac6923a6d4e4ac7dc22458256366968acbdb3 tried to fix it but neglected
the case when the MouseArea does not have an onDoubleClicked signal
handling script. Since the QQuickMouseEvent object that we emit to QML
won't be accepted if isDoubleClickConnected() is false, and since the
code before 72651a50f83aa72998822312c7b5c6235d28978f was leaving the
event accepted regardless of whether QQuickMouseEvent was accepted, we
should not need to check it now either. Perhaps we should care about the
case when onDoubleClicked sets accepted to false, but so far that
doesn't seem very useful either: if you accept the press, a parent
MouseArea will not see either the press or the double-click; if you
ignore the press, you won't see the double-click, and a parent MouseArea
will see both by default. tst_QQuickMouseArea::clickThrough() tests
accepted = false in onDoubleClicked but not onPressed, and only with
mouse, not touch.

Added tst_QQuickMouseArea::doubleTap(); also moved the autotest from
d7fac6923a6d4e4ac7dc22458256366968acbdb3 which has nothing to do with
pointer handlers.

Fixes: QTBUG-112434
Fixes: QTBUG-109393
Change-Id: I426827c20cdb2373e77744987dffba59cd941edc
Reviewed-by: Fabian Kosmale &lt;fabian.kosmale@qt.io&gt;
Reviewed-by: Doris Verria &lt;doris.verria@qt.io&gt;
(cherry picked from commit 35b5511189f0f9dbb8cfd8b3ec97cca2c65b3e2e)
Reviewed-by: Shawn Rutledge &lt;shawn.rutledge@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>QML: Try QML conversion before metatype conversion</title>
<updated>2023-06-17T06:06:10+00:00</updated>
<author>
<name>Ulf Hermann</name>
<email>ulf.hermann@qt.io</email>
</author>
<published>2023-06-14T08:54:50+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=8e3b18734c60596a30a3f260197ef64218f0ae5a'/>
<id>8e3b18734c60596a30a3f260197ef64218f0ae5a</id>
<content type='text'>
and guard against null gadgetPtr. This is what we get for uninitialized
value type properties.

Fixes: QTBUG-114494
Change-Id: I86ad23abcc4fec219017d1aad6b7add1c9a9af5d
Reviewed-by: Fabian Kosmale &lt;fabian.kosmale@qt.io&gt;
(cherry picked from commit a2104034d404179f5fad98fd54a133b288ded47d)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
and guard against null gadgetPtr. This is what we get for uninitialized
value type properties.

Fixes: QTBUG-114494
Change-Id: I86ad23abcc4fec219017d1aad6b7add1c9a9af5d
Reviewed-by: Fabian Kosmale &lt;fabian.kosmale@qt.io&gt;
(cherry picked from commit a2104034d404179f5fad98fd54a133b288ded47d)
</pre>
</div>
</content>
</entry>
<entry>
<title>QML: Allow creating constructible value types from variant objects</title>
<updated>2023-06-17T06:06:07+00:00</updated>
<author>
<name>Ulf Hermann</name>
<email>ulf.hermann@qt.io</email>
</author>
<published>2023-06-14T06:32:13+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=c07cc979335216a034a3958780150d301e996f67'/>
<id>c07cc979335216a034a3958780150d301e996f67</id>
<content type='text'>
VariantObject as source for value type constructions should work the
same way as other types.

Change-Id: I35770adf0486b404673ee00800fb1d3e429a23cf
Reviewed-by: Fabian Kosmale &lt;fabian.kosmale@qt.io&gt;
(cherry picked from commit 0bb0eeeb09580de8bccef996f9b4099fb7d1b482)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
VariantObject as source for value type constructions should work the
same way as other types.

Change-Id: I35770adf0486b404673ee00800fb1d3e429a23cf
Reviewed-by: Fabian Kosmale &lt;fabian.kosmale@qt.io&gt;
(cherry picked from commit 0bb0eeeb09580de8bccef996f9b4099fb7d1b482)
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove DA::deliverMatchingPointsToItem's second sendFilteredPointerEvent</title>
<updated>2023-06-17T06:05:55+00:00</updated>
<author>
<name>Shawn Rutledge</name>
<email>shawn.rutledge@qt.io</email>
</author>
<published>2023-05-26T11:24:23+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=185888c6a82d6e11cd9f6614ef7616a28a87efc0'/>
<id>185888c6a82d6e11cd9f6614ef7616a28a87efc0</id>
<content type='text'>
a2209698d3584a7c05d0c12aa61de050fe0e78fd added sendFilteredPointerEvent
earlier in this function; it doesn't make sense to do it multiple times.

Fixes: QTBUG-109995
Fixes: QTBUG-113653
Change-Id: I9a9cb36ba060ec924ec3467fff0d7b0e3d474da3
Reviewed-by: Doris Verria &lt;doris.verria@qt.io&gt;
(cherry picked from commit 2cb75d3126f0514701475077c719b5ea5ad9864e)
Reviewed-by: Qt Cherry-pick Bot &lt;cherrypick_bot@qt-project.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
a2209698d3584a7c05d0c12aa61de050fe0e78fd added sendFilteredPointerEvent
earlier in this function; it doesn't make sense to do it multiple times.

Fixes: QTBUG-109995
Fixes: QTBUG-113653
Change-Id: I9a9cb36ba060ec924ec3467fff0d7b0e3d474da3
Reviewed-by: Doris Verria &lt;doris.verria@qt.io&gt;
(cherry picked from commit 2cb75d3126f0514701475077c719b5ea5ad9864e)
Reviewed-by: Qt Cherry-pick Bot &lt;cherrypick_bot@qt-project.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>CMake: Remove superfluous depfile in QML type registration</title>
<updated>2023-06-16T04:10:09+00:00</updated>
<author>
<name>Joerg Bornemann</name>
<email>joerg.bornemann@qt.io</email>
</author>
<published>2023-06-13T06:29:52+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=ec5fee55ef1596db95d6f0ebcdf256b1ffd5da02'/>
<id>ec5fee55ef1596db95d6f0ebcdf256b1ffd5da02</id>
<content type='text'>
In _qt_internal_qml_type_registration we created a depfile that
contained the *_metatypes.json files of target's SOURCES.

This depfile was used in the custom command that produces
${target}_qmltyperegistration.cpp.

It doesn't seem necessary to create a depfile, and one could use the
DEPENDS option of add_custom_command instead. And indeed, commit
ce950d619aef3ad0534544b2e029a6f025b256a5 added the same dependencies
this way. Presumably, this was done to fix dependencies for older CMake
versions and generators that do not support depfiles.

This commit removes the creation of the depfile.

This double dependency declaration was found when investigating
QTBUG-106683, and it turns out that removing the depfile fixes the
problem of re-generating ${target}_qmltyperegistration.cpp for Visual
Studio generators.

Task-number: QTBUG-106683
Change-Id: I6cf909dfb4a9b31b76599b7ad35ad6f595ca0891
Reviewed-by: Alexey Edelev &lt;alexey.edelev@qt.io&gt;
Reviewed-by: Ulf Hermann &lt;ulf.hermann@qt.io&gt;
Reviewed-by: Fabian Kosmale &lt;fabian.kosmale@qt.io&gt;
(cherry picked from commit 470fee3217794c66f0eaf19f1a3cb229cfb85fc1)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In _qt_internal_qml_type_registration we created a depfile that
contained the *_metatypes.json files of target's SOURCES.

This depfile was used in the custom command that produces
${target}_qmltyperegistration.cpp.

It doesn't seem necessary to create a depfile, and one could use the
DEPENDS option of add_custom_command instead. And indeed, commit
ce950d619aef3ad0534544b2e029a6f025b256a5 added the same dependencies
this way. Presumably, this was done to fix dependencies for older CMake
versions and generators that do not support depfiles.

This commit removes the creation of the depfile.

This double dependency declaration was found when investigating
QTBUG-106683, and it turns out that removing the depfile fixes the
problem of re-generating ${target}_qmltyperegistration.cpp for Visual
Studio generators.

Task-number: QTBUG-106683
Change-Id: I6cf909dfb4a9b31b76599b7ad35ad6f595ca0891
Reviewed-by: Alexey Edelev &lt;alexey.edelev@qt.io&gt;
Reviewed-by: Ulf Hermann &lt;ulf.hermann@qt.io&gt;
Reviewed-by: Fabian Kosmale &lt;fabian.kosmale@qt.io&gt;
(cherry picked from commit 470fee3217794c66f0eaf19f1a3cb229cfb85fc1)
</pre>
</div>
</content>
</entry>
<entry>
<title>Doc: explain issues with revisions</title>
<updated>2023-06-13T03:48:27+00:00</updated>
<author>
<name>Mitch Curtis</name>
<email>mitch.curtis@qt.io</email>
</author>
<published>2023-06-01T09:56:24+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=433a1872f26a1f1fbb873b62d0527f3418c3a4c6'/>
<id>433a1872f26a1f1fbb873b62d0527f3418c3a4c6</id>
<content type='text'>
Due to how Qt Quick Controls are implemented, new properties that are
added may clash with any user-defined properties of the same name.

Fixes: QTBUG-80788
Change-Id: Ic13dce06c880a0eac5b321f4ef4fae38d29994d5
Reviewed-by: Ulf Hermann &lt;ulf.hermann@qt.io&gt;
(cherry picked from commit 9cef433dbd730abd81eb6d96169519f2f84a7ea0)
Reviewed-by: Qt Cherry-pick Bot &lt;cherrypick_bot@qt-project.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Due to how Qt Quick Controls are implemented, new properties that are
added may clash with any user-defined properties of the same name.

Fixes: QTBUG-80788
Change-Id: Ic13dce06c880a0eac5b321f4ef4fae38d29994d5
Reviewed-by: Ulf Hermann &lt;ulf.hermann@qt.io&gt;
(cherry picked from commit 9cef433dbd730abd81eb6d96169519f2f84a7ea0)
Reviewed-by: Qt Cherry-pick Bot &lt;cherrypick_bot@qt-project.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>QQuickTextEdit: Fix rendering issues when selecting in long text</title>
<updated>2023-06-12T23:43:57+00:00</updated>
<author>
<name>Piotr Wierciński</name>
<email>piotr.wiercinski@qt.io</email>
</author>
<published>2023-05-09T11:59:01+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=822002d7c22a7dc80b9976aa1ba41769d017c69c'/>
<id>822002d7c22a7dc80b9976aa1ba41769d017c69c</id>
<content type='text'>
Text that is longer than QQuickTextEditPrivate::largeTextSizeThreshold
is rendered without populating blocks outside of the viewport into SG.
When user scrolls backwards, there is a mechanism for loading and
rendering blocks that were previously outside of the viewport.
Make sure this mechanism does not trigger unnecessarily, for example
during text selection, to avoid double rendering of some nodes.
Amends cd083920b3b4f3a1ed7f2297058cf0d110d7cf10

Fixes: QTBUG-113009
Change-Id: I45bc97f2aea4c5cb99b7dee097aa25ab711be653
Reviewed-by: Shawn Rutledge &lt;shawn.rutledge@qt.io&gt;
(cherry picked from commit 5ce225d6d310005f032ff319da8df15f7e10851a)
Reviewed-by: Qt Cherry-pick Bot &lt;cherrypick_bot@qt-project.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Text that is longer than QQuickTextEditPrivate::largeTextSizeThreshold
is rendered without populating blocks outside of the viewport into SG.
When user scrolls backwards, there is a mechanism for loading and
rendering blocks that were previously outside of the viewport.
Make sure this mechanism does not trigger unnecessarily, for example
during text selection, to avoid double rendering of some nodes.
Amends cd083920b3b4f3a1ed7f2297058cf0d110d7cf10

Fixes: QTBUG-113009
Change-Id: I45bc97f2aea4c5cb99b7dee097aa25ab711be653
Reviewed-by: Shawn Rutledge &lt;shawn.rutledge@qt.io&gt;
(cherry picked from commit 5ce225d6d310005f032ff319da8df15f7e10851a)
Reviewed-by: Qt Cherry-pick Bot &lt;cherrypick_bot@qt-project.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Software renderer: Add floating point nodes to dirty list</title>
<updated>2023-06-12T16:06:36+00:00</updated>
<author>
<name>Matthias Rauter</name>
<email>matthias.rauter@qt.io</email>
</author>
<published>2023-06-06T07:23:30+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=b53b28380291dd7a6a358a415a9ad6fd4fb7803d'/>
<id>b53b28380291dd7a6a358a415a9ad6fd4fb7803d</id>
<content type='text'>
m_obscuredRegion avoids overpainting of nodes that are not updated.
However, due to the integer precision of QRegion, this mechanism
does not work for nodes with a bounding rectangle with floats.
Currently we add boundingRectMin to m_obscuredRegion, however,
which is not sufficient. Nodes where the boundingRectMin is
different from the real boundingRect (and boundingRectMax) can not
be added correctly to m_obscuredRegion. Therefore these nodes are
now also set to dirty and updated.

Fixes: QTBUG-113745
Change-Id: I5cc5540ed45593b09b312a1704459e95bebab521
Reviewed-by: Andy Nichols &lt;andy.nichols@qt.io&gt;
(cherry picked from commit 2dc17a45fb586ef81fca43d60f079d053b66ac12)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
m_obscuredRegion avoids overpainting of nodes that are not updated.
However, due to the integer precision of QRegion, this mechanism
does not work for nodes with a bounding rectangle with floats.
Currently we add boundingRectMin to m_obscuredRegion, however,
which is not sufficient. Nodes where the boundingRectMin is
different from the real boundingRect (and boundingRectMax) can not
be added correctly to m_obscuredRegion. Therefore these nodes are
now also set to dirty and updated.

Fixes: QTBUG-113745
Change-Id: I5cc5540ed45593b09b312a1704459e95bebab521
Reviewed-by: Andy Nichols &lt;andy.nichols@qt.io&gt;
(cherry picked from commit 2dc17a45fb586ef81fca43d60f079d053b66ac12)
</pre>
</div>
</content>
</entry>
<entry>
<title>Reset touchPoint position after it was remaped</title>
<updated>2023-06-12T06:44:40+00:00</updated>
<author>
<name>Matthias Rauter</name>
<email>matthias.rauter@qt.io</email>
</author>
<published>2023-06-06T14:31:02+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=a7ec3a6291d3a72b75884879133d947aa01807b6'/>
<id>a7ec3a6291d3a72b75884879133d947aa01807b6</id>
<content type='text'>
The position of touch points is modified in the function updateTouchData
when triggered from a filter. The position is never reset and thus wrong
in other parts of the code. This patch resets the position after the
required stuff in the offset coordinate system is done.

Fixes: QTBUG-105862
Change-Id: Idd12af0d509e46d0ac74fb920c70e9ec6411c255
Reviewed-by: Fabian Kosmale &lt;fabian.kosmale@qt.io&gt;
(cherry picked from commit 99a48bef8468ce6155d9898479a01062988624d3)
Reviewed-by: Qt Cherry-pick Bot &lt;cherrypick_bot@qt-project.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The position of touch points is modified in the function updateTouchData
when triggered from a filter. The position is never reset and thus wrong
in other parts of the code. This patch resets the position after the
required stuff in the offset coordinate system is done.

Fixes: QTBUG-105862
Change-Id: Idd12af0d509e46d0ac74fb920c70e9ec6411c255
Reviewed-by: Fabian Kosmale &lt;fabian.kosmale@qt.io&gt;
(cherry picked from commit 99a48bef8468ce6155d9898479a01062988624d3)
Reviewed-by: Qt Cherry-pick Bot &lt;cherrypick_bot@qt-project.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>QQmlConnections: make overridden virtual functions protected</title>
<updated>2023-06-12T01:48:05+00:00</updated>
<author>
<name>Tim Blechmann</name>
<email>tim@klingt.org</email>
</author>
<published>2023-06-07T09:34:52+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=13c812098fc69f90b72eabe89f45e26ebbec0457'/>
<id>13c812098fc69f90b72eabe89f45e26ebbec0457</id>
<content type='text'>
QQmlConnections overrides classBegin and componentComplete from
QQmlParserStatus. the purely virtual functions are public, but the
overridden functions are private.

this causes compile errors with qmltc generated code.

Change-Id: Ic586265412cbbec945a04bd2313f499738a10675
Task-Id: QTBUG-114359
Reviewed-by: Ulf Hermann &lt;ulf.hermann@qt.io&gt;
(cherry picked from commit d59e43d0a3e7b3a40d25f4476e1b51d0045a2018)
Reviewed-by: Qt Cherry-pick Bot &lt;cherrypick_bot@qt-project.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
QQmlConnections overrides classBegin and componentComplete from
QQmlParserStatus. the purely virtual functions are public, but the
overridden functions are private.

this causes compile errors with qmltc generated code.

Change-Id: Ic586265412cbbec945a04bd2313f499738a10675
Task-Id: QTBUG-114359
Reviewed-by: Ulf Hermann &lt;ulf.hermann@qt.io&gt;
(cherry picked from commit d59e43d0a3e7b3a40d25f4476e1b51d0045a2018)
Reviewed-by: Qt Cherry-pick Bot &lt;cherrypick_bot@qt-project.org&gt;
</pre>
</div>
</content>
</entry>
</feed>
