Subject: bug#68235: 29.1.90; Switching tabs stops following process output in selected window

From: Juri Linkov <[email-masked]>
Date: Sun, 14 Jan 2024 20:53:12 +0200

>> Actually one hook 'pre-current-window-configuration-functions' should be
>> sufficient.  Like there is only 'isearch-push-state-function' that can
>> be used to save a lambda that can restore the current window-start, then
>> on going back this lambda is called and restores the previous window-start.
>
> IIUC we have to move some point to some position somewhere in
> 'set-window-configuration'.  Who would trigger that?  Calling a function
> from within 'set-window-configuration' seems hairy to me.

I see no other way than calling this hook from 'set-window-configuration'.
The problem is that running the hook afterwards would be too late.
What I mean here is the annoying problem that when a buffer is killed,
then on restoring a window configuration its window is deleted.

This case could be fixed here with the same change as well.
When a window parameter will contain a lambda called from
'set-window-configuration', this lambda could do something useful
to preserve the window whose buffer was killed.  Something like
displaying a placeholder with a button to restore the buffer.

The same window parameter could be used in a window with
a reverted dired buffer to move point to a previous file name.