Merge pull request #26276 from luukvbaal/decor

refactor(decor): remove sign conditions that are always true
This commit is contained in:
bfredl
2023-11-28 20:39:59 +01:00
committed by GitHub

View File

@@ -725,12 +725,10 @@ void decor_redraw_signs(win_T *wp, buf_T *buf, int row, SignTextAttrs sattrs[],
while (marktree_itr_step_overlap(buf->b_marktree, itr, &pair)) { while (marktree_itr_step_overlap(buf->b_marktree, itr, &pair)) {
if (!mt_invalid(pair.start) && mt_decor_sign(pair.start)) { if (!mt_invalid(pair.start) && mt_decor_sign(pair.start)) {
DecorSignHighlight *sh = decor_find_sign(mt_decor(pair.start)); DecorSignHighlight *sh = decor_find_sign(mt_decor(pair.start));
if (sh) {
num_text += (sh->text.ptr != NULL); num_text += (sh->text.ptr != NULL);
kv_push(signs, ((SignItem){ sh, pair.start.id })); kv_push(signs, ((SignItem){ sh, pair.start.id }));
} }
} }
}
while (itr->x) { while (itr->x) {
MTKey mark = marktree_itr_current(itr); MTKey mark = marktree_itr_current(itr);
@@ -739,11 +737,9 @@ void decor_redraw_signs(win_T *wp, buf_T *buf, int row, SignTextAttrs sattrs[],
} }
if (!mt_end(mark) && !mt_invalid(mark) && mt_decor_sign(mark)) { if (!mt_end(mark) && !mt_invalid(mark) && mt_decor_sign(mark)) {
DecorSignHighlight *sh = decor_find_sign(mt_decor(mark)); DecorSignHighlight *sh = decor_find_sign(mt_decor(mark));
if (sh) {
num_text += (sh->text.ptr != NULL); num_text += (sh->text.ptr != NULL);
kv_push(signs, ((SignItem){ sh, mark.id })); kv_push(signs, ((SignItem){ sh, mark.id }));
} }
}
marktree_itr_next(buf->b_marktree, itr); marktree_itr_next(buf->b_marktree, itr);
} }
@@ -826,11 +822,8 @@ int decor_signcols(buf_T *buf, int row, int end_row, int max)
break; break;
} }
if (!mt_invalid(mark) && !mt_end(mark) && (mark.flags & MT_FLAG_DECOR_SIGNTEXT)) { if (!mt_invalid(mark) && !mt_end(mark) && (mark.flags & MT_FLAG_DECOR_SIGNTEXT)) {
DecorSignHighlight *sh = decor_find_sign(mt_decor(mark));
if (sh && sh->text.ptr) {
count++; count++;
} }
}
marktree_itr_next(buf->b_marktree, itr); marktree_itr_next(buf->b_marktree, itr);
} }