[qt/qt/qtcanvaspainter]: 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/qtcanvaspainter
Pushed by mirror-service into branch '6.12'.
Changed from 91df9045a9f6f41b280d9b5cc00a1653f530a19b to 3f7fb7cd2d7f66176dd127cc0effd5bb65298a2f
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 ea8afb5b4c4792ff32386f1fae82b23c21420a7d by Qt Cherry-pick Bot (on behalf of Kaj Grönholm) on 19/08/2026 at 08:59..
API: Rename custom brush time animation methods

Use isAnimationRunning() and setAnimationRunning() as recommended in
the API review.

Task-number: QTBUG-146286
Change-Id: I47d23de0ccc87a013b61089a7c518bbfa4e9d54c
Reviewed-by: Paul Olav Tvete <[email protected]>
(cherry picked from commit c57a40ce3a2b2f6815c26d7e10f75f3daaab9e27)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtcanvaspainter/-/commit/ea8afb5b4c4792ff32386f1fae82b23c21420a7d

Git commit d1563bb59bbf0cbe3628cc36013873cd0b1f6102 by Qt Cherry-pick Bot (on behalf of Kaj Grönholm) on 19/08/2026 at 08:59..
API: Remove mmToPx and ptToPx

These haven't really been used, so remove them from the API for now.
Users can always implement their own conversion helpers.

Task-number: QTBUG-131611
Change-Id: I636b83700f5b0f19e84622cd23fcc0cb596ec763
Reviewed-by: Owais Akhtar <[email protected]>
Reviewed-by: Paul Olav Tvete <[email protected]>
(cherry picked from commit 6b5439e156e9beef11111f975e0036dad2ecfb33)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtcanvaspainter/-/commit/d1563bb59bbf0cbe3628cc36013873cd0b1f6102

Git commit ed1f389d22e681de3845c67d6eb6c4653c4b4a73 by Qt Cherry-pick Bot (on behalf of Kaj Grönholm) on 19/08/2026 at 08:59..
API: Rename global saturate to saturation

Use globalSaturation as recommended in the API review. Rename also in
the Canvas2D API.

Task-number: QTBUG-146286
Change-Id: I75fb76541aa0b6b7de39f2c76edf172524dee243
Reviewed-by: Paul Olav Tvete <[email protected]>
(cherry picked from commit 8e0b8a01aee1e9732dc1113a0a6221c6a7837994)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtcanvaspainter/-/commit/ed1f389d22e681de3845c67d6eb6c4653c4b4a73

Git commit 82a4da24bc795484adc1fd518d2b5b9981d8a7b9 by Qt Cherry-pick Bot (on behalf of Paul Olav Tvete) on 19/08/2026 at 09:57..
Merge glyph-cache resource updates once per prepare, not per draw

QCDistanceFieldGlyphCache::commitResourceUpdates() was called from
populateFont()/populateFontFromShapedText(), i.e. once per
fillText()/fillShapedText() call, even though all it does is merge
each per-font cache's pending update batch into the shared
QRhiResourceUpdateBatch - a QHash<FontKey,FontKeyData> iteration paid
on every single draw for work that only needs to happen once per
prepare/submit cycle.

Moved the general call to endPrepare(), right after the batch is
obtained and guarded by the same rhiCtx->callsCount > 0 check
populateFont() could only have run under anyway; also added a
per-font overload, commitResourceUpdates(batch, FontKeyData*), called
right after generate()/generateFromShapedText() for the font just
touched, since leaving its pending batch
(QCRhiDistanceFieldGlyphCache::m_batch) open for the whole frame
instead of releasing it per draw risks exhausting QRhi's
resource-update-batch pool once a frame uses more distinct fonts than
it holds. Safe because getCurrentTextures()/getOldTextures() only read
state generate()/generateFromShapedText() already set up directly, and
commitResourceUpdates() itself only merges pending upload commands
into the batch, never touching texture objects.

Confirmed via callgrind on a text-heavy fillShapedText() workload:
commitResourceUpdates() call count drops from 300,000 (once per draw)
to 29 (once per frame) over a 30-frame run, and its cost drops out of
the profile entirely.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
Change-Id: Ice9ba0dbb5be466e14bff06edd88fb22318489a9
Reviewed-by: Kaj Grönholm <[email protected]>
(cherry picked from commit 11f7bfc4a5d5a7e1251b7cec87ddb4574e387980)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtcanvaspainter/-/commit/82a4da24bc795484adc1fd518d2b5b9981d8a7b9

Git commit 3f7fb7cd2d7f66176dd127cc0effd5bb65298a2f by Qt Cherry-pick Bot (on behalf of Kaj Grönholm) on 19/08/2026 at 11:25..
API: Remove QCanvasCustomBrush shaders constructor

Common approach is having custom brush as class variable and calling
setFragmentShader() and optionally setVertexShader() so this
constructor isn't really needed. Also move destructor comment into
the right place.

Task-number: QTBUG-146286
Change-Id: I82a5883ef3555be572087e5472ffe4e4fc4ef417
Reviewed-by: Laszlo Agocs <[email protected]>
(cherry picked from commit 297e61c3263a720d20cd2e6d10cd178e5c44300c)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtcanvaspainter/-/commit/3f7fb7cd2d7f66176dd127cc0effd5bb65298a2f
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.