diff options
author | Richard M. Stallman <rms@gnu.org> | 1995-11-24 22:42:19 +0000 |
---|---|---|
committer | Richard M. Stallman <rms@gnu.org> | 1995-11-24 22:42:19 +0000 |
commit | 6eb0f0294ffeb37906fb32ca1e6dac7d74f374e1 (patch) | |
tree | ace36b1ae4998518a10ed7bf4b4547cc73d0bdca | |
parent | 87f497053e932dc8c6f90e5f10beaddb0bcffd53 (diff) | |
download | emacs-6eb0f0294ffeb37906fb32ca1e6dac7d74f374e1.tar.gz |
(read_char): Handle unread events from popup menus.
-rw-r--r-- | src/keyboard.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/keyboard.c b/src/keyboard.c index 74614ce2f10..04291a24105 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -1700,6 +1700,13 @@ read_char (commandflag, nmaps, maps, prev_event, used_mouse_menu) c = XCONS (Vunread_command_events)->car; Vunread_command_events = XCONS (Vunread_command_events)->cdr; + /* Undo what read_char_x_menu_prompt did when it unread + additional keys returned by Fx_popup_menu. */ + if (CONSP (c) + && (SYMBOLP (XCONS (c)->car) || INTEGERP (XCONS (c)->car)) + && NILP (XCONS (c)->cdr)) + c = XCONS (c)->car; + if (this_command_key_count == 0) goto reread_first; else |