Mercurial > emacs
diff lisp/simple.el @ 83256:389421e988c2
Merged from miles@gnu.org--gnu-2005 (patch 17-26, 107-116)
Patches applied:
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-107
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-108
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-109
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-110
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-111
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-112
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-113
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-114
<no summary provided>
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-115
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-116
Update from CVS
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-17
Update from CVS
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-18
Update from CVS
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-19
Update from CVS
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-20
Merge from emacs--cvs-trunk--0
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-21
More work on moving images to etc/images
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-22
Update from CVS
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-23
Fix errors with image-file installation
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-24
etc/Makefile.in (install): Put gnus-tut.txt in the right place.
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-25
etc/Makefile.in (install, uninstall): Fix installed image dirs.
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-26
etc/Makefile.in (install): Create $(etcdir)/images/gnus dir.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-296
author | Karoly Lorentey <lorentey@elte.hu> |
---|---|
date | Sun, 20 Feb 2005 18:47:54 +0000 |
parents | c0215e820840 9440f8bb9f71 |
children | 1f334cdd7020 |
line wrap: on
line diff
--- a/lisp/simple.el Sat Feb 19 00:06:48 2005 +0000 +++ b/lisp/simple.el Sun Feb 20 18:47:54 2005 +0000 @@ -3162,12 +3162,12 @@ (let ((abbrev-mode nil)) (end-of-line) (insert "\n")) - (line-move arg)) + (line-move arg nil nil t)) (if (interactive-p) (condition-case nil - (line-move arg) + (line-move arg nil nil t) ((beginning-of-buffer end-of-buffer) (ding))) - (line-move arg))) + (line-move arg nil nil t))) nil) (defun previous-line (&optional arg) @@ -3190,9 +3190,9 @@ (or arg (setq arg 1)) (if (interactive-p) (condition-case nil - (line-move (- arg)) + (line-move (- arg) nil nil t) ((beginning-of-buffer end-of-buffer) (ding))) - (line-move (- arg))) + (line-move (- arg) nil nil t)) nil) (defcustom track-eol nil @@ -3231,8 +3231,8 @@ (assq prop buffer-invisibility-spec))))) ;; Perform vertical scrolling of tall images if necessary. -(defun line-move (arg &optional noerror to-end) - (if auto-window-vscroll +(defun line-move (arg &optional noerror to-end try-vscroll) + (if (and auto-window-vscroll try-vscroll) (let ((forward (> arg 0)) (part (nth 2 (pos-visible-in-window-p (point) nil t)))) (if (and (consp part) @@ -3248,7 +3248,14 @@ (* (frame-char-height) (- arg)))))) t) (set-window-vscroll nil 0) - (line-move-1 arg noerror to-end))) + (when (line-move-1 arg noerror to-end) + (sit-for 0) + (if (and (not forward) + (setq part (nth 2 (pos-visible-in-window-p + (line-beginning-position) nil t))) + (> (cdr part) 0)) + (set-window-vscroll nil (cdr part) t)) + t))) (line-move-1 arg noerror to-end))) ;; This is the guts of next-line and previous-line.