diff --git a/ChangeLog b/ChangeLog
index 241e8ef7bc574d65f44ea910b96b5bd2a0a434f6..9d8cc481106bb0fad6aed70e45b6125e4aeb14cb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -4,6 +4,9 @@
 	an off-screen string, put it on the center line of the screen and
 	not on the bottom or top line.  This restores the old behaviour
 	that was unintentionally changed in r5149 six days ago.
+	* src/winio.c (edit_refresh): When pasting lines on the bottom line,
+	only scroll the required number of lines and not half a screen --
+	that is, when smooth scrolling is enabled.
 
 2015-03-27  Mark Majeres  <mark@engine12.com>
 	* src/text.c (do_alt_speller): Adjust the end point of the marked
diff --git a/src/winio.c b/src/winio.c
index a1e30212d578e18f483769a9c0c7ba997b4383f3..12bc2de8874605b264aa5642d45e07134f76978d 100644
--- a/src/winio.c
+++ b/src/winio.c
@@ -3228,7 +3228,7 @@ void edit_refresh(void)
 #endif
 
 	/* Make sure the current line is on the screen. */
-	edit_update(CENTER);
+	edit_update(ISSET(SMOOTH_SCROLL) ? NONE : CENTER);
     }
 
     foo = openfile->edittop;