bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#52491: 28.0.90; Regression in window deletion with minibuffer


From: martin rudalics
Subject: bug#52491: 28.0.90; Regression in window deletion with minibuffer
Date: Sun, 19 Dec 2021 11:14:32 +0100

> Maybe it would be possible to change the default behavior of delete-window
> to do what it did in Emacs 27?  But honestly, I don't understand how
> this old code managed to select the minibuffer after deleting the
> completions buffer and why its behavior differs after it was moved to Lisp:
>
> -    /* Now look whether `get-mru-window' gets us something.  */
> -    mru_window = call1 (Qget_mru_window, frame);
> -    if (WINDOW_LIVE_P (mru_window)
> -        && EQ (XWINDOW (mru_window)->frame, frame))
> -      new_selected_window = mru_window;
> -
> -    /* If all ended up well, we now promote the mru window.  */
> -    if (EQ (FRAME_SELECTED_WINDOW (f), selected_window))
> -      Fselect_window (new_selected_window, Qnil);
> -    else
> -      fset_selected_window (f, new_selected_window);

I doubt that anything has changed here - the Emacs 27 code didn't select
the minibuffer window either.  What has changed, however, is the value
of the 'quit-restore' parameter of the *Completions* window.  With Emacs
27 it was a a quadruple whose third element was the minibuffer window
which subsequently got selected.  With Emacs 28 it is nil.

martin





reply via email to

[Prev in Thread] Current Thread [Next in Thread]