From 93decaa131e3fc9de27b4f1fd5b56dc5f78ff198 Mon Sep 17 00:00:00 2001 From: Martin Rudalics Date: Sat, 18 Apr 2020 10:25:20 +0200 Subject: [PATCH] Fix handling of child frames in prepare_menu_bars (Bug#40639) * src/xdisp.c (prepare_menu_bars): Call gui_consider_frame_title for child frames too (Bug#40639). Never try to update menu bar of a child frame. Do not exclude child frames from updating tool or tab bars. --- src/xdisp.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/xdisp.c b/src/xdisp.c index 86ae8e73365..abbe882649a 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -12429,7 +12429,6 @@ prepare_menu_bars (void) continue; if (!FRAME_TOOLTIP_P (f) - && !FRAME_PARENT_FRAME (f) && (FRAME_ICONIFIED_P (f) || FRAME_VISIBLE_P (f) == 1 /* Exclude TTY frames that are obscured because they @@ -12475,10 +12474,9 @@ prepare_menu_bars (void) && !XBUFFER (w->contents)->text->redisplay) continue; - if (FRAME_PARENT_FRAME (f)) - continue; + if (!FRAME_PARENT_FRAME (f)) + menu_bar_hooks_run = update_menu_bar (f, false, menu_bar_hooks_run); - menu_bar_hooks_run = update_menu_bar (f, false, menu_bar_hooks_run); update_tab_bar (f, false); #ifdef HAVE_WINDOW_SYSTEM update_tool_bar (f, false); @@ -12490,7 +12488,10 @@ prepare_menu_bars (void) else { struct frame *sf = SELECTED_FRAME (); - update_menu_bar (sf, true, false); + + if (!FRAME_PARENT_FRAME (sf)) + update_menu_bar (sf, true, false); + update_tab_bar (sf, true); #ifdef HAVE_WINDOW_SYSTEM update_tool_bar (sf, true); -- 2.39.2