comparison src/drawline.c @ 22013:125051dff419 v8.2.1556

patch 8.2.1556: cursorline highlighting always overrules sign highlighting Commit: https://github.com/vim/vim/commit/39f7aa3c3124065b50f182b1d2f7ac92a0918656 Author: Bram Moolenaar <Bram@vim.org> Date: Mon Aug 31 22:00:05 2020 +0200 patch 8.2.1556: cursorline highlighting always overrules sign highlighting Problem: Cursorline highlighting always overrules sign highlighting. Solution: Combine the highlighting, use the priority to decide how. (closes #6812)
author Bram Moolenaar <Bram@vim.org>
date Mon, 31 Aug 2020 22:15:09 +0200
parents 20133655107a
children 47ebfc274e3f
comparison
equal deleted inserted replaced
22012:c0158af27bee 22013:125051dff419
907 // Only set line_attr here when "screenline" is not present in 907 // Only set line_attr here when "screenline" is not present in
908 // 'cursorlineopt'. Otherwise it's done later. 908 // 'cursorlineopt'. Otherwise it's done later.
909 if (!cul_screenline) 909 if (!cul_screenline)
910 { 910 {
911 cul_attr = HL_ATTR(HLF_CUL); 911 cul_attr = HL_ATTR(HLF_CUL);
912 line_attr = cul_attr; 912 # ifdef FEAT_SIGNS
913 // Combine the 'cursorline' and sign highlighting, depending on
914 // the sign priority.
915 if (sign_present && sattr.sat_linehl > 0)
916 {
917 if (sattr.sat_priority >= 100)
918 line_attr = hl_combine_attr(cul_attr, line_attr);
919 else
920 line_attr = hl_combine_attr(line_attr, cul_attr);
921 }
922 else
923 # endif
924 line_attr = cul_attr;
913 wp->w_last_cursorline = wp->w_cursor.lnum; 925 wp->w_last_cursorline = wp->w_cursor.lnum;
914 } 926 }
915 else 927 else
916 { 928 {
917 line_attr_save = line_attr; 929 line_attr_save = line_attr;