Moving the document and the cursor position back to the top is a bug,
logged as #531.
As for the rest, I tested both MSWord for Windows, and WordPerfect for
Linux. Here's the scoop. Both keep the current doc position viewable when
a zoom is performed. Additionally, the cursor position is kept as is.
Therefore, hitting an arrow key will adjust the document back to the cursor
position again if necessary.
Whether we zoom to the cursor position or current view position is a
debatable choice, but either is significantly better than what we do now,
as you have pointed out. As you will be implementing this fix, I suggest
you do what you think is best.
Open Source Evangelist