Mercurial > vim
diff src/screen.c @ 644:e4fa26ce8769 v7.0187
updated for version 7.0187
author | vimboss |
---|---|
date | Wed, 25 Jan 2006 22:10:52 +0000 |
parents | 2392a6da4aa4 |
children | 9090f866cd57 |
line wrap: on
line diff
--- a/src/screen.c +++ b/src/screen.c @@ -2806,7 +2806,7 @@ win_line(wp, lnum, startrow, endrow, noc # endif # if defined(FEAT_QUICKFIX) && defined(FEAT_WINDOWS) /* Highlight the current line in the quickfix window. */ - if (bt_quickfix(wp->w_buffer) && qf_current_entry() == lnum) + if (bt_quickfix(wp->w_buffer) && qf_current_entry(wp) == lnum) line_attr = hl_attr(HLF_L); # endif if (line_attr != 0) @@ -6651,6 +6651,8 @@ screen_fill(start_row, end_row, start_co redraw_cmdline = TRUE; if (c1 == ' ' && c2 == ' ') clear_cmdline = FALSE; /* command line has been cleared */ + if (start_col == 0) + mode_displayed = FALSE; /* mode cleared or overwritten */ } } } @@ -7027,6 +7029,7 @@ screenclear2() { out_str(T_CL); /* clear the display */ clear_cmdline = FALSE; + mode_displayed = FALSE; } else { @@ -8326,6 +8329,7 @@ showmode() #endif MSG_PUTS_ATTR(" --", attr); } + need_clear = TRUE; } if (Recording @@ -8337,6 +8341,8 @@ showmode() MSG_PUTS_ATTR(_("recording"), attr); need_clear = TRUE; } + + mode_displayed = TRUE; if (need_clear || clear_cmdline) msg_clr_eos(); msg_didout = FALSE; /* overwrite this message */ @@ -8383,6 +8389,7 @@ msg_pos_mode() /* * Delete mode message. Used when ESC is typed which is expected to end * Insert mode (but Insert mode didn't end yet!). + * Caller should check "mode_displayed". */ void unshowmode(force)