Bug 425712

Summary: The sliders in Liquify sections are too slow (laggy) and consume cpu, hanging krita for a brief moment.
Product: [Applications] krita Reporter: Raghavendra kamath <raghu>
Component: Tools/TransformAssignee: Dmitry Kazakov <dimula73>
Status: RESOLVED FIXED    
Severity: normal CC: dimula73, halla, tamtamy.tymona
Priority: NOR    
Version First Reported In: git master (please specify the git hash!)   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Raghavendra kamath 2020-08-23 14:14:11 UTC
SUMMARY
The size slider in the liquify section of transform tool options react very slowly to slide operation, often there is a huge cpu spike which hangs krita for 2-4 seconds.

STEPS TO REPRODUCE
1. Open krita and a file
2. Activate transform tool and the liquify mode.
3. Drag the size slider to new value

OBSERVED RESULT
Slider takes too long to respond and there is a cpu spike while doing the slide operation

EXPECTED RESULT
slider should be as smooth as the shift + drag resize 

SOFTWARE/OS VERSIONS
Operating System: Arch Linux
KDE Plasma Version: 5.19.4
KDE Frameworks Version: 5.73.0
Qt Version: 5.15.0
Kernel Version: 5.7.12-arch1-1
OS Type: 64-bit
Processors: 8 × Intel® Core™ i7-4790K CPU @ 4.00GHz
Memory: 31.3 GiB of RAM
Graphics Processor: GeForce GTX 750 Ti/PCIe/SSE2
Comment 1 Raghavendra kamath 2020-08-23 14:14:39 UTC
Also see this [bug report](https://bugs.kde.org/show_bug.cgi?id=423788) which may be related
Comment 2 Tiar 2020-12-11 19:52:49 UTC
What's interesting is that the tool itself is not that much laggy at all, only the sliders are acting weird. (I've seen bug 423788 and for me even in such big size was slow but smooth; however setting that size was difficult, in the end I just entered the value directly into the field without relying on the slider).
Comment 3 Halla Rempt 2020-12-11 19:59:25 UTC
Then it probably just needs a signal compressor.
Comment 4 Dmitry Kazakov 2021-07-17 11:27:55 UTC
I guess the problem happens because changing these properties trigger canvas update, therefore the layer will be recalculated, which shouldn't really happen.
Comment 5 Dmitry Kazakov 2021-07-17 11:41:46 UTC
Git commit 47c897453c509ab0f5189a1edffcd9b431bf1e33 by Dmitry Kazakov.
Committed on 17/07/2021 at 11:41.
Pushed by dkazakov into branch 'master'.

Do not request transform preview update on changing liquify options

These options affect the brush settings only, not what the actual
visual representation is.

M  +7    -5    plugins/tools/tool_transform2/kis_tool_transform.cc
M  +1    -1    plugins/tools/tool_transform2/kis_tool_transform.h
M  +11   -11   plugins/tools/tool_transform2/kis_tool_transform_config_widget.cpp
M  +2    -2    plugins/tools/tool_transform2/kis_tool_transform_config_widget.h

https://invent.kde.org/graphics/krita/commit/47c897453c509ab0f5189a1edffcd9b431bf1e33