summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Shahid <jvshahid@gmail.com>2018-07-01 14:48:24 -0400
committerEli Zaretskii <eliz@gnu.org>2018-07-07 12:07:47 +0300
commitea2f96837d00f5475cd48fc7bf62c19d1045c055 (patch)
tree616269023e3a2a19b92e1adfe6fdff14bbbb341c
parent42c0b8f3f27c8700f1f432649f2466aab9127061 (diff)
downloademacs-ea2f96837d00f5475cd48fc7bf62c19d1045c055.tar.gz
Keep interactive uses of 'recenter' backward compatible (Bug#31325)
* window.c (Frecenter): Change the interactive spec to always pass a non-nil value to the REDISPLAY argument when called interactively. * window.el (recenter-top-bottom): Make sure 'recenter's second argument is non-nil everywhere. * windows.texi (Textual Scrolling): Update documentation of 'recenter'.
-rw-r--r--doc/lispref/windows.texi3
-rw-r--r--lisp/window.el2
-rw-r--r--src/window.c4
3 files changed, 5 insertions, 4 deletions
diff --git a/doc/lispref/windows.texi b/doc/lispref/windows.texi
index ae6837b444f..3eaa15a6036 100644
--- a/doc/lispref/windows.texi
+++ b/doc/lispref/windows.texi
@@ -4156,7 +4156,8 @@ window. If @var{count} is @code{nil} and @var{redisplay} is
non-@code{nil}, this function may redraw the frame, according to the
value of @code{recenter-redisplay}. Thus, omitting the second
argument can be used to countermand the effect of
-@code{recenter-redisplay} being non-@code{nil}.
+@code{recenter-redisplay} being non-@code{nil}. Interactive calls
+pass non-‘nil’ for @var{redisplay}.
When @code{recenter} is called interactively, @var{count} is the raw
prefix argument. Thus, typing @kbd{C-u} as the prefix sets the
diff --git a/lisp/window.el b/lisp/window.el
index 6d9d8bdcd2e..d56bed63da0 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -8767,7 +8767,7 @@ A prefix argument is handled like `recenter':
With plain `C-u', move current line to window center."
(interactive "P")
(cond
- (arg (recenter arg)) ; Always respect ARG.
+ (arg (recenter arg t)) ; Always respect ARG.
(t
(setq recenter-last-op
(if (eq this-command last-command)
diff --git a/src/window.c b/src/window.c
index d3c72570dd1..422b06a49fe 100644
--- a/src/window.c
+++ b/src/window.c
@@ -5901,7 +5901,7 @@ displayed_window_lines (struct window *w)
}
-DEFUN ("recenter", Frecenter, Srecenter, 0, 2, "P",
+DEFUN ("recenter", Frecenter, Srecenter, 0, 2, "P\np",
doc: /* Center point in selected window and maybe redisplay frame.
With a numeric prefix argument ARG, recenter putting point on screen line ARG
relative to the selected window. If ARG is negative, it counts up from the
@@ -5913,7 +5913,7 @@ non-nil, also erase the entire frame and redraw it (when
`auto-resize-tool-bars' is set to `grow-only', this resets the
tool-bar's height to the minimum height needed); if
`recenter-redisplay' has the special value `tty', then only tty frames
-are redrawn.
+are redrawn. Interactively, REDISPLAY is always non-nil.
Just C-u as prefix means put point in the center of the window
and redisplay normally--don't erase and redraw the frame. */)