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

From: Juri Linkov <[email-masked]>
Date: Mon, 14 Dec 2020 22:28:40 +0200

>> I tried to add it to 'exit-minibuffer', and it seems working fine
>> with non-nil read-from-minibuffer-restore-windows, and I know no other
>> place that could call minibuffer-hide-completions:
>
> But 'minibuffer-hide-completions' uses 'bury-buffer' which would delete
> the completions window unconditionally even when it was only reused for
> showing completions.  IMO 'bury-buffer' is practically always the wrong
> choice for Lisp functions to call.

Maybe 'quit-window' is better?

I tried your previous patch and it has strange effect:

C-x 2 C-x o - so the bottom window is selected.

C-h f C-g - after canceling the minibuffer, the top window is selected,
not the bottom window as before activating the minibuffer.