]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix vertical cursor motion in pixel-scroll.el
authorTak Kunihiro <tkk@misasa.okayama-u.ac.jp>
Fri, 1 Dec 2017 08:54:37 +0000 (10:54 +0200)
committerEli Zaretskii <eliz@gnu.org>
Fri, 1 Dec 2017 08:54:37 +0000 (10:54 +0200)
* lisp/pixel-scroll.el (pixel-scroll-up): Move cursor down
regardless of whether EOB is shown at the top.
(pixel-scroll-down) Move cursor up regardless of whether BOB
is shown at the top.  (Bug#29374)

lisp/pixel-scroll.el

index 9bfe5c91f57b3d68d95a2ad5878c106e1bc24669..f64a4392b49a9619ed0bc56966403669603aefd5 100644 (file)
@@ -110,11 +110,11 @@ This is an alternative of `scroll-up'.  Scope moves downward."
                        pixel-resolution-fine-flag
                      (frame-char-height))
                  (pixel-line-height))))
-      (if (pixel-eob-at-top-p)            ; when end-of-the-buffer is close
-          (scroll-up 1)                   ; relay on robust method
-        (while (pixel-point-at-top-p amt) ; prevent too late (multi tries)
-          (vertical-motion 1))            ; move point downward
-        (pixel-scroll-pixel-up amt)))))   ; move scope downward
+      (while (pixel-point-at-top-p amt) ; prevent too late (multi tries)
+        (vertical-motion 1))            ; move point downward
+      (if (pixel-eob-at-top-p)          ; when end-of-the-buffer is close
+          (scroll-up 1)                 ; relay on robust method
+        (pixel-scroll-pixel-up amt))))) ; move scope downward
 
 (defun pixel-scroll-down (&optional arg)
   "Scroll text of selected window down ARG lines.
@@ -127,11 +127,11 @@ This is and alternative of `scroll-down'.  Scope moves upward."
                        pixel-resolution-fine-flag
                      (frame-char-height))
                  (pixel-line-height -1))))
-      (if (or (pixel-bob-at-top-p amt) ; when beginning-of-the-buffer is seen
-              (pixel-eob-at-top-p))    ; for file with a long line
-          (scroll-down 1)              ; relay on robust method
-        (while (pixel-point-at-bottom-p amt) ; prevent too late (multi tries)
-          (vertical-motion -1))
+      (while (pixel-point-at-bottom-p amt) ; prevent too late (multi tries)
+        (vertical-motion -1))              ; move point upward
+      (if (or (pixel-bob-at-top-p amt)     ; when beginning-of-the-buffer is seen
+              (pixel-eob-at-top-p))        ; for file with a long line
+          (scroll-down 1)                  ; relay on robust method
         (pixel-scroll-pixel-down amt)))))
 
 (defun pixel-bob-at-top-p (amt)