many improvement

1. remove custom tap event
2. add lots of comments
3. other improment