Bug 406825

Summary: Krita doesn't respond during color space conversion
Product: [Applications] krita Reporter: Tiar <tamtamy.tymona>
Component: Color modelsAssignee: amyspark <amy>
Status: RESOLVED FIXED    
Severity: normal CC: amy, griffinvalley, halla
Priority: NOR    
Version: nightly build (please specify the git hash!)   
Target Milestone: ---   
Platform: Microsoft Windows   
OS: Microsoft Windows   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Tiar 2019-04-23 17:32:34 UTC
SUMMARY
Color space/profile conversion happens in the foreground, causing Krita to go into the "No Responding" for quite a long time if user wants to convert a big file.


STEPS TO REPRODUCE
1. Create 15 layers of the size of 4K (4000 x 2000). Make sure they're filled with something.
2. Go to Image -> Convert Image Color Space. Choose options.
3. Wait.

OBSERVED RESULT
Krita is not responding. (Windows adds "Not Responsing" message at the end of window title, you can't do anything, just wait.)


EXPECTED RESULT
Krita should either show a message with progress bar or work in a normal way.


SOFTWARE/OS VERSIONS
Version: 4.2.0-pre-alpha (git fb08951)
Windows: 10
Qt Version: 5.12.2
Comment 1 Halla Rempt 2019-04-23 17:34:59 UTC
There should be a progress bar in the layerbox, every layer should be converted in its own thread.
Comment 2 Tiar 2019-04-23 17:42:26 UTC
What about an animated layer with 15 frames? I think they should be converted simultanously, too. 

But the biggest problem is that Krita doesn't report doing anything, just tops responding. Krita taking time converting a lot of images is understable, but Krita not looking as if it does anything shouldn't happen, I think.
Comment 3 Halla Rempt 2019-04-23 17:59:04 UTC
Yeah, every paint device should be converted simultaneously, for as many cores as are available. The reporting should happen in the layerbox, and I think we once even made sure Krita did not become irresponsive when that happened, so something might have regressed here.
Comment 4 wolthera 2019-09-21 16:01:36 UTC
If two developers agree on something being a bug, it is confirmed.
Comment 5 Bug Janitor Service 2021-07-06 13:04:53 UTC
A possibly relevant merge request was started @ https://invent.kde.org/graphics/krita/-/merge_requests/945
Comment 6 Dmitry Kazakov 2021-07-28 06:02:33 UTC
Git commit c241eac0ae3a60825cc4461a7078e8eaf64b84df by Dmitry Kazakov, on behalf of L. E. Segovia.
Committed on 28/07/2021 at 06:01.
Pushed by dkazakov into branch 'master'.

Add progress bar to colorspace conversion command

M  +18   -5    libs/image/kis_paint_device.cc
M  +4    -2    libs/image/kis_paint_device.h
M  +16   -7    libs/image/kis_paint_device_data.h
M  +6    -4    libs/image/lazybrush/kis_colorize_mask.cpp
M  +4    -2    libs/image/lazybrush/kis_colorize_mask.h
M  +14   -8    libs/image/processing/kis_convert_color_space_processing_visitor.cpp

https://invent.kde.org/graphics/krita/commit/c241eac0ae3a60825cc4461a7078e8eaf64b84df