Subject: bug#54038: 29.0.50; doc-view cannot show different pages in different tabs

From: Juri Linkov <[email-masked]>
Date: Sun, 20 Feb 2022 20:51:21 +0200

>> 'window-live-p' doesn't check windows saved in window-configurations in tabs.
>>
>> Maybe it should check tab window-configurations on all frames
>> by a new function 'window-configuration-windows'
>> (something like used in 'tab-bar-get-buffer-tab').
>>
>> But then what about windows saved by 'window-configuration-to-register'?
>> Should they be checked by 'window-live-p' too?
>>
>> Or maybe better to change 'image-mode-winprops-alist' to the hash
>> 'image-mode-winprops-hash' where window keys are garbage-collected?
>> So when a window is deleted from all window-configurations,
>> it will be garbage-collected?
>
> GC tries to remove dead buffers window configurations stored in their
> list of previous or next buffers.  But checking for whether a dead
> window has disappeared from all stored configurations is more demanding
> - maybe we could reserve a bit in each window the collector resets for
> all dead windows at the beginning of each cycle and at the end reclaim
> the space of all windows that did not have that bit set when the window
> was found in a stored window configuration.

Maybe a more immediate solution would be simply to iterate all tabs
on all frames, and to check whether they contain a window.  But still
I can't find a function to check whether a window is in a window configuration.
Does such a function exist?