summaryrefslogtreecommitdiff
path: root/src/xmenu.c
diff options
context:
space:
mode:
authorChong Yidong <cyd@stupidchicken.com>2006-09-13 22:39:23 +0000
committerChong Yidong <cyd@stupidchicken.com>2006-09-13 22:39:23 +0000
commit98a20c65dfeee04bb7d25e081c5b863de8fa9f33 (patch)
treeca0765f4ed42e8ad059794c7bb2b2a4496b58c2a /src/xmenu.c
parent29e49c4ee2957619bf7544254688e0f9314e0446 (diff)
downloademacs-98a20c65dfeee04bb7d25e081c5b863de8fa9f33.tar.gz
* xterm.c (x_initialize): Don't install Xt event timer here.
(x_timeout_atimer_activated_flag): New var. (x_activate_timeout_atimer): New function to install Xt timer. (x_send_scroll_bar_event, x_process_timeouts): Use it. * xmenu.c (x_menu_set_in_use, popup_activate_callback) (create_and_show_popup_menu, create_and_show_dialog): Use it. * xterm.h (x_activate_timeout_atimer): prototype.
Diffstat (limited to 'src/xmenu.c')
-rw-r--r--src/xmenu.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/xmenu.c b/src/xmenu.c
index 574240a4560..63dfb5102bd 100644
--- a/src/xmenu.c
+++ b/src/xmenu.c
@@ -1182,6 +1182,10 @@ x_menu_set_in_use (in_use)
{
menu_items_inuse = in_use ? Qt : Qnil;
popup_activated_flag = in_use;
+#ifdef USE_X_TOOLKIT
+ if (popup_activated_flag)
+ x_activate_timeout_atimer ();
+#endif
}
/* Wait for an X event to arrive or for a timer to expire. */
@@ -1498,6 +1502,9 @@ popup_activate_callback (widget, id, client_data)
XtPointer client_data;
{
popup_activated_flag = 1;
+#ifdef USE_X_TOOLKIT
+ x_activate_timeout_atimer ();
+#endif
}
#endif
@@ -2798,6 +2805,7 @@ create_and_show_popup_menu (f, first_wv, x, y, for_click)
/* Display the menu. */
lw_popup_menu (menu, (XEvent *) &dummy);
popup_activated_flag = 1;
+ x_activate_timeout_atimer ();
{
int fact = 4 * sizeof (LWLIB_ID);
@@ -3175,6 +3183,7 @@ create_and_show_dialog (f, first_wv)
/* Display the dialog box. */
lw_pop_up_all_widgets (dialog_id);
popup_activated_flag = 1;
+ x_activate_timeout_atimer ();
/* Process events that apply to the dialog box.
Also handle timers. */