I think that's causing more confusion than necessary though. For example, it could lead people to believe `draw()` is called when `visible` is false, which should not be the case..