use touchArea instead of a Rectangle overlay, and allow optional padding