(newline): Function moved to simple.el.
(internal_self_insert): Insert newline BEFORE calling
auto-fill-function, so centering & right-justify can work.
(internal_last_event_frame, Vlast_event_frame): Normal vars again.
All uses changed.
(Quniversal_argument, Qdigit_argument, Qnegative_argument): Declare.
(clear_prefix_arg, finalize_prefix_arg, describe_prefix_arg): New fns.
(command_loop_1): Handle digits and minus specially, when they're
part of a prefix arg.
Handle universal-argument and digit-argument and negative-argument
bindings here, rather than doing I/O in the Lisp code.
(read_char): When reading switch-frame events from the side queue,
set internal_last_event_frame.
(readable_events): Return non-zero if a side queue has data.
(kbd_buffer_get_event): Don't abort if event has no associated frame.
(read_key_sequence): Improve behavior when there's no current display.
(init_perdisplay): Initialize the new members.
current_perdisplay is now meaningful in the wait state as well.
(cmd_error): Clear display_locked in addition to current_perdisplay.
(command_loop_1): outer_perdisplay renamed from global_perdisplay.
Restore display_locked as well as current_perdisplay.
(read_char): read_char_perdisplay merged with current_perdisplay.
(read_key_sequence): Likewise.
(kbd_buffer, kbd_fetch_ptr, kbd_store_ptr): Likewise.
(read_char_perdisplay): New var.
(read_char): Search all appropriate perdisplay objects, and do the right thing
if the next event comes from a different source.
(read_key_sequence): If there's a change of display in mid-stream, retreat and
try reading the new display.
(find_active_event_queue): Function deleted. All callers changed to just test
the main kbd_buffer instead.
(kbd_buffer_store_event): Write to the main kbd_buffer again.
(kbd_buffer_get_event): Read from the main kbd_buffer again.
Now returns a perdisplay pointer in addition to a lispy event.
(Fdiscard_input, swallow_events): Use the main kbd_buffer again.
(stuff_buffered_input): Likewise.
(init_perdisplay): Initialize member kbd_queue.
Remove references to obsolete members.
(wipe_perdisplay): Remove obsolete reference.
(init_keyboard, syms_of_keyboard): Restore initialization of vars.
(change_frame_size): If f is termcap frame, change size of all of them.
(remake_frame_glyphs): No longer static.
Don't mark nonselected termcap frame as garbaged.
(syms_of_frame): defsubr it.
(make_terminal_frame): Init Vframe_list only the first time.
Set visible and async_visible directly.
(redisplay): Don't display nonselected terminal frames.