* keyboard.c (this_command_keys): Make this a vector, instead of
an array of Lisp_Objects. (this_command_keys_size): Deleted. (echo, add_command_key, Fthis_command_keys): Adjusted appropriately. (init_keyboard): Don't allocate it here. (syms_of_keyboard): Allocate it here, and staticpro it. * keyboard.c (read_char): Call ourselves with the appropriate number of arguments. (read_char_menu_prompt): If USED_MOUSE_MENU is zero, don't try to store things in it. * keyboard.c (modify_event_symbol): Arrange to set the click_modifier bit on otherwise unmodified mouse clicks. * keyboard.c (kbd_buffer_get_event): Remember that *mouse_position_hook may set *FRAME to 0; don't generate switch-frame events in this case. Fix fencepost bug in fetching events from keyboard buffer.
Showing with 38 additions and 27 deletions