aboutsummaryrefslogtreecommitdiffstats
path: root/src/xfns.c
diff options
context:
space:
mode:
authorKarl Heuer <[email protected]>1995-05-30 18:47:11 +0000
committerKarl Heuer <[email protected]>1995-05-30 18:47:11 +0000
commit7a9947284cf5a93b49f6d610e3060042aed780e8 (patch)
tree4f71b45d669513d360dfa3475dfb8d6ea53d864b /src/xfns.c
parent4bcdbab1939f7846854bef23f97769bc282d3667 (diff)
(x_top_window_to_frame): Don't match menu-bar widget.
(x_window): Use applicationShellWidgetClass, not topLevelShellWidgetClass. Call lw_set_main_areas after creating the menubar widget.
Diffstat (limited to 'src/xfns.c')
-rw-r--r--src/xfns.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/xfns.c b/src/xfns.c
index d90bd4d468..fb62b8042a 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -379,10 +379,14 @@ x_top_window_to_frame (dpyinfo, wdesc)
/* This frame matches if the window is its topmost widget. */
if (wdesc == XtWindow (x->widget))
return f;
+#if 0 /* I don't know why it did this,
+ but it seems logically wrong,
+ and it causes trouble for MapNotify events. */
/* Match if the window is this frame's menubar. */
if (x->menubar_widget
&& wdesc == XtWindow (x->menubar_widget))
return f;
+#endif
}
return 0;
}
@@ -2387,7 +2391,7 @@ x_window (f, window_prompting, minibuffer_only)
XtSetArg (al[ac], XtNmappedWhenManaged, 0); ac++;
XtSetArg (al[ac], XtNborderWidth, f->display.x->border_width); ac++;
shell_widget = XtAppCreateShell (f->namebuf, EMACS_CLASS,
- topLevelShellWidgetClass,
+ applicationShellWidgetClass,
FRAME_X_DISPLAY (f), al, ac);
f->display.x->widget = shell_widget;
@@ -2414,12 +2418,9 @@ x_window (f, window_prompting, minibuffer_only)
frame_widget = XtCreateWidget (f->namebuf,
emacsFrameClass,
pane_widget, al, ac);
- lw_set_main_areas (pane_widget, f->display.x->menubar_widget, frame_widget);
f->display.x->edit_widget = frame_widget;
- if (f->display.x->menubar_widget)
- XtManageChild (f->display.x->menubar_widget);
XtManageChild (frame_widget);
/* Do some needed geometry management. */
@@ -2535,6 +2536,7 @@ x_window (f, window_prompting, minibuffer_only)
if (!minibuffer_only && FRAME_EXTERNAL_MENU_BAR (f))
initialize_frame_menubar (f);
+ lw_set_main_areas (pane_widget, f->display.x->menubar_widget, frame_widget);
if (FRAME_X_WINDOW (f) == 0)
error ("Unable to create window");