touch event and tweaks