Mercurial > vim
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 |