In follow mode, prevent the cursor resting on a partially displayed line
Don't merge to master. This fixes bug #32848 * lisp/follow.el (follow-adjust-window): If point ends up in a partially displayed line in a left hand or middle window, move it one line forward, to prevent unwanted scrolling should make-cursor-line-fully-visible be non-nil.
This commit is contained in:
parent
ea77c6594e
commit
99f45ee42c
1 changed files with 7 additions and 1 deletions
|
@ -1385,7 +1385,13 @@ non-first windows in Follow mode."
|
||||||
(unless (eq win (selected-window))
|
(unless (eq win (selected-window))
|
||||||
(let ((p (window-point win)))
|
(let ((p (window-point win)))
|
||||||
(set-window-start win (window-start win) nil)
|
(set-window-start win (window-start win) nil)
|
||||||
(set-window-point win p))))
|
(if (nth 2 (pos-visible-in-window-p p win t))
|
||||||
|
;; p is in a partially visible line. We can't leave
|
||||||
|
;; window-point there, because C-x o back into WIN
|
||||||
|
;; would then fail.
|
||||||
|
(with-selected-window win
|
||||||
|
(forward-line)) ; redisplay will recenter it in WIN.
|
||||||
|
(set-window-point win p)))))
|
||||||
|
|
||||||
(unless visible
|
(unless visible
|
||||||
;; If point may not be visible in the selected window,
|
;; If point may not be visible in the selected window,
|
||||||
|
|
Loading…
Add table
Reference in a new issue