I'd forgotten that the existing swiping code was this primitive and was velocity based. We can make this a little better if we need to by modifying the pan event handler in lib/panzoom.js and passing pan amounts back up to this controller.