1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-30 00:51:50 -08:00
Commit graph

1278 commits

Author SHA1 Message Date
Jim Blandy
ac501cd970 * keyboard.h (EVENT_HAS_PARAMETERS): Definition changed - all events
are not 5 elements long.
	(EVENT_HEAD): Work correctly on all sorts of events, not just
	events with parameters.
	(EVENT_WINDOW, EVENT_BUFFER_POSN, EVENT_SCROLLBAR_BUTTON,
	EVENT_WINDOW_POSN, EVENT_TIMESTAMP): These aren't useful
	anymore; this information may appear twice in an event.  These
	are replaced by the POSN_ accessors, which are meant to be
	composed with the EVENT_START and EVENT_END accessors.
	(EVENT_START, EVENT_END): Two new accessors, to get at the
	starting and ending position of an event.
	(POSN_WINDOW, POSN_BUFFER_POSN, PONS_SCROLLBAR_BUTTON,
	POSN_WINDOW_POSN, POSN_TIMESTAMP): New macros, to futher
	diasassemble the values returned by EVENT_START and EVENT_END.

	* keyboard.h (Qevent_unmodified): Extern declaration replaced by...
	(Qevent_symbol_elements): This.
	(EVENT_HEAD_UNMODIFIED): Use the Qevent_symbol_elements
	property, rather than the Qevent_unmodified property.
1992-10-02 23:56:44 +00:00
Jim Blandy
88cb06568f * keyboard.c (echo_char, read_char): Apply EVENT_HEAD without first
testing for EVENT_HAS_PARAMETERS; EVENT_HEAD works properly on
	all sorts of events now.
	(read_key_sequence): Use the new accessors to decide in which window
	an event occurred.

	* keyboard.c (Qevent_unmodified): Replaced by...
	(Qevent_symbol_elements): New property.
	(syms_of_keyboard): initialize and staticpro the latter, not the
	former.

	* keyboard.c (readable_events): This doesn't need to scan and
	discard mouse release events anymore; it just uses
	EVENT_QUEUES_EMPTY.
	(kbd_buffer_get_event): No need to skip past mouse release events.

	* keyboard.c (button_down_location): New variable, which
	stores the location at which each button was pressed, so we
	can build a complete drag event when the button is released.
	(make_lispy_event): When a button is pressed, record its
	location in button_down_location, and turn it into a `down'
	event.  When a button is released, compare its release
	location with its press location, and decide whether to call
	it a `click' or `drag' event.
	Change mouse movement events to be arranged like click events.
	(format_modifiers): Note that the click modifier has no
	written representation.
	(modifier_names, modifer_symbols): New variables, used to
	create the Qevent_symbol_elements property.
	(modify_event_symbol): Change the format of the modified
	symbol cache; there are too many modifier bits now to use a
	vector indexed by a modifier mask.  Use an assoc-list instead.
	Document the format of the cache.
	Put the Qevent_symbol_elements property on each new symbol,
	instead of a Qevent_unmodified property.
	(symbols_of_keyboard): Put Qevent_symbol_elements properties on
	the symbols specified in head_table, not Qevent_unmodifed properties.
	Initialize and staticpro modifier_symbols, and staticpro the
	window elements of button_down_location.
1992-10-02 23:55:39 +00:00
Richard M. Stallman
f9969361bd (Info-follow-nearest-node): Handle line breaks after *note.
Fix interactive spec.  Doc fix.  Put on mouse-3.
1992-10-02 23:52:26 +00:00
Joseph Arceneaux
21cf4cf8a9 * buffer.c: #include intervals.h. 1992-10-02 23:43:16 +00:00
Joseph Arceneaux
249a6da954 Fixed typos. 1992-10-02 22:33:18 +00:00
Joseph Arceneaux
cde20f4168 * lisp.h: Declare Qbuffer_or_string_p. 1992-10-02 22:32:00 +00:00
Joseph Arceneaux
03ad6beb25 Fixed typeos. 1992-10-02 22:30:42 +00:00
Jim Blandy
031b0e3122 * xmenu.c: #include "keyboard.h".
(Fx_popup_menu): Use the event accessors defined in keyboard.h,
	instead of writing out cars and cdrs.
