diff options
-rw-r--r-- | lisp/ChangeLog | 5 | ||||
-rw-r--r-- | lisp/window.el | 9 |
2 files changed, 9 insertions, 5 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index cfa2035db91..ceef0b7f9b2 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2011-09-23 Chong Yidong <cyd@stupidchicken.com> + + * window.el (pop-to-buffer): Ensure right window is selected if we + chose another frame. + 2011-09-22 Eli Zaretskii <eliz@gnu.org> * simple.el (what-cursor-position): Use get-char-property-change diff --git a/lisp/window.el b/lisp/window.el index fb74c439247..8a72c28f894 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -4853,12 +4853,11 @@ at the front of the list of recently selected ones." (old-frame (selected-frame)) (window (display-buffer buffer action)) (frame (window-frame window))) - (if (eq frame old-frame) - ;; Make sure new window is selected (Bug#8615), (Bug#6954). - (select-window window norecord) - ;; If `display-buffer' has chosen another frame, make sure it - ;; gets input focus. + ;; If we chose another frame, make sure it gets input focus. + (unless (eq frame old-frame) (select-frame-set-input-focus frame norecord)) + ;; Make sure new window is selected (Bug#8615), (Bug#6954). + (select-window window norecord) buffer)) (defun pop-to-buffer-same-window (buffer &optional norecord) |