Jim Blandy [Sun, 13 Sep 1992 12:54:09 +0000 (12:54 +0000)]
* xterm.c (x_wm_set_size_hint): Set the base_width and base_height
members of size_hints, if they're available (X11R4 and after);
otherwise, approximate the right thing, by using min_width and
min_height as the base size.
* xterm.c (x_catch_errors): Don't forget to initialize
x_caught_error_message to the null string, so x_check_errors can
tell when an error has occurred.
Jim Blandy [Sun, 13 Sep 1992 12:48:38 +0000 (12:48 +0000)]
* xrdb.c: Don't include <X11/Xos.h>. Under R4, it stupidly
insists on defining SIGCHLD, even if it already has a definition.
(file_p): Use the constant 4 instead of R_OK; empirically, the
number is more portable than the symbol if you count the #include
hair you have to go through to get R_OK defined. Ffile_readable_p
does this too.
Jim Blandy [Sun, 13 Sep 1992 12:45:33 +0000 (12:45 +0000)]
* xdisp.c (display_mode_line): If the only other frames are
minibuffer frames, don't name the frame after the in the selected
window. We can use Fnext_frame to do this test easily.
Jim Blandy [Sun, 13 Sep 1992 12:38:21 +0000 (12:38 +0000)]
* window.c (minibuffer_window): Accept an optional FRAME argument;
if specified, return the minibuffer used by that frame.
* window.c (Fset_window_configuration): Don't signal an error
if the frame size saved in the window configuration doesn't
match the frame's current size; instead, temporarily resize
the frame while installing the window configuration. This is
important because using the minibuffer saves and restores the
current window configuration, and you don't want to signal an
error just because the user resized the frame while using the
minibuffer.
Jim Blandy [Sun, 13 Sep 1992 12:33:23 +0000 (12:33 +0000)]
* keymap.c (describe_buffer_bindings): Adjust key_heading to match
the format used by describe_map_tree. Also, don't reprint the
"key binding" header above the global bindings if we've already
printed it for the local bindings; it's clear enough that the
columns mean the same thing as above.
* keymap.c (describe_buffer_bindings): Declare buf and bufend...
* keymap.c (describe_buffer_bindings): Set the current buffer to
descbuf before calling current_minor_maps; that function's value
depends on the values of buffer-local variables. Don't set the
current buffer to Vstandard_output until afterwards.
* keymap.c (describe_buffer_bindings): If
Vkeyboard_translate_table is in effect, describe its effects.
Jim Blandy [Sun, 13 Sep 1992 12:31:15 +0000 (12:31 +0000)]
* keyboard.c (kbd_buffer_get_event): When performing the
FRAME_FOCUS_FRAME redirection, don't modify the frame field of
the event; that fatally corrupts mouse click events. Instead,
just perform the redirection on the value assigned to
Vlast_event_frame.
* keyboard.c (input_available_signal): Declare this to return
SIGTYPE.
Jim Blandy [Sun, 13 Sep 1992 12:21:15 +0000 (12:21 +0000)]
* editfns.c (Fcurrent_time_string): Change docstring to
indicate that we will probably add the timezone to the end,
now that we have it available on many systems.
Jim Blandy [Sun, 13 Sep 1992 12:19:42 +0000 (12:19 +0000)]
* callint.c (Fcall_interactively): Remove the 'K' interactive
code, in favor of 'e'; that's a better name.
* callint.c (Fcall_interactively): Don't try to get the
`enable-recursive-minibuffers' property from FUNCTION unless
FUNCTION is actually a symbol; there are some cases where a key
sequence is bound directly to a lambda form, and there's no reason
to break these.
Jim Blandy [Sun, 13 Sep 1992 12:14:54 +0000 (12:14 +0000)]
* alloc.c (mark_object): mark a symbol's name after marking its
value, function, and property list rather than before; this way,
symbols' names are readable, giving us a chance to detect some
kinds of heap corruption.
Richard M. Stallman [Sat, 12 Sep 1992 08:53:08 +0000 (08:53 +0000)]
(Ffile_name_directory, Ffile_name_nondirectory):
(Ffile_name_as_directory, Fdirectory_file_name, Fexpand_file_name):
Call find_file_handler.
(syms_of_fileio): Set up Qfile_name_directory, etc.
(Fcopy_file): Call find_file_handler for newname as well as for filename.
Richard M. Stallman [Sat, 12 Sep 1992 08:52:51 +0000 (08:52 +0000)]
(num_nonmacro_input_chars): New variable.
(read_char): Use num_nonmacro_input_chars to decide on auto-save & gc.
Increment it when appropriate.
(record_auto_save): Use num_nonmacro_input_chars.
Jim Blandy [Wed, 9 Sep 1992 00:05:42 +0000 (00:05 +0000)]
* ralloc.c (r_re_alloc): Instead of allocating a new bloc at the
end of the heap, copying the data to it, and then freeing the
original bloc, just expand the original block. This saves a copy
and a call to sbrk, and also removes the large spike in memory
allocation that would occur when resizing large buffers. And it's
less code.
Richard M. Stallman [Sat, 5 Sep 1992 05:34:24 +0000 (05:34 +0000)]
(scan_lists): Improve smarts for backwards scan of comments.
Don't modify comstyle inside that loop.
If string quotes don't match up, don't take value from OFROM;
instead, parse forward using scan_sexps_forward.
(scan_sexps_forward): Return value via a pointer passed in.
New element in state contains char addr of last comment-starter seen.
(Fparse_partial_sexp): Change call to scan_sexps_forward.
Richard M. Stallman [Sat, 5 Sep 1992 00:09:33 +0000 (00:09 +0000)]
(last_nonmenu_event): New var.
(syms_of_keyboard): New Lisp var.
(read_key_sequence): Use that instead of prev_event.
(read_char): Call read_char_menu_prompt here.
Accept 4 new args to pass to it. Include them in recursive call.
Don't delay before starting echo if prev_event was a mouse event.
Test for eof in batch mode now understands C is a Lisp_Object.
(read_key_sequence): Don't call it here; always call read_char.
Don't change last_event_buffer after a mouse menu input.
(read_char_menu_prompt): Arg PROMPT deleted.
Return nil if nothing to do.
(read_key_sequence): Keep track of prev_event.
Pass new proper args to read_char_menu_prompt.
(read_char_menu_prompt): New arg prev_event. Use Fx_popup_menu.
Handle any number of keymaps, not just LOCAL and GLOBAL.
Invert meaning of arg PROMPT. Test of menu_prompting was backwards.
Richard M. Stallman [Sat, 5 Sep 1992 00:08:07 +0000 (00:08 +0000)]
(xmenu_show): If no panes, just return.
(Fx_popup_menu): Treat coords relative to spec'd window.
(single_keymap_panes): New function; contains guts of keymap_panes.
If a command binding for submenu has a prompt string starting with @,
make a separate pane for it at this level.
(keymap_panes): New function.
(Fx_popup_menu): Accept keymap or list of keymaps as MENU argument.
Accept mouse button event as POSITION argument.
Jim Blandy [Fri, 4 Sep 1992 11:17:33 +0000 (11:17 +0000)]
* xterm.c (x_catch_errors): Don't forget to initialize
x_caught_error_message to the null string, so x_check_errors can
tell when an error has occurred.