mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-11-21 06:55:39 +00:00
Fix subtle problem with scroll-down when scroll-margin is nonzero
* src/window.c (window_scroll_pixel_based): Account for scroll-margin when scrolling down, i.e. moving window-start towards the beginning of the buffer. Reported by zhang cc <ccsmile2008@outlook.com> in http://lists.gnu.org/archive/html/emacs-devel/2017-12/msg00894.html.
This commit is contained in:
parent
acd289c5a4
commit
0c78822c70
@ -5397,12 +5397,13 @@ window_scroll_pixel_based (Lisp_Object window, int n, bool whole, bool noerror)
|
|||||||
if (it.what == IT_EOB)
|
if (it.what == IT_EOB)
|
||||||
partial_p =
|
partial_p =
|
||||||
it.current_y + it.ascent + it.descent
|
it.current_y + it.ascent + it.descent
|
||||||
> it.last_visible_y - WINDOW_HEADER_LINE_HEIGHT (w);
|
> it.last_visible_y - this_scroll_margin - WINDOW_HEADER_LINE_HEIGHT (w);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
move_it_by_lines (&it, 1);
|
move_it_by_lines (&it, 1);
|
||||||
partial_p =
|
partial_p =
|
||||||
it.current_y > it.last_visible_y - WINDOW_HEADER_LINE_HEIGHT (w);
|
it.current_y
|
||||||
|
> it.last_visible_y - this_scroll_margin - WINDOW_HEADER_LINE_HEIGHT (w);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (charpos == PT && !partial_p
|
if (charpos == PT && !partial_p
|
||||||
|
Loading…
Reference in New Issue
Block a user