summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorMartin Rudalics <rudalics@gmx.at>2009-05-15 15:00:32 +0000
committerMartin Rudalics <rudalics@gmx.at>2009-05-15 15:00:32 +0000
commit19998f14b67de66754081cacdbca5668680c41ba (patch)
tree5015902a38ed86ad74b6c0ce2e083b61edb7cec0 /lisp
parenta96da3ab42a7f3854522a368b0e585d4d30cb72d (diff)
downloademacs-19998f14b67de66754081cacdbca5668680c41ba.tar.gz
(dired-pop-to-buffer): Try to make this behave the
Emacs 22 way (Bug#1806).
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog5
-rw-r--r--lisp/dired.el10
2 files changed, 13 insertions, 2 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 78f960f1172..e7e011147c1 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
+2009-05-15 Martin Rudalics <rudalics@gmx.at>
+
+ * dired.el (dired-pop-to-buffer): Try to make this behave the
+ Emacs 22 way (Bug#1806).
+
2009-05-14 Chong Yidong <cyd@stupidchicken.com>
* frame.el (minibuffer-frame-alist): Doc fix (Bug#3276).
diff --git a/lisp/dired.el b/lisp/dired.el
index 087a05f3de4..0ccf4b128c4 100644
--- a/lisp/dired.el
+++ b/lisp/dired.el
@@ -2686,8 +2686,14 @@ name, or the marker and a count of marked files."
(defun dired-pop-to-buffer (buf)
"Pop up buffer BUF in a way suitable for Dired."
- ;; Don't split window horizontally. (Bug#1806)
- (let (split-width-threshold)
+ (let ((split-window-preferred-function
+ (lambda (window)
+ (or (and (window-splittable-p (selected-window))
+ ;; Try to split the selected window vertically if
+ ;; that's possible. (Bug#1806)
+ (split-window-vertically))
+ ;; Otherwise, try to split WINDOW sensibly.
+ (split-window-sensibly window)))))
(pop-to-buffer (get-buffer-create buf)))
;; If dired-shrink-to-fit is t, make its window fit its contents.
(when dired-shrink-to-fit