Keep the current vertical position when zooming the document

This PR prevents the document from scrolling to the top of the current page when the zoom level is changed.

In my testing, this seems to work perfectly when just zooming the document. Occasionally, because of rounding issues, the vertical scroll position might be offset slightly, but this Fixes issue #1521.