Semplificata la logica di disegno

Rimosse le funzioni startDrawing, stopDrawing ecc dal Paper: ora la logica di disegno (mousedown, mousemove, mouseup) viene completamente gestita dal DrawingTool (il paper è solo un foglio, non sa niente di come ci si disegna sopra).

Questo consente ai vari DrawingTool di avere completa autonomia su, ad esempio, quando fare beginPath() o closePath().

Chi scrive una estensione adesso vede gli eventi onStartDrawing, onDraw ed onStopDrawing.

Il disegno (evento onDraw) inoltre viene fatto sul mousemove del document e non più su quello del canvas: questo ci evita tutti quei casini per controllare l'ingresso e l'uscita dal foglio. Tanto l'overhead è praticamente zero, e per implementare la funzione "annulla" le cose cambiano poco!