fixed logic bug in hasTouch conditional