From 53d8d82e3a2f83b448f812f7570482cecbe4e4a0 Mon Sep 17 00:00:00 2001 From: lkn Date: Fri, 26 Jun 2026 07:29:02 +0200 Subject: [PATCH] wayland: use PIXMAN_OP_SRC for fill_rect to replace stale content fill_rect used PIXMAN_OP_OVER which blends over existing pixels. Uninitialized view backing images retained stale pixel data (e.g. from icon tiles previously in that heap region), causing visual artifacts like appicons showing through editmenu entries in WPrefs. SRC fully replaces destination pixels, eliminating bleed-through. --- WINGs/wrender_wl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WINGs/wrender_wl.c b/WINGs/wrender_wl.c index ee0d582..0bd7d84 100644 --- a/WINGs/wrender_wl.c +++ b/WINGs/wrender_wl.c @@ -166,7 +166,7 @@ render_wl_fill_rect(void *rctx, WMDrawable d, WMColor *color, (void)rctx; pixman_image_t *dst = resolve_drawable(d); if (!dst) return; pixman_color_t pc = wm_color_to_pixman(color); - pixman_image_fill_rectangles(PIXMAN_OP_OVER, dst, &pc, 1, + pixman_image_fill_rectangles(PIXMAN_OP_SRC, dst, &pc, 1, &(pixman_rectangle16_t){x, y, w, h}); /* Outside a full redisplay cycle, propagate dirty region up the * view tree and commit the toplevel so the change becomes visible