From 305b8096daa0ead73adc5786de6cae630c342d22 Mon Sep 17 00:00:00 2001 From: Levi Neely <141506390+lneely@users.noreply.github.com> Date: Wed, 13 May 2026 21:24:07 +0200 Subject: [PATCH] Fix regression: only trigger redisplay on map for top-level views wl_map was calling wl_redisplay on every view map, including internal widgets during startup. This caused crashes when non-dialog views received expose events before being fully set up. --- WINGs/wview_wl.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/WINGs/wview_wl.c b/WINGs/wview_wl.c index 8a4d3fd..4940cf1 100644 --- a/WINGs/wview_wl.c +++ b/WINGs/wview_wl.c @@ -139,7 +139,8 @@ static void wl_map(void *vctx, W_View *view) (void)vctx; /* Set mapped early so redisplay doesn't bail out */ view->flags.mapped = 1; - if (view->flags.realized) + /* Only trigger redisplay for top-level views (dialogs) */ + if (view->flags.topLevel && view->flags.realized) wl_redisplay(vctx, view); }