fix some gesture behavior