<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">
</span>As I said above, system timestamps make the situation noticeably<br>
better (see example images, I couldn't manage to get really awful<br>
lines with it, so it's a better), but it's not a silver bullet and it<br>
needs to be complemented with proper handling of slightly off values.<br>
<br>
Besides, I don't have better arguments for this refactoring than :<br>
- it would de-obfuscate KisInputManager/KisToolProxy<br>
- having a unique consistent complete pointer event interface is<br>
better done early and made available to all Krita components<br>
- ...my guts are telling me to, and my guts never lie<br>
<br>
So yeah, it's probably not critical beyond the ease of implementing<br>
timestamps correctly, I just think it would help in reducing the<br>
unneeded complexity in several parts of the code.<br></blockquote><div><br></div><div><br>Well, the timestamps are quite an expensive refactoring and you'll spend about a month of work on it. I would look at it in the following way:<br><br></div><div>1) First do speed filtering. You need to do it anyway :)<br></div><div>2) Then compare the quality of the filtering with your proof of concept timestamps patch activated and not. If the quality difference is really worth it, we do it :) If not, we'll better spend time on something else, e.g. on openCL support or something like that :)<br></div><div><br> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
The problem is that InputManager is an event filter for *Canvas<br>
events*, so it only happens when your cursor interacts with the<br>
canvas. Reproduce these sequences with a two ended stylus :<br>
- Initial state : preset A<br>
- move cursor with stylus end to the preset box<br>
- flip to eraser without moving over the canvas<br>
- choose preset B<br>
--- Branch 1<br>
- move to canvas, draw with B<br>
- flip again to stylus and draw with... B ? <-- Oops, should be A<br>
--- Branch 2 (repeat first steps)<br>
- flip again to stylus without moving over the canvas<br>
- choose preset C<br>
- move to the canvas, draw with C<br>
- flip to eraser and draw with.... C ? <-- Oops, should be B<br clear="all"></blockquote></div><br></div><div class="gmail_extra">I got what you mean :) Yes, it is a problem, but I'm not sure the painters face it that often.<br></div><div class="gmail_extra"><br>-- <br><div class="gmail_signature">Dmitry Kazakov</div>
</div></div>