[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#12281: 24.1.50; [PATCH] regression: `dired-pop-to-buffer': `set-wind

From: Drew Adams
Subject: bug#12281: 24.1.50; [PATCH] regression: `dired-pop-to-buffer': `set-window-start' to 1
Date: Sat, 25 Aug 2012 21:53:37 -0700

This regression was introduced in Emacs 23.
Prior to Emacs 23, `dired-pop-to-buffer' had a more complex definition,
which included calling `set-window-start' for the displayed window,
setting the value to 1, to move to the buffer beginning.
Now, at least for the case where the buffer is popped up in a separate
frame (which is my case), the end of the buffer is shown, not the
beginning.  For example, if I use `C' to copy many files, the file list
shows up in a separate frame, but the window is scrolled so I see only
the end, not the beginning, of the buffer.
Please add this line before the call to `when':
(set-window-start (selected-window) 1)
That fixes things.  Here is the whole, patched definition.
(defun dired-pop-to-buffer (buf)
  "Pop up buffer BUF in a way suitable for Dired."
  (let ((split-window-preferred-function
  (lambda (window)
    (or (and (let ((split-height-threshold 0))
        (window-splittable-p (selected-window)))
      ;; Try to split the selected window vertically if
      ;; that's possible.  (Bug#1806)
        ;; Otherwise, try to split WINDOW sensibly.
        (split-window-sensibly window))))
    (pop-to-buffer (get-buffer-create buf)))
  (set-window-start (selected-window) 1)
  ;; If dired-shrink-to-fit is t, make its window fit its contents.
  (when dired-shrink-to-fit
    ;; Try to not delete window when we want to display less than
    ;; `window-min-height' lines.
    (fit-window-to-buffer (get-buffer-window buf) nil 1)))

In GNU Emacs (i386-mingw-nt5.1.2600)
 of 2012-08-13 on MARVIN
Bzr revision: 109584 address@hidden
Windowing system distributor `Microsoft Corp.', version 5.1.2600
Configured using:
 `configure --with-gcc (4.6) --no-opt --enable-checking --cflags

reply via email to

[Prev in Thread] Current Thread [Next in Thread]