From 2a96b5cb252a7c4c79035ea27fe0b6b7f4a16c99 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 21 Jun 2023 15:41:37 +0530 Subject: [PATCH] Revert "DRYer" It breaks rendering of background in draw_cells_interleaved() This reverts commit 59dece4588790862db42f56bfbe1e511f953f1d9. --- kitty/cell_fragment.glsl | 10 +++++++++- kitty/cell_vertex.glsl | 2 -- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/kitty/cell_fragment.glsl b/kitty/cell_fragment.glsl index 4e0283596..7cda68b11 100644 --- a/kitty/cell_fragment.glsl +++ b/kitty/cell_fragment.glsl @@ -191,7 +191,15 @@ void main() { #endif #endif -#if defined(BACKGROUND) || defined(SPECIAL) +#ifdef SPECIAL +#ifdef TRANSPARENT + final_color = vec4_premul(background, bg_alpha); +#else + final_color = vec4(background, bg_alpha); +#endif +#endif + +#ifdef BACKGROUND #ifdef TRANSPARENT final_color = vec4_premul(background, bg_alpha); #else diff --git a/kitty/cell_vertex.glsl b/kitty/cell_vertex.glsl index a1ff34867..ca9a84af6 100644 --- a/kitty/cell_vertex.glsl +++ b/kitty/cell_vertex.glsl @@ -215,11 +215,9 @@ void main() { #if defined(BACKGROUND) background = bg; // draw_bg_bitfield has bit 0 set to draw default bg cells and bit 1 set to draw non-default bg cells -#ifndef SPECIAL uint draw_bg_mask = uint(2 * cell_has_non_default_bg + (1 - cell_has_non_default_bg)); draw_bg = step(1, float(draw_bg_bitfield & draw_bg_mask)); #endif -#endif #ifdef TRANSPARENT // Set bg_alpha to background_opacity on cells that have the default background color