[Top][All Lists]
[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: |
Mon, 18 Sep 2006 11:13:05 +0000 |
CVSROOT: /cvsroot/emacs
Module name: emacs
Changes by: Kim F. Storm <kfstorm> 06/09/18 11:13:04
Index: simple.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/simple.el,v
retrieving revision 1.822
retrieving revision 1.823
diff -u -b -r1.822 -r1.823
--- simple.el 16 Sep 2006 14:19:31 -0000 1.822
+++ simple.el 18 Sep 2006 11:13:04 -0000 1.823
@@ -3487,29 +3487,30 @@
(set-window-vscroll nil (- vs (frame-char-height)) t)))
;; Move forward (down).
- (let ((wvis (window-line-visibility)))
- (when (or (null wvis)
- (and (consp wvis)
- (or (>= (car wvis) (frame-char-height))
- (>= (cdr wvis) (frame-char-height)))))
+ (let* ((lh (window-line-height -1))
+ (vpos (nth 1 lh))
+ (ypos (nth 2 lh))
+ (rbot (nth 3 lh))
+ ppos py vs)
+ (when (or (null lh)
+ (>= rbot (frame-char-height))
+ (<= ypos (- (frame-char-height))))
+ (unless lh
(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)
+ (pos-visible-in-window-p (1- wend) nil t))))
+ (setq rbot (nth 3 evis)
+ vpos (nth 5 evis))))
(cond
- ;; Last window line should be visible - fail if not.
- ((null evis)
- nil)
;; If last line of window is fully visible, move forward.
- ((null rbot)
+ ((or (null rbot) (= rbot 0))
nil)
;; If cursor is not in the bottom scroll margin, move forward.
- ((< (setq ppos (posn-at-point)
+ ((and (> vpos 0)
+ (< (setq ppos (posn-at-point)
py (cdr (or (posn-actual-col-row ppos)
(posn-col-row ppos))))
- (min (- (window-text-height) scroll-margin 1) (1- vpos)))
+ (min (- (window-text-height) scroll-margin 1) (1- vpos))))
nil)
;; When already vscrolled, we vscroll some more if we can,
;; or clear vscroll and move forward at end of tall image.
@@ -3518,8 +3519,9 @@
(set-window-vscroll nil (+ vs (min rbot (frame-char-height))) t)))
;; If cursor just entered the bottom scroll margin, move forward,
;; but also vscroll one line so redisplay wont recenter.
- ((= py (min (- (window-text-height) scroll-margin 1)
- (1- vpos)))
+ ((and (> vpos 0)
+ (= py (min (- (window-text-height) scroll-margin 1)
+ (1- vpos))))
(set-window-vscroll nil (frame-char-height) t)
(line-move-1 arg noerror to-end)
t)
@@ -3529,7 +3531,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
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Richard M. Stallman, 2006/09/04
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, John Paul Wallington, 2006/09/04
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Kim F. Storm, 2006/09/05
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Richard M. Stallman, 2006/09/11
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Kim F. Storm, 2006/09/11
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Kim F. Storm, 2006/09/13
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Richard M. Stallman, 2006/09/14
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Kim F. Storm, 2006/09/15
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Chong Yidong, 2006/09/16
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Chong Yidong, 2006/09/16
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v,
Kim F. Storm <=
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Kim F. Storm, 2006/09/19
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Chong Yidong, 2006/09/19
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Kim F. Storm, 2006/09/20
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Richard M. Stallman, 2006/09/24
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Chong Yidong, 2006/09/24
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Chong Yidong, 2006/09/29
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Eli Zaretskii, 2006/09/30