diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/api/ui_events.in.h | 2 | ||||
-rw-r--r-- | src/nvim/highlight.c | 7 | ||||
-rw-r--r-- | src/nvim/terminal.c | 1 |
3 files changed, 9 insertions, 1 deletions
diff --git a/src/nvim/api/ui_events.in.h b/src/nvim/api/ui_events.in.h index 41bf0af65b..9f58257e53 100644 --- a/src/nvim/api/ui_events.in.h +++ b/src/nvim/api/ui_events.in.h @@ -100,7 +100,7 @@ void raw_line(Integer grid, Integer row, Integer startcol, void event(char *name, Array args, bool *args_consumed) FUNC_API_NOEXPORT; -void win_pos(Integer grid, Integer win, Integer startrow, +void win_pos(Integer grid, Window win, Integer startrow, Integer startcol, Integer width, Integer height) FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY; void win_float_pos(Integer grid, Window win, String anchor, Integer anchor_grid, diff --git a/src/nvim/highlight.c b/src/nvim/highlight.c index f11880cb2b..3a61409dfe 100644 --- a/src/nvim/highlight.c +++ b/src/nvim/highlight.c @@ -233,6 +233,7 @@ int hl_get_underline(void) .rgb_fg_color = -1, .rgb_bg_color = -1, .rgb_sp_color = -1, + .hl_blend = -1, }, .kind = kHlUI, .id1 = 0, @@ -427,6 +428,8 @@ int hl_blend_attrs(int back_attr, int front_attr, bool *through) cattrs.rgb_bg_color = rgb_blend(ratio, battrs.rgb_bg_color, fattrs.rgb_bg_color); + cattrs.hl_blend = -1; // blend property was consumed + HlKind kind = *through ? kHlBlendThrough : kHlBlend; id = get_attr_entry((HlEntry){ .attr = cattrs, .kind = kind, .id1 = back_attr, .id2 = front_attr }); @@ -614,6 +617,10 @@ Dictionary hlattrs2dict(HlAttrs ae, bool use_rgb) } } + if (ae.hl_blend > -1) { + PUT(hl, "blend", INTEGER_OBJ(ae.hl_blend)); + } + return hl; } diff --git a/src/nvim/terminal.c b/src/nvim/terminal.c index 5aeea3223b..3faf6dd5bb 100644 --- a/src/nvim/terminal.c +++ b/src/nvim/terminal.c @@ -662,6 +662,7 @@ void terminal_get_line_attributes(Terminal *term, win_T *wp, int linenr, .rgb_fg_color = vt_fg, .rgb_bg_color = vt_bg, .rgb_sp_color = -1, + .hl_blend = -1, }); } |