Google implemented "draggable directions" in Google Maps API v3. "Draggable directions allow a user to modify the route suggested by the Maps API to suit their tastes, for e.g. to avoid traffic, or to modify stop overs on a long road trip. The API implementation closely follows that on Google Maps; existing markers can be dragged around the map, and moving your mouse near the path allows you to click and drag a new point," informs Google.
"DirectionsRenderer now has a draggable option, which when true causes paths to be draggable when rendered. API developers can be notified of changes to a path by listening to directions_changed event on a DirectionsRenderer. This makes it easy to implement additional features like the Undo button above."
More Info: Documentation