(make_lispy_event): Offset the event code here.
Special handling for "dead accent" keysyms. (lispy_accent_codes, lispy_accent_keys): New variables. (quit_throw_to_read_char): Don't switch frames if internal_last_event_frame is not a frame. (kbd_buffer_store_event, make_lispy_event) (stuff_buffered_input): `code' of an event is now an int. (make_lispy_movement): If we have a frame but pos is not in a window, return an event with the frame. (read_key_sequence): Don't return if in middle of possible function-key-map sequence, if the bindings were all found by case conversion. (set_waiting_for_input): Code testing echo_flag deleted. (echo_flag, echo_now): Vars deleted. (read_key_sequence): Bind case_converted at top level. Clear it at replay_sequence. (follow_key): Never clear *CASE_CONVERTED. (syms_of_keyboard): Define Lisp var track-mouse. (follow_key): New arg case_converted. (read_key_sequence): Pass the new arg. If key has a binding via case-conversion, that does not prevent use of function_key_map. (read_char): Call prepare_menu_bars. (tracking_off): Call prepare_menu_bars.
Showing with 108 additions and 22 deletions