Subject: Re: bug#17678: 24.4.50; Feature Request -- calculate new `window-start` & `window-end` before visual redisplay

From: Stefan Monnier <[email-masked]>
Date: Fri, 13 Jun 2014 08:34:59 -0400

>> I know of code that does that from outside of redisplay, but within
>> redisplay I only know of the "move point back into view".
> Why does it matter if the trigger comes from outside redisplay or as
> part of redisplay?

If it's done outside of redisplay, then pre-redisplay-function already
gets the right window-start and the problem is already solved.
If OTOH redisplay decides to scroll, it won't re-execute
pre-redisplay-function, so Elisp doesn't get a chance to react to this
new window-start.

> Anyway, one situation of the latter kind is when the text at
> window-start changed.  Another one is when the window-start was in a
> continuation line, and the window width changed, see
> compute_window_start_on_continuation_line and its callers.

Ah, right, that makes sense.

        Stefan