summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/lispref/windows.texi4
-rw-r--r--etc/NEWS7
-rw-r--r--src/w32console.c2
3 files changed, 8 insertions, 5 deletions
diff --git a/doc/lispref/windows.texi b/doc/lispref/windows.texi
index 9740bbebf2c..ae6837b444f 100644
--- a/doc/lispref/windows.texi
+++ b/doc/lispref/windows.texi
@@ -4154,7 +4154,9 @@ If @var{count} is @code{nil} (or a non-@code{nil} list),
@code{recenter} puts the line containing point in the middle of the
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}.
+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}.
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/etc/NEWS b/etc/NEWS
index d5f1abb5feb..3f761e9210b 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -690,9 +690,10 @@ manual for more details.
* Lisp Changes in Emacs 27.1
+++
-** The function 'recenter' accepts an additional optional argument.
-If the optional second argument is nil, recenter will not redisplay
-the frame regardless of the value of 'recenter-redisplay'.
+** The function 'recenter' now accepts an additional optional argument.
+By default, calling 'recenter' will not redraw the frame even if
+'recenter-redisplay' is non-nil. Call 'recenter' with the new second
+argument non-nil to force redisplay per 'recenter-redisplay's value.
+++
** New functions 'major-mode-suspend' and 'major-mode-restore'.
diff --git a/src/w32console.c b/src/w32console.c
index ea30853bade..330aef57584 100644
--- a/src/w32console.c
+++ b/src/w32console.c
@@ -793,7 +793,7 @@ Arguments should be indices between 0 and 15, see w32console.el. */)
{
char_attr_normal = XFASTINT (foreground) + (XFASTINT (background) << 4);
- Frecenter (Qnil);
+ Frecenter (Qnil, Qt);
return Qt;
}