diff options
Diffstat (limited to 'alacritty/src/display')
-rw-r--r-- | alacritty/src/display/content.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/alacritty/src/display/content.rs b/alacritty/src/display/content.rs index 09116508..9f52e74e 100644 --- a/alacritty/src/display/content.rs +++ b/alacritty/src/display/content.rs @@ -189,6 +189,7 @@ pub struct RenderableCell { pub point: Point<usize>, pub fg: Rgb, pub bg: Rgb, + pub sp: Rgb, // Special pub bg_alpha: f32, pub flags: Flags, } @@ -198,6 +199,11 @@ impl RenderableCell { // Lookup RGB values. let mut fg = Self::compute_fg_rgb(content, cell.fg, cell.flags); let mut bg = Self::compute_bg_rgb(content, cell.bg); + let mut sp = if cell.sp == Color::Named(NamedColor::Foreground) { + fg + } else { + Self::compute_bg_rgb(content, cell.sp) + }; let mut bg_alpha = if cell.flags.contains(Flags::INVERSE) { mem::swap(&mut fg, &mut bg); @@ -263,6 +269,7 @@ impl RenderableCell { point, fg, bg, + sp, } } |