+2012-03-21 Sam Steingold <sds@gnu.org>
+
+ * window.el (switch-to-prev-buffer): Do not switch to a visible
+ window previous buffer, just like with the frame previous buffers.
+
2012-03-21 Chong Yidong <cyd@gnu.org>
* faces.el (make-face, make-empty-face, copy-face):
(not (setq killed-buffers
(cons new-buffer killed-buffers))))
(not (eq new-buffer old-buffer))
- (or bury-or-kill
+ (or bury-or-kill
(not (memq new-buffer next-buffers))))
- (set-window-buffer-start-and-point
- window new-buffer (nth 1 entry) (nth 2 entry))
- (throw 'found t)))
+ (if (get-buffer-window new-buffer)
+ ;; Try to avoid showing a buffer visible in some other window.
+ (setq visible new-buffer)
+ (set-window-buffer-start-and-point
+ window new-buffer (nth 1 entry) (nth 2 entry))
+ (throw 'found t))))
;; Scan reverted buffer list of WINDOW's frame next, skipping
;; entries of next buffers. Note that when we bury or kill a
;; buffer we don't reverse the global buffer list to avoid showing