Subject: bug#45072: 28.0.50; Emacs switches other buffer back uncontrollably, if other window's buffer is changed by user during minibuffer editing

From: Jean Louis <[email-masked]>
Date: Thu, 10 Dec 2020 13:16:01 +0300

* martin rudalics <[email-masked]> [2020-12-10 12:47]:
> > I am trying to see relevance here, maybe I miss something. The
> > built-in completion does not replace the window which I am looking it.
> > It may make its visible part somewhat smaller, but not replace it.
> >
> > Then I change buffers in those windows. Apart from being made somewhat
> > narrower, windows are not replaced by completion.
> >
> > And I did not even use completion. I was entering information on minibuffer.
> >
> >> One thing that has to be considered too is user interaction during
> >> completion: Suppose I have one window, the completion mechanism pops up
> >> a new one and I delete the old one
> >
> > I have not ever see that in built-in Emacs completion. But maybe it exists.
> >
> > I have seen completion poping up new window, but not replacing or
> > deleting other window.
> 
> All these scenarios are with customizations.  I'm not experienced enough
> to tell whether they (can) happen in practice.

Do you refer to standard completion in minibuffer that it may be
customized to replace a present window with the completion instead of
opening new windows?

That would be nice as I would like to avoid those jerks when there are
2 horizontal windows and then third one appears for completion jerking
both of them up and narrowing those visible windows to almost
invisible rendering both of them unusable.

In that case I would find it useful if the bottom window is
temporarily replaced with the completion, without opening the new
window for completion. If that would be the case then restoring
previous buffer that was there before replacement of window would be
necessary and useful.

My complain came from those buffers changed by me, user, to something
else, that completion never even tackled. I have not even use
completion, just minibuffer, and above 2 horizontal windows get
restored even though I have not wanted it. By switching to other
buffer in those windows user said "I need that other buffer".

But if the window is replaced with completion, I do not have any
window where I would switch the buffer. Or maybe it also works that
completion window is switched to something else. Labyrinth.

Do you know how to make such setting to open up completion list in
such way to replace the bottom window instead of poping up with new
window?

I cannot find any variable completion*wind