<feed xmlns='http://www.w3.org/2005/Atom'>
<title>qt/qtdeclarative.git/src/quicktemplates2/qquicklabel.cpp, branch wip/qtquickcontrols2</title>
<subtitle>Qt Declarative (Quick 2)
</subtitle>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/'/>
<entry>
<title>Adjust to QQuickItemPrivate::{width,height}Valid becoming a function</title>
<updated>2021-07-12T09:25:51+00:00</updated>
<author>
<name>Fabian Kosmale</name>
<email>fabian.kosmale@qt.io</email>
</author>
<published>2021-06-29T10:09:17+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=d739972285e7126f157a31019597331210212029'/>
<id>d739972285e7126f157a31019597331210212029</id>
<content type='text'>
Task-number: QTBUG-94703
Change-Id: I2c48f1cc94b8dd94cddab1d833f62299d35fe5d9
Reviewed-by: Mitch Curtis &lt;mitch.curtis@qt.io&gt;
Reviewed-by: Andrei Golubev &lt;andrei.golubev@qt.io&gt;
(cherry picked from commit 2a4ff847e8c018f31b14ecffd229d3793138ab1b)
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>
Task-number: QTBUG-94703
Change-Id: I2c48f1cc94b8dd94cddab1d833f62299d35fe5d9
Reviewed-by: Mitch Curtis &lt;mitch.curtis@qt.io&gt;
Reviewed-by: Andrei Golubev &lt;andrei.golubev@qt.io&gt;
(cherry picked from commit 2a4ff847e8c018f31b14ecffd229d3793138ab1b)
Reviewed-by: Qt Cherry-pick Bot &lt;cherrypick_bot@qt-project.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Make adjustments for using QFont::setFamilies()</title>
<updated>2020-11-30T06:36:07+00:00</updated>
<author>
<name>Andy Shaw</name>
<email>andy.shaw@qt.io</email>
</author>
<published>2020-11-25T13:00:11+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=e32947d25245bdf5ca9b969e82c4e66de48957bb'/>
<id>e32947d25245bdf5ca9b969e82c4e66de48957bb</id>
<content type='text'>
Since we only depend on using setFamilies() now instead of setFamily()
then we can rely on the fact that it will be resolved correctly, so we
can remove the code that was ensuring that family() would take
precedence if families() was empty.

Change-Id: Iea1464ec840dc76c04a4acae445cab367e03d3ca
Reviewed-by: Volker Hilsheimer &lt;volker.hilsheimer@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Since we only depend on using setFamilies() now instead of setFamily()
then we can rely on the fact that it will be resolved correctly, so we
can remove the code that was ensuring that family() would take
precedence if families() was empty.

Change-Id: Iea1464ec840dc76c04a4acae445cab367e03d3ca
Reviewed-by: Volker Hilsheimer &lt;volker.hilsheimer@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix build after qtbase API changes</title>
<updated>2020-09-15T15:44:48+00:00</updated>
<author>
<name>Lars Knoll</name>
<email>lars.knoll@qt.io</email>
</author>
<published>2020-09-11T08:39:20+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=82f19b9d594e26a9538f2135eb0fcfa357f4c693'/>
<id>82f19b9d594e26a9538f2135eb0fcfa357f4c693</id>
<content type='text'>
Adjust to API changes in qtbase

Change-Id: Ib7d97c9580651077103b8ddeca28c30fb4992cb6
Reviewed-by: Tor Arne Vestbø &lt;tor.arne.vestbo@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Adjust to API changes in qtbase

Change-Id: Ib7d97c9580651077103b8ddeca28c30fb4992cb6
Reviewed-by: Tor Arne Vestbø &lt;tor.arne.vestbo@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Add ; to Q_UNUSED</title>
<updated>2020-06-30T08:25:27+00:00</updated>
<author>
<name>Lars Schmertmann</name>
<email>Lars.Schmertmann@governikus.de</email>
</author>
<published>2020-06-27T10:57:47+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=d9f60a2560143008336439ebc8a9399cd5bda7b4'/>
<id>d9f60a2560143008336439ebc8a9399cd5bda7b4</id>
<content type='text'>
This is required to remove the ; from the macro with Qt 6.

Task-number: QTBUG-82978
Change-Id: I92ef02ede041d3965151165a479a1ea0549cc0f9
Reviewed-by: Shawn Rutledge &lt;shawn.rutledge@qt.io&gt;
Reviewed-by: Volker Hilsheimer &lt;volker.hilsheimer@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is required to remove the ; from the macro with Qt 6.

