comparison src/ex_getln.c @ 31115:b7834109fefe v9.0.0892

patch 9.0.0892: may redraw when not needed Commit: https://github.com/vim/vim/commit/f32fb93e431e4db95a8663d86dfeb6bffa5896f6 Author: Bram Moolenaar <Bram@vim.org> Date: Thu Nov 17 11:34:38 2022 +0000 patch 9.0.0892: may redraw when not needed Problem: May redraw when not needed, causing slow scrolling. Solution: Do not redraw when w_skipcol doesn't change. When w_skipcol changes only redraw from the top. (issue #11559)
author Bram Moolenaar <Bram@vim.org>
date Thu, 17 Nov 2022 12:45:05 +0100
parents 33ca088dbd3e
children ff4473b3fc58
comparison
equal deleted inserted replaced
31114:d1c864c76e5c 31115:b7834109fefe
391 search_last_line = MAXLNUM; 391 search_last_line = MAXLNUM;
392 392
393 magic_overruled = is_state->magic_overruled_save; 393 magic_overruled = is_state->magic_overruled_save;
394 394
395 validate_cursor(); // needed for TAB 395 validate_cursor(); // needed for TAB
396 status_redraw_all();
396 redraw_all_later(UPD_SOME_VALID); 397 redraw_all_later(UPD_SOME_VALID);
397 if (call_update_screen) 398 if (call_update_screen)
398 update_screen(UPD_SOME_VALID); 399 update_screen(UPD_SOME_VALID);
399 } 400 }
400 } 401 }
557 } 558 }
558 ccline.cmdbuff[skiplen + patlen] = next_char; 559 ccline.cmdbuff[skiplen + patlen] = next_char;
559 } 560 }
560 561
561 validate_cursor(); 562 validate_cursor();
563
562 // May redraw the status line to show the cursor position. 564 // May redraw the status line to show the cursor position.
563 if (p_ru && curwin->w_status_height > 0) 565 if (p_ru && curwin->w_status_height > 0)
564 curwin->w_redr_status = TRUE; 566 curwin->w_redr_status = TRUE;
565 567
566 update_screen(UPD_SOME_VALID); 568 update_screen(UPD_SOME_VALID);