https://bugs.kde.org/show_bug.cgi?id=455570
Dmitry Kazakov <dimul...@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|REPORTED |RESOLVED Latest Commit| |https://invent.kde.org/grap | |hics/krita/commit/f01f8837d | |0980f3fb1c00b2b5e0b9ef03841 | |7b74 Resolution|--- |FIXED --- Comment #3 from Dmitry Kazakov <dimul...@gmail.com> --- Git commit f01f8837d0980f3fb1c00b2b5e0b9ef038417b74 by Dmitry Kazakov. Committed on 22/06/2022 at 08:03. Pushed by dkazakov into branch 'master'. Fix a slowdown when Shift+gestrure-resize huge and complex brushes This patch does two things: 1) Now the brush outline is generated **not** from the real brush tip, generated by generateMaskAndApplyMaskOrCreateDab(), but from the original brushTipImage(). It should generate the same outline, unless any of our brush modes support changing opacity of the brush tip (afaict, none of them support that). 2) The outline and pyramid caches are now shared between the source and cloned brush tips. That is, updating a cache inside a cloned brush will also update the cache inside the source brush (in the registry). This decision is a bit scary, but solves really a lot of performance troubles. The link between the two brush objects will be reset only when one of the objects calls `cache.reset()`. M +19 -20 libs/brush/kis_brush.cpp M +139 -16 libs/global/KisLazySharedCacheStorage.h https://invent.kde.org/graphics/krita/commit/f01f8837d0980f3fb1c00b2b5e0b9ef038417b74 -- You are receiving this mail because: You are watching all bug changes.