From d68608b35ae97793103b486770acd1c8eedcc9dc Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 3 Jul 2026 02:56:41 +0000 Subject: [PATCH] Fix tab bar edge strips rendered with opacity < 1 when background_opacity < 1 --- kitty/border_vertex.glsl | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/kitty/border_vertex.glsl b/kitty/border_vertex.glsl index adee97510..6e08f942e 100644 --- a/kitty/border_vertex.glsl +++ b/kitty/border_vertex.glsl @@ -52,9 +52,10 @@ void main() { float is_window_bg = is_integer_value(rc, WINDOW_BACKGROUND_PLACEHOLDER); // used by window padding areas float is_default_bg = is_integer_value(rc, DEFAULT_BG); color3 = if_one_then(is_window_bg, window_bg, color3); - // Actual border quads must be always drawn opaque + // Actual border quads and tab bar edge strips must be always drawn opaque float is_not_a_border = zero_or_one(abs( - (float(rc) - ACTIVE_BORDER_COLOR) * (float(rc) - INACTIVE_BORDER_COLOR) * (float(rc) - BELL_BORDER_COLOR) + (float(rc) - ACTIVE_BORDER_COLOR) * (float(rc) - INACTIVE_BORDER_COLOR) * (float(rc) - BELL_BORDER_COLOR) * + (float(rc) - TAB_BAR_EDGE_LEFT_COLOR) * (float(rc) - TAB_BAR_EDGE_RIGHT_COLOR) )); float final_opacity = if_one_then(is_not_a_border, background_opacity, 1.); color_premul = vec4_premul(color3, final_opacity);