Subject: bug#33532: 26.1; set-window-configuration does not restore display start

From: Juri Linkov <[email-masked]>
Date: Thu, 06 Dec 2018 02:09:17 +0200

>> Again, no support for window configurations and non-writable window
>> states.  But maybe it's possible to access all buffer's windows,
>> even windows in window configurations/states, and changes their
>> window points, including previous buffers' points in window
>> configurations/states.
>
> How would we handle window configurations?  We could add a new
> variable say 'window-configuration-list' and make sure that
> configurations accessible from that variable are scanned by revert
> buffer functions.  Applications and users would be responsible for
> removing a configuration from that list when it's no more needed.
>
> But we also need accessor/setter functions for Lisp slots like the
> windows stored in the configuration and for any such window its list
> of previous and next buffers (where "any such window" could be a
> deleted one).  Doable but certainly non-trivial.
>
> Window states would have to be handled in a similar way.  But there
> the task would be simpler: Add a variable, say 'window-states-list'
> and if a state is on that list, reverting a buffer could scan it right
> away.  Doable but still requires some work.

Then maybe instead of immediately modifying values in windows (like
e.g. comint-postoutput-scroll-to-bottom uses get-buffer-window-list
and comint-adjust-window-point) and instead of trying to do the same
in window configurations/states, better would be to modify these values
when windows are restored from window configurations/states/prev-next-buffers?