aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJan Djärv2004-11-13 23:29:11 +0000
committerJan Djärv2004-11-13 23:29:11 +0000
commitb393528900a561200b14bd3c75d63f3bca1992ef (patch)
treed08ca88c87ee35c65a7f4a66771f9c9b933494c3 /src
parentcd2531db72eaf9b3a704bda141f9ced898040ce2 (diff)
downloademacs-b393528900a561200b14bd3c75d63f3bca1992ef.tar.gz
emacs-b393528900a561200b14bd3c75d63f3bca1992ef.zip
* xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
Record unwind with clean_up_file_dialog. * xterm.h: Declare x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event. * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog12
-rw-r--r--src/xmenu.c19
-rw-r--r--src/xterm.h3
3 files changed, 33 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 3a8260b0584..1544baf53c6 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,15 @@
12004-11-14 Jan Dj,Ad(Brv <jan.h.d@swipnet.se>
2
3 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
4
5 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
6 Record unwind with clean_up_file_dialog.
7
8 * xterm.h: Declare x_menu_in_use, x_menu_set_in_use,
9 x_menu_wait_for_event.
10
11 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
12
12004-11-13 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> 132004-11-13 Jan Dj,Ad(Brv <jan.h.d@swipnet.se>
2 14
3 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel) 15 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
diff --git a/src/xmenu.c b/src/xmenu.c
index c8c40a47256..38f101ec260 100644
--- a/src/xmenu.c
+++ b/src/xmenu.c
@@ -1118,9 +1118,26 @@ on the left of the dialog box and all following items on the right.
1118 1118
1119#ifndef MSDOS 1119#ifndef MSDOS
1120 1120
1121/* Return non-zero if a dialog or popup menu is already popped up. */
1122
1123int
1124x_menu_in_use ()
1125{
1126 return ! NILP (menu_items_inuse);
1127}
1128
1129/* Set menu_items_inuse so no other popup menu or dialog is created. */
1130
1131void
1132x_menu_set_in_use (in_use)
1133 int in_use;
1134{
1135 menu_items_inuse = in_use ? Qt : Qnil;
1136}
1137
1121/* Wait for an X event to arrive or for a timer to expire. */ 1138/* Wait for an X event to arrive or for a timer to expire. */
1122 1139
1123static void 1140void
1124x_menu_wait_for_event (void *data) 1141x_menu_wait_for_event (void *data)
1125{ 1142{
1126 extern EMACS_TIME timer_check P_ ((int)); 1143 extern EMACS_TIME timer_check P_ ((int));
diff --git a/src/xterm.h b/src/xterm.h
index 5dd3ecfdef7..0738f847563 100644
--- a/src/xterm.h
+++ b/src/xterm.h
@@ -1069,6 +1069,9 @@ extern void x_free_dpy_colors P_ ((Display *, Screen *, Colormap,
1069 1069
1070/* Defined in xmenu.c */ 1070/* Defined in xmenu.c */
1071 1071
1072extern int x_menu_in_use P_ ((void));
1073extern void x_menu_set_in_use P_ ((int));
1074extern void x_menu_wait_for_event P_ ((void *data));
1072extern void x_activate_menubar P_ ((struct frame *)); 1075extern void x_activate_menubar P_ ((struct frame *));
1073extern int popup_activated P_ ((void)); 1076extern int popup_activated P_ ((void));
1074extern void initialize_frame_menubar P_ ((struct frame *)); 1077extern void initialize_frame_menubar P_ ((struct frame *));