A first part of the layers/masks patch

Cyrille Berger cberger at cberger.net
Fri Sep 25 23:00:16 CEST 2009


Hello,

Bah I tried to apply it but got a lot of stuff that didn't apply cleanly :( 
Anyway, it brings a lot of nice changes, so I think it would be a good idea to 
apply it sooner than latter.

> *) Still present bugs:
> 
> a) [the worst one] Painting on any alpha mask do not work because of
> alpha() colorspace issue i was described before in this maillist. You
> can paint if your mask is transparent, but the brush isn't. This is
> not an issue of an algorithm. This is an issue of the alpha()
> colorspace and the fact that we use brush's alpha channel for painting
> alpha image-channel (tha latter assumption is completely wrong(!)).
> 
> Solution: Brush's dab should use grayscale colorspace during painting
> on alpha-mask/selection. KisSelection should use grayscale, or a
> special alpha_special() colorspace to work with grayscale channel of a
> dab.
> 
> b) Vector selection tools DO NOT work on masks (And i'm not sure they
> work on adjustment layers). The reason of the first fact (i think) is
> that KisSelectionToolHelper class uses KisLayerSP type for internal
> storage of a paint device. It should be changed to KisNodeSP to fix
> that (of course alongside some other changes in logics of this class)
> 
> a),b) => c) There is no(!) way to paint on alpha-channels/masks
> currently. You simply CAN'T change the mask you created.
> 
> The only way to create a mask now is the following:
>     i) make a vector selection first
>     ii) create a  mask - it'll derive this selection for it's own
> 
> [some minor bugs not dependent on the patch]
> d) Blur filter works wrong. It writes filtered image to the source
> device instead of the destination one
> 
> e) Drag&Drop is broken in KisLayerBox. Just try to change an order of
> masks with a mouse - you can easily lift it up above the root
> layer. Of course,  your next action will cause krita to crash.
> 
> f) Curves filter DO NOT(!) work. I guess, there is some bug in
> KoColorTransformation as every curve works as a brightness/contrast
> curve instead of a channel curve. Just try it out!

> btw, a,b,c,d,e,f are good, well-fed release blockers.
hum no. With the exception of e), if it is indeed easy to trigger the crash, 
that I can't reproduce before the patch.

about d) As far as I can see, the blur filter do write on dst, what makes you 
think it doesn't ?

for a,b,c) it doesn't work perfectly, but it's not *that* broken. 

-- 
Cyrille Berger


More information about the kimageshop mailing list