proper input detection on polygons
new build with CustomShape event delegation