Subject: bug#4914: completions - remove window after use?

From: martin rudalics <[email-masked]>
Date: Thu, 12 Nov 2009 20:26:46 +0100

> That would be good.  Quite generally, those windows/frames that are
 > created (e.g. via pop-to-buffer) for a specific window should be
 > removed after we're done with the interaction (see also quit-window).
 > I've had a kludge for this in Aquamacs for a long time (via an advice
 > to bury-buffer), but it's quite difficult to do consistently when
 > Emacs and 3rd-part packages aren't aware that this is happening.

It's practically impossible to find a solution that satisfies all needs
in this area.  Basically, `display-buffer' would set a special slot for
any window it pops up and `quit-window' would try to delete a window if
it has that slot set and still shows the argument of `display-buffer'.

The more difficult part is what to do when `display-buffer' has reused
an existing window.  In that case quitting that window should display
the previous buffer with the old start position and the old point.  All
these values would have to be recorded in the window structure and in
saved window configurations.  Now once we have all these values we could
have `bury-buffer' use them instead of doing a `switch-to-buffer' but
that's too tricky for the moment.

 > Are dedicated windows the way to go?

The completions window could be dedicated so `quit-window' would
automatically delete it.  Windows that may live longer should generally
not be dedicated.

martin