adds onTouchInside with block call for cleaner control