use insideView instead of hide then show
fix higlight, and add select