touch event fixes