modified touch event