Wednesday, May 19, 2010

Krita: canvas will not flicker anymore!

Many have already seen this annoying bug in Krita canvas update system. It was seen when you painted with big and complex brushes like Hairy Brush on a multilayer image. Now I'm glad to announce that the patch is produced! And it will be in trunk soon!
The bug was caused by a race condition between Image and UI threads. The latter one tried to read the data from the merged projection while the former one was preparing it. I have fixed this by splitting the update process into two parts. The first part reads data from the image. It is executed in the context of the Image thread. Then the thread saves update information got from the canvas to the external structure called KisUpdateInformation and passes it to the UI thread, that continues updating doing rescaling and other slow operations.

This patch touches much code in canvas subsystem, so there will be a short delay for reviewing and testing the patch. And if you want to see it in trunk faster, you can help testing it! [0]

There are some technical details of implementation in our wiki [1]

[0] -
[1] -

Tuesday, May 4, 2010

Creative Monday in Mocsow

We have just had three days of holidays in Russia. They were all due to a "prolonged" Labour Day. :)

On Sunday I was happily coding a Krita's [0] canvas system and almost done with the splitting [1], so I decided to get a day off and organize a "Creative Monday" on the next day. I went to the center of Moscow and got some photos [2].

Here you can see some results =)

[0] -
[1] -
[2] -

About cars...

Cars, pt2

Cars, pt1

About windscreens...

Windscreen, pt2

Windscreen, pt1

About rice, fish, restaurant and abstractions...


And, of course, about love...

About Love, pt1

About Love, pt3

About Love, pt3