/* On 4.3 this loses if it comes after xterm.h. */
#include <signal.h>
-#include "config.h"
+#include <config.h>
#include "lisp.h"
#include "frame.h"
#include "window.h"
but I don't want to make one now. */
CHECK_WINDOW (window, 0);
+#ifdef HAVE_X11
+ {
+ Window child;
+ int win_x = 0, win_y = 0;
+
+ /* Find the position of the outside upper-left corner of
+ the inner window, with respect to the outer window. */
+ if (f->display.x->parent_desc != ROOT_WINDOW)
+ {
+ BLOCK_INPUT;
+ XTranslateCoordinates (x_current_display,
+
+ /* From-window, to-window. */
+ f->display.x->window_desc,
+ f->display.x->parent_desc,
+
+ /* From-position, to-position. */
+ 0, 0, &win_x, &win_y,
+
+ /* Child of window. */
+ &child);
+ UNBLOCK_INPUT;
+ XMenu_xpos += win_x;
+ XMenu_ypos += win_y;
+ }
+ }
+#endif
+
XMenu_xpos += FONT_WIDTH (f->display.x->font) * XINT (x);
XMenu_ypos += FONT_HEIGHT (f->display.x->font) * XINT (y);
/* Extract the detailed info to make one pane. */
number_of_panes = keymap_panes (&obj_list, &menus, &names, &enables,
- &items, &menu, 1);
+ &items, &prefixes, &menu, 1);
/* The menu title seems to be ignored,
so put it in the pane title. */
if (menus[0] == 0)
int ulx, uly, width, height;
int dispwidth, dispheight;
+ *error = 0;
if (pane_cnt == 0)
return 0;