summaryrefslogtreecommitdiff
path: root/src/w32menu.c
diff options
context:
space:
mode:
authorGerd Moellmann <gerd@gnu.org>2000-07-13 14:07:57 +0000
committerGerd Moellmann <gerd@gnu.org>2000-07-13 14:07:57 +0000
commitd90c85778ee6c8141cf116137b3ce7be0e0306c0 (patch)
tree0f9d8dc5ed33599ea42cda37b250a9014db15792 /src/w32menu.c
parentbc64cb643efdc0c958c4927b909b71b2139ccab6 (diff)
downloademacs-d90c85778ee6c8141cf116137b3ce7be0e0306c0.tar.gz
(menubar_selection_callback): Use the `arg' slot of
input events to queue additional information, instead of consing.
Diffstat (limited to 'src/w32menu.c')
-rw-r--r--src/w32menu.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/w32menu.c b/src/w32menu.c
index 8a65c0b635b..995c3ef254b 100644
--- a/src/w32menu.c
+++ b/src/w32menu.c
@@ -1002,27 +1002,31 @@ menubar_selection_callback (FRAME_PTR f, void * client_data)
Lisp_Object frame;
XSETFRAME (frame, f);
- buf.kind = menu_bar_event;
- buf.frame_or_window = Fcons (frame, Fcons (Qmenu_bar, Qnil));
+ buf.kind = MENU_BAR_EVENT;
+ buf.frame_or_window = frame;
+ buf.arg = frame;
kbd_buffer_store_event (&buf);
for (j = 0; j < submenu_depth; j++)
if (!NILP (subprefix_stack[j]))
{
- buf.kind = menu_bar_event;
- buf.frame_or_window = Fcons (frame, subprefix_stack[j]);
+ buf.kind = MENU_BAR_EVENT;
+ buf.frame_or_window = frame;
+ buf.arg = subprefix_stack[j];
kbd_buffer_store_event (&buf);
}
if (!NILP (prefix))
{
- buf.kind = menu_bar_event;
- buf.frame_or_window = Fcons (frame, prefix);
+ buf.kind = MENU_BAR_EVENT;
+ buf.frame_or_window = frame;
+ buf.arg = prefix;
kbd_buffer_store_event (&buf);
}
- buf.kind = menu_bar_event;
- buf.frame_or_window = Fcons (frame, entry);
+ buf.kind = MENU_BAR_EVENT;
+ buf.frame_or_window = frame;
+ buf.arg = entry;
kbd_buffer_store_event (&buf);
return;