allow toggling off by setting to CGRectZero
add switch to demo