Save and restore original page scroll position.
Restore the original scroll position if the user cancels the operation.
Merge branch 'master' into return-to-starting-position
Merge branch 'pr/6'
appease jslint with standard return values