diff --git a/crates/gpui/src/platform/blade/shaders.wgsl b/crates/gpui/src/platform/blade/shaders.wgsl index 4a4d924ea3564886a806626998d7af3e03c04284..0eba972b6902bbb9f252e757a30dac1ad63fb8cc 100644 --- a/crates/gpui/src/platform/blade/shaders.wgsl +++ b/crates/gpui/src/platform/blade/shaders.wgsl @@ -483,7 +483,7 @@ fn fs_underline(input: UnderlineVarying) -> @location(0) vec4 { let underline = b_underlines[input.underline_id]; if ((underline.wavy & 0xFFu) == 0u) { - return vec4(0.0); + return blend_color(input.color, input.color.a); } let half_thickness = underline.thickness * 0.5; @@ -497,7 +497,7 @@ fn fs_underline(input: UnderlineVarying) -> @location(0) vec4 { let distance_from_top_border = distance_in_pixels - half_thickness; let distance_from_bottom_border = distance_in_pixels + half_thickness; let alpha = saturate(0.5 - max(-distance_from_bottom_border, distance_from_top_border)); - return blend_color(input.color, alpha); + return blend_color(input.color, alpha * input.color.a); } // --- monochrome sprites --- //