Improve `ShapeEventEmitter` constructor

A canvas is now a valid parameter