<div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">But doesn't that mean that the current rectangle is too eager ?<br>
<br>
I mean, imagine we have (x1,y1,x2,y2):<br>
paintlayer rect = (10,10,20,20)<br>
transparencymask rect = (14,14,18,18)<br>
<br>
if we paint on paint layer on area (9,9,11,11), it shouldn't trigger any<br>
update, right ?<br>
<br>
I wonder what effect it has if for instance we have this:<br>
paintlayer rect = (10,10,20,20)<br>
transparencymask rect = (14,14,18,18)<br>
blur filter<br>
<br>
Does that mean that we recompute the filter on the (10,10,20,20) area ?<br></blockquote><div><br>He-he... That is exactly what i have been working for last two month ;)<br>The crop of the update area is done using changeRect() function of the transparency mask, so there won't be any update if the dirty rect is outside the selection. There is a test for this even: KisWalkersTest::testMasksOverlapping().<br>
<br>Though in your very case there will be an update, because the cropping is done by selectedRect() function, not selectedExactRect() and your rects are placed in the same tile. I haven't tested how slowlier it would be if i used selectedExactRect(), though it worth investigating.<br>
<br></div></div><br>-- <br>Dmitry Kazakov<br>