summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lisp/ChangeLog30
-rw-r--r--lisp/buff-menu.el12
-rw-r--r--lisp/mail/reporter.el9
-rw-r--r--lisp/mail/sendmail.el20
-rw-r--r--lisp/progmodes/compile.el5
-rw-r--r--lisp/progmodes/gdb-mi.el10
-rw-r--r--lisp/progmodes/gud.el17
-rw-r--r--lisp/progmodes/python.el1
-rw-r--r--lisp/replace.el15
-rw-r--r--lisp/textmodes/bibtex.el6
-rw-r--r--lisp/window.el7
11 files changed, 58 insertions, 74 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 1a997152194..50ae33a7d6e 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,5 +1,35 @@
2011-09-10 Chong Yidong <cyd@stupidchicken.com>
+ * buff-menu.el (Buffer-menu-switch-other-window): Use second arg
+ of display-buffer.
+ (Buffer-menu-2-window): Use switch-to-buffer-other-window.
+
+ * replace.el (occur-mode-goto-occurrence)
+ (occur-mode-display-occurrence) Use second arg of pop-to-buffer
+ and display-buffer.
+
+ * mail/reporter.el (reporter-submit-bug-report): Use second arg of
+ display-buffer.
+
+ * mail/sendmail.el (sendmail-user-agent-compose): Don't bind the
+ special-display and same-window variables.
+ (mail-other-window): Use switch-to-buffer-other-window.
+ (mail-other-frame): USe switch-to-buffer-other-frame.
+
+ * progmodes/gdb-mi.el (gdb-frame-gdb-buffer): Use
+ display-buffer-other-frame.
+ (gdb-display-gdb-buffer): Use pop-to-buffer.
+
+ * progmodes/gud.el (gud-goto-info): Use info-other-window.
+
+ * progmodes/python.el: Don't set same-window-buffer-names.
+
+ * textmodes/bibtex.el (bibtex-search-entry): Use switch-to-buffer.
+
+ * window.el (display-buffer-alist): Add *Python*.
+
+2011-09-10 Chong Yidong <cyd@stupidchicken.com>
+
* window.el (display-buffer-alist): Add entry for buffers
previously handled same-window-*.
(display-buffer-alist, display-buffer-default-action)
diff --git a/lisp/buff-menu.el b/lisp/buff-menu.el
index 2be74cf5efb..d757453c051 100644
--- a/lisp/buff-menu.el
+++ b/lisp/buff-menu.el
@@ -586,22 +586,16 @@ in the selected frame."
"Make the other window select this line's buffer.
The current window remains selected."
(interactive)
- (let ((pop-up-windows t)
- same-window-buffer-names
- same-window-regexps)
- (display-buffer (Buffer-menu-buffer t))))
+ (display-buffer (Buffer-menu-buffer t) t))
(defun Buffer-menu-2-window ()
"Select this line's buffer, with previous buffer in second window."
(interactive)
(let ((buff (Buffer-menu-buffer t))
- (menu (current-buffer))
- (pop-up-windows t)
- same-window-buffer-names
- same-window-regexps)
+ (menu (current-buffer)))
(delete-other-windows)
(switch-to-buffer (other-buffer))
- (pop-to-buffer buff)
+ (switch-to-buffer-other-window buff)
(bury-buffer menu)))
(defun Buffer-menu-toggle-read-only ()
diff --git a/lisp/mail/reporter.el b/lisp/mail/reporter.el
index 45700d4d60d..6c5448aca83 100644
--- a/lisp/mail/reporter.el
+++ b/lisp/mail/reporter.el
@@ -332,12 +332,11 @@ mail-sending package is used for editing and sending the message."
hookvar)
;; do the work
(require 'sendmail)
+ ;; Just in case the original buffer is not visible now, bring it
+ ;; back somewhere
+ (display-buffer reporter-eval-buffer)
;; If mailbuf did not get made visible before, make it visible now.
- (let (same-window-buffer-names same-window-regexps)
- (pop-to-buffer mailbuf)
- ;; Just in case the original buffer is not visible now, bring it
- ;; back somewhere
- (and pop-up-windows (display-buffer reporter-eval-buffer)))
+ (pop-to-buffer mailbuf)
(goto-char (point-min))
(mail-position-on-field "to")
(insert address)
diff --git a/lisp/mail/sendmail.el b/lisp/mail/sendmail.el
index 4dc96176256..6e5c9a6b257 100644
--- a/lisp/mail/sendmail.el
+++ b/lisp/mail/sendmail.el
@@ -565,11 +565,7 @@ To change your decision later, customize `send-mail-function'.\n")
send-actions return-action
&rest ignored)
(if switch-function
- (let ((special-display-buffer-names nil)
- (special-display-regexps nil)
- (same-window-buffer-names nil)
- (same-window-regexps nil))
- (funcall switch-function "*mail*")))
+ (funcall switch-function "*mail*"))
(let ((cc (cdr (assoc-string "cc" other-headers t)))
(in-reply-to (cdr (assoc-string "in-reply-to" other-headers t)))
(body (cdr (assoc-string "body" other-headers t))))
@@ -1966,24 +1962,14 @@ you can move to one of them and type C-c C-c to recover that one."
(defun mail-other-window (&optional noerase to subject in-reply-to cc replybuffer sendactions)
"Like `mail' command, but display mail buffer in another window."
(interactive "P")
- (let ((pop-up-windows t)
- (special-display-buffer-names nil)
- (special-display-regexps nil)
- (same-window-buffer-names nil)
- (same-window-regexps nil))
- (pop-to-buffer "*mail*"))
+ (switch-to-buffer-other-window "*mail*")
(mail noerase to subject in-reply-to cc replybuffer sendactions))
;;;###autoload
(defun mail-other-frame (&optional noerase to subject in-reply-to cc replybuffer sendactions)
"Like `mail' command, but display mail buffer in another frame."
(interactive "P")
- (let ((pop-up-frames t)
- (special-display-buffer-names nil)
- (special-display-regexps nil)
- (same-window-buffer-names nil)
- (same-window-regexps nil))
- (pop-to-buffer "*mail*"))
+ (switch-to-buffer-other-frame "*mail*")
(mail noerase to subject in-reply-to cc replybuffer sendactions))
;; Do not add anything but external entries on this page.
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el
index cd891a8df60..619c423902c 100644
--- a/lisp/progmodes/compile.el
+++ b/lisp/progmodes/compile.el
@@ -2408,9 +2408,8 @@ and overlay is highlighted between MK and END-MK."
;; also do this while we change buffer
(compilation-set-window w msg)
compilation-highlight-regexp)))
- ;; Ideally, the window-size should be passed to `display-buffer' (via
- ;; something like special-display-buffer) so it's only used when
- ;; creating a new window.
+ ;; Ideally, the window-size should be passed to `display-buffer'
+ ;; so it's only used when creating a new window.
(unless pre-existing (compilation-set-window-height w))
(if from-compilation-buffer
diff --git a/lisp/progmodes/gdb-mi.el b/lisp/progmodes/gdb-mi.el
index 87209a78ffb..d55a9eed3f0 100644
--- a/lisp/progmodes/gdb-mi.el
+++ b/lisp/progmodes/gdb-mi.el
@@ -3980,18 +3980,12 @@ SPLIT-HORIZONTAL and show BUF in the new window."
(defun gdb-frame-gdb-buffer ()
"Display GUD buffer in a new frame."
(interactive)
- (let ((special-display-regexps (append special-display-regexps '(".*")))
- (special-display-frame-alist
- (remove '(menu-bar-lines) (remove '(tool-bar-lines)
- gdb-frame-parameters)))
- (same-window-regexps nil))
- (display-buffer gud-comint-buffer)))
+ (display-buffer-other-frame gud-comint-buffer))
(defun gdb-display-gdb-buffer ()
"Display GUD buffer."
(interactive)
- (let ((same-window-regexps nil))
- (select-window (display-buffer gud-comint-buffer nil 0))))
+ (pop-to-buffer gud-comint-buffer nil 0))
(defun gdb-set-window-buffer (name &optional ignore-dedicated window)
"Set buffer of selected window to NAME and dedicate window.
diff --git a/lisp/progmodes/gud.el b/lisp/progmodes/gud.el
index 3c7addee3b8..534082544b6 100644
--- a/lisp/progmodes/gud.el
+++ b/lisp/progmodes/gud.el
@@ -112,20 +112,9 @@ Used to grey out relevant toolbar icons.")
(defun gud-goto-info ()
"Go to relevant Emacs info node."
(interactive)
- (let ((same-window-regexps same-window-regexps)
- (display-buffer-reuse-frames t))
- (catch 'info-found
- (walk-windows
- (lambda (window)
- (if (eq (window-buffer window) (get-buffer "*info*"))
- (progn
- (setq same-window-regexps nil)
- (throw 'info-found nil))))
- nil 0)
- (select-frame (make-frame)))
- (if (eq gud-minor-mode 'gdbmi)
- (info "(emacs)GDB Graphical Interface")
- (info "(emacs)Debuggers"))))
+ (if (eq gud-minor-mode 'gdbmi)
+ (info-other-window "(emacs)GDB Graphical Interface")
+ (info-other-window "(emacs)Debuggers")))
(defun gud-tool-bar-item-visible-no-fringe ()
(not (or (eq (buffer-local-value 'major-mode (window-buffer)) 'speedbar-mode)
diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el
index 3f923f496b9..38bf9552b2a 100644
--- a/lisp/progmodes/python.el
+++ b/lisp/progmodes/python.el
@@ -86,7 +86,6 @@
(add-to-list 'interpreter-mode-alist (cons (purecopy "python") 'python-mode))
;;;###autoload
(add-to-list 'auto-mode-alist (cons (purecopy "\\.py\\'") 'python-mode))
-(add-to-list 'same-window-buffer-names (purecopy "*Python*"))
;;;; Font lock
diff --git a/lisp/replace.el b/lisp/replace.el
index fb98a714dff..ee430fd9855 100644
--- a/lisp/replace.el
+++ b/lisp/replace.el
@@ -928,7 +928,7 @@ To return to ordinary Occur mode, use \\[occur-mode]."
(defalias 'occur-mode-mouse-goto 'occur-mode-goto-occurrence)
(defun occur-mode-goto-occurrence (&optional event)
- "Go to the occurrence the current line describes."
+ "Go to the occurrence on the current line."
(interactive (list last-nonmenu-event))
(let ((pos
(if (null event)
@@ -939,10 +939,8 @@ To return to ordinary Occur mode, use \\[occur-mode]."
(with-current-buffer (window-buffer (posn-window (event-end event)))
(save-excursion
(goto-char (posn-point (event-end event)))
- (occur-mode-find-occurrence)))))
- same-window-buffer-names
- same-window-regexps)
- (pop-to-buffer (marker-buffer pos))
+ (occur-mode-find-occurrence))))))
+ (pop-to-buffer (marker-buffer pos) t)
(goto-char pos)
(run-hooks 'occur-mode-find-occurrence-hook)))
@@ -958,11 +956,8 @@ To return to ordinary Occur mode, use \\[occur-mode]."
"Display in another window the occurrence the current line describes."
(interactive)
(let ((pos (occur-mode-find-occurrence))
- window
- ;; Bind these to ensure `display-buffer' puts it in another window.
- same-window-buffer-names
- same-window-regexps)
- (setq window (display-buffer (marker-buffer pos)))
+ window)
+ (setq window (display-buffer (marker-buffer pos) t))
;; This is the way to set point in the proper window.
(save-selected-window
(select-window window)
diff --git a/lisp/textmodes/bibtex.el b/lisp/textmodes/bibtex.el
index 0383251523f..3efb2f158c0 100644
--- a/lisp/textmodes/bibtex.el
+++ b/lisp/textmodes/bibtex.el
@@ -4038,10 +4038,8 @@ A prefix arg negates the value of `bibtex-search-entry-globally'."
;; `bibtex-search-entry' moves point if key found
(setq found (bibtex-search-entry key)))))
(cond ((and found display)
- (let ((same-window-buffer-names
- (cons (buffer-name buffer) same-window-buffer-names)))
- (pop-to-buffer buffer)
- (bibtex-reposition-window)))
+ (switch-to-buffer buffer)
+ (bibtex-reposition-window))
(found (set-buffer buffer))
(display (message "Key `%s' not found" key)))
found)
diff --git a/lisp/window.el b/lisp/window.el
index 2afd608907d..72cad635ab5 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -4499,8 +4499,9 @@ BUFFER-OR-NAME and return that buffer."
(current-buffer)))
(defvar display-buffer-alist
- '(("\\`\\*\\(scheme\\|ielm\\|shell\\|\\(unsent \\)?mail\\|inferior-lisp\
-\\|Customiz.*\\|info\\|rlogin-.*\\|telnet-.*\\|rsh-.*\\|gud-.*\\)\\*\\(<[0-9]+>\\)?"
+ '(("\\`\\*\\(scheme\\|ielm\\|shell\\|\\(unsent \\)?mail\\|\
+inferior-lisp\\|Python\\|Customiz.*\\|info\\|rlogin-.*\\|\
+telnet-.*\\|rsh-.*\\|gud-.*\\)\\*\\(<[0-9]+>\\)?"
. (display-buffer-same-window)))
"Alist of conditional actions for `display-buffer'.
This is a list of elements (CONDITION . ACTION), where:
@@ -4565,7 +4566,7 @@ the same form as ALIST. See `display-buffer' for details.")
(put 'display-buffer--other-frame-action 'risky-local-variable t)
(defun display-buffer (&optional buffer-or-name action frame)
- "Display BUFFER-OR-NAME in some window.
+ "Display BUFFER-OR-NAME in some window, without selecting it.
BUFFER-OR-NAME must be a buffer or the name of an existing
buffer. Return the window chosen for displaying BUFFER-OR-NAME,
or nil if no such window is found.