diff options
author | Eli Zaretskii <eliz@gnu.org> | 2011-03-29 21:58:13 +0200 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2011-03-29 21:58:13 +0200 |
commit | 492001e973aa9cbd43f213d12b9ea2717b306b9b (patch) | |
tree | e466e2e46e0880ad66b5d05e762d70903ea59349 | |
parent | 9f3842cef7423e3ce6f75721284e6351f3a200e5 (diff) | |
download | emacs-492001e973aa9cbd43f213d12b9ea2717b306b9b.tar.gz |
Fix off-by-one in scroll down aggressively.
src/xdisp.c (try_scrolling): When scrolling down aggressively,
scroll one screen line less, to make sure we end up at the margin
for fractions close to 1.
-rw-r--r-- | src/ChangeLog | 6 | ||||
-rw-r--r-- | src/xdisp.c | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index cb9096a5a5c..dda98bc73a7 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2011-03-29 Eli Zaretskii <eliz@gnu.org> + + * xdisp.c (try_scrolling): When scrolling down aggressively, + scroll one screen line less, to make sure we end up at the margin + for fractions close to 1. + 2011-03-28 Eli Zaretskii <eliz@gnu.org> * xdisp.c (try_scrolling): When point is above the window, allow diff --git a/src/xdisp.c b/src/xdisp.c index 871d070ed31..7983c118134 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -13212,7 +13212,8 @@ try_scrolling (Lisp_Object window, int just_this_one_p, amount_to_scroll = float_amount; if (amount_to_scroll == 0 && float_amount > 0) amount_to_scroll = 1; - amount_to_scroll -= this_scroll_margin - dy; + amount_to_scroll -= + this_scroll_margin - dy - FRAME_LINE_HEIGHT (f); /* Don't let point enter the scroll margin near bottom of the window. */ if (amount_to_scroll > height - 2*this_scroll_margin + dy) |