(x_menu_set_in_use): Also set popup_activated_flag.
* xfns.c (Fx_file_dialog): Call popup_activated instead of
x_menu_in_use. Call x_menu_set_in_use in Motif version also.
* xterm.h: (x_menu_in_use): Removed.
+2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
+
+ * xmenu.c (x_menu_in_use): Removed.
+ (x_menu_set_in_use): Also set popup_activated_flag.
+
+ * xfns.c (Fx_file_dialog): Call popup_activated instead of
+ x_menu_in_use. Call x_menu_set_in_use in Motif version also.
+
+ * xterm.h: (x_menu_in_use): Removed.
+
2004-11-16 Richard M. Stallman <rms@gnu.org>
* keymap.c (Fmap_keymap): New arg SORT-FIRST. Use
GCPRO6 (prompt, dir, default_filename, mustmatch, only_dir_p, file);
- if (x_menu_in_use ())
+ if (popup_activated ())
error ("Trying to use a menu from within a menu-entry");
CHECK_STRING (prompt);
record_unwind_protect (clean_up_file_dialog, make_save_value (dialog, 0));
/* Process events until the user presses Cancel or OK. */
+ x_menu_set_in_use (1);
result = 0;
while (result == 0)
{
GCPRO6 (prompt, dir, default_filename, mustmatch, only_dir_p, file);
- if (x_menu_in_use ())
+ if (popup_activated ())
error ("Trying to use a menu from within a menu-entry");
CHECK_STRING (prompt);
#ifndef MSDOS
-/* Return non-zero if a dialog or popup menu is already popped up. */
-
-int
-x_menu_in_use ()
-{
- return ! NILP (menu_items_inuse);
-}
-
/* Set menu_items_inuse so no other popup menu or dialog is created. */
void
int in_use;
{
menu_items_inuse = in_use ? Qt : Qnil;
+ popup_activated_flag = in_use;
}
/* Wait for an X event to arrive or for a timer to expire. */
/* Defined in xmenu.c */
-extern int x_menu_in_use P_ ((void));
extern void x_menu_set_in_use P_ ((int));
extern void x_menu_wait_for_event P_ ((void *data));
extern void x_activate_menubar P_ ((struct frame *));