basic viewport dragging in place