[qt/qt/qtdeclarative]: Summary of bulk changes made

KDE Git Services - Bulk Change <[email protected]>
Newsgroups gmane.comp.kde.cvs
Message-ID <[email protected]>
Git repository change summary for qt/qt/qtdeclarative
Pushed by mirror-service into branch '6.12'.
Changed from 2b048990286b4e0a8685237337fd89d57b79756f to 2662bbeb8eef45b49c9e04ce1e28555b8e1aaefd
Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository.

This change contains the following new commits:

Git commit 5bae10e0370dde0cc9567356b7038b5f1d928896 by Qt Cherry-pick Bot (on behalf of Laszlo Agocs) on 23/07/2026 at 10:03..
Do not let glyph res. updates pile up with all Texts hidden

In a scene where all Text items are hidden the resource updates from
the glyph cache are never comitted. Yet we need to submit/free
them somehow, otherwise the limit of 64 resource update batches
may be hit in convoluted cases, even if this is not an issue in
typical Qt Quick applications with a QQuickWindow (because there
is a single scene, a single render context, and a single resource
update batch for the glyph cache), so one probably needs more than
64 windows, all with every Text item hidden in them.

Fixes: QTBUG-147807
Pick-to: 6.11 6.8
Change-Id: Iac4c213bf4e733a2dd8a9e516ea269b52273686f
Reviewed-by: Eskil Abrahamsen Blomfeldt <[email protected]>
Reviewed-by: Błażej Szczygieł <[email protected]>
(cherry picked from commit 42db5d05c8b10c6d7ed9fb9742cb684d2dbb692a)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtdeclarative/-/commit/5bae10e0370dde0cc9567356b7038b5f1d928896

Git commit 5c79cc8600e3d4f20427d43c43c2fbadd0149594 by Qt Cherry-pick Bot (on behalf of Doris Verria) on 23/07/2026 at 10:03..
QStyleKitStyle: Add support for QToolButton

Change-Id: Ifaa9b6162d10ca4b5e4e06f4c32c0e55fc70dea6
Reviewed-by: Richard Moe Gustavsen <[email protected]>
(cherry picked from commit 2caac1b779f85e4ca9bdc84577f3a01fdfa32a4d)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtdeclarative/-/commit/5c79cc8600e3d4f20427d43c43c2fbadd0149594

Git commit 55a6bdaf9fc8339adf0b6d2a835971d4114565dc by Qt Cherry-pick Bot (on behalf of Doris Verria) on 23/07/2026 at 10:03..
StyleKit: Improve and unify subelement readers

Sub-elements inside a widget (eg: item-view cells, menu items
inside a menu, menu-bar items inside a menu-bar, etc) are not
real child widgets, so we can not use a per-widget reader to
style them in case they are animating. (We use a unique
reader per-widget in order to get the interpolated property
values for that widget during an animation, and that varies
depending on the widget).
We were solving this for item-view items by uniquely identifying
them based on their row, column, internalId and creating a reader
per-item. However, this can be quite expensive and can lead to
many readers created in case of long views, lists, etc. Also,
menu-items, menuBar items, etc need the same solution but
they are not identified through rows, columns, etc.

To fix and unify the behavior:

- Introduce a SubElementKey struct holding an
std::variant with the different subelement identity types and
use that to track the subelements. Item-view cells are
uniquely identified through model, row, column, while menu/
menuBar items are uniquely identified through their actions.
Note that we purposely choose to not use QPersistenModelIndex
for item view cells here as it is expensive: it registers with
the model and gets rewritten on every insert/remove. The worst
case scenario with the current way to identify item view cells
is the key going stale on item view reordering leading to a
missed transition in the worst case.

- Only spawn a new reader for subelements currently animating
and track this using a hash of the last transitioned-to states
for subelement. Sub-elements in steady-state (ie: not in a
transition) will use a shared animation-disabled reader. This
cuts down cost significantly.

- Drop the subElementAnimationReaders when the transition they
are tied to, is finished. Note here that the transition property
of the reader represents the shared transition object and its
"running" property is set to false only once all instances of
that transitions have finished running.

Change-Id: Ibe09c4c1fbc1bf570428a09e064d64b57b794200
Reviewed-by: Richard Moe Gustavsen <[email protected]>
(cherry picked from commit a6c350735397b4df6c7f6289411d50287c9ff9af)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtdeclarative/-/commit/55a6bdaf9fc8339adf0b6d2a835971d4114565dc

Git commit 0eb6fb4c0e0da319384fdea8eabc7c65879aaa2a by Qt Cherry-pick Bot (on behalf of Doris Verria) on 23/07/2026 at 10:03..
QStyleKitStyle: Support menus, menubars and their items

Change-Id: I64cd50ab3b1243a78c1ac83bd15c7f6991d47e75
Reviewed-by: Richard Moe Gustavsen <[email protected]>
(cherry picked from commit c719230465cd08bf7ac2d08abcde6188e0685a69)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtdeclarative/-/commit/0eb6fb4c0e0da319384fdea8eabc7c65879aaa2a

Git commit 21ea47d292f9cd3031c70e12c7fdc1ef9e82d53c by Qt Cherry-pick Bot (on behalf of Doris Verria) on 23/07/2026 at 10:03..
QStyleKitStyle: Support QToolBar and QToolBarSeparator

Change-Id: Ia1cc8d8a6039be6ae170e5ca718e291805c795ed
Reviewed-by: Richard Moe Gustavsen <[email protected]>
(cherry picked from commit 7cc09156a9772114140461bb1f9f3a487cebfcb7)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtdeclarative/-/commit/21ea47d292f9cd3031c70e12c7fdc1ef9e82d53c

Git commit 2662bbeb8eef45b49c9e04ce1e28555b8e1aaefd by Qt Cherry-pick Bot (on behalf of Doris Verria) on 23/07/2026 at 10:03..
QQStyleKitStyle: Remove unused method

Change-Id: Icb4b9cb125ba65239ffb4589463c668f75ddc6c5
Reviewed-by: Richard Moe Gustavsen <[email protected]>
(cherry picked from commit be9c599cfa19a4773063aeba7d65c6331c40b9a2)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtdeclarative/-/commit/2662bbeb8eef45b49c9e04ce1e28555b8e1aaefd
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.