vim-patch: 8.0.0{181,182,188} (#7152)

vim-patch:8.0.0181
Problem:    When 'cursorbind' and 'cursorcolumn' are both on, the column
            highlignt in non-current windows is wrong.
Solution:   Add validate_cursor(). (Masanori Misono, closes vim/vim#1372)
519d7785f4

vim-patch:8.0.0182
Problem:    When 'cursorbind' and 'cursorline' are set, but 'cursorcolumn' is
            not, then the cursor line highlighting is not updated. (Hirohito
            Higashi)
Solution:   Call redraw_later() with NOT_VALID.
e47683a091

vim-patch:8.0.0188
    Problem:    Using NOT_VALID for redraw_later() to update the cursor
                line/column highlighting is not efficient.
    Solution:   Call validate_cursor() when 'cul' or 'cuc' is set.
9506cad7a1
This commit is contained in:
KunMing Xie
2017-09-06 01:04:57 +08:00
committed by Justin M. Keyes
parent ce852bab04
commit 82795c2c3a
2 changed files with 12 additions and 7 deletions

View File

@@ -2164,16 +2164,21 @@ void do_check_cursorbind(void)
int restart_edit_save = restart_edit; int restart_edit_save = restart_edit;
restart_edit = true; restart_edit = true;
check_cursor(); check_cursor();
if (curwin->w_p_cul || curwin->w_p_cuc) {
validate_cursor();
}
restart_edit = restart_edit_save; restart_edit = restart_edit_save;
} }
/* Correct cursor for multi-byte character. */ // Correct cursor for multi-byte character.
if (has_mbyte) if (has_mbyte) {
mb_adjust_cursor(); mb_adjust_cursor();
}
redraw_later(VALID); redraw_later(VALID);
/* Only scroll when 'scrollbind' hasn't done this. */ // Only scroll when 'scrollbind' hasn't done this.
if (!curwin->w_p_scb) if (!curwin->w_p_scb) {
update_topline(); update_topline();
}
curwin->w_redr_status = true; curwin->w_redr_status = true;
} }
} }

View File

@@ -764,14 +764,14 @@ static const int included_patches[] = {
// 191 NA // 191 NA
190, 190,
// 189, // 189,
// 188, 188,
// 187 NA // 187 NA
// 186, // 186,
// 185, // 185,
// 184, // 184,
// 183, // 183,
// 182, 182,
// 181, 181,
// 180, // 180,
179, 179,
178, 178,