all_windows = (update_mode_lines || buffer_shared > 1
|| clip_changed || windows_or_buffers_changed);
-#ifdef HAVE_X_WINDOWS
- if (windows_or_buffers_changed)
- {
- Lisp_Object tail, frame;
-
- FOR_EACH_FRAME (tail, frame)
- if (FRAME_VISIBLE_P (XFRAME (frame))
- || FRAME_ICONIFIED_P (XFRAME (frame)))
- x_consider_frame_title (frame);
- }
-#endif
-
/* Update the menu bar item lists, if appropriate.
This has to be done before any actual redisplay
or generation of display lines. */
}
else
update_menu_bar (selected_frame);
+
+ /* Update all frame titles based on their buffer names, etc.
+ We do this after the menu bars so that the frame will first
+ create its menu bar using the name `emacs' if no other name
+ has yet been specified. */
+#ifdef HAVE_X_WINDOWS
+ if (windows_or_buffers_changed)
+ {
+ Lisp_Object tail, frame;
+
+ FOR_EACH_FRAME (tail, frame)
+ if (FRAME_VISIBLE_P (XFRAME (frame))
+ || FRAME_ICONIFIED_P (XFRAME (frame)))
+ x_consider_frame_title (frame);
+ }
+#endif
}
\f
/* Do a frame update, taking possible shortcuts into account.