From: Eli Zaretskii Date: Thu, 13 Jan 2022 12:21:10 +0000 (+0200) Subject: Improve preserving X coordinate during scroll commands X-Git-Tag: emacs-29.0.90~3093 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=8ec475e558dcd0ebde213d8a73f09574e8b4d00a;p=emacs.git Improve preserving X coordinate during scroll commands * src/window.c (window_scroll_pixel_based): Don't unnecessarily move the iterator. (Bug#53220) --- diff --git a/src/window.c b/src/window.c index 7155f0e6bc3..2a5e4042a48 100644 --- a/src/window.c +++ b/src/window.c @@ -5861,7 +5861,8 @@ window_scroll_pixel_based (Lisp_Object window, int n, bool whole, bool noerror) /* We moved the window start towards ZV, so PT may be now in the scroll margin at the top. */ - move_it_to (&it, PT, -1, -1, -1, MOVE_TO_POS); + if (IT_CHARPOS (it) < PT) + move_it_to (&it, PT, -1, -1, -1, MOVE_TO_POS); if (IT_CHARPOS (it) == PT && it.current_y >= this_scroll_margin && it.current_y <= last_y - WINDOW_TAB_LINE_HEIGHT (w)