New touch code, trying to fix #80