comparison src/sign.c @ 19095:5cd0986ab02e v8.2.0108

patch 8.2.0108: when sign text is changed a manual redraw is needed Commit: https://github.com/vim/vim/commit/bf0acff012c2f75563c20241f1a5478534fe2c7a Author: Bram Moolenaar <Bram@vim.org> Date: Thu Jan 9 21:01:59 2020 +0100 patch 8.2.0108: when sign text is changed a manual redraw is needed Problem: When sign text is changed a manual redraw is needed. (Pontus Lietzler) Solution: Redraw automatically. (closes #5455)
author Bram Moolenaar <Bram@vim.org>
date Thu, 09 Jan 2020 21:15:03 +0100
parents d34ec6fe207d
children 5b82f041dbbb
comparison
equal deleted inserted replaced
19094:1c802c751736 19095:5cd0986ab02e
1023 if (sp_prev == NULL) 1023 if (sp_prev == NULL)
1024 first_sign = sp; 1024 first_sign = sp;
1025 else 1025 else
1026 sp_prev->sn_next = sp; 1026 sp_prev->sn_next = sp;
1027 } 1027 }
1028 else
1029 {
1030 win_T *wp;
1031
1032 // Signs may already exist, a redraw is needed in windows with a
1033 // non-empty sign list.
1034 FOR_ALL_WINDOWS(wp)
1035 if (wp->w_buffer->b_signlist != NULL)
1036 redraw_buf_later(wp->w_buffer, NOT_VALID);
1037 }
1028 1038
1029 // set values for a defined sign. 1039 // set values for a defined sign.
1030 if (icon != NULL) 1040 if (icon != NULL)
1031 sign_define_init_icon(sp, icon); 1041 sign_define_init_icon(sp, icon);
1032 1042
1779 if (buf != NULL) 1789 if (buf != NULL)
1780 sign_get_placed_in_buf(buf, lnum, sign_id, sign_group, retlist); 1790 sign_get_placed_in_buf(buf, lnum, sign_id, sign_group, retlist);
1781 else 1791 else
1782 { 1792 {
1783 FOR_ALL_BUFFERS(buf) 1793 FOR_ALL_BUFFERS(buf)
1784 {
1785 if (buf->b_signlist != NULL) 1794 if (buf->b_signlist != NULL)
1786 sign_get_placed_in_buf(buf, 0, sign_id, sign_group, retlist); 1795 sign_get_placed_in_buf(buf, 0, sign_id, sign_group, retlist);
1787 }
1788 } 1796 }
1789 } 1797 }
1790 1798
1791 # if defined(FEAT_SIGN_ICONS) || defined(PROTO) 1799 # if defined(FEAT_SIGN_ICONS) || defined(PROTO)
1792 /* 1800 /*