| To: vim_dev@googlegroups.com |
| Subject: Patch 7.3.139 |
| Fcc: outbox |
| From: Bram Moolenaar <Bram@moolenaar.net> |
| Mime-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| |
| Patch 7.3.139 (after 7.3.137) |
| Problem: When 'lazyredraw' is set ":ver" output can't be read. |
| Solution: Don't redraw the screen when at a prompt or command line. |
| Files: src/getchar.c, src/message.c, src/misc1.c |
| |
| |
| |
| |
| |
| *** 2713,2719 **** |
| * changed text so far. Also for when 'lazyredraw' is set and |
| * redrawing was postponed because there was something in the |
| * input buffer (e.g., termresponse). */ |
| ! if (((State & INSERT) || p_lz) && advance && must_redraw != 0) |
| { |
| update_screen(0); |
| setcursor(); /* put cursor back where it belongs */ |
| --- 2713,2720 ---- |
| * changed text so far. Also for when 'lazyredraw' is set and |
| * redrawing was postponed because there was something in the |
| * input buffer (e.g., termresponse). */ |
| ! if (((State & INSERT) != 0 || p_lz) && (State & CMDLINE) == 0 |
| ! && advance && must_redraw != 0 && !need_wait_return) |
| { |
| update_screen(0); |
| setcursor(); /* put cursor back where it belongs */ |
| |
| |
| |
| *** 879,894 **** |
| if (msg_silent != 0) |
| return; |
| |
| ! /* |
| ! * With the global command (and some others) we only need one return at the |
| ! * end. Adjust cmdline_row to avoid the next message overwriting the last one. |
| ! * When inside vgetc(), we can't wait for a typed character at all. |
| ! */ |
| if (vgetc_busy > 0) |
| return; |
| if (no_wait_return) |
| { |
| - need_wait_return = TRUE; |
| if (!exmode_active) |
| cmdline_row = msg_row; |
| return; |
| --- 879,895 ---- |
| if (msg_silent != 0) |
| return; |
| |
| ! /* |
| ! * When inside vgetc(), we can't wait for a typed character at all. |
| ! * With the global command (and some others) we only need one return at |
| ! * the end. Adjust cmdline_row to avoid the next message overwriting the |
| ! * last one. |
| ! */ |
| if (vgetc_busy > 0) |
| return; |
| + need_wait_return = TRUE; |
| if (no_wait_return) |
| { |
| if (!exmode_active) |
| cmdline_row = msg_row; |
| return; |
| |
| |
| |
| *** 3116,3122 **** |
| |
| if (n == KEYLEN_REMOVED) /* key code removed */ |
| { |
| ! if (must_redraw) |
| { |
| /* Redrawing was postponed, do it now. */ |
| update_screen(0); |
| --- 3116,3122 ---- |
| |
| if (n == KEYLEN_REMOVED) /* key code removed */ |
| { |
| ! if (must_redraw != 0 && !need_wait_return && (State & CMDLINE) == 0) |
| { |
| /* Redrawing was postponed, do it now. */ |
| update_screen(0); |
| |
| |
| |
| *** 716,717 **** |
| --- 716,719 ---- |
| { /* Add new patch number below this line */ |
| + /**/ |
| + 139, |
| /**/ |
| |
| -- |
| "Software is like sex... it's better when it's free." |
| -- Linus Torvalds, initiator of the free Linux OS |
| Makes me wonder what FSF stands for...? |
| |
| /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ |
| /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ |
| \\\ an exciting new programming language -- http://www.Zimbu.org /// |
| \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |