unify click/drag/move/premove