diff options
| author | Karoly Lorentey | 2006-10-14 17:36:28 +0000 |
|---|---|---|
| committer | Karoly Lorentey | 2006-10-14 17:36:28 +0000 |
| commit | 12b6af5c7ed2cfdb9783312bf890cf1e6c80c67a (patch) | |
| tree | 1775f9fd1c92defd8b61304a08ec00da95bc4539 /src/xmenu.c | |
| parent | 3f87f67ee215ffeecbd2f53bd7f342cdf03f47df (diff) | |
| parent | f763da8d0808af7c80d72bc586bf4fcf50b37ddd (diff) | |
| download | emacs-12b6af5c7ed2cfdb9783312bf890cf1e6c80c67a.tar.gz emacs-12b6af5c7ed2cfdb9783312bf890cf1e6c80c67a.zip | |
Merged from emacs@sv.gnu.org
Patches applied:
* emacs@sv.gnu.org/emacs--devo--0--patch-413
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-414
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-415
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-416
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-417
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-418
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-419
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-420
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-421
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-422
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-423
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-424
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-425
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-426
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-427
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-428
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-429
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-430
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-431
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-432
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-433
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-434
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-435
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-436
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-437
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-438
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-439
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-440
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-441
lisp/url/url-methods.el: Fix format error when http_proxy is empty string
* emacs@sv.gnu.org/emacs--devo--0--patch-442
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-443
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-444
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-445
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-446
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-447
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-448
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-449
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-450
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-451
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-452
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-453
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-454
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-455
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-456
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-457
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-458
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-459
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-460
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-461
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-462
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-463
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-464
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-465
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-466
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-467
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-468
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-469
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-470
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-471
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-472
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-473
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-128
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-129
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-130
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-131
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-132
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-133
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-134
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-135
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-136
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-137
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-138
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-139
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-140
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-141
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-142
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-143
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-144
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-145
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-146
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-147
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-148
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-149
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-582
Diffstat (limited to 'src/xmenu.c')
| -rw-r--r-- | src/xmenu.c | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/src/xmenu.c b/src/xmenu.c index 1650222ae84..b615d321cc7 100644 --- a/src/xmenu.c +++ b/src/xmenu.c | |||
| @@ -97,10 +97,10 @@ Boston, MA 02110-1301, USA. */ | |||
| 97 | #define FALSE 0 | 97 | #define FALSE 0 |
| 98 | #endif /* no TRUE */ | 98 | #endif /* no TRUE */ |
| 99 | 99 | ||
| 100 | Lisp_Object Vmenu_updating_frame; | ||
| 101 | |||
| 102 | Lisp_Object Qdebug_on_next_call; | 100 | Lisp_Object Qdebug_on_next_call; |
| 103 | 101 | ||
| 102 | extern Lisp_Object Vmenu_updating_frame; | ||
| 103 | |||
| 104 | extern Lisp_Object Qmenu_bar; | 104 | extern Lisp_Object Qmenu_bar; |
| 105 | 105 | ||
| 106 | extern Lisp_Object QCtoggle, QCradio; | 106 | extern Lisp_Object QCtoggle, QCradio; |
| @@ -1191,6 +1191,10 @@ x_menu_set_in_use (in_use) | |||
| 1191 | { | 1191 | { |
| 1192 | menu_items_inuse = in_use ? Qt : Qnil; | 1192 | menu_items_inuse = in_use ? Qt : Qnil; |
| 1193 | popup_activated_flag = in_use; | 1193 | popup_activated_flag = in_use; |
| 1194 | #ifdef USE_X_TOOLKIT | ||
| 1195 | if (popup_activated_flag) | ||
| 1196 | x_activate_timeout_atimer (); | ||
| 1197 | #endif | ||
| 1194 | } | 1198 | } |
| 1195 | 1199 | ||
| 1196 | /* Wait for an X event to arrive or for a timer to expire. */ | 1200 | /* Wait for an X event to arrive or for a timer to expire. */ |
| @@ -1310,7 +1314,7 @@ popup_get_selection (initial_event, dpyinfo, id, do_timers) | |||
| 1310 | } | 1314 | } |
| 1311 | } | 1315 | } |
| 1312 | 1316 | ||
| 1313 | DEFUN ("x-menu-bar-open", Fx_menu_bar_open, Sx_menu_bar_open, 0, 1, "i", | 1317 | DEFUN ("x-menu-bar-open-internal", Fx_menu_bar_open_internal, Sx_menu_bar_open_internal, 0, 1, "i", |
| 1314 | doc: /* Start key navigation of the menu bar in FRAME. | 1318 | doc: /* Start key navigation of the menu bar in FRAME. |
| 1315 | This initially opens the first menu bar item and you can then navigate with the | 1319 | This initially opens the first menu bar item and you can then navigate with the |
| 1316 | arrow keys, select a menu entry with the return key or cancel with the | 1320 | arrow keys, select a menu entry with the return key or cancel with the |
| @@ -1389,7 +1393,7 @@ If FRAME is nil or not given, use the selected frame. */) | |||
| 1389 | 1393 | ||
| 1390 | 1394 | ||
| 1391 | #ifdef USE_GTK | 1395 | #ifdef USE_GTK |
| 1392 | DEFUN ("x-menu-bar-open", Fx_menu_bar_open, Sx_menu_bar_open, 0, 1, "i", | 1396 | DEFUN ("x-menu-bar-open-internal", Fx_menu_bar_open_internal, Sx_menu_bar_open_internal, 0, 1, "i", |
| 1393 | doc: /* Start key navigation of the menu bar in FRAME. | 1397 | doc: /* Start key navigation of the menu bar in FRAME. |
| 1394 | This initially opens the first menu bar item and you can then navigate with the | 1398 | This initially opens the first menu bar item and you can then navigate with the |
| 1395 | arrow keys, select a menu entry with the return key or cancel with the | 1399 | arrow keys, select a menu entry with the return key or cancel with the |
| @@ -1510,6 +1514,9 @@ popup_activate_callback (widget, id, client_data) | |||
| 1510 | XtPointer client_data; | 1514 | XtPointer client_data; |
| 1511 | { | 1515 | { |
| 1512 | popup_activated_flag = 1; | 1516 | popup_activated_flag = 1; |
| 1517 | #ifdef USE_X_TOOLKIT | ||
| 1518 | x_activate_timeout_atimer (); | ||
| 1519 | #endif | ||
| 1513 | } | 1520 | } |
| 1514 | #endif | 1521 | #endif |
| 1515 | 1522 | ||
| @@ -2828,6 +2835,7 @@ create_and_show_popup_menu (f, first_wv, x, y, for_click) | |||
| 2828 | /* Display the menu. */ | 2835 | /* Display the menu. */ |
| 2829 | lw_popup_menu (menu, (XEvent *) &dummy); | 2836 | lw_popup_menu (menu, (XEvent *) &dummy); |
| 2830 | popup_activated_flag = 1; | 2837 | popup_activated_flag = 1; |
| 2838 | x_activate_timeout_atimer (); | ||
| 2831 | 2839 | ||
| 2832 | { | 2840 | { |
| 2833 | int fact = 4 * sizeof (LWLIB_ID); | 2841 | int fact = 4 * sizeof (LWLIB_ID); |
| @@ -3214,6 +3222,7 @@ create_and_show_dialog (f, first_wv) | |||
| 3214 | /* Display the dialog box. */ | 3222 | /* Display the dialog box. */ |
| 3215 | lw_pop_up_all_widgets (dialog_id); | 3223 | lw_pop_up_all_widgets (dialog_id); |
| 3216 | popup_activated_flag = 1; | 3224 | popup_activated_flag = 1; |
| 3225 | x_activate_timeout_atimer (); | ||
| 3217 | 3226 | ||
| 3218 | /* Process events that apply to the dialog box. | 3227 | /* Process events that apply to the dialog box. |
| 3219 | Also handle timers. */ | 3228 | Also handle timers. */ |
| @@ -3803,11 +3812,6 @@ syms_of_xmenu () | |||
| 3803 | Qdebug_on_next_call = intern ("debug-on-next-call"); | 3812 | Qdebug_on_next_call = intern ("debug-on-next-call"); |
| 3804 | staticpro (&Qdebug_on_next_call); | 3813 | staticpro (&Qdebug_on_next_call); |
| 3805 | 3814 | ||
| 3806 | DEFVAR_LISP ("menu-updating-frame", &Vmenu_updating_frame, | ||
| 3807 | doc: /* Frame for which we are updating a menu. | ||
| 3808 | The enable predicate for a menu command should check this variable. */); | ||
| 3809 | Vmenu_updating_frame = Qnil; | ||
| 3810 | |||
| 3811 | #ifdef USE_X_TOOLKIT | 3815 | #ifdef USE_X_TOOLKIT |
| 3812 | widget_id_tick = (1<<16); | 3816 | widget_id_tick = (1<<16); |
| 3813 | next_menubar_widget_id = 1; | 3817 | next_menubar_widget_id = 1; |
| @@ -3816,10 +3820,9 @@ The enable predicate for a menu command should check this variable. */); | |||
| 3816 | defsubr (&Sx_popup_menu); | 3820 | defsubr (&Sx_popup_menu); |
| 3817 | 3821 | ||
| 3818 | #if defined (USE_GTK) || defined (USE_X_TOOLKIT) | 3822 | #if defined (USE_GTK) || defined (USE_X_TOOLKIT) |
| 3819 | defsubr (&Sx_menu_bar_open); | 3823 | defsubr (&Sx_menu_bar_open_internal); |
| 3820 | Fdefalias (intern ("accelerate-menu"), | 3824 | Ffset (intern ("accelerate-menu"), |
| 3821 | intern (Sx_menu_bar_open.symbol_name), | 3825 | intern (Sx_menu_bar_open_internal.symbol_name)); |
| 3822 | Qnil); | ||
| 3823 | #endif | 3826 | #endif |
| 3824 | 3827 | ||
| 3825 | #ifdef HAVE_MENUS | 3828 | #ifdef HAVE_MENUS |