Subject: bug#72323: 31.0.50; line-move unconditionally resets vscroll to 0

From: Steven Allen <[email-masked]>
Date: Sun, 18 Aug 2024 10:42:25 -0700

Po Lu <[email-masked]> writes:

> Eli Zaretskii <[email-masked]> writes:
>
>>> This function is very clearly about cursor motion, not scrolling, and
>>> shouldn't mess with the current scroll position.
>>
>> Po Lu will tell, but my understanding of the comment is that it does
>> what it does out of necessity.
>
> I don't understand why it is inherently improper that line motion
> commands should reset vscroll, which is never set to a large value by
> precision scrolling.

E.g., let's say I'm viewing an org-mode file with embedded images. With
pixel-scroll-precision-mode, I can scroll through this file, letting the
images scroll off-screen by using the vscroll offset instead of having
them suddenly "jump" off screen as I scroll by them.

However, once I start typing, the second I try to change lines the
entire screen jumps because the entire image is now forced on-screen (if
it fits) or offscreen (if it doesn't). This is extremely jarring.