]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/window.el (quit-restore-window): Select previously selected window.
authorJuri Linkov <juri@linkov.net>
Tue, 21 Dec 2021 19:11:30 +0000 (21:11 +0200)
committerJuri Linkov <juri@linkov.net>
Tue, 21 Dec 2021 19:11:30 +0000 (21:11 +0200)
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).

lisp/window.el

index d12232641e368e0c9d5f4b9f566a36f6b8b3ba81..ce1e609874828c56aed84b9f87e9f4ed4d6161cd 100644 (file)
@@ -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))