]> git.eshelyaron.com Git - emacs.git/commitdiff
(window_scroll_pixel_based): Force moving to next line
authorKim F. Storm <storm@cua.dk>
Sun, 23 Jan 2005 00:50:24 +0000 (00:50 +0000)
committerKim F. Storm <storm@cua.dk>
Sun, 23 Jan 2005 00:50:24 +0000 (00:50 +0000)
if scrolling doesn't move start point, e.g. if looking at tall image.

src/window.c

index 85376dd7b50a7942141ae5d4d440ed2e47e51791..ef3d38c15544ba8e0928807244fbc12deda03fe4 100644 (file)
@@ -4628,8 +4628,16 @@ window_scroll_pixel_based (window, n, whole, noerror)
       if (dy <= 0)
        move_it_vertically_backward (&it, -dy);
       else if (dy > 0)
-       move_it_to (&it, ZV, -1, it.current_y + dy, -1,
-                   MOVE_TO_POS | MOVE_TO_Y);
+       {
+         int start_pos = IT_CHARPOS (it);
+         move_it_to (&it, ZV, -1, it.current_y + dy, -1,
+                     MOVE_TO_POS | MOVE_TO_Y);
+         /* Ensure we actually does move, e.g. in case we are currently
+            looking at an image that is taller that the window height.  */
+         while (start_pos == IT_CHARPOS (it)
+                && start_pos < ZV)
+           move_it_by_lines (&it, 1, 1);
+       }
     }
   else
     move_it_by_lines (&it, n, 1);