]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
updated for version 7.3.868 v7.3.868
authorBram Moolenaar <Bram@vim.org>
Tue, 19 Mar 2013 12:56:08 +0000 (13:56 +0100)
committerBram Moolenaar <Bram@vim.org>
Tue, 19 Mar 2013 12:56:08 +0000 (13:56 +0100)
Problem:    When at the hit-return prompt and using "k" while no text has
            scrolled off screen, then using "j", an empty line is displayed.
Solution:   Only act on "k" when text scrolled off screen.  Also accept
            page-up and page-down.  (cptstubing)

src/message.c
src/version.c

index f5d17146a9d5cb70512de883dee70d300d05b4e2..8909f081f2eabb62ba839441103f566807f332d2 100644 (file)
@@ -976,10 +976,22 @@ wait_return(redraw)
             */
            if (p_more && !p_cp)
            {
-               if (c == 'b' || c == 'k' || c == 'u' || c == 'g' || c == K_UP)
+               if (c == 'b' || c == 'k' || c == 'u' || c == 'g'
+                                               || c == K_UP || c == K_PAGEUP)
                {
-                   /* scroll back to show older messages */
-                   do_more_prompt(c);
+                   if (msg_scrolled > Rows)
+                       /* scroll back to show older messages */
+                       do_more_prompt(c);
+                   else
+                   {
+                       msg_didout = FALSE;
+                       c = K_IGNORE;
+                       msg_col =
+#ifdef FEAT_RIGHTLEFT
+                           cmdmsg_rl ? Columns - 1 :
+#endif
+                           0;
+                   }
                    if (quit_more)
                    {
                        c = CAR;                /* just pretend CR was hit */
@@ -993,7 +1005,8 @@ wait_return(redraw)
                    }
                }
                else if (msg_scrolled > Rows - 2
-                        && (c == 'j' || c == K_DOWN || c == 'd' || c == 'f'))
+                        && (c == 'j' || c == 'd' || c == 'f'
+                                          || c == K_DOWN || c == K_PAGEDOWN))
                    c = K_IGNORE;
            }
        } while ((had_got_int && c == Ctrl_C)
index 70a04379e9f9aa3d5dc59830fd5573e6fa863321..165b8e26da21539b2b7596412aebc59c400736c8 100644 (file)
@@ -728,6 +728,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    868,
 /**/
     867,
 /**/