1992-10-02 22:18:46 +00:00
Joseph Arceneaux
db3563a8a2 * intervals.c: Removed #include of "screen.h". 1992-10-02 20:13:46 +00:00
Joseph Arceneaux
25013c264c * textprop.c: Conditionalize all functions on
"USE_TEXT_PROPERTIES".
1992-10-02 20:05:45 +00:00
Joseph Arceneaux
d2f7a8023e * intervals.c: Conditionalize all functions on
"USE_TEXT_PROPERTIES".
1992-10-02 20:02:51 +00:00
Joseph Arceneaux
d5e35230b5 * alloc.c: #include "intervals.h".
(init_intervals, make_interval,
	mark_interval, mark_interval_tree): New functions conditionally
	defined.
	(make_uninit_string): Call INITIALIZE_INTERVAL.
	(INIT_INTERVALS, UNMARK_BALANCE_INTERVALS, MARK_INTERVAL_TREE):
	New macros, conditionally defined.
	(mark_object): Call MARK_INTERVAL_TREE in case Lisp_String.
	(gc_sweep): If text properties are in use, place all unmarked
	intervals on the free list.  Call UNMARK_BALANCE_INTERVALS on
	`buffer->intervals' when unmarking `buffer'.
	(compact_strings): Include INTERVAL_PTR_SIZE in calculation for
	target of bcopy when relocating strings.
	(init_alloc_once): Call INIT_INTERVALS.
	(make_pure_string): Include INTERVAL_PTR_SIZE in calculation of
	`size'.
1992-10-02 19:59:42 +00:00
Joseph Arceneaux
8d4e077b70 * fileio.c (Finsert_file_contents): Call offset_intervals() if
text was actually inserted.
	#include "intervals.h".
1992-10-02 18:59:40 +00:00
Richard M. Stallman
79f3b0b773 (nuke-nroff-bs): Delete just 9 lines above header. 1992-10-02 04:06:18 +00:00
Jim Blandy
ca21f8b160 *** empty log message *** 1992-10-02 02:26:36 +00:00
Richard M. Stallman
4da3b18972 (nuke-nroff-bs): Was nuking one line too many after header. 1992-10-02 00:32:14 +00:00
Richard M. Stallman
c54ca9516b (mark_object): Avoid car recursion on cons with nil in cdr.
Avoid recursion on constants-vector of a compiled function.
1992-10-01 23:07:09 +00:00
Roland McGrath
1f82d0e4d0 (compilation-parse-errors): Save (match-beginning 0) in a variable, so the
looking-at call doesn't clobber its value when we want to use it to back up
before the error we discard.
Make sure compilation-error-list is at least two elts long before checking
its first two elts for being in the same file.
1992-10-01 02:00:41 +00:00
Joseph Arceneaux
07bd847225 Qbuffer_or_string_p added. 1992-10-01 01:58:57 +00:00
Joseph Arceneaux
410e16ff89 (describe_syntax): Use insert_char to insert `match'. 1992-10-01 01:52:09 +00:00
Joseph Arceneaux
33f7013e52 * buffer.c (reset_buffer): Do INITIALIZE_INTERVAL on the buffer's
interval component.
	(Fkill_buffer): Likewise.
1992-10-01 01:22:22 +00:00
Joseph Arceneaux
e221eae302 * lisp.h: Conditionally define interval structure and macros.
Add DECLARE_INTERVALS to struct Lisp_String.
1992-10-01 01:00:41 +00:00
Joseph Arceneaux
679194a6a0 * insdel.c: #include "intervals.h"
(prepare_to_modify_buffer): Call verify_interval_modification().
	(insert_from_string): Call offset_intervals() and
	graft_intervals_into_buffer().
	(del_range): Call offset_intervals().
	(insert): Call offset_intervals().
1992-10-01 00:56:11 +00:00
Joseph Arceneaux
d7e3e52b6e Various comment changes. 1992-10-01 00:56:11 +00:00
Joseph Arceneaux
e115a65b13 * intervals.h: Declare temp_set_point. 1992-10-01 00:56:11 +00:00
Joseph Arceneaux
1b92beaf6d * buffer.h: New macro TEMP_SET_PT. If intervals are used, SET_PT
and TEMP_SET_PT are function calls.
	Similarly for BUF_SET_PT and BUF_TEMP_SET_PT.
	Added DECLARE_INTERVALS to buffer structure to conditionally
	compile an interval tree into it..
1992-10-01 00:56:11 +00:00
Joseph Arceneaux
74d6d8c5d6 * editfns.c (make_buffer_string): Call copy_intervals_to_string().
(Finsert_buffer_substring): Call graft_intervals_into_buffer().
	#include "intervals.h".
1992-10-01 00:56:11 +00:00
Joseph Arceneaux
bef79ee47f *** empty log message *** 1992-10-01 00:56:11 +00:00
Joseph Arceneaux
cd7d971d06 Minor optimizations of Fset_text_properties and Ferase_text_properties. 1992-10-01 00:56:11 +00:00
Jim Blandy
9e7cd9225e entered into RCS 1992-09-30 21:44:26 +00:00
Jim Blandy
a0ebb746f1 * buffer.c (Fother_buffer): Add back the VISIBLE_OK argument. It
got removed with no comment or ChangeLog entry, and
	append-to-buffer uses it.
