comparison src/main.c @ 15436:29f3d59bb6f0 v8.1.0726

patch 8.1.0726: redrawing specifically for conceal feature commit https://github.com/vim/vim/commit/535d5b653a1eddf49ee11dc9639c5355ef023301 Author: Bram Moolenaar <Bram@vim.org> Date: Fri Jan 11 20:45:36 2019 +0100 patch 8.1.0726: redrawing specifically for conceal feature Problem: Redrawing specifically for conceal feature. Solution: Use generic redrawing methods.
author Bram Moolenaar <Bram@vim.org>
date Fri, 11 Jan 2019 21:00:06 +0100
parents a6319aca721b
children 55ccc2d353bd
comparison
equal deleted inserted replaced
15435:739e0917d0b6 15436:29f3d59bb6f0
1192 } 1192 }
1193 # endif 1193 # endif
1194 last_cursormoved = curwin->w_cursor; 1194 last_cursormoved = curwin->w_cursor;
1195 } 1195 }
1196 1196
1197 #if defined(FEAT_CONCEAL)
1198 if (conceal_update_lines
1199 && (conceal_old_cursor_line != conceal_new_cursor_line
1200 || conceal_cursor_line(curwin)
1201 || need_cursor_line_redraw))
1202 {
1203 if (conceal_old_cursor_line != conceal_new_cursor_line
1204 && conceal_old_cursor_line
1205 <= curbuf->b_ml.ml_line_count)
1206 redrawWinline(curwin, conceal_old_cursor_line);
1207 redrawWinline(curwin, conceal_new_cursor_line);
1208 curwin->w_valid &= ~VALID_CROW;
1209 need_cursor_line_redraw = FALSE;
1210 }
1211 #endif
1212
1197 /* Trigger TextChanged if b:changedtick differs. */ 1213 /* Trigger TextChanged if b:changedtick differs. */
1198 if (!finish_op && has_textchanged() 1214 if (!finish_op && has_textchanged()
1199 && curbuf->b_last_changedtick != CHANGEDTICK(curbuf)) 1215 && curbuf->b_last_changedtick != CHANGEDTICK(curbuf))
1200 { 1216 {
1201 apply_autocmds(EVENT_TEXTCHANGED, NULL, NULL, FALSE, curbuf); 1217 apply_autocmds(EVENT_TEXTCHANGED, NULL, NULL, FALSE, curbuf);
1286 did_emsg = FALSE; 1302 did_emsg = FALSE;
1287 msg_didany = FALSE; /* reset lines_left in msg_start() */ 1303 msg_didany = FALSE; /* reset lines_left in msg_start() */
1288 may_clear_sb_text(); /* clear scroll-back text on next msg */ 1304 may_clear_sb_text(); /* clear scroll-back text on next msg */
1289 showruler(FALSE); 1305 showruler(FALSE);
1290 1306
1291 #if defined(FEAT_CONCEAL)
1292 if (conceal_update_lines
1293 && (conceal_old_cursor_line != conceal_new_cursor_line
1294 || conceal_cursor_line(curwin)
1295 || need_cursor_line_redraw))
1296 {
1297 mch_disable_flush(); /* Stop issuing gui_mch_flush(). */
1298 if (conceal_old_cursor_line != conceal_new_cursor_line
1299 && conceal_old_cursor_line
1300 <= curbuf->b_ml.ml_line_count)
1301 update_single_line(curwin, conceal_old_cursor_line);
1302 update_single_line(curwin, conceal_new_cursor_line);
1303 mch_enable_flush();
1304 curwin->w_valid &= ~VALID_CROW;
1305 }
1306 #endif
1307 setcursor(); 1307 setcursor();
1308 cursor_on(); 1308 cursor_on();
1309 1309
1310 do_redraw = FALSE; 1310 do_redraw = FALSE;
1311 1311