emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] Changes to emacs/lisp/simple.el,v


From: Kim F. Storm
Subject: [Emacs-diffs] Changes to emacs/lisp/simple.el,v
Date: Fri, 15 Sep 2006 21:04:39 +0000

CVSROOT:        /cvsroot/emacs
Module name:    emacs
Changes by:     Kim F. Storm <kfstorm>  06/09/15 21:04:39

Index: simple.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/simple.el,v
retrieving revision 1.819
retrieving revision 1.820
diff -u -b -r1.819 -r1.820
--- simple.el   14 Sep 2006 23:55:31 -0000      1.819
+++ simple.el   15 Sep 2006 21:04:39 -0000      1.820
@@ -3487,8 +3487,14 @@
          (set-window-vscroll nil (- vs (frame-char-height)) t)))
 
     ;; Move forward (down).
-    (let* ((evis (or (pos-visible-in-window-p (window-end nil t) nil t)
-                    (pos-visible-in-window-p (1- (window-end nil t)) nil t)))
+    (let ((wvis (window-line-visibility)))
+      (when (or (null wvis)
+               (and (consp wvis)
+                    (or (>= (car wvis) (frame-char-height))
+                        (>= (cdr wvis) (frame-char-height)))))
+       (let* ((wend (window-end nil t))
+              (evis (or (pos-visible-in-window-p wend nil t)
+                        (pos-visible-in-window-p (1- wend) nil t)))
           (rbot (nth 3 evis))
           (vpos (nth 5 evis))
           ppos py vs)
@@ -3523,7 +3529,7 @@
        t)
        ;; Finally, start vscroll.
        (t
-       (set-window-vscroll nil (frame-char-height) t))))))
+           (set-window-vscroll nil (frame-char-height) t))))))))
 
 
 ;; This is like line-move-1 except that it also performs




reply via email to

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