1992-09-30 18:16:11 +00:00
Jim Blandy
e8121f2afa * window.c (Fset_window_configuration): Don't select the frame
just because we restored its configuration.

	* window.c (Fset_window_configuration): Don't forget to set the
	frame's selected window when we can't call Fselect_window.
1992-09-30 14:28:46 +00:00
Jim Blandy
28430d3c3b * xterm.c (x_meta_mod_mask): New variable, indicating which X
modifier bits denote meta keys.
	(x_find_modifier_meanings): New function, to set x_meta_mod_mask.
	(x_convert_modifiers): Use that.
	(x_term_init): Call x_find_modifier_meanings.

	* xterm.c (XTread_socket): Pass PropertyNotify events from the
	root window to x_invalidate_cut_buffer_cache.
	(x_term_init): Call x_watch_cut_buffer_cache here.
1992-09-30 11:57:51 +00:00
Jim Blandy
a5ca2b7540 * data.c (Fmake_local_variable): If SYM forwards to a C variable,
swap in the value for the current buffer immediately.
1992-09-30 11:35:45 +00:00
Jim Blandy
bad481d48f * lisp.h: Doc elaboration for Lisp_Buffer_Local_Value. 1992-09-30 11:29:49 +00:00
Richard M. Stallman
01b8e020b7 (kill-word): Don't change point before calling kill-region.
(delete-indentation): Don't go beyond eob, comparing with fill-prefix.
1992-09-30 10:31:31 +00:00
Jim Blandy
d840a865ea * gud.el (gud-last-frame): Added defvar for this. 1992-09-30 08:36:57 +00:00
Jim Blandy
7739e1b816 * gud.el (gud-filter-insert): Previous changes misunderstood
the arrangement of unwind-protect and the save-excursion;
	restored that structure.
1992-09-30 08:29:25 +00:00
Roland McGrath
41acdfa97a (compilation-parse-errors): After we get enough errors to stop early, toss
the last one (which is for a different file), so we don't lose
the same way on the next run.
1992-09-30 01:45:47 +00:00
Joseph Arceneaux
7855e674d7 Mods to Ferase_text_properties 1992-09-30 01:11:20 +00:00
Roland McGrath
3f9e2e5121 (compilation-parse-errors): When we reach FIND-AT-LEAST errors, keep going
until we have seen all the consecutive errors in the same file.
1992-09-29 23:59:26 +00:00
Roland McGrath
c70e8d27e5 (os handling): Recognize `linux' as a valid os. 1992-09-29 22:19:48 +00:00
Richard M. Stallman
e49ad9a528 (mail-send-and-exit): Do other-buffer before bury-buffer. 1992-09-29 20:39:55 +00:00
Jim Blandy
234a804bca * xselect.c (Qcut_buffer0): Symbol removed; we're using a new
interface to the cut buffer now.
	(NUM_CUT_BUFFERS, cut_buffer_atom, cut_buffer_value,
	cut_buffer_cached, cut_buffer_just_set): New variables.
	(Fx_own_selection, Fx_selection_value): Dike out the code to
	handle CUT_BUFFER0 requests.
	(Fx_get_cut_buffer, Fx_set_cut_buffer, x_watch_cut_buffer_cache,
	x_invalidate_cut_buffer_cache): New functions.
	(syms_of_xselect): Don't bother to initialize Qcut_buffer0.
	Initialize and staticpro cut_buffer_value, and defsubr
	Sx_get_cut_buffer and Sx_set_cut_buffer.
	* xterm.c (XTread_socket): Pass PropertyNotify events from the
	root window to x_invalidate_cut_buffer_cache.
	(x_term_init): Call x_watch_cut_buffer_cache here.
1992-09-29 18:30:35 +00:00
Richard M. Stallman
72e609d0db (mail-unsent-separator): Add another alternative. 1992-09-29 18:15:12 +00:00
Jim Blandy
f6c7b4e77c *** empty log message *** 1992-09-29 17:43:45 +00:00
Jim Blandy
60eb4bbf3d *** empty log message *** 1992-09-29 17:27:47 +00:00
Jim Blandy
20218e2f8a * keymap.c (access_keymap): Don't forget to QUIT while scanning
the keymap.
1992-09-29 16:01:03 +00:00
Jim Blandy
533984a8ec * data.c (swap_in_symval_forwarding): Formatting tweaked. 1992-09-29 15:06:46 +00:00
Jim Blandy
9deb415abc * keyboard.c: Initialize recent_keys in syms_of_keyboard, not
init_keyboard; the latter is run after dumping, so you can't
	add more staticpros.
1992-09-29 14:29:22 +00:00