Task-number: QTBUG-82978
Change-Id: I92ef02ede041d3965151165a479a1ea0549cc0f9
Reviewed-by: Shawn Rutledge &lt;shawn.rutledge@qt.io&gt;
Reviewed-by: Volker Hilsheimer &lt;volker.hilsheimer@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Adapt to geometryChanged =&gt; geometryChange renaming</title>
<updated>2020-04-24T09:07:24+00:00</updated>
<author>
<name>Mitch Curtis</name>
<email>mitch.curtis@qt.io</email>
</author>
<published>2020-03-24T09:34:56+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=e3a7011a9d687609653a31f6a93024026902e67c'/>
<id>e3a7011a9d687609653a31f6a93024026902e67c</id>
<content type='text'>
Task-number: QTBUG-82994
Change-Id: Iaf530d2a6f4dc92641d0c10e16e7b931f90646ac
Reviewed-by: Shawn Rutledge &lt;shawn.rutledge@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Task-number: QTBUG-82994
Change-Id: Iaf530d2a6f4dc92641d0c10e16e7b931f90646ac
Reviewed-by: Shawn Rutledge &lt;shawn.rutledge@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove old QQuickPalette implementation</title>
<updated>2020-03-18T16:29:24+00:00</updated>
<author>
<name>Vitaly Fanaskov</name>
<email>vitaly.fanaskov@qt.io</email>
</author>
<published>2019-08-06T13:50:22+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=31f5c21ddb571d744efd1885c0687816b3a12225'/>
<id>31f5c21ddb571d744efd1885c0687816b3a12225</id>
<content type='text'>
The existing implementation was removed in order to reduce massive code
duplication and simplify color resolving process. Unit tests were fixed
accordingly.

See related changes in the qtdeclarative module for the further details.

[ChangeLog][General] the palette API is a part of
QQuickItem now.

Change-Id: Ic94ab4632e626c11d9b26f035e2a8a119c9088ef
Reviewed-by: Simon Hausmann &lt;simon.hausmann@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The existing implementation was removed in order to reduce massive code
duplication and simplify color resolving process. Unit tests were fixed
accordingly.

See related changes in the qtdeclarative module for the further details.

[ChangeLog][General] the palette API is a part of
QQuickItem now.

Change-Id: Ic94ab4632e626c11d9b26f035e2a8a119c9088ef
Reviewed-by: Simon Hausmann &lt;simon.hausmann@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge remote-tracking branch 'origin/5.14' into 5.15</title>
<updated>2019-12-30T10:44:50+00:00</updated>
<author>
<name>Liang Qi</name>
<email>liang.qi@qt.io</email>
</author>
<published>2019-12-30T10:44:50+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=ec686af14f817cc51323cfb01186f036905789c3'/>
<id>ec686af14f817cc51323cfb01186f036905789c3</id>
<content type='text'>
 Conflicts:
	.qmake.conf
	tests/auto/controls/data/tst_combobox.qml

Change-Id: I8471cdac4397f77a8e58140d58c6b50d3c437928
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 Conflicts:
	.qmake.conf
	tests/auto/controls/data/tst_combobox.qml

Change-Id: I8471cdac4397f77a8e58140d58c6b50d3c437928
</pre>
</div>
</content>
</entry>
<entry>
<title>Respect user-set Accessible.name</title>
<updated>2019-12-03T12:40:15+00:00</updated>
<author>
<name>Mitch Curtis</name>
<email>mitch.curtis@qt.io</email>
</author>
<published>2019-11-05T11:51:02+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=463898f0765b83f6c391f6802a0ee06796f9f6d2'/>
<id>463898f0765b83f6c391f6802a0ee06796f9f6d2</id>
<content type='text'>
Check if the user has set Accessible.name before setting it to the
control's text/title/etc.

Fixes: QTBUG-66583
Change-Id: I8b2c8ab3f8a8ae8e76c8e6a241260b7f90eca254
Reviewed-by: Liang Qi &lt;liang.qi@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Check if the user has set Accessible.name before setting it to the
control's text/title/etc.

Fixes: QTBUG-66583
Change-Id: I8b2c8ab3f8a8ae8e76c8e6a241260b7f90eca254
Reviewed-by: Liang Qi &lt;liang.qi@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge remote-tracking branch 'origin/5.14' into 5.15</title>
<updated>2019-11-30T02:04:24+00:00</updated>
<author>
<name>Qt Forward Merge Bot</name>
<email>qt_forward_merge_bot@qt-project.org</email>
</author>
<published>2019-11-30T02:04:24+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=9a9ae6be7d278cdcaf6ac99ea22b3d6cf1093313'/>
<id>9a9ae6be7d278cdcaf6ac99ea22b3d6cf1093313</id>
<content type='text'>
Change-Id: Icb923b10d2b6c524ebaa8b38c7979b780e3582d4
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Icb923b10d2b6c524ebaa8b38c7979b780e3582d4
</pre>
</div>
</content>
</entry>
<entry>
<title>Don't delete items we didn't create</title>
<updated>2019-11-28T14:51:43+00:00</updated>
<author>
<name>Mitch Curtis</name>
<email>mitch.curtis@qt.io</email>
</author>
<published>2019-11-08T14:53:18+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=80f1186338bcf8c7d692b4fadfc46531c002c6b0'/>
<id>80f1186338bcf8c7d692b4fadfc46531c002c6b0</id>
<content type='text'>
Up until this patch, we've always deleted "old" items when a new one is
assigned. For example, the style's implementation of contentItem will
be destroyed here as it is not accessible by the user and is no longer
used:

    Button {
        contentItem: Item { /* ... */ }
    }

This was especially important before the introduction of deferred
execution, as the "default" items would always be created, regardless
of whether the user had overridden it with one of their own items.
By deleting the old items, we free unused resources that would
otherwise persist until application shutdown (calling gc() does not
result in the items being garbage-collected, from my testing).

Although this has largely worked without issues, deleting objects
that weren't created by us in C++ is not supported. User-assigned items
can be created in QML (with JavaScriptOwnership) or C++ (with
CppOwnership), and it is up to the user and/or the QML engine to
manage the lifetime of these items.

After the introduction of deferred execution, it became possible to
skip creation of the default items altogether, meaning that there was
nothing to delete when assigning a new, user-specified item. This
requires that no ids are used in these items, as doing so prevents
deferred execution. Assuming that users avoid using ids in their items,
there should be no unused items that live unnecessarily until
application shutdown. The remaining cases where items do not get
destroyed when they should result from the following:

- Imperative assignments (e.g. assigning an item to a Button's
  contentItem in Component.onCompleted). We already encourage
  declarative bindings rather than imperative assignments.
- Using ids in items.

Given that these are use cases that we will advise against in the
documentation, it's an acceptable compromise.

[ChangeLog][Important Behavior Changes] Old delegate items (background,
contentItem, etc.) are no longer destroyed, as they are technically
owned by user code. Instead, they are hidden, unparented from the
control (QQuickItem parent, not QObject), and Accessible.ignored is
set to true. This prevents them from being unintentionally visible and
interfering with the accessibility tree when a new delegate item is
set.

Change-Id: I56c39a73dfee989dbe8f8b8bb33aaa187750fdb7
Task-number: QTBUG-72085
Fixes: QTBUG-70144
Fixes: QTBUG-75605
Reviewed-by: Ulf Hermann &lt;ulf.hermann@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Up until this patch, we've always deleted "old" items when a new one is
assigned. For example, the style's implementation of contentItem will
be destroyed here as it is not accessible by the user and is no longer
used:

    Button {
        contentItem: Item { /* ... */ }
    }

This was especially important before the introduction of deferred
execution, as the "default" items would always be created, regardless
of whether the user had overridden it with one of their own items.
By deleting the old items, we free unused resources that would
otherwise persist until application shutdown (calling gc() does not
result in the items being garbage-collected, from my testing).

Although this has largely worked without issues, deleting objects
that weren't created by us in C++ is not supported. User-assigned items
can be created in QML (with JavaScriptOwnership) or C++ (with
CppOwnership), and it is up to the user and/or the QML engine to
manage the lifetime of these items.

After the introduction of deferred execution, it became possible to
skip creation of the default items altogether, meaning that there was
nothing to delete when assigning a new, user-specified item. This
requires that no ids are used in these items, as doing so prevents
deferred execution. Assuming that users avoid using ids in their items,
there should be no unused items that live unnecessarily until
application shutdown. The remaining cases where items do not get
destroyed when they should result from the following:

- Imperative assignments (e.g. assigning an item to a Button's
  contentItem in Component.onCompleted). We already encourage
  declarative bindings rather than imperative assignments.
- Using ids in items.

Given that these are use cases that we will advise against in the
documentation, it's an acceptable compromise.

[ChangeLog][Important Behavior Changes] Old delegate items (background,
contentItem, etc.) are no longer destroyed, as they are technically
owned by user code. Instead, they are hidden, unparented from the
control (QQuickItem parent, not QObject), and Accessible.ignored is
set to true. This prevents them from being unintentionally visible and
interfering with the accessibility tree when a new delegate item is
set.

Change-Id: I56c39a73dfee989dbe8f8b8bb33aaa187750fdb7
Task-number: QTBUG-72085
Fixes: QTBUG-70144
Fixes: QTBUG-75605
Reviewed-by: Ulf Hermann &lt;ulf.hermann@qt.io&gt;
</pre>
</div>
</content>
</entry>
</feed>
