From 33385c6fa06f2a9faef28252cd2e073b11e84c20 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jan=20Dj=C3=A4rv?= Date: Mon, 27 Dec 2004 20:34:03 +0000 Subject: [PATCH] * xmenu.c (popup_get_selection): Only pop down dialogs on C-g and Escape. --- src/ChangeLog | 5 +++++ src/xmenu.c | 15 +++------------ 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index eafd381817f..f016801fd96 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2004-12-27 Jan Dj,Ad(Brv + + * xmenu.c (popup_get_selection): Only pop down dialogs + on C-g and Escape. + 2004-12-27 YAMAMOTO Mitsuharu * dispextern.h: Change HAVE_CARBON to MAC_OS. diff --git a/src/xmenu.c b/src/xmenu.c index 55c28d831e8..ba4177fab67 100644 --- a/src/xmenu.c +++ b/src/xmenu.c @@ -1232,25 +1232,16 @@ popup_get_selection (initial_event, dpyinfo, id, do_timers, down_on_keypress) event.xbutton.state = 0; #endif } - /* If the user presses a key that doesn't go to the menu, - deactivate the menu. - The user is likely to do that if we get wedged. - All toolkits now pop down menus on ESC. - For dialogs however, the focus may not be on the dialog, so - in that case, we pop down. */ + /* Pop down on C-g and Escape. */ else if (event.type == KeyPress && down_on_keypress && dpyinfo->display == event.xbutton.display) { KeySym keysym = XLookupKeysym (&event.xkey, 0); - /* Pop down on C-g. */ - if (keysym == XK_g && (event.xkey.state & ControlMask) != 0) + if ((keysym == XK_g && (event.xkey.state & ControlMask) != 0) + || keysym == XK_Escape) /* Any escape, ignore modifiers. */ popup_activated_flag = 0; - - if (!IsModifierKey (keysym) - && x_any_window_to_frame (dpyinfo, event.xany.window) != NULL) - popup_activated_flag = 0; } x_dispatch_event (&event, event.xany.display); -- 2.39.2