Cool! I built something similar a while back. A bit more structured (creating accounts and such), but with a bigger variety of drawing tools, and some social features like following, project collaboration, upvotes/downvotes, and chat. https://www.formgraph.com
To do it "properly", wrap it in `undoable`, then you don't need use `trigger`, and you can undo it normally. :)
undoable(function(){
for(var i = 0; i < 1; i += 1/10000){
var angle = i * 500;
var dist = i * 2;
var x = canvas.width * (1/2 + Math.cos(angle) * dist);
var y = canvas.height * (1/2 + Math.sin(angle) * dist);
tools[7].paint(ctx, x, y);
}
});