From b7804fd7ebb71f9ea9a5557be027f44a23876e74 Mon Sep 17 00:00:00 2001 From: deepend Date: Tue, 24 Feb 2026 08:35:23 -0700 Subject: [PATCH] Fixed the right-click nick info refresh flow in fe_userlist_update() so the submenu can keep updating after the first refresh when WHOIS-derived data is still incomplete. It now tracks a needs_refresh condition and reattaches the submenu show callback when required. This ensures user info can continue to refresh as data arrives instead of stopping after one update. --- src/fe-gtk/menu.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/fe-gtk/menu.c b/src/fe-gtk/menu.c index f48dbb55..b94d1762 100644 --- a/src/fe-gtk/menu.c +++ b/src/fe-gtk/menu.c @@ -778,6 +778,7 @@ fe_userlist_update (session *sess, struct User *user) { GList *items, *next; GList *iter; + gboolean needs_refresh; if (!nick_submenu || !str_copy) return; @@ -801,7 +802,14 @@ fe_userlist_update (session *sess, struct User *user) g_list_free (items); /* and re-create them with new info */ - menu_create_nickinfo_menu (user, nick_submenu); + needs_refresh = menu_create_nickinfo_menu (user, nick_submenu) || + !user->hostname || !user->realname || !user->servername; + + if (needs_refresh) + { + g_signal_connect (G_OBJECT (nick_submenu), "show", + G_CALLBACK (menu_nickinfo_cb), sess); + } } void