serenity
serenity copied to clipboard
PixelPaint: Apply filters on another thread
The main advantage of this change is that heavy-weight filters do not lock up the GUI anymore.
This first cut has several flaws:
- We do not account for modification of the referenced images while the filter is running. Depending on the exact filter behavior this might have all sorts of weird effects. A simple fix would be to show a progress dialog to the user, preventing them from performing other modifications in the meantime.
- We do not use the image processor for previews. Preview behavior has a couple of other considerations that are intentionally not addressed in this commit or pull request.
CC @Tobyase, this is the first PR that addresses points laid out in #14843.
More ❤️ to PixelPaint, let's go! :^)
All this Threading looks like magic to me, I'm not qualified to review this. But reading the code and understanding basic concepts it all looks sensible.
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. Thank you for your contributions!
@kleinesfilmroellchen can this be merged or are there any unresolved issues left?
It can be merged but will need some reworking later. It's good for a first cut though.