diff options
author | Juri Linkov <juri@linkov.net> | 2021-12-21 21:11:30 +0200 |
---|---|---|
committer | Juri Linkov <juri@linkov.net> | 2021-12-21 21:11:30 +0200 |
commit | 9bcb7326860ed8b234f8ffd8bceae866b968ff39 (patch) | |
tree | 2f56c825a6b08ff164f79566a80b09c59bce26ec | |
parent | b7d31d619247d1299d8a361945dddac8659811ee (diff) | |
download | emacs-9bcb7326860ed8b234f8ffd8bceae866b968ff39.tar.gz |
* lisp/window.el (quit-restore-window): Select previously selected window.
After deleting the dedicated window, such as a window with *Completions*
buffer, select the previously selected window, like most of other 'cond'
branches do in this function (bug#52491).
-rw-r--r-- | lisp/window.el | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lisp/window.el b/lisp/window.el index d12232641e3..ce1e6098748 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -5167,7 +5167,10 @@ nil means to not handle the buffer in a particular way. This (cond ;; First try to delete dedicated windows that are not side windows. ((and dedicated (not (eq dedicated 'side)) - (window--delete window 'dedicated (eq bury-or-kill 'kill)))) + (window--delete window 'dedicated (eq bury-or-kill 'kill))) + ;; If the previously selected window is still alive, select it. + (when (window-live-p (nth 2 quit-restore)) + (select-window (nth 2 quit-restore)))) ((and (not prev-buffer) (eq (nth 1 quit-restore) 'tab) (eq (nth 3 quit-restore) buffer)) |