bpt/emacs.git
31 years ago(search_command): #if 0 previous change.
Richard M. Stallman [Mon, 15 Feb 1993 05:55:45 +0000 (05:55 +0000)]
(search_command): #if 0 previous change.

31 years ago(search_command): When moving to LIM on failure, return LIM.
Richard M. Stallman [Mon, 15 Feb 1993 05:42:13 +0000 (05:42 +0000)]
(search_command): When moving to LIM on failure, return LIM.

31 years ago(Frename_buffer): Make prefix arg set UNIQUE.
Richard M. Stallman [Sun, 14 Feb 1993 23:08:25 +0000 (23:08 +0000)]
(Frename_buffer): Make prefix arg set UNIQUE.

31 years ago* xterm.c (x_set_window_size): Call change_frame_size instead of
Jim Blandy [Sun, 14 Feb 1993 14:40:55 +0000 (14:40 +0000)]
* xterm.c (x_set_window_size): Call change_frame_size instead of
just setting the `rows' and `cols' members of the frame, and
leaving the window tree in complete disarray.

* xterm.c (x_io_error_quitter): New function.
(x_error_quitter): Note that this is only used for protocol
errors now, not I/O errors.
(x_term_init): Set the I/O error handler to x_io_error_quitter.

31 years ago* frame.c (Fframe_parameters): Report the `minibuffer' parameter of
Jim Blandy [Sun, 14 Feb 1993 14:40:13 +0000 (14:40 +0000)]
* frame.c (Fframe_parameters): Report the `minibuffer' parameter of
minibufferless frames as nil, not `none'.
(Qnone): Remove declaration and initialization for this.  It's not
needed anymore.
* xfns.c (Qnone): Add them here; we still accept "none" as a valid
value for the `minibuffer' parameter.

* xfns.c (x_frame_params): Remember that the parameters are called
"auto-raise" and "auto-lower", not "autoraise" and "autolower".

31 years ago* xdisp.c (message): Set echo_frame to the frame whose message buf
Jim Blandy [Sun, 14 Feb 1993 14:39:45 +0000 (14:39 +0000)]
* xdisp.c (message): Set echo_frame to the frame whose message buf
we want to use, not to the message buf itself.

* xdisp.c (message): Use the message buffer of the frame we're
going to display the message on to format the message, not that of
the selected frame.

31 years ago* dispnew.c (remake_frame_glyphs): When re-allocating the frame's
Jim Blandy [Sun, 14 Feb 1993 14:39:09 +0000 (14:39 +0000)]
* dispnew.c (remake_frame_glyphs): When re-allocating the frame's
message buffer when echo_area_glyphs is pointing at it, relocate
echo_area_glyphs too.  Same for previous_echo_glyphs.
* window.h (previous_echo_glyphs): Add extern declaration for this.

31 years ago* keymap.c (Flookup_key, Fkey_binding, Flocal_key_binding,
Jim Blandy [Sun, 14 Feb 1993 14:38:43 +0000 (14:38 +0000)]
* keymap.c (Flookup_key, Fkey_binding, Flocal_key_binding,
Fglobal_key_binding, Fminor_mode_key_binding): Add a new optional
argument ACCEPT_DEFAULT, to control whether this function sees
bindings for t.
(Fwhere_is_internal, describe_map_tree, describe_map_2,
describe_vector): Pass the proper arguments to Flookup_key.

31 years ago* frame.c (Fframe_parameters): Report the `minibuffer' parameter of
Jim Blandy [Sun, 14 Feb 1993 14:38:19 +0000 (14:38 +0000)]
* frame.c (Fframe_parameters): Report the `minibuffer' parameter of
minibufferless frames as nil, not `none'.
(Qnone): Remove declaration and initialization for this.  It's not
needed anymore.
* xfns.c (Qnone): Add them here; we still accept "none" as a valid
value for the `minibuffer' parameter.

31 years ago* fileio.c (Fdo_auto_save): If NO_MESSAGE is non-nil, don't tell
Jim Blandy [Sun, 14 Feb 1993 14:37:33 +0000 (14:37 +0000)]
* fileio.c (Fdo_auto_save): If NO_MESSAGE is non-nil, don't tell
users that buffers have shrunk a lot.  This is called when Emacs
is crashing, so we don't want to run any code that isn't
absolutely necessary.  Also, autosave buffers which don't have
specially handled autosave file names first.

* fileio.c (Fexpand_file_name): Pass DEFALT through
Fexpand_file_name before using it.

* fileio.c (Fexpand_file_name): Doc fix.

31 years ago* s/usg5-4.h: #include "usg5-3.h", not "s-usg5-3.h".
Jim Blandy [Sun, 14 Feb 1993 14:36:14 +0000 (14:36 +0000)]
* s/usg5-4.h: #include "usg5-3.h", not "s-usg5-3.h".

31 years ago* subr.el (mod): Add back this alias for %.
Jim Blandy [Sun, 14 Feb 1993 14:35:19 +0000 (14:35 +0000)]
* subr.el (mod): Add back this alias for %.

31 years ago* rmailout.el (rmail-output, rmail-output-to-mail-file): Reverse
Jim Blandy [Sun, 14 Feb 1993 14:34:47 +0000 (14:34 +0000)]
* rmailout.el (rmail-output, rmail-output-to-mail-file): Reverse
the order of the arguments and make COUNT optional, for backward
compatibility's sake.

31 years ago* lisp-mode.el (lisp-fill-paragraph): New function.
Jim Blandy [Sun, 14 Feb 1993 14:33:44 +0000 (14:33 +0000)]
* lisp-mode.el (lisp-fill-paragraph): New function.
(shared-lisp-mode-map): Bind M-q to lisp-fill-paragraph.

31 years ago* gosmacs.el: Bind M-h to delete-previous-word, not
Jim Blandy [Sun, 14 Feb 1993 14:33:24 +0000 (14:33 +0000)]
* gosmacs.el: Bind M-h to delete-previous-word, not
backward-kill-word; the latter has different prefix semantics.

* gosmacs.el: Require 'mlsupport, to get definition of
backward-kill-word.

31 years ago* frame.el: Clean up initialization code.
Jim Blandy [Sun, 14 Feb 1993 14:29:30 +0000 (14:29 +0000)]
* frame.el: Clean up initialization code.
(initial-frame-alist): Doc fix.
(minibuffer-frame-alist): New default value, with a reasonable height.
(filtered-frame-list, minibuffer-frame-list): New functions.
(frame-initialize): Use minibuffer-frame-list, instead of writing
it out.
(frame-notice-user-settings): Thoroughly rearranged.
Notice changes to default-frame-alist as well as initial-frame-alist.
Properly handle requests to make the initial frame into a
minibufferless or minibuffer-only frame.
Create a minibuffer-only frame if the initial frame should lack a
minibuffer and there are no other minibuffer frames created by the
user's initialization file.
Fix any frames using the initial frame as a surrogate minibuffer
frame.
Restore the current buffer after creating and deleting all these
frames.

* frame.el (set-default-font, set-frame-background,
set-frame-foreground, set-cursor-color, set-pointer-color,
set-auto-raise, set-auto-lower, set-vertical-bar,
set-horizontal-bar): Give these docstrings.
(set-auto-raise, set-auto-lower, set-vertical-bar,
set-horizontal-bar): Make these toggle or look at the prefix
argument, like minor modes.

* frame.el (set-vertical-bar): Use the proper parameter symbol.
(set-horizontal-bar): Signal an error indicating that horizontal
scrollbars are not implemented.

31 years ago* fortran.el (fortran-prepare-abbrev-list-buffer): Put quote in
Jim Blandy [Sun, 14 Feb 1993 14:27:24 +0000 (14:27 +0000)]
* fortran.el (fortran-prepare-abbrev-list-buffer): Put quote in
front of first argument to `insert-abbrev-table-description'.

* fortran.el (fortran-is-in-string-p): Fixed incorrect behaviour
when in first statement of a buffer.

31 years ago* cl.el (cl-version): Mark as no longer in beta test.
Jim Blandy [Sun, 14 Feb 1993 14:26:41 +0000 (14:26 +0000)]
* cl.el (cl-version): Mark as no longer in beta test.

31 years ago* Makefile.in (COPYDIR, COPYDESTS): Remove ${srcdir}/info and
Jim Blandy [Sun, 14 Feb 1993 14:26:06 +0000 (14:26 +0000)]
* Makefile.in (COPYDIR, COPYDESTS): Remove ${srcdir}/info and
${infodir} from these variables; we have written out explicit code
to install the info files.

* Makefile.in: Some makes can't handle comments in the middle of
commands; move them to before the whole rule.

31 years ago* configure (progname): New option `--with-gcc'. Make it clearer
Jim Blandy [Sun, 14 Feb 1993 14:25:18 +0000 (14:25 +0000)]
* configure (progname): New option `--with-gcc'.  Make it clearer
how we are trying to guess whether or not we have GCC.
* INSTALL: Document the `--with-gcc' option, and improve
description of `--with-x' options.

31 years agoInitial revision
Jim Blandy [Sun, 14 Feb 1993 14:13:56 +0000 (14:13 +0000)]
Initial revision

31 years ago(Fadd_text_properties): Put OBJECT arg last. Make it optional.
Richard M. Stallman [Sat, 13 Feb 1993 21:56:10 +0000 (21:56 +0000)]
(Fadd_text_properties): Put OBJECT arg last.  Make it optional.
(Fset_text_properties, Fremove_text_properties): Likewise.
(Fnext_single_property_change, Fprevious_single_property_change):
(Fnext_property_change, Fprevious_property_change): Likewise.
(Ferase_text_properties): #if 0.
(Fget_text_property): New function.

31 years ago(C_SWITCH_MACHINE): Don't define if GCC.
Richard M. Stallman [Sat, 13 Feb 1993 11:34:19 +0000 (11:34 +0000)]
(C_SWITCH_MACHINE): Don't define if GCC.

31 years ago(enable-flow-control...): Renamed from evade...
Richard M. Stallman [Thu, 11 Feb 1993 23:32:07 +0000 (23:32 +0000)]
(enable-flow-control...): Renamed from evade...
(enable-flow-control): Add autoload.

31 years ago(Finsert_buffer_substring): Proper error for non-ex buffer.
Richard M. Stallman [Thu, 11 Feb 1993 23:21:01 +0000 (23:21 +0000)]
(Finsert_buffer_substring): Proper error for non-ex buffer.
(Fcompare_buffer_substrings): Likewise.

31 years ago(Fcompare_buffer_substrings): New function.
Richard M. Stallman [Thu, 11 Feb 1993 06:00:51 +0000 (06:00 +0000)]
(Fcompare_buffer_substrings): New function.

31 years agoremoved m88kbcs, changed delta88 and harris to
John Hassey [Wed, 10 Feb 1993 17:56:58 +0000 (17:56 +0000)]
removed m88kbcs, changed delta88 and harris to
        use sysv3.

31 years agoUpdate GPL version.
Richard M. Stallman [Wed, 10 Feb 1993 07:08:53 +0000 (07:08 +0000)]
Update GPL version.

31 years ago(set-gosmacs-bindings): Fix binding of \eh.
Richard M. Stallman [Wed, 10 Feb 1993 06:45:33 +0000 (06:45 +0000)]
(set-gosmacs-bindings): Fix binding of \eh.

31 years ago(char_ins_del_cost): Use FRAME_WIDTH, not FRAME_HEIGHT.
Richard M. Stallman [Wed, 10 Feb 1993 06:14:12 +0000 (06:14 +0000)]
(char_ins_del_cost): Use FRAME_WIDTH, not FRAME_HEIGHT.

31 years agoFix copyright notice.
Richard M. Stallman [Tue, 9 Feb 1993 09:58:19 +0000 (09:58 +0000)]
Fix copyright notice.

31 years ago(add-change-log-entry): Undo Jan 25 change. It worked for buffers in
Roland McGrath [Mon, 8 Feb 1993 22:25:34 +0000 (22:25 +0000)]
(add-change-log-entry): Undo Jan 25 change.  It worked for buffers in
indented-text-mode, but lost for change-log-mode, which is what matters.

31 years ago(compilation-forget-errors): Just set
Roland McGrath [Mon, 8 Feb 1993 20:46:10 +0000 (20:46 +0000)]
(compilation-forget-errors): Just set
compilation-directory-stack to nil; no need to loop through it.
(next-error): For a non-numeric prefix arg, pass nil for
compile-reinitialize-errors's FIND-AT-LEAST arg.
(next-error): When getting marker for error source location, be
sure to examine buffer local value of compilation-old-error-list
before switching to source file buffer.

31 years ago(sort-subr): Fix previous change.
Richard M. Stallman [Sun, 7 Feb 1993 16:44:11 +0000 (16:44 +0000)]
(sort-subr): Fix previous change.

31 years ago(sort-build-lists): Record the key as pair of positions;
Richard M. Stallman [Sun, 7 Feb 1993 05:54:14 +0000 (05:54 +0000)]
(sort-build-lists): Record the key as pair of positions;
don't copy string from buffer.
(sort-subr): Use compare-buffer-substrings.

31 years ago(mail-setup): Use fill-region-as-paragraph
Richard M. Stallman [Sun, 7 Feb 1993 04:56:23 +0000 (04:56 +0000)]
(mail-setup): Use fill-region-as-paragraph
for To field; handle the CC just like the To.

31 years ago(extra_keyboard_modifiers): New Lisp var.
Richard M. Stallman [Sun, 7 Feb 1993 00:31:58 +0000 (00:31 +0000)]
(extra_keyboard_modifiers): New Lisp var.
(read_char): Support ctl and meta bits in extra_keyboard_modifiers.

31 years ago(XTread_socket): Support extra_keyboard_modifiers.
Richard M. Stallman [Sun, 7 Feb 1993 00:30:36 +0000 (00:30 +0000)]
(XTread_socket): Support extra_keyboard_modifiers.

31 years ago(i[34]86sol2): New abbrev for i[34]86-unknown-solaris2.
Jim Wilson [Fri, 5 Feb 1993 23:42:43 +0000 (23:42 +0000)]
(i[34]86sol2):  New abbrev for i[34]86-unknown-solaris2.

31 years ago(make-comint): Added docstring.
Roland McGrath [Fri, 5 Feb 1993 18:28:05 +0000 (18:28 +0000)]
(make-comint): Added docstring.

31 years agoRestore nuked information in minibuffer history bindings.
Roland McGrath [Fri, 5 Feb 1993 17:41:42 +0000 (17:41 +0000)]
Restore nuked information in minibuffer history bindings.
Use intelligent method of disabling completion-oriented bindings.

31 years agoOnce again, go back to ordinary next-history-element
Richard M. Stallman [Fri, 5 Feb 1993 02:06:38 +0000 (02:06 +0000)]
Once again, go back to ordinary next-history-element
for M-n in minibuf, even for completion.

31 years ago(sort-subr): Doc fixes.
Richard M. Stallman [Wed, 3 Feb 1993 04:33:30 +0000 (04:33 +0000)]
(sort-subr): Doc fixes.

31 years ago(mail-do-fcc): Allow dash in timezone name.
Richard M. Stallman [Tue, 2 Feb 1993 20:40:41 +0000 (20:40 +0000)]
(mail-do-fcc): Allow dash in timezone name.

31 years ago* simple.el (kill-region): If the buffer is read-only, do beep,
Jim Blandy [Mon, 1 Feb 1993 22:31:17 +0000 (22:31 +0000)]
* simple.el (kill-region): If the buffer is read-only, do beep,
but also put the region in the kill ring.  Doc fix.

31 years ago* texinfo.el (texinfo-mode): Make page-delimiter buffer-local, and
Jim Blandy [Mon, 1 Feb 1993 22:19:52 +0000 (22:19 +0000)]
* texinfo.el (texinfo-mode): Make page-delimiter buffer-local, and
set it according to texinfo-chapter-level-regexp.

31 years ago(mail-abbrev-end-of-buffer): Changed interactive spec from "P" to "p".
Roland McGrath [Sun, 31 Jan 1993 20:48:19 +0000 (20:48 +0000)]
(mail-abbrev-end-of-buffer): Changed interactive spec from "P" to "p".

31 years ago(c-macro-expand): Use expanded name to write or delete.
Richard M. Stallman [Sat, 30 Jan 1993 03:43:24 +0000 (03:43 +0000)]
(c-macro-expand): Use expanded name to write or delete.
Send two eofs.

31 years ago(force_fit_type): Abort if T not INTEGER_CST.
Richard M. Stallman [Sat, 30 Jan 1993 02:16:57 +0000 (02:16 +0000)]
(force_fit_type): Abort if T not INTEGER_CST.

31 years ago* window.c (Fscroll_left, Fscroll_right): Don't forget to apply
Jim Blandy [Sat, 30 Jan 1993 01:21:00 +0000 (01:21 +0000)]
* window.c (Fscroll_left, Fscroll_right): Don't forget to apply
XWINDOW to selected_window before passing it to window_internal_width.

31 years ago* xmenu.c (Fx_popup_menu): Don't forget to turn the frame-relative
Jim Blandy [Fri, 29 Jan 1993 22:13:36 +0000 (22:13 +0000)]
* xmenu.c (Fx_popup_menu): Don't forget to turn the frame-relative
coordinates for the menu position into root-window-relative
coordinates.

31 years ago* lread.c (read1): Although digits followed by a '.' are an
Jim Blandy [Fri, 29 Jan 1993 21:32:37 +0000 (21:32 +0000)]
* lread.c (read1): Although digits followed by a '.' are an
integer, a single . by itself (like, say, \.) should be a symbol.

31 years ago(next-complete-history-element): Restore point after replacing the
Roland McGrath [Thu, 28 Jan 1993 20:22:03 +0000 (20:22 +0000)]
(next-complete-history-element): Restore point after replacing the
buffer text with the appropriate history element.

31 years ago(sendmail-program): Try /usr/ucblib/sendmail.
Richard M. Stallman [Thu, 28 Jan 1993 06:17:47 +0000 (06:17 +0000)]
(sendmail-program): Try /usr/ucblib/sendmail.

31 years agoDon't use the completion-oriented history commands.
Richard M. Stallman [Thu, 28 Jan 1993 06:16:04 +0000 (06:16 +0000)]
Don't use the completion-oriented history commands.

31 years ago* make-dist: Don't distributed the RCS files in the etc directory.
Jim Blandy [Tue, 26 Jan 1993 04:28:27 +0000 (04:28 +0000)]
* make-dist: Don't distributed the RCS files in the etc directory.

31 years ago* fns.c (internal_equal): Protect the clause for comparing numbers
Jim Blandy [Tue, 26 Jan 1993 03:05:54 +0000 (03:05 +0000)]
* fns.c (internal_equal): Protect the clause for comparing numbers
of different tpes with a "#ifdef LISP_FLOAT_TYPE".

31 years agoJimB's changes since January 18th
Jim Blandy [Tue, 26 Jan 1993 01:58:16 +0000 (01:58 +0000)]
JimB's changes since January 18th

31 years agoJimB's changes from January 18 to present
Jim Blandy [Tue, 26 Jan 1993 01:56:29 +0000 (01:56 +0000)]
JimB's changes from January 18 to present

31 years ago* disass.el (disassemble): Add autoload cookie for this.
Jim Blandy [Tue, 26 Jan 1993 01:36:02 +0000 (01:36 +0000)]
* disass.el (disassemble): Add autoload cookie for this.
* bytecomp.el (byte-decompile-bytecode): Add an autoload for this.

compiled-function-p has been renamed to byte-code-function-p.
* subr.el: Define compiled-function-p as an alias for it.
* bytecomp.el: Register compiled-function-p as obsolete.
* bytecomp.el, byte-opt.el, disass.el, help.el, map-ynp.el: Change
uses.

unread-command-event has been replaced by unread-command-events.
* simple.el (prefix-arg-internal): Use this to push back all
key sequences for processing by the main command loop, instead of
trying to simulate its behavior ourselves.
* bytecomp.el: Document unread-command-event as an obsolete
variable, although nothing but the GNU Emacs 19 sources use it.
Adjust obsolescence message for unread-command-char.
* comint.el (comint-dynamic-list-completions): Change uses of
unread-command-event to work with unread-command-events.
* ebuff-menu.el (electric-buffer-list, Electric-buffer-menu-exit):
Same.
* edebug.el (edebug-outside-excursion): Same.
* ehelp.el (electric-help-command-loop): Same.
* electric.el (Electric-command-loop): Same.
* emerge.el (emerge-show-file-name): Same.
* fortran.el (fortran-abbrev-start,
fortran-window-create-momentarily): Same.
* gnus.el (gnus-Subject-next-article): Same.
* info.el (Info-summary): Same.
* isearch-mode.el (isearch-update, isearch-unread): Same.
* map-ynp.el (map-y-or-n-p): Same.
* mlsupport.el (push-back-character): Same.
* replace.el (perform-replace): Same.
* simula.el (simula-electric-label): Same.
* subr.el (read-quoted-char, momentary-string-display): Same.
* sun-mouse.el (mouse-second-hit): Same.
* terminal.el (te-escape-extended-command-unread): Same.
* vip.el (vip-escape-to-emacs, vip-prefix-arg-value,
vip-prefix-arg-com): Same.

31 years agocompiled-function-p has been renamed to byte-code-function-p.
Jim Blandy [Tue, 26 Jan 1993 01:29:51 +0000 (01:29 +0000)]
compiled-function-p has been renamed to byte-code-function-p.
* subr.el: Define compiled-function-p as an alias for it.
* bytecomp.el: Register compiled-function-p as obsolete.
* bytecomp.el, byte-opt.el, disass.el, help.el, map-ynp.el: Change
uses.

31 years agox-selection-value has been renamed to x-selection.
Jim Blandy [Tue, 26 Jan 1993 01:26:58 +0000 (01:26 +0000)]
x-selection-value has been renamed to x-selection.
x-own-selection has been renamed to x-set-selection, and the order
of its arguments has been reversed, for consistency with other
lisp functions like put and aset.
* term/x-win.el (x-select-text): Adjusted.
(x-cut-buffer-or-selection-value): Check the primary selection,
using x-selection, instead of checking the cut buffer again.

* term/x-win.el: Doc fix.

31 years ago(tags-query-replace): C-t
Roland McGrath [Mon, 25 Jan 1993 23:30:39 +0000 (23:30 +0000)]
(tags-query-replace): C-t

31 years ago[TERMINFO]: Don't define LIBS_TERMCAP.
Richard M. Stallman [Mon, 25 Jan 1993 20:12:52 +0000 (20:12 +0000)]
[TERMINFO]: Don't define LIBS_TERMCAP.

31 years ago[__GNUC__] (LD_SWITCH_SYSTEM): Remove -a.
Richard M. Stallman [Mon, 25 Jan 1993 20:11:29 +0000 (20:11 +0000)]
[__GNUC__] (LD_SWITCH_SYSTEM): Remove -a.
[__GNUC__] (ORDINARY_LINK): Defined.

31 years ago(add-change-log-entry): Restrict PARAGRAPH-END to being on the first
Roland McGrath [Mon, 25 Jan 1993 17:05:57 +0000 (17:05 +0000)]
(add-change-log-entry): Restrict PARAGRAPH-END to being on the first
page.

31 years ago(next-complete-history-element): Use only buffer contents before point
Roland McGrath [Mon, 25 Jan 1993 16:59:48 +0000 (16:59 +0000)]
(next-complete-history-element): Use only buffer contents before point
to match history elements.

31 years ago({next,previous}-complete-history-element): New functions.
Roland McGrath [Mon, 25 Jan 1993 00:45:01 +0000 (00:45 +0000)]
({next,previous}-complete-history-element): New functions.
Bind them to M-n/M-p and next/prior in minibuffer completion maps.

31 years ago* xterm.c (x_scrollbar_create): Set the scrollbars to use
Jim Blandy [Fri, 22 Jan 1993 02:47:12 +0000 (02:47 +0000)]
* xterm.c (x_scrollbar_create): Set the scrollbars to use
EastGravity.

* frame.c (Fdelete_frame): Clear the frame's display after calling
the window-system-dependent frame destruction routine.  We
no longer need to pass the display as a separate argument to
x_destroy_window.
* xterm.c (x_destroy_window): Put the code which clears out f's
display here, right after we free the storage it points to.  Put
everything, including the code which clears x_focus_frame and
x_highlight_frame, inside the BLOCK/UNBLOCK_INPUT pair.

31 years ago* frame.c (Fdelete_frame): Clear the frame's display after calling
Jim Blandy [Fri, 22 Jan 1993 02:45:16 +0000 (02:45 +0000)]
* frame.c (Fdelete_frame): Clear the frame's display after calling
the window-system-dependent frame destruction routine.  We
no longer need to pass the display as a separate argument to
x_destroy_window.
* xterm.c (x_destroy_window): Put the code which clears out f's
display here, right after we free the storage it points to.  Put
everything, including the code which clears x_focus_frame and
x_highlight_frame, inside the BLOCK/UNBLOCK_INPUT pair.

* frame.c (Fdelete_frame): Clear the frame's display after calling
the window-system-dependent frame destruction routine.  We
no longer need to pass the display as a separate argument to
x_destroy_window.
* xterm.c (x_destroy_window): Put the code which clears out f's
display here, right after we free the storage it points to.  Put
everything, including the code which clears x_focus_frame and
x_highlight_frame, inside the BLOCK/UNBLOCK_INPUT pair.

31 years ago(tags-loop-scan): Set default value to an error form.
Roland McGrath [Thu, 21 Jan 1993 22:43:16 +0000 (22:43 +0000)]
(tags-loop-scan): Set default value to an error form.

31 years ago(visit-tags-table-buffer): When propagating a change of name after
Roland McGrath [Thu, 21 Jan 1993 22:36:48 +0000 (22:36 +0000)]
(visit-tags-table-buffer): When propagating a change of name after
file-find-noselect, refer to tags-file-name, not the undefined var FILE.

31 years ago(visit-tags-table-buffer): Error if called with 'same and no current table.
Roland McGrath [Tue, 19 Jan 1993 21:05:15 +0000 (21:05 +0000)]
(visit-tags-table-buffer): Error if called with 'same and no current table.

31 years ago(Fdisplay_buffer): Doc fix.
Roland McGrath [Tue, 19 Jan 1993 00:56:45 +0000 (00:56 +0000)]
(Fdisplay_buffer): Doc fix.

31 years ago* c-mode.el (c-switch-label-regexp): New constant.
Jim Blandy [Sat, 16 Jan 1993 06:04:16 +0000 (06:04 +0000)]
* c-mode.el (c-switch-label-regexp): New constant.
(electric-c-terminator, c-indent-line, indent-c-exp): Use it to
correctly recognize default labels in switch statements.

31 years ago* xterm.c (x_window_to_scrollbar): Search frames'
Jim Blandy [Sat, 16 Jan 1993 05:58:15 +0000 (05:58 +0000)]
* xterm.c (x_window_to_scrollbar): Search frames'
condemned_scrollbars list as well; input might arrive during
redisplay.
(x_scrollbar_report_motion): Don't forget to BLOCK_INPUT.
(XTjudge_scrollbars): Clear the condemned scrollbar list before
traversing it, so we don't try to process an event on a scrollbar
we've killed.

31 years ago(Frecent_keys): Doc fix.
Richard M. Stallman [Fri, 15 Jan 1993 21:57:50 +0000 (21:57 +0000)]
(Frecent_keys): Doc fix.

31 years ago(shell): Doc fix.
Richard M. Stallman [Fri, 15 Jan 1993 07:02:35 +0000 (07:02 +0000)]
(shell): Doc fix.

31 years agoAdd copyright and authorship notices.
Paul Eggert [Fri, 15 Jan 1993 05:33:29 +0000 (05:33 +0000)]
Add copyright and authorship notices.

31 years ago(switch-to-buffer-other-frame): Pass t to pop-to-buffer.
Roland McGrath [Thu, 14 Jan 1993 21:28:18 +0000 (21:28 +0000)]
(switch-to-buffer-other-frame): Pass t to pop-to-buffer.

31 years ago(Fwindow_at): Doc fix.
Richard M. Stallman [Thu, 14 Jan 1993 21:20:01 +0000 (21:20 +0000)]
(Fwindow_at): Doc fix.

31 years ago*** empty log message ***
David J. MacKenzie [Thu, 14 Jan 1993 20:38:21 +0000 (20:38 +0000)]
*** empty log message ***

31 years ago(find_entries): If filename ends in .f or .for, don't try anything but Fortran.
Richard M. Stallman [Thu, 14 Jan 1993 20:09:22 +0000 (20:09 +0000)]
(find_entries): If filename ends in .f or .for, don't try anything but Fortran.

31 years agoThe shell comment char is #, not ;.
Jim Blandy [Thu, 14 Jan 1993 17:45:39 +0000 (17:45 +0000)]
The shell comment char is #, not ;.

31 years agoRemove info from the distribution. It looks very out of date now.
Jim Blandy [Thu, 14 Jan 1993 17:37:06 +0000 (17:37 +0000)]
Remove info from the distribution.  It looks very out of date now.

31 years ago* xterm.c (x_scrollbar_create): Include PointerMotionHintMask in
Jim Blandy [Thu, 14 Jan 1993 17:31:56 +0000 (17:31 +0000)]
* xterm.c (x_scrollbar_create): Include PointerMotionHintMask in
the event mask for scrollbars.

31 years ago* make-dist: Include `./lisp/calc-2.02' in the distribution.
Jim Blandy [Thu, 14 Jan 1993 17:30:26 +0000 (17:30 +0000)]
* make-dist: Include `./lisp/calc-2.02' in the distribution.
Add `./cpp', `./info', and `./man' back into the distribution.

31 years ago* dispnew.c (Fredraw_display): DEFUN was missing a closing paren.
Jim Blandy [Thu, 14 Jan 1993 16:15:54 +0000 (16:15 +0000)]
* dispnew.c (Fredraw_display): DEFUN was missing a closing paren.

31 years ago* make-dist: Remember that the authoritative COPYING notice is
Jim Blandy [Thu, 14 Jan 1993 15:37:33 +0000 (15:37 +0000)]
* make-dist: Remember that the authoritative COPYING notice is
`etc/COPYING', not `../etc/COPYING'.

31 years ago* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy [Thu, 14 Jan 1993 15:36:25 +0000 (15:36 +0000)]
* .gdbinit: Add "-geometry +0+0" to default args.
(xscrollbar): New command.

31 years agoMake scrollbar structures into lisp objects, so that they can be
Jim Blandy [Thu, 14 Jan 1993 15:34:59 +0000 (15:34 +0000)]
Make scrollbar structures into lisp objects, so that they can be
GC'd; this allows windows and scrollbars can refer to each other
without worrying about dangling pointers.
* xterm.h (struct x_display): vertical_scrollbars and
judge_timestamp members deleted.
(struct scrollbar): Redesigned to be a template for a Lisp_Vector.
(SCROLLBAR_VEC_SIZE, XSCROLLBAR, SCROLLBAR_PACK, SCROLLBAR_UNPACK,
SCROLLBAR_X_WINDOW, SET_SCROLLBAR_X_WINDOW,
VERTICAL_SCROLLBAR_INSIDE_WIDTH, VERTICAL_SCROLLBAR_TOP_RANGE,
VERTICAL_SCROLLBAR_INSIDE_HEIGHT, VERTICAL_SCROLLBAR_MIN_HANDLE):
New macros, to help deal with the lispy structures, and deal with
the graphics.
* frame.h (WINDOW_VERTICAL_SCROLLBAR): Macro deleted.
(struct frame): New fields `scrollbars' and
`condemned_scrollbars', for use by the scrollbar implementation.
[MULTI_FRAME and not MULTI_FRAME] (FRAME_SCROLLBARS,
FRAME_CONDEMNED_SCROLLBARS): Accessors for the new field.
* window.h (struct window): Doc fix for vertical_scrollbar field.
* frame.c (make_frame): Initialize the `scrollbars' and
`condemned_scrollbars' fields of the new frame.
* alloc.c (mark_object): Mark the `scrollbars' and
`condemned_scrollbars' slots of frames.
* xterm.c (x_window_to_scrollbar): Scrollbars are chained on
frames' scrollbar field, not their x.display->vertical_scrollbars
field.
(x_scrollbar_create, x_scrollbar_set_handle, x_scrollbar_move,
x_scrollbar_remove, XTset_vertical_scrollbar,
XTcondemn_scrollbars, XTredeem_scrollbar, XTjudge_scrollbars,
x_scrollbar_expose, x_scrollbar_handle_click,
x_scrollbar_handle_motion): Substantially rewritten to correct
typos and brainos, and to accomodate the lispy structures.

* xterm.h (CHAR_TO_PIXEL_WIDTH, CHAR_TO_PIXEL_HEIGHT,
PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Rewritten, using:
(CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, PIXEL_TO_CHAR_ROW,
PIXEL_TO_CHAR_COL): New macros.
* xfns.c [not HAVE_X11] (Fx_create_frame): Use the
PIXEL_TO_CHAR_{HEIGHT,WIDTH} macros to figure the frame's
character size, and the CHAR_TO_PIXEL* macros for vice versa.
* xterm.c (XTwrite_glyphs, XTclear_end_of_line, stufflines,
scraplines, dumprectangle, pixel_to_glyph_coords, x_draw_box,
clear_cursor, x_display_bar_cursor, x_draw_single_glyph,
x_set_mouse_position): Use the CHAR_TO_PIXEL_* macros.

31 years agoMake scrollbar structures into lisp objects, so that they can be
Jim Blandy [Thu, 14 Jan 1993 15:34:14 +0000 (15:34 +0000)]
Make scrollbar structures into lisp objects, so that they can be
GC'd; this allows windows and scrollbars can refer to each other
without worrying about dangling pointers.
* xterm.h (struct x_display): vertical_scrollbars and
judge_timestamp members deleted.
(struct scrollbar): Redesigned to be a template for a Lisp_Vector.
(SCROLLBAR_VEC_SIZE, XSCROLLBAR, SCROLLBAR_PACK, SCROLLBAR_UNPACK,
SCROLLBAR_X_WINDOW, SET_SCROLLBAR_X_WINDOW,
VERTICAL_SCROLLBAR_INSIDE_WIDTH, VERTICAL_SCROLLBAR_TOP_RANGE,
VERTICAL_SCROLLBAR_INSIDE_HEIGHT, VERTICAL_SCROLLBAR_MIN_HANDLE):
New macros, to help deal with the lispy structures, and deal with
the graphics.
* frame.h (WINDOW_VERTICAL_SCROLLBAR): Macro deleted.
(struct frame): New fields `scrollbars' and
`condemned_scrollbars', for use by the scrollbar implementation.
[MULTI_FRAME and not MULTI_FRAME] (FRAME_SCROLLBARS,
FRAME_CONDEMNED_SCROLLBARS): Accessors for the new field.
* window.h (struct window): Doc fix for vertical_scrollbar field.
* frame.c (make_frame): Initialize the `scrollbars' and
`condemned_scrollbars' fields of the new frame.
* alloc.c (mark_object): Mark the `scrollbars' and
`condemned_scrollbars' slots of frames.
* xterm.c (x_window_to_scrollbar): Scrollbars are chained on
frames' scrollbar field, not their x.display->vertical_scrollbars
field.
(x_scrollbar_create, x_scrollbar_set_handle, x_scrollbar_move,
x_scrollbar_remove, XTset_vertical_scrollbar,
XTcondemn_scrollbars, XTredeem_scrollbar, XTjudge_scrollbars,
x_scrollbar_expose, x_scrollbar_handle_click,
x_scrollbar_handle_motion): Substantially rewritten to correct
typos and brainos, and to accomodate the lispy structures.

* xterm.c (x_scrollbar_background_expose): Function deleted; we
don't want anything in the background there after all.
(XTread_socket): Don't call x_scrollbar_background_expose.  We
don't care.

* xterm.h (CHAR_TO_PIXEL_WIDTH, CHAR_TO_PIXEL_HEIGHT,
PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Rewritten, using:
(CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, PIXEL_TO_CHAR_ROW,
PIXEL_TO_CHAR_COL): New macros.
* xfns.c [not HAVE_X11] (Fx_create_frame): Use the
PIXEL_TO_CHAR_{HEIGHT,WIDTH} macros to figure the frame's
character size, and the CHAR_TO_PIXEL* macros for vice versa.
* xterm.c (XTwrite_glyphs, XTclear_end_of_line, stufflines,
scraplines, dumprectangle, pixel_to_glyph_coords, x_draw_box,
clear_cursor, x_display_bar_cursor, x_draw_single_glyph,
x_set_mouse_position): Use the CHAR_TO_PIXEL_* macros.

* xterm.c (x_wm_set_size_hint): The max_width and max_height
members of the size_hints are expressed in pixels, not columns.

* xterm.c (x_set_window_size): Remove ibw var; it's not used.
Set FRAME_WIDTH (f) to cols instead of rows.  Duh.

* xterm.c (pixel_to_glyph_coords): Properly set *bounds to the
character cell bounding the position, even when the position is
off the frame.

* termhooks.h (mouse_position_hook): Doc fix.
(set_vertical_scrollbar_hook): This doesn't return anything any
more, and doesn't take a struct scrollbar * argument any more.
(condemn_scrollbars_hook, redeem_scrollbar_hook,
judge_scrollbars_hook): Doc fixes.
* term.c (mouse_position_hook): Doc fix.
(set_vertical_scrollbar_hook): This doesn't return
anything any more.  Doc fixes.
* keyboard.c (kbd_buffer_get_event): Receive the scrollbar's
window from *mouse_position_hook and pass it to
make_lispy_movement, instead of working with a pointer to a struct
scrollbar.
(make_lispy_event): We don't need a window_from_scrollbar function
anymore; we are given the window directly in *EVENT.
Unify the code which generates
text-area mouse clicks and scrollbar clicks; use the same code to
distinguish clicks from drags on the scrollbar as in the text area.
Distinguish clicks from drags by storing a copy of the lispy
position list returned as part of the event.
(button_down_location): Make this a lisp vector, rather than an
array of random structures.
(struct mouse_position): Remove this; it's been replaced by a lisp
list.
(make_lispy_movement): Accept the scrollbar's window as a
parameter, rather than the scrollbar itself.
If FRAME is zero, assume that the other arguments are garbage.
(syms_of_keyboard): No need to staticpro each window of
button_down_location now; just initialize and staticpro it.
* window.c (window_from_scrollbar): Function deleted; no longer
needed.
* xdisp.c (redisplay_window): Just pass the window to
set_vertical_scrollbar hook; don't pass the scrollbar object too.
* xterm.c (XTmouse_position): Don't return a pointer to the
scrollbar for scrollbar motion; instead, return the scrollbar's
window.

* xterm.c (XTmouse_position): Entirely rewritten, using
XTranslateCoordinates.  Call x_scrollbar_report_motion to handle
scrollbar movement events.
(x_scrollbar_report_motion): New function, to help out
XTmouse_position.

* termhooks.h (struct input_event): Replace the frame member with
a Lisp_Object member by the name of frame_or_window.  Doc fixes.
Remove the scrollbar member; instead, use frame_or_window to hold the
window whose scrollbar was clicked.
* keyboard.c (kbd_buffer_store_event, kbd_buffer_get_event,
make_lispy_event): Adjust references to frame member of struct
input_event to use frame_or_window now.
* xterm.c (construct_mouse_click, XTread_socket): Same.

* xterm.c (last_mouse_bar, last_mouse_bar_frame, last_mouse_part,
last_mouse_scroll_range_start, last_mouse_scroll_range_end):
Replaced with...
(last_mouse_scrollbar): New variable.
(note_mouse_movement): Clear last_mouse_scrollbar when we have
receieved a new motion.
(syms_of_xterm): Staticpro last_mouse_scrollbar.

* xterm.c (note_mouse_position): Renamed to note_mouse_movement,
because that's what it really does.
(x_scrollbar_handle_motion): Renamed to x_scrollbar_note_movement,
for consistency.
(XTread_socket): Adjusted.

* xterm.c (XTset_scrollbar): Renamed to XTset_vertical_scrollbar.
(x_term_init): Adjusted.

* emacs.c (shut_down_emacs): New function.
(fatal_error_signal, Fkill_emacs): Call it, instead of writing it out.
* xterm.c (x_connection_closed): Call shut_down_emacs instead of
Fkill_emacs; the latter will try to perform operations on the X
server and die a horrible death.
* lisp.h (shut_down_emacs): Add extern declaration for it.

* xterm.c (x_error_quitter): Move the abort call to after we print
the error message.  No harm in that.

31 years ago* xfns.c (Fx_create_frame): After mapping the frame, call
Jim Blandy [Thu, 14 Jan 1993 15:19:55 +0000 (15:19 +0000)]
* xfns.c (Fx_create_frame): After mapping the frame, call
SET_FRAME_GARBAGED, not just plain FRAME_GARBAGED.

* xfns.c (Qvertical_scrollbars): New symbol.  Use it as the name
of the parameter which decides whether or not the frame has
scrollbars, instead of Qvertical_scrollbar.
(Fx_create_frame): Adjusted accordingly.
(syms_of_xfns): Initialize and staticpro Qvertical_scrollbars.
(x_set_vertical_scrollbar): Renamed to x_set_vertical_scrollbars.
(x_frame_parms): Adjusted accordingly.

* xterm.h (CHAR_TO_PIXEL_WIDTH, CHAR_TO_PIXEL_HEIGHT,
PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Rewritten, using:
(CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, PIXEL_TO_CHAR_ROW,
PIXEL_TO_CHAR_COL): New macros.
* xfns.c [not HAVE_X11] (Fx_create_frame): Use the
PIXEL_TO_CHAR_{HEIGHT,WIDTH} macros to figure the frame's
character size, and the CHAR_TO_PIXEL* macros for vice versa.
* xterm.c (XTwrite_glyphs, XTclear_end_of_line, stufflines,
scraplines, dumprectangle, pixel_to_glyph_coords, x_draw_box,
clear_cursor, x_display_bar_cursor, x_draw_single_glyph,
x_set_mouse_position): Use the CHAR_TO_PIXEL_* macros.

* xfns.c (x_set_name): To request that the modelines be redrawn,
execute the statement "update_mode_lines = 1;" instead of the
silly statement "update_mode_lines;".

* xfns.c (x_set_vertical_scrollbars): Don't try to set the
X window's size if the frame's X window hasn't been created yet.

* xfns.c (x_figure_window_size): Set the frame's
vertical_scrollbar_extra field before trying to calculate its
pixel dimensions.

* xfns.c (x_window): When calling x_implicitly_set_name for the
sake of drawing the name for the first time, remember to clear and
set the frame's explicit_name member as well as its name member.
(Fx_create_frame): Set the frame's explicit_name member if the
user specified the name explicitly.

* xfns.c (Fx_get_resource): Add CLASS argument, to give class of
ATTRIBUTE.
[not HAVE_X11]: Change definition of Fx_get_resource macro
accordingly.
(x_get_arg): Add CLASS argument, to give the class of ATTRIBUTE.
Pass it along to Fx_get_resource.
(x_figure_window_size, x_icon): Pass new argument to x_get_arg.
(x_default_parameter): Add XCLASS argument, to give the class of
XPROP.  Pass it along to x_get_arg.
(Fx_create_frame): Pass new args to x_get_arg and
x_default_parameter.

* xfns.c (Fx_create_frame): Use the same resource names and
classes as xterm and Emacs 18.

31 years ago* window.c (window_internal_width): New function, which accounts
Jim Blandy [Thu, 14 Jan 1993 15:18:53 +0000 (15:18 +0000)]
* window.c (window_internal_width): New function, which accounts
for scrollbars if present.
* lisp.h (window_internal_height, window_internal_width): Add
extern declarations for these.
* dispnew.c (direct_output_for_insert, direct_output_forward_char,
buffer_posn_from_coords): Use window_internal_width instead of
writing out its definition.
* indent.c (compute_motion): Doc fix; mention scrollbars and
window_internal_width.
(pos_tab_offset, Fvertical_motion): Use window_internal_width
instead of writing it out.
* window.c (Fpos_visible_in_window_p, Fwindow_width, Fscroll_left,
Fscroll_right): Same.
* xdisp.c (redisplay, try_window, try_window_id,
display_text_line): Same.

* xdisp.c (display_string): Add new variable `f', to be W's
frame.  Use it to set desired_glyphs, and to get the frame's width
to decide whether or not to draw vertical bars.

* xdisp.c (display_text_line): If we're using vertical scrollbars,
don't draw the vertical bars separating side-by-side windows.
(display_string): Same thing.  Draw spaces to fill in the part of
the mode line that is under the scrollbar in partial-width
windows.

* xdisp.c (display_text_line): Use the usable internal width of
the window, as calculated above, as the limit on the length of the
overlay arrow's image, rather than using the window's width field,
less one.

* xdisp.c (redisplay): Call condemn_scrollbars_hook and
judge_scrollbars_hook whenever they are set, not just when the
frame has vertical scrollbars.

* termhooks.h (mouse_position_hook): Doc fix.
(set_vertical_scrollbar_hook): This doesn't return anything any
more, and doesn't take a struct scrollbar * argument any more.
(condemn_scrollbars_hook, redeem_scrollbar_hook,
judge_scrollbars_hook): Doc fixes.
* term.c (mouse_position_hook): Doc fix.
(set_vertical_scrollbar_hook): This doesn't return
anything any more.  Doc fixes.
* keyboard.c (kbd_buffer_get_event): Receive the scrollbar's
window from *mouse_position_hook and pass it to
make_lispy_movement, instead of working with a pointer to a struct
scrollbar.
(make_lispy_event): We don't need a window_from_scrollbar function
anymore; we are given the window directly in *EVENT.
Unify the code which generates
text-area mouse clicks and scrollbar clicks; use the same code to
distinguish clicks from drags on the scrollbar as in the text area.
Distinguish clicks from drags by storing a copy of the lispy
position list returned as part of the event.
(button_down_location): Make this a lisp vector, rather than an
array of random structures.
(struct mouse_position): Remove this; it's been replaced by a lisp
list.
(make_lispy_movement): Accept the scrollbar's window as a
parameter, rather than the scrollbar itself.
If FRAME is zero, assume that the other arguments are garbage.
(syms_of_keyboard): No need to staticpro each window of
button_down_location now; just initialize and staticpro it.
* window.c (window_from_scrollbar): Function deleted; no longer
needed.
* xdisp.c (redisplay_window): Just pass the window to
set_vertical_scrollbar hook; don't pass the scrollbar object too.
* xterm.c (XTmouse_position): Don't return a pointer to the
scrollbar for scrollbar motion; instead, return the scrollbar's
window.

* xdisp.c (echo_area_display): Move the assignment of f and the
check for visibility out of the "#ifdef MULTI_FRAME" clause; they
should work under any circumstances.

* xdisp.c (redisplay_window): If we're not going to redisplay this
window because it's a minibuffer whose contents have already been
updated, go ahead and jump to the scrollbar refreshing code
anyway; they still need to be updated.  Initialize opoint, so it's
known to be valid when we jump.  Calculate the scrollbar settings
properly for minibuffers, no matter what they are displaying at
the time.

* xdisp.c (redisplay_windows): Don't restore the current buffer
and its point before refreshing the scrollbars; we need the buffer
accurate.

31 years agoMake scrollbar structures into lisp objects, so that they can be
Jim Blandy [Thu, 14 Jan 1993 15:17:39 +0000 (15:17 +0000)]
Make scrollbar structures into lisp objects, so that they can be
GC'd; this allows windows and scrollbars can refer to each other
without worrying about dangling pointers.
* xterm.h (struct x_display): vertical_scrollbars and
judge_timestamp members deleted.
(struct scrollbar): Redesigned to be a template for a Lisp_Vector.
(SCROLLBAR_VEC_SIZE, XSCROLLBAR, SCROLLBAR_PACK, SCROLLBAR_UNPACK,
SCROLLBAR_X_WINDOW, SET_SCROLLBAR_X_WINDOW,
VERTICAL_SCROLLBAR_INSIDE_WIDTH, VERTICAL_SCROLLBAR_TOP_RANGE,
VERTICAL_SCROLLBAR_INSIDE_HEIGHT, VERTICAL_SCROLLBAR_MIN_HANDLE):
New macros, to help deal with the lispy structures, and deal with
the graphics.
* frame.h (WINDOW_VERTICAL_SCROLLBAR): Macro deleted.
(struct frame): New fields `scrollbars' and
`condemned_scrollbars', for use by the scrollbar implementation.
[MULTI_FRAME and not MULTI_FRAME] (FRAME_SCROLLBARS,
FRAME_CONDEMNED_SCROLLBARS): Accessors for the new field.
* window.h (struct window): Doc fix for vertical_scrollbar field.
* frame.c (make_frame): Initialize the `scrollbars' and
`condemned_scrollbars' fields of the new frame.
* alloc.c (mark_object): Mark the `scrollbars' and
`condemned_scrollbars' slots of frames.
* xterm.c (x_window_to_scrollbar): Scrollbars are chained on
frames' scrollbar field, not their x.display->vertical_scrollbars
field.
(x_scrollbar_create, x_scrollbar_set_handle, x_scrollbar_move,
x_scrollbar_remove, XTset_vertical_scrollbar,
XTcondemn_scrollbars, XTredeem_scrollbar, XTjudge_scrollbars,
x_scrollbar_expose, x_scrollbar_handle_click,
x_scrollbar_handle_motion): Substantially rewritten to correct
typos and brainos, and to accomodate the lispy structures.

31 years ago* window.c (window_internal_width): New function, which accounts
Jim Blandy [Thu, 14 Jan 1993 15:17:11 +0000 (15:17 +0000)]
* window.c (window_internal_width): New function, which accounts
for scrollbars if present.
* lisp.h (window_internal_height, window_internal_width): Add
extern declarations for these.
* dispnew.c (direct_output_for_insert, direct_output_forward_char,
buffer_posn_from_coords): Use window_internal_width instead of
writing out its definition.
* indent.c (compute_motion): Doc fix; mention scrollbars and
window_internal_width.
(pos_tab_offset, Fvertical_motion): Use window_internal_width
instead of writing it out.
* window.c (Fpos_visible_in_window_p, Fwindow_width, Fscroll_left,
Fscroll_right): Same.
* xdisp.c (redisplay, try_window, try_window_id,
display_text_line): Same.

* termhooks.h (mouse_position_hook): Doc fix.
(set_vertical_scrollbar_hook): This doesn't return anything any
more, and doesn't take a struct scrollbar * argument any more.
(condemn_scrollbars_hook, redeem_scrollbar_hook,
judge_scrollbars_hook): Doc fixes.
* term.c (mouse_position_hook): Doc fix.
(set_vertical_scrollbar_hook): This doesn't return
anything any more.  Doc fixes.
* keyboard.c (kbd_buffer_get_event): Receive the scrollbar's
window from *mouse_position_hook and pass it to
make_lispy_movement, instead of working with a pointer to a struct
scrollbar.
(make_lispy_event): We don't need a window_from_scrollbar function
anymore; we are given the window directly in *EVENT.
Unify the code which generates
text-area mouse clicks and scrollbar clicks; use the same code to
distinguish clicks from drags on the scrollbar as in the text area.
Distinguish clicks from drags by storing a copy of the lispy
position list returned as part of the event.
(button_down_location): Make this a lisp vector, rather than an
array of random structures.
(struct mouse_position): Remove this; it's been replaced by a lisp
list.
(make_lispy_movement): Accept the scrollbar's window as a
parameter, rather than the scrollbar itself.
If FRAME is zero, assume that the other arguments are garbage.
(syms_of_keyboard): No need to staticpro each window of
button_down_location now; just initialize and staticpro it.
* window.c (window_from_scrollbar): Function deleted; no longer
needed.
* xdisp.c (redisplay_window): Just pass the window to
set_vertical_scrollbar hook; don't pass the scrollbar object too.
* xterm.c (XTmouse_position): Don't return a pointer to the
scrollbar for scrollbar motion; instead, return the scrollbar's
window.

31 years ago* termhooks.h (mouse_position_hook): Doc fix.
Jim Blandy [Thu, 14 Jan 1993 15:15:15 +0000 (15:15 +0000)]
* termhooks.h (mouse_position_hook): Doc fix.
(set_vertical_scrollbar_hook): This doesn't return anything any
more, and doesn't take a struct scrollbar * argument any more.
(condemn_scrollbars_hook, redeem_scrollbar_hook,
judge_scrollbars_hook): Doc fixes.
* term.c (mouse_position_hook): Doc fix.
(set_vertical_scrollbar_hook): This doesn't return
anything any more.  Doc fixes.
* keyboard.c (kbd_buffer_get_event): Receive the scrollbar's
window from *mouse_position_hook and pass it to
make_lispy_movement, instead of working with a pointer to a struct
scrollbar.
(make_lispy_event): We don't need a window_from_scrollbar function
anymore; we are given the window directly in *EVENT.
Unify the code which generates
text-area mouse clicks and scrollbar clicks; use the same code to
distinguish clicks from drags on the scrollbar as in the text area.
Distinguish clicks from drags by storing a copy of the lispy
position list returned as part of the event.
(button_down_location): Make this a lisp vector, rather than an
array of random structures.
(struct mouse_position): Remove this; it's been replaced by a lisp
list.
(make_lispy_movement): Accept the scrollbar's window as a
parameter, rather than the scrollbar itself.
If FRAME is zero, assume that the other arguments are garbage.
(syms_of_keyboard): No need to staticpro each window of
button_down_location now; just initialize and staticpro it.
* window.c (window_from_scrollbar): Function deleted; no longer
needed.
* xdisp.c (redisplay_window): Just pass the window to
set_vertical_scrollbar hook; don't pass the scrollbar object too.
* xterm.c (XTmouse_position): Don't return a pointer to the
scrollbar for scrollbar motion; instead, return the scrollbar's
window.

* termhooks.h (struct input_event): Replace the frame member with
a Lisp_Object member by the name of frame_or_window.  Doc fixes.
Remove the scrollbar member; instead, use frame_or_window to hold the
window whose scrollbar was clicked.
* keyboard.c (kbd_buffer_store_event, kbd_buffer_get_event,
make_lispy_event): Adjust references to frame member of struct
input_event to use frame_or_window now.
* xterm.c (construct_mouse_click, XTread_socket): Same.

31 years ago* term.c (set_vertical_scrollbar_hook, condemn_scrollbars_hook,
Jim Blandy [Thu, 14 Jan 1993 15:14:21 +0000 (15:14 +0000)]
* term.c (set_vertical_scrollbar_hook, condemn_scrollbars_hook,
redeem_scrollbar_hook, judge_scrollbars_hook): Removed dumbo
"externs" from these.  They're supposed to be real definitions.

* termhooks.h (mouse_position_hook): Doc fix.
(set_vertical_scrollbar_hook): This doesn't return anything any
more, and doesn't take a struct scrollbar * argument any more.
(condemn_scrollbars_hook, redeem_scrollbar_hook,
judge_scrollbars_hook): Doc fixes.
* term.c (mouse_position_hook): Doc fix.
(set_vertical_scrollbar_hook): This doesn't return
anything any more.  Doc fixes.
* keyboard.c (kbd_buffer_get_event): Receive the scrollbar's
window from *mouse_position_hook and pass it to
make_lispy_movement, instead of working with a pointer to a struct
scrollbar.
(make_lispy_event): We don't need a window_from_scrollbar function
anymore; we are given the window directly in *EVENT.
Unify the code which generates
text-area mouse clicks and scrollbar clicks; use the same code to
distinguish clicks from drags on the scrollbar as in the text area.
Distinguish clicks from drags by storing a copy of the lispy
position list returned as part of the event.
(button_down_location): Make this a lisp vector, rather than an
array of random structures.
(struct mouse_position): Remove this; it's been replaced by a lisp
list.
(make_lispy_movement): Accept the scrollbar's window as a
parameter, rather than the scrollbar itself.
If FRAME is zero, assume that the other arguments are garbage.
(syms_of_keyboard): No need to staticpro each window of
button_down_location now; just initialize and staticpro it.
* window.c (window_from_scrollbar): Function deleted; no longer
needed.
* xdisp.c (redisplay_window): Just pass the window to
set_vertical_scrollbar hook; don't pass the scrollbar object too.
* xterm.c (XTmouse_position): Don't return a pointer to the
scrollbar for scrollbar motion; instead, return the scrollbar's
window.

31 years ago* frame.h (FRAME_SAMPLE_VISIBILITY): Make sure frame is marked as
Jim Blandy [Thu, 14 Jan 1993 15:13:19 +0000 (15:13 +0000)]
* frame.h (FRAME_SAMPLE_VISIBILITY): Make sure frame is marked as
garbaged whenever it goes from invisible to visible.
* dispextern.h (frame_garbaged): Move extern declaration from here...
* frame.h (frame_garbaged): ... to here.  The FRAME_SAMPLE_VISIBILITY
macro uses it now, and this seems to be just as modular.  Make a
new page, just for this and message_buf_print.
(struct frame): Doc fix for the `visible' field.
* process.c: #include "frame.h" instead of "dispextern.h"; the
only thing we care about from it is the frame_garbaged
declaration.
* ymakefile: Note dependency change.

31 years ago* window.c (window_internal_width): New function.
Jim Blandy [Thu, 14 Jan 1993 15:12:23 +0000 (15:12 +0000)]
* window.c (window_internal_width): New function.
* lisp.h (window_internal_height, window_internal_width): Add
extern declarations for these.
* dispnew.c (direct_output_for_insert, direct_output_forward_char,
buffer_posn_from_coords): Use window_internal_width instead of
writing out its definition.
* indent.c (compute_motion): Doc fix; mention scrollbars and
window_internal_width.
(pos_tab_offset, Fvertical_motion): Use window_internal_width
instead of writing it out.
* window.c (Fpos_visible_in_window_p, Fwindow_width, Fscroll_left,
Fscroll_right): Same.
* xdisp.c (redisplay, try_window, try_window_id,
display_text_line): Same.

* emacs.c (shut_down_emacs): New function.
(fatal_error_signal, Fkill_emacs): Call it, instead of writing it out.
* xterm.c (x_connection_closed): Call shut_down_emacs instead of
Fkill_emacs; the latter will try to perform operations on the X
server and die a horrible death.
* lisp.h (shut_down_emacs): Add extern declaration for it.