(Fdefine_fringe_bitmap): Use && instead of & to avoid
[bpt/emacs.git] / src / ChangeLog
CommitLineData
cc808173
KS
12004-02-18 Kim F. Storm <storm@cua.dk>
2
3 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
4 Fix last change.
5
ab90a54d
KS
62004-02-17 Kim F. Storm <storm@cua.dk>
7
b26f249f
KS
8 * xdisp.c (fast_find_position): Fix return value of new version;
9 it was inverted compared to the 21.1 version.
10 (get_window_cursor_type): Don't look at glyph if NULL.
11 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 12
ab90a54d
KS
13 * keyboard.c: Rework previous change; it didn't consider that the
14 buf array was allocated on the stack.
15 (prev_read): Remove variable.
16 (read_avail_input_buf): New static event buffer array.
b9568dfc 17 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 18 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
19 Use in_read_avail_input to handle re-entrance; when re-entered,
20 fully initialize and use tmp_buf array instead of read_avail_input_buf.
21 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
22 is always cleared on entry. To ensure that, we clear (just) the
23 entries that were used before we return.
24 (init_keyboard): Initialize read_avail_input_buf here.
25
4e039f3f
EZ
262004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
27
28 * cmds.c (Fend_of_line): Doc fix.
29
7b5368c1
EZ
302004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
31
32 * keyboard.c (prev_read): New static variable.
33 (read_avail_input): Use it to zero out only those slots in buf[]
34 that were used last time we were called.
35
ca4bc494
EZ
362004-02-16 Eli Zaretskii <eliz@elta.co.il>
37
38 * Makefile.in (obj): Move fringe.o from here...
39 (XOBJ, MAC_OBJ): ...to here.
40
159c348e
SE
412004-02-16 Stephen Eglen <stephen@gnu.org>
42
43 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
44
d2f14999
SM
452004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
46
47 * data.c (Fbyteorder):
48 * fringe.c (Fdefine_fringe_bitmap):
49 * xdisp.c (handle_single_display_prop):
50 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
51
8d50508a
JR
522004-02-16 Jason Rumney <jasonr@gnu.org>
53
54 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
55
dd4497dc
ST
562004-02-15 Steven Tamm <steventamm@mac.com>
57
58 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
59 controlling emulation of a three button mouse with option and
60 command keys.
61 (Qreverse, mac_get_enumlated_btn): Handle the emulation
62 (mac_event_to_emacs_modifiers, XTread_socket): Ditto
63
c9159cb3
KS
642004-02-15 Kim F. Storm <storm@cua.dk>
65
2cc52658
KS
66 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
67
c9159cb3
KS
68 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
69 Perform byte-swapping.
70
12fde2dc
KS
712004-02-14 Kim F. Storm <storm@cua.dk>
72
73 * dispextern.h (struct draw_fringe_bitmap_params): Change member
74 bits from char to short to facilitate wider bitmaps.
75 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
76 member.
77
78 * fringe.c (struct fringe_bitmap): Change member bits from char to
79 short to facilitate 16 bits wide bitmaps. Modify all standard
80 bitmaps accordingly.
81 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
82 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
83 (draw_fringe_bitmap): Ditto.
84 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
85 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
86 handle up to 16 bits wide bitmaps.
87 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 88 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
89
90 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
91 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
92 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
93
94 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
95 so it is no longer necessary to expand them here.
96
97 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
98
9d7271e8
KS
992004-02-12 Kim F. Storm <storm@cua.dk>
100
101 * window.c (Fwindow_fringes): Doc fix.
102
706c1e4f
JD
1032004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
104
105 * xselect.c (x_get_foreign_selection): Add new optional parameter
106 time_stamp.
107 (Fx_get_selection_internal): Ditto, pass time_stamp to
108 x_get_foreign_selection.
109
110 * data.c (Fbyteorder): New function.
111
c2d12b5d
JD
1122004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
113
114 * atimer.c: Move include stdio.h to same place as in other files.
115
116 * region-cache.c: Ditto.
117
118 * sysdep.c: Ditto.
119
120 * xfaces.c: Ditto.
121
4c1947b9
SS
1222004-02-09 Sam Steingold <sds@gnu.org>
123
124 * w32term.c (w32_draw_fringe_bitmap): Fixed a typo in the last patch.
125
82722af3
KS
1262004-02-09 Kim F. Storm <storm@cua.dk>
127
128 * fringe.c: New file. Move original fringe related declarations
129 and code from dispextern.h and xdisp.c here.
130 Rework code to support user defined fringe bitmaps, redefining
131 standard bitmaps, ability to overlay user defined bitmap with
132 overlay arrow bitmap, and add faces to bitmaps.
133 (Voverflow_newline_into_fringe): Declare here.
134 (enum fringe_bitmap_align): New enum.
135 (..._bits): All bitmaps are now defined without bitswapping; that
136 is now done in init_fringe_once (if necessary).
137 (standard_bitmaps): New array with specifications for the
138 standard fringe bitmaps.
139 (fringe_faces): New array.
140 (valid_fringe_bitmap_id_p): New function.
141 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
142 (draw_fringe_bitmap): New function which draws fringe bitmap,
143 possibly overlaying bitmap with cursor in right fringe or the
144 overlay arrow in the left fringe.
145 (update_window_fringes): Do not handle overlay arrow here.
146 Compare and copy fringe bitmap faces.
147 (init_fringe_bitmap): New function.
148 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
149 define and destroy user defined fringe bitmaps.
150 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
151 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
152 (syms_of_fringe): New function. Defsubr new DEFUNs.
153 DEFVAR_LISP Voverflow_newline_into_fringe.
154 (init_fringe_once, init_fringe): New functions.
155 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 156
82722af3
KS
157 * Makefile.in (obj): Add fringe.o.
158 (fringe.o): New dependencies.
159
160 * dispextern.h (FRINGE_ID_BITS): New definition for number of
161 bits allocated to hold a fringe number. Increase number of bits
162 from 4 to 8 to allow user defined fringe bitmaps.
163 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
164 left_user_fringe_face_id, right_user_fringe_bitmap,
165 right_user_fringe_face_id.
166 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
167 Move to new file fringe.c.
168 (MAX_FRINGE_BITMAPS): Define here.
169 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
170 and overlay_p. Change member which to int.
171 (struct redisplay_interface): New members define_fringe_bitmap
172 and destroy_fringe_bitmap.
173 (valid_fringe_bitmap_id_p): Add prototype.
174 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
175
176 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
177 arrows.
178 (update_frame): Do flush_display if force_flush_display_p to
179 ensure display (specifically fringes) are updated in a timely
180 manner when resizing the frame by dragging the mouse.
181 (update_window_line): Update row if overlay arrow changed.
182 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
183 or overlay arrow changed.
184
185 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
186 syms_of_fringe, and init_fringe.
187
188 * frame.h (struct frame): New member force_flush_display_p.
189
190 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
191 Add prototypes.
192
a3993cc8
KS
193 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
194 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
195 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
196 Use cursor color for displaying cursor in fringe.
82722af3
KS
197 (x_redisplay_interface): Add null handlers for
198 define_fringe_bitmap and destroy_fringe_bitmap functions.
199
200 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
201 xterm.c to handle overlayed fringe bitmaps and to use cursor color
202 for displaying cursor in fringe.
203 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
204 specific functions to define and destroy fringe bitmaps in fringe_bmp.
205 (w32_redisplay_interface): Add them to redisplay_interface.
206 (w32_term_init): Call w32_init_fringe instead of explicitly
207 defining fringe bitmaps in fringe_bmp array.
208 (x_delete_display): Call w32_reset_fringes instead of explicitly
209 destroying fringe bitmaps in fringe_bmp array.
210
211 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
212 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
213 (continued_bits, continuation_bits, ov_bits, first_line_bits)
214 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
215 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
216 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
217 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
218 Move fringe handling vars and code to new file fringe.c.
219 (handle_display_prop): Handle left-fringe and right-fringe
220 display properties; store user fringe bitmaps in iterator.
221 (move_it_in_display_line_to): Handle cursor in fringe at eob.
222 (clear_garbaged_frames): Set force_flush_display_p if resized.
223 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
224 (display_line): Handle cursor in fringe at eob.
225 (display_line): Set row user fringe bitmaps from iterator.
226
227 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
228 Use cursor color for displaying cursor in fringe.
229 (x_redisplay_interface): Add null handlers for
230 define_fringe_bitmap and destroy_fringe_bitmap functions.
231
030400eb
JD
2322004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
233
234 * macfns.c (Fx_change_window_property): Make doc string and
235 parameters same as for X version.
236
237 * w32fns.c (Fx_change_window_property): Ditto.
238
3af55251
KS
2392004-02-07 Kim F. Storm <storm@cua.dk>
240
ec110e9e
KS
241 * xdisp.c (hscroll_window_tree): Position cursor near to right
242 margin in hscrolled window when jumping to end of line (rather
243 than centering cursor).
244
3af55251
KS
245 * process.c (wait_reading_process_input): Don't do adaptive read
246 buffering if waiting for a specific process.
247
b0c138ce
LT
2482004-02-05 Luc Teirlinck <teirllm@auburn.edu>
249
250 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
251 (Fread_minibuffer, Feval_minibuffer)
252 (Fread_string, Fread_no_blanks_input)
253 (Fcompleting_read): Doc fixes.
254 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
255 completion-regexp-list. Define Qcase_fold_search and staticpro it.
256 (read_minibuf): Fix initial comment.
257 (Ftry_completion, Fall_completions, Ftest_completion): Bind
258 case-fold-serach to the value of completion-ignore-case when
259 checking completion-regexp-list.
260 (Fdisplay_completion_list): Make it handle arguments that are
261 symbols. Doc fix.
262
9676f5ad 2632004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 264
9676f5ad 265 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 266
9676f5ad
JD
267 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
268 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 269 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 270 format. Remove unused variable cons.
5b698285
JD
271
272 * xselect.c: Include stdio,h.
273
fc1d15f6
KH
2742004-02-05 Kenichi Handa <handa@m17n.org>
275
ebaff4af
KH
276 * fns.c (Fset_char_table_range): Fix previous change.
277
fc1d15f6
KH
278 * buffer.c (Fset_buffer_multibyte): Fix docstring.
279
9676f5ad
JD
2802004-02-04 Luc Teirlinck <teirllm@auburn.edu>
281
282 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
283
da75761f
SM
2842004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
285
286 * keymap.c (Vmouse_events): Rename from Vmenu_events.
287 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
288
13c5d120
KH
2892004-02-04 Kenichi Handa <handa@m17n.org>
290
291 * fns.c (Fset_char_table_range): Handle charsets ascii,
292 eight-bit-control, and eight-bit-graphic correctly.
293
2883d842
JR
2942004-02-03 Jason Rumney <jasonr@gnu.org>
295
296 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
297
298 * w32fns.c (x_to_w32_font): Likewise.
299
69eff41f
JD
3002004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
301
302 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
303 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
304
305 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
306 ClientMessages.
307
308 * xselect.c: Include termhooks.h and X11/Xproto.h
309 (x_check_property_data, x_fill_property_data)
310 (x_property_data_to_lisp, mouse_position_for_drop)
311 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 312 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
313 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
314
da75761f 315 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
316 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
317 OUTER_P.
318 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
319 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
320 if vector_ret_p is true.
321 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 322
dcdbbb5d
EZ
3232004-02-02 Eli Zaretskii <eliz@elta.co.il>
324
325 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
326 basename of FILE relative to it, not FILE itself.
327
09721b31
KH
3282004-02-02 Kenichi Handa <handa@m17n.org>
329
330 * coding.c (coding_restore_composition): Check invalid
331 composition data more rigidly.
332
eb996101
LT
3332004-01-30 Luc Teirlinck <teirllm@auburn.edu>
334
335 * fileio.c (Fread_file_name_internal): Correctly handle the case
336 where insert-default-directory is nil.
337 (Fread_file_name): Always return an empty string if the user exits
338 with an empty minibuffer. Adapt the docstring accordingly.
339 (syms_of_fileio): Adapt the docstring of insert-default-directory
340 to the change in Fread_file_name.
341
a0367d42
EZ
3422004-01-29 Eli Zaretskii <eliz@elta.co.il>
343
344 * alloca.c [!alloca]: Fix the prototype for xfree.
345
13f52ed8
KH
3462004-01-29 Kenichi Handa <handa@m17n.org>
347
348 * fns.c (string_char_to_byte): Optimize for ASCII only string.
349 (string_byte_to_char): Likewise.
350
d57625a0
JR
3512004-01-28 Peter Runestig <peter@runestig.com>
352
353 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
354
911c78b4
ST
3552004-01-27 Steven Tamm <steventamm@mac.com>
356
357 * unexmacosx.c (unexec_copy): Do not copy more than was
358 requested to prevent overwriting during unexec.
359
eb37b8fd
JD
3602004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
361
ce38070a
JD
362 * process.c (sigchld_handler): Add comment about not calling malloc.
363
eb37b8fd
JD
364 * process.h: Add extern to synch_process_termsig.
365
21a3e657
ST
3662004-01-27 Steven Tamm <steventamm@mac.com>
367
da75761f
SM
368 * macterm.c (make_mac_frame, make_mac_terminal_frame):
369 Move setting of scroll bars from make_mac_frame to
370 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 371
d62a265d
RS
3722004-01-26 Richard M. Stallman <rms@gnu.org>
373
374 * search.c (Freplace_match): Handle nonexistent
375 back-references properly.
376
3772004-01-03 Richard M. Stallman <rms@gnu.org>
378
379 * window.c (decode_any_window): New function.
380 (Fwindow_height, Fwindow_width, Fwindow_edges)
381 (Fwindow_pixel_edges, Fwindow_inside_edges)
382 (Fwindow_inside_pixel_edges): Use decode_any_window.
383
ff236419
JD
3842004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
385
386 * process.h: synch_process_termsig new variable.
387
388 * callproc.c: Define synch_process_termsig.
389 (Fcall_process): Initiate synch_process_termsig to zero and
390 check if non-zero and get signal name after subprocess has ended.
391
392 * process.c (sigchld_handler): Set synch_process_termsig
393 if terminated by a signal. synch_process_death setting removed.
394
395 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
396
41b867ea
AS
3972004-01-26 Andreas Schwab <schwab@suse.de>
398
399 * print.c (print_preprocess): Declare size as EMACS_INT to not
400 lose bits.
401 (print_object): Likewise.
402 * alloc.c (Fpurecopy): Likewise.
403
a08084ff
LT
4042004-01-25 Luc Teirlinck <teirllm@auburn.edu>
405
406 * window.c (Fwindow_minibuffer_p): Doc fix.
407
b19ac475
JY
4082004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
409
410 * editfns.c (Fformat): Make both passes accept the same set of flags.
411
fe905025
KH
4122004-01-23 Kenichi Handa <handa@m17n.org>
413
414 * fns.c (Fmd5): If OBJECT is a buffer different from the current
415 one, set buffer to OBJECT temporarily.
416
438fc6c0
SM
4172004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
418
455316e2
SM
419 * keyboard.c (kbd_buffer_gcpro): Remove.
420 (kbd_buffer_store_event, clear_event, Fdiscard_input)
421 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
422 Don't initialize and/or maintain the variable any more. It was made
423 redundant by my commit of 2003-06-15.
424
438fc6c0
SM
425 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
426
5335a4ee
JD
4272004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
428
429 * lisp.h: Add undef DECL_ALIGN.
430
dcdaeebc
SM
4312004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
432
433 * process.c (wait_reading_process_input) [SYNC_INPUT]:
434 Check interrupt_input_pending explicitly.
435
436 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
437
438 * keyboard.c (handle_async_input): New fun,
439 extracted from input_available_signal.
440 (input_available_signal, reinvoke_input_signal): Use it.
441
9076a823
SM
4422004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
443
d7107586
SM
444 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
445
446 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
447 manipulation macros for when tags are in the lower bits.
448 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
449 (DECL_ALIGN): New macro.
450 (DEFUN): Use it.
451
452 * lisp.h [ENABLE_CHECKING]: Don't force union type.
453
454 * s/darwin.h (__attribute__): Remove outdated workaround.
455
456 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
457
458 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
459 Don't check range of malloc address.
460 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
461
9076a823
SM
462 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
463
464 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
465
ba029065
KH
4662004-01-19 Kenichi Handa <handa@m17n.org>
467
468 * fontset.c (fontset_font_pattern): Fix previous change.
469
7af0e8d7
MB
4702004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
471
472 * xdisp.c (Voverflow_newline_into_fringe)
473 (move_it_in_display_line_to, redisplay_internal)
474 (update_window_fringes, redisplay_window, display_line, window):
475 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
476 that it compiles without a window-system.
477 * dispnew.c (direct_output_for_insert, update_window): Likewise.
478
77a9cf69
KS
4792004-01-16 Kim F. Storm <storm@cua.dk>
480
481 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
482
483 * buffer.c (init_buffer_once): Set buffer_defaults and
484 buffer_local_flags for indicate_buffer_boundaries.
485 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
486 default- variable for it.
487
488 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
489 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 490 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
491 overflowing newlines into right fringe.
492 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
493 and indicate_bottom_line_p for buffer boundaries and scrolling.
494 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
495 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
496 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
497 and HOLLOW_SQUARE_BITMAP.
498 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
499 Add prototypes.
500
501 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
502 instead of related indicator fields.
503 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
504 (direct_output_for_insert): Handle exact width lines like
505 contined lines. Call update_window_fringes.
506 (update_window): Call update_window_fringes.
507 (scrolling_window): Don't skip desired rows with changed bitmaps.
508 Check if fringe bitmaps changes when assigning scrolled rows.
509
510 * xdisp.c (Voverflow_newline_into_fringe): New variable.
511 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
512 (move_it_in_display_line_to): Overflow newline into fringe for
513 rows that are exactly as wide as the window.
514 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
515 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
516 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
517 (fringe_bitmaps): Add new bitmaps.
518 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
519 Select proper bitmap for cursor in fringe when appropriate.
520 Handle alignment of bitmap to top or bottom of row.
521 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
522 done by update_window_fringes.
523 (update_window_fringes, draw_window_fringes): New functions.
524 (redisplay_internal): Call update_window_fringes in case only
525 cursor row is updated.
526 (redisplay_window): Call update_window_fringes.
527 Explicitly call draw_window_fringes if redisplay was done using
528 the current matrix or the overlay arrow is in the window.
529 (try_window_reusing_current_matrix): Mark scrolled rows for
530 fringe update (to update buffer-boundaries / scrolling icons).
531 (find_last_unchanged_at_beg_row): Handle exact width lines line
532 continued lines.
533 (display_line): Overflow newline into fringe for rows that are
534 exactly as wide as the window. Don't append space for newline
d7107586 535 in this case.
77a9cf69
KS
536 (notice_overwritten_cursor): Explicitly clear cursor bitmap
537 in fringe as if it had been overwritten.
538 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 539 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
540 void-text-area-pointer as user options.
541 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 542
77a9cf69
KS
543 * xterm.c (x_update_window_end): Call draw_window_fringes.
544 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
545 in row instead of actually drawing fringe bitmaps.
546 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
547 (x_draw_window_cursor): Draw cursor in fringe.
548
549 * w32term.c (x_update_window_end): Call draw_window_fringes.
550 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
551 in row instead of actually drawing fringe bitmaps.
552 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
553 (w32_draw_window_cursor): Draw cursor in fringe.
554
555 * macterm.c (x_update_window_end): Call draw_window_fringes.
556 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
557 in row instead of actually drawing fringe bitmaps.
558 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
559 (mac_draw_window_cursor): Draw cursor in fringe.
560
a633a954
JD
5612004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
562
563 * xterm.c (handle_one_xevent): Don't handle characters that are part
564 of an old style (XLookupString) compose sequence.
565
80460525
KH
5662004-01-15 Kenichi Handa <handa@m17n.org>
567
568 * search.c (Freplace_match): Use make_multibyte_string or
569 make_unibyte_string according to the buffer multibyteness.
570
7fc34f85
SM
5712004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
572
573 * alloc.c (struct interval_block, struct string_block)
574 (struct symbol_block, struct marker_block, live_string_p)
575 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
576 Better preserve alignment for objects in blocks.
577 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
578
579 * lread.c (defvar_per_buffer): Remove dead declaration.
580
581 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
582 space size.
583
66070bd1
JD
5842004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
585
586 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
587 if a key press should pop down. Only pop down if a key is pressed
588 outside the menu/dialog.
589 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
590 popup_get_selection.
591 (create_and_show_dialog): Pass 1 for down_on_keypress to
592 popup_get_selection.
593
de7515d6
JD
5942004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
595
596 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
597 BLOCK/UNBLOCK_INPUT.
598
160b1b50
JD
5992004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
600
601 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
602 specified.
603
3a9f36e6
KH
6042004-01-08 Kenichi Handa <handa@m17n.org>
605
606 * editfns.c (Fformat): Fix '&' to '&&'.
607
3803eb32
AS
6082004-01-08 Andreas Schwab <schwab@suse.de>
609
610 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
611 size if PSEUDOVECTOR_FLAG is set.
612
9da88f37
KH
6132004-01-07 Kenichi Handa <handa@m17n.org>
614
74ac5074
KH
615 * charset.c (Fdeclare_equiv_charset): Fix docstring.
616
9da88f37
KH
617 * fontset.c (fontset_ref_via_base): Fix previous change.
618
05faee07
KS
6192004-01-07 Kim F. Storm <storm@cua.dk>
620
621 * process.c (read_process_output): Only activate adaptive
622 buffering if we read less than 256 bytes at a time.
623
634910c8
KS
6242004-01-06 Kim F. Storm <storm@cua.dk>
625
626 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
627 object and image object. Return glyph width and height.
628 (mode_line_string, marginal_area_string): Ditto.
629
630 * dispextern.h (buffer_posn_from_coords, mode_line_string)
631 (marginal_area_string): Fix prototypes.
632
633 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
634 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
635 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
636
637 * keyboard.c (make_lispy_position): Use modified mode_line_string,
638 buffer_posn_from_coords, and marginal_area_string functions to
639 include both string object and image object in the lispy position.
640 Also add actual glyph width and height to position.
641 (read_key_sequence): Use real buffer position from mouse
642 event to find keymap property even when click is in marginal area.
643
644 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
645 mode_line_string and marginal_area_string functions to handle
646 both string object and image object properties.
d7107586 647
57951c2e
AS
6482004-01-06 Andreas Schwab <schwab@suse.de>
649
650 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
651 character.
652
181e6a61
AS
6532004-01-02 Andreas Schwab <schwab@suse.de>
654
d7107586
SM
655 * macterm.c (emacs_options, x_initialized, same_x_server):
656 Remove unused (and duplicated) definitions.
181e6a61 657
31e0fbdd
KS
6582004-01-02 Kim F. Storm <storm@cua.dk>
659
660 * process.h (struct Lisp_Process): New members for adaptive read
661 buffering: adaptive_read_buffering, read_output_delay, and
662 read_output_skip.
663
664 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
665 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
666 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
667 (process_output_delay_count, process_output_skip): New vars.
668 (Vprocess_adaptive_read_buffering): New variable.
669 (make_process): Initialize adaptive read buffering members.
670 (Fstart_process): Set adaptive_read_buffering member.
671 (deactivate_process): Cleanup adaptive read buffering.
672 (wait_reading_process_input): Temporarily omit delayed
673 subprocesses from the set of file descriptors to read from;
674 adjust the select timeout if we skipped any subprocesses.
675 (read_process_output): Increase adaptive read buffering delay if
676 we read less than a full buffer; reduce delay when we read a
677 full buffer.
678 (send_process): Simplify using local Lisp_Process var.
679 Reset adaptive read buffering delay after write.
680 (init_process): Initialize process_output_delay_count and
681 process_output_skip.
682 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
683
68c6a789
JR
6842004-01-01 Jason Rumney <jasonr@gnu.org>
685
d7107586 686 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 687
3f70fe82
LT
6882003-12-30 Luc Teirlinck <teirllm@auburn.edu>
689
690 * print.c (Ferror_message_string): Add hyperlink in the docstring
691 to the definition of `signal' in the Elisp manual.
692 * eval.c (Fsignal): Ditto.
693
c2be49ed
EZ
6942003-12-29 James Clark <jjc@jclark.com> (tiny change)
695
696 * fns.c (internal_equal): Return t for two NaN arguments.
697
7abd90ea
RS
6982003-12-29 Richard M. Stallman <rms@gnu.org>
699
700 * data.c (store_symval_forwarding): Handle setting
701 default-fill-column, etc., by changing the value in
702 buffers that use the default.
703
704 * minibuf.c (Fset_minibuffer_window): Doc fix.
705
706 * fileio.c (choose_write_coding_system): Ignore auto_saving
707 if using the visited file for auto saves.
708 (Fwrite_region): Don't update SAVE_MODIFF
709 if auto-saving in visited file.
710
3e7cfcdc
KH
7112003-12-29 Kenichi Handa <handa@m17n.org>
712
713 * dispextern.h (face_font_available_p): Extern it.
714
715 * fontset.c (Voverriding_fontspec_alist): New variable.
716 (lookup_overriding_fontspec): New function.
d7107586 717 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
718 (fontset_font_pattern): Likewise.
719 (regulalize_fontname): New function.
720 (Fset_fontset_font): Call regulalize_fontname.
721 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
722 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
723 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
724
725 * xfaces.c (face_font_available_p): New function.
726
7abd90ea
RS
7272003-12-28 Richard M. Stallman <rms@gnu.org>
728
729 * buffer.c (Fother_buffer): Don't crash if BUF is nil
730 or if its name is nil.
731
732 * buffer.c (Fkill_buffer): Don't delete auto-save file
733 if it's the same as the visited file.
734
de1d1a40
LT
7352003-12-28 Luc Teirlinck <teirllm@auburn.edu>
736
737 * coding.c (Fcheck_coding_system): Doc fix.
738
204fb75e
KS
7392003-12-28 Kim F. Storm <storm@cua.dk>
740
741 * Makefile.in (eval.o): Depend on dispextern.h.
742
743 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
744 image glyph using image's ascent.
745 (mode_line_string): Return image glyph as object clicked on.
746 Adjust y0 for image glyph using image's ascent.
747
748 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
749 (struct glyph): New members, ascent and descent. Used to save
750 this glyph's ascent and descent, instead of having.
751 (struct glyph): Declare member face_id using FACE_ID_BITS.
752 (find_hot_spot): Add prototype.
753
754 * keyboard.c (Qimage): Remove extern (now in lisp.h).
755 (QCmap): Declare extern.
756 (make_lispy_position): When position is inside image hot-spot,
757 use hot-spot element's id as posn element.
758
759 * lisp.h (IMAGEP): New macro to test for image object type.
760 (Qimage): Declare extern.
761
762 * macfns.c (Qimage): Remove extern (now in lisp.h).
763 (valid_image_p, parse_image_spec): Use IMAGEP macro.
764
765 * macterm.c (Qface, Qmouse_face): Remove unused externs.
766
767 * w32fns.c (Qimage): Remove extern (now in lisp.h).
768 (valid_image_p, parse_image_spec): Use IMAGEP macro.
769
770 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
771
772 * w32term.c (Qface, Qmouse_face): Remove unused externs.
773
774 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
775 pointer types.
776 (Qrelative_width, Qalign_to): Remove unused variables.
777 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
778 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
779 image maps.
d7107586 780 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
781 new dx and dy args.
782 Remove buffer_only_p arg (always 0). Simplify code accordingly.
783 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
784 than row's ascent and height, to get sensible height on tall rows.
785 (build_desired_tool_bar_string): Remove Qimage extern.
786 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
787 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
788 image glyph is alone on the last line.
789 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 790 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 791 (on_hot_spot_p): New function to check if position is inside an
d7107586 792 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
793 (find_hot_spot): New function to search for image hot-spot.
794 (Flookup_image_map): New defun to search for image hot-spot.
795 (define_frame_cursor1): New aux function to determine frame pointer.
796 (note_mode_line_or_margin_highlight, note_mouse_highlight):
797 Handle `pointer' text property and :pointer image property to
798 control frame pointer shape. Detect image hot-spots for pointer
799 and help_echo properties. Use define_frame_cursor1.
800 (note_mouse_highlight): Use Vvoid_text_area_pointer.
801 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
802 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
803
804 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
805
806 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
807 (Qimage): Remove extern (now in lisp.h).
808 (valid_image_p, parse_image_spec): Use IMAGEP macro.
809
810 * xmenu.c (show_help_event): Remove unused code.
811
812 * xterm.c (Qface, Qmouse_face): Remove unused externs.
813 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
814 row's ascent and descent, to get a sensible height on tall rows.
815
fc052137
LT
8162003-12-25 Luc Teirlinck <teirllm@auburn.edu>
817
818 * minibuf.c (Fcompleting_read): Undo previous change.
819
b9148500
LH
8202003-12-25 Lars Hansen <larsh@math.ku.dk>
821
822 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
823 Arguments GCPRO'ed in call to file name handler.
824
56ffd194
TTN
8252003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
826
827 * termcap.c (tgetst1): Scan for "%pN"; if all
828 N are continuous in [1,9], remove all "%pN".
829
5202d23d
JD
8302003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
831
f26fab36
JD
832 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
833
5202d23d
JD
834 * xfaces.c (lface_fully_specified_p): Take into account that
835 MAC OS always have unspecified stipple.
836
8babaa59
TTN
8372003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
838
839 * tparam.c (tparam1): Add handling for `%pN', which
840 means use param N for the next substitution.
841
2d176448
TTN
8422003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
843
844 * xfaces.c (Fcolor_gray_p): Fix omission bug:
845 In case `frame' is nil, consult the selected frame.
846 (Fcolor_supported_p): Likewise.
847
adb0708c
LT
8482003-12-23 Luc Teirlinck <teirllm@auburn.edu>
849
000eeb15
LT
850 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
851 Doc fixes.
0dc72b11
LT
852
853 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
854 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
855 (Fread_from_minibuffer): Delete code moved into read_minibuf.
856 Doc fix.
857 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
858 read_minibuf.
859 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 860 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 861
2e4d132b
KH
8622003-12-03 Kenichi Handa <handa@m17n.org>
863
864 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
865 encoding sequence.
866
3999c705
KH
8672003-12-01 Kenichi Handa <handa@m17n.org>
868
869 * composite.c (syms_of_composite): Don't make the compostion hash
870 table week.
871
d344ecbb
LT
8722003-11-30 Luc Teirlinck <teirllm@auburn.edu>
873
874 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
875 * textprop.c (Fget_char_property_and_overlay): New function.
876 (syms_of_textprop): Defsubr it.
877
03d6484e
JD
8782003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
879
019b1f0e
JD
880 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
881 to compile on terminal configuration.
882
03d6484e
JD
883 * fileio.c (Fread_file_name): Check use_file_dialog also before
884 calling Fx_file_dialog.
885
886 * fns.c: use_file_dialog: New variable.
887 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
888
442d3fd0
KS
8892003-11-29 Kim F. Storm <storm@cua.dk>
890
891 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
892 (syms_of_msdos): Don't intern and staticpro them.
893
0f6a07a8
KS
8942003-11-27 Kim F. Storm <storm@cua.dk>
895
896 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
897 coordinates relative to glyph at posn. If glyph is an image,
898 return that as object at posn. Callers changed.
899 (mode_line_string, marginal_area_string): Calculate and return
900 pixel coordinates relative to glyph. Callers changed.
901
902 * dispextern.h (buffer_posn_from_coords, mode_line_string)
903 (marginal_area_string): Fix prototypes.
904 (window_box_left_offset, window_box_right_offset): Add prototypes.
905
906 * frame.h (get_specified_cursor_type, get_window_cursor_type):
907 Remove prototypes.
908
909 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
910
911 * keyboard.c (make_lispy_position): Add x and y coordinates
912 relative to the current glyph as 7th element of position.
913 If glyph is an image, return it in the object element.
914 (read_key_sequence): Skip checks for keymap property in cases
915 where POSN_STRING is not a string (e.g. an image).
916
917 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
918 (Vshow_text_cursor_in_void): New variable.
919 (glyph_to_pixel_coords): Don't use negative hpos.
920 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
921 (append_stretch_glyph): Change ascent arg to be actual value
922 in pixels rather than ratio to height. Callers changed.
923 (calc_pixel_width_or_height): New aux function, implementing
924 pixel based artihmetic for glyph widths and heights.
925 (produce_stretch_glyph): Use calc_pixel_width_or_height for
926 :width, :height, :align-to, and :ascent, thus allowing these to
927 be specified in pixels as well as multiples of characters.
928 Don't produce stretch glyphs with zero width or height.
929 (get_specified_cursor_type): Declare static.
930 (get_window_cursor_type): Declare static. Add glyph arg to be
931 able to know when cursor is on an image; always substitute
932 hollow-box cursor for filled-box cursor on images, to avoid
933 negative images and flicker when blinking the cursor.
934 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
935 (note_mode_line_or_margin_highlight): Use non-text cursor rather
936 than vertical scroll-bar cursor in display margins.
937 (note_mouse_highlight): Use non-text cursor rather than text
938 cursor in fringes and over images in the text area.
939 Use non-text cursor when mouse pointer is outside editable text,
940 i.e. in the void after end-of-line or end-of-buffer; this was
941 already done for W32, but is now standard for all systems --
942 user can toggle show-text-cursor-in-void to get old behaviour.
943 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
944 Vdisplay_pixels_per_inch.
945
00498bfc
AS
9462003-11-25 Andreas Schwab <schwab@suse.de>
947
948 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
949 EMACS_INT to not lose bits.
950 (Ffillarray): Don't set bits beyond the size of a bool vector.
951
edaa824d
KS
9522003-11-25 Kim F. Storm <storm@cua.dk>
953
954 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
955 define this defun on systems that cannot use stderr as lvalue.
956
74d6f539
GM
9572003-11-24 Gerd Moellmann <gerd@gnu.org>
958
959 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
960 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
961 ld's default is incompatible with unexec.
962
6a1ff3ba
KS
9632003-11-23 Kim F. Storm <storm@cua.dk>
964
63dc7c6b
KS
965 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
966 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
967 (Fforce_window_update): New defun.
968 (syms_of_window): Defsubr it.
969 (Fset_window_margins, Fset_window_fringes): Doc fix.
970
6a1ff3ba
KS
971 * print.c (Fredirect_debugging_output): New defun.
972 (syms_of_print): Defsubr it.
973
aef109b7
LT
9742003-11-22 Luc Teirlinck <teirllm@auburn.edu>
975
976 * fns.c (Fset_char_table_parent): Doc fix.
977
6a1ff3ba 9782003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
979
980 * dispnew.c (buffer_posn_from_coords): Return actual row/column
981 for glyph clicked on, rather than (unused) pixel positions.
982 (mode_line_string, marginal_area_string): Change X and Y args to
983 pointers for returning actual row/column for glyph clicked on.
984 Simplify and optimize loops.
985
aef109b7
LT
986 * dispextern.h (mode_line_string, marginal_area_string):
987 Update prototypes.
63ccbe21
KS
988
989 * keyboard.c (make_lispy_position): New function for generating
990 mouse click positions from frame and pixel coordinates.
991 Enhanced to return buffer position and actual row/column for
992 events outside the text area using updated mode_line_string and
993 marginal_area_string functions.
994 Return left-fringe and right-fringe clicks as such, rather than
995 clicks in text area.
996 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
997 pixel_to_glyph_coords, as we never use the results.
998 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
999 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
1000 Eliminate unused code in WHEEL_EVENT handling.
1001 (make_lispy_movement): Use make_lispy_position.
1002
1003 * window.c (coordinates_in_window): Remove redundant tests.
1004 Fix returned X pixel value for left-margin.
1005
1006 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
1007 mode_line_string and marginal_area_string parameters.
1008
930a9995
LH
10092003-11-22 Lars Hansen <larsh@math.ku.dk>
1010
d7107586
SM
1011 * w32.c (struct the_group, getgrgid): Add.
1012 * mac.c (struct my_group, getgrgid): Add.
aef109b7 1013
3dbf3426
LT
10142003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1015
1016 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
1017
cae8ddbb 10182003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 1019
d7107586
SM
1020 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
1021 include in call to file name handler. Optionally translate numeric
1022 UID and GID to strings. Update docstring.
1023 (directory_files_internal): Add parameter ID-FORMAT.
1024 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
1025 include in call to file name handler and call to
1026 directory_files_internal. Update Docstring.
1027 (Fdirectory_files): Add dummy parameter in call to
1028 directory_files_internal.
1029 * lisp.h (Qinteger): Add.
1030 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
1031 (Ffile_attributes): Add parameter.
1032 * data.c (Qinteger): Export.
cae8ddbb 1033
2550b848
LT
10342003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1035
3dbf3426 1036 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 1037
88380018
KS
10382003-11-19 Kim F. Storm <storm@cua.dk>
1039
1040 * xdisp.c (init_iterator): Initialize it->start to position
1041 before reseating (in case start position is invisible).
1042 (init_to_row_start): Set it->start to row-start.
1043 (redisplay_window): Accept optional_new_start if start position
1044 is invisible (in which case IT_CHARPOS overshoots PT).
1045 (display_line): Setup row->start from it->start (rather than
1046 it->current which is wrong if first char on line is invisible).
1047 When done, reseat it->start to it->current (= start of next row).
1048 (expose_area): Fix exposure of text area when first char (e.g. TAB)
1049 is only partially visible.
1050
1051 * dispextern.h (struct it): New member start.
1052
854c1a59
SM
10532003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
1054
455316e2
SM
1055 * alloc.c (make_float, Fcons): Clear the markbit at init time.
1056 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
1057 of block_index outside of the macro call.
1058 (Fgarbage_collect): Remove null code.
1059
1060 * m/amdx86-64.h: Don't redefine XPNTR.
1061
854c1a59
SM
1062 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
1063 of VALMASK.
1064
1065 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
1066 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
1067 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
1068
1069 * lisp.h (VALMASK): Only define for non-union type.
1070 (MARKBIT): Remove.
1071 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
1072 (XTYPE): Define unconditionally.
1073 (XSETTYPE): Remove one more remnant.
1074 (EQ): Define differently for the union and non-union cases.
1075 (INTMASK): New bit mask.
1076 (struct Lisp_Marker): Move down to prepare for upcoming patch.
1077 (GC_EQ): Delegate to EQ.
1078
1079 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
1080
a0c6ef2d
JD
10812003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1082
1083 * xterm.c (x_window_to_scroll_bar): Move check of display to
1084 where window_id is compared.
1085
859492c4
KS
10862003-11-17 Kim F. Storm <storm@cua.dk>
1087
1088 * dispextern.h (struct it): New member first_vpos.
1089
1090 * xdisp.c (start_display): Set it->first_vpos.
1091 (try_window_id): Use first_vpos to start display in first _text_
1092 line if no reusable lines at start of window with header line.
1093
810f2256
JD
10942003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1095
7c402969 1096 * w32fns.c (XPutPixel):
854c1a59
SM
1097 * w32bdf.c (w32_init_bdf_font):
1098 * sunfns.c (sel_read):
1099 * process.c (Fmake_network_process):
1100 * frame.c (store_frame_param):
1101 * fontset.c (Fset_fontset_font):
1102 * emacs.c (shut_down_emacs):
7c402969
JD
1103 * ccl.c (ccl_driver): Remove period at end of error message.
1104
a32e9bfd
JD
1105 * config.in: Regenerate.
1106
810f2256
JD
1107 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1108 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1109 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
1110 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
1111 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
1112
1113 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
1114
1115 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
1116 (XTmouse_position, handle_one_xevent): Pass Display* to
1117 x_window_to_scroll_bar.
1118 (x_window_to_scroll_bar): Take a Display* argument.
1119 Check that display for frame is equal to Display* argument.
854c1a59 1120 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
1121 x_display_info_for_display instead. Use Display in xev instead
1122 of GDK_DISPLAY.
1123 (x_dispatch_event): Call x_display_info_for_display.
1124 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
1125 (x_connection_closed): Call xg_display_close for GTK.
1126 (x_term_init): Call xg_display_open for additional displays.
1127 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
1128 for GTK.
1129
1130 * xmenu.c (single_menu_item, mouse_position_for_popup)
1131 (x_activate_menubar): Formatting adjustments.
1132
1133 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
1134 adjustments.
1135
1136 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
1137 (xg_display_close, xg_create_default_cursor)
1138 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
1139 handling.
854c1a59
SM
1140 (xg_left_ptr_cursor): Remove.
1141 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
1142 cursor here.
1143 (xg_win_to_widget): Take Display* argument, call
1144 gdk_xid_table_lookup_for_display.
1145 (xg_create_frame_widgets, xg_get_file_name, create_menus)
1146 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
1147 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
1148 in FRAME_X_DISPLAY_INFO.
1149 (xg_get_scroll_id_for_window): Take Display* argument.
1150 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 1151 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
1152
1153 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
1154 Display* argument also. Declare xg_display_open,
1155 xg_display_close, xg_create_default_cursor.
1156
0b03cc78
JD
11572003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1158
1159 * xterm.c (x_detect_focus_change): Do not change focus frame for
1160 Enter/LeaveNotify if the current focus frame has explicit focus.
1161
77e688fa
KS
11622003-11-14 Kim F. Storm <storm@cua.dk>
1163
1164 * dispnew.c (update_text_area): Fix redisplay error when hscroll
1165 is active and first glyph is only partially visible.
854c1a59 1166
dd429b03
KH
11672003-11-13 Kenichi Handa <handa@m17n.org>
1168
1169 * xdisp.c (select_frame_for_redisplay): New function.
1170 (redisplay_internal): Record also selected_frame for
1171 unwind_redisplay. Call select_frame_for_redisplay before
1172 redrawing each frame.
1173 (unwind_redisplay): Argument changed to a cons.
1174
6d9266f4
LT
11752003-11-12 Luc Teirlinck <teirllm@auburn.edu>
1176
1177 * fns.c (Fstring_to_multibyte): Doc fix.
1178
80060eb3
KH
11792003-11-11 Kenichi Handa <handa@m17n.org>
1180
1181 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
1182
74305183
JD
11832003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1184
1185 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
1186 program specified positions.
1187
cfda993e
JD
11882003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1189
1190 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
1191
df211069
KH
11922003-11-08 Kenichi Handa <handa@m17n.org>
1193
1194 * Makefile.in (lisp): Add kannada.el.
1195 (shortlisp): Likewise.
1196
4307d534
KH
11972003-11-07 Kenichi Handa <handa@m17n.org>
1198
854c1a59
SM
1199 * coding.c (coding_allocate_composition_data):
1200 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
1201 (coding_restore_composition): Detect invalid composition data.
1202 Give Fstring and Fvector a Lispy integer, not C int.
1203
854c1a59
SM
12042003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
1205
1206 * floatfns.c (Flogb): Don't use VALMASK.
1207
1208 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
1209 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
1210
1211 * lisp.h (XINT): Move the cast to clarify what is going on.
1212 (GCTYPEMASK, XSETTYPE): Remove.
1213 (XGCTYPE): Make it an alias of XTYPE.
1214
d04103a1
JD
12152003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1216
1217 * xterm.c (x_term_init): Fix formatting.
1218
da18b5ac
JD
12192003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1220
1221 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
1222 and xg_did_tearoff.
1223
1224 * gtkutil.c: Remove variable xg_did_tearoff.
1225 (xg_have_tear_offs): New function.
1226 (tearoff_remove): Just decrease xg_detached_menus.
1227 (tearoff_activate): Increase xg_detached_menus and call
1228 tearoff_remove when tearoff is removed.
854c1a59 1229 (xg_keep_popup): Remove function.
da18b5ac
JD
1230 (create_menus): Give add_tearoff_p as argument to recursive
1231 call to create_menus.
1232 (xg_create_widget): Use variables instead of multiple
1233 strcmp. Tell create_menus to create tear off only for
1234 menu bar menus.
1235 (xg_update_menubar): Change title for a detached menu also.
1236 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
1237 of deep_p.
1238 (xg_initialize): Initialize xg_detached_menus, remove
1239 initialization of xg_did_tearoff.
1240
1241 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
1242 xg_have_tear_offs returns non-zero.
1243 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
1244 call to xg_keep_popup.
1245
64d4923e
AC
12462003-11-01 Andrew Choi <akochoi@shaw.ca>
1247
1248 * macterm.c (XTread_socket): Handle menubar selection and grow
1249 window only for mouseDown events.
854c1a59 1250
6cc8bc07
JD
12512003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1252
1253 * xterm.c (x_term_init): For GTK part, increase x_initialized
1254 to check for more than one display. Use error instead of return 0.
1255
043131c4
AC
12562003-10-31 Andrew Choi <akochoi@shaw.ca>
1257
854c1a59 1258 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
1259 (copy_dysymtab): Call it.
1260
bdda99a1
LT
12612003-10-31 Luc Teirlinck <teirllm@auburn.edu>
1262
1263 * eval.c (Fdefvaralias): Doc fix.
1264
800f42ff 12652003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
1266
1267 * data.c (Fsetplist): Doc fix.
1268
ef35b389
LK
12692003-10-14 Lute Kamstra <lute@gnu.org>
1270
1271 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 1272
ef35b389 12732003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 1274
07107abc
KS
1275 * window.c (Fset_window_margins): Simplify arg checking.
1276
f7005886
RS
12772003-10-13 Richard M. Stallman <rms@gnu.org>
1278
1279 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
1280 (print_partial_compiled_pattern): Replace assert with a printout.
1281 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
1282
1283 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
1284
1285 * window.c (Fset_window_margins): Allow only integers as args.
1286 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
1287 Doc fixes.
1288
9c0c2af5
LK
12892003-10-13 Lute Kamstra <lute@gnu.org>
1290
1291 * window.c (Fset_window_fringes): Elaborate docstring.
1292
3f080e4e
AC
12932003-10-12 Andrew Choi <akochoi@shaw.ca>
1294
854c1a59 1295 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 1296
3f080e4e
AC
1297 * s/darwin.h (GC_MARK_STACK): Define.
1298
0aa513ed
JD
12992003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1300
1301 * window.c (shrink_windows): New function.
1302 (size_window): Call shrink_windows to calculate window sizes when
1303 shrinking frame with more than one window.
1304
6aa8858a
KS
13052003-10-12 Kim F. Storm <storm@cua.dk>
1306
1307 * xdisp.c (compute_fringe_widths): Doc fix.
1308
c2164d91
KH
13092003-10-08 Kenichi Handa <handa@m17n.org>
1310
854c1a59 1311 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 1312
f82ac129
KH
13132003-10-07 Kenichi Handa <handa@m17n.org>
1314
1315 * coding.c (Qcoding_system_define_form): New variable.
1316 (syms_of_coding): Intern and staticpro it.
1317 (Fcheck_coding_system): Try to autoload the definition of
1318 CODING-SYSTEM.
1319
9296c947
LT
13202003-10-05 Luc Teirlinck <teirllm@auburn.edu>
1321
1322 * fns.c (Frequire): Doc fix.
1323
c1f0671a
JD
13242003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1325
3d8c3826
JD
1326 * xfns.c (Fx_send_client_event): New function as a base for
1327 manipulating extended window manager hints.
6dc15d98 1328 (Fx_send_client_event): Remove unused variable s.
3d8c3826 1329
068ae0fd
JD
1330 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
1331 that function is removed.
1332
1333 * xterm.c (x_set_offset): Use move_offset_left/top instead of
1334 x/y_pixels_outer_diff.
1335 (x_check_expected_move): Calculate move_offset_left/top.
1336
1337 * xterm.h (struct x_output): New members: move_offset_top/left.
1338
854c1a59 1339 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
1340 call x_set_offset directly.
1341
1342 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
1343
96f09305
JD
1344 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
1345
1346 * xterm.c (x_delete_display): Free font names and font_encoder
1347 in dpyinfo->font_table.
1348
854c1a59
SM
1349 * xfns.c (Fx_close_connection): Only call XFreeFont here.
1350 Move xfree of font names to x_delete_display.
96f09305 1351
c1f0671a
JD
1352 * xterm.h (struct x_display_info): New member, wm_type.
1353 (struct x_output): New members, expected_top/left and
1354 check_expected_move.
1355
1356 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
1357 is received.
854c1a59
SM
1358 (handle_one_xevent): Rename x_check_expected_move from
1359 x_check_fullscreen_move.
c1f0671a
JD
1360 (x_set_offset): Only add WM decoration sizes to modified_top/left
1361 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 1362 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
1363 Removed fullscreen specific code. Use check_expected_move,
1364 expected_left/top instead. Also, set wm_type.
1365 (x_term_init): Initialize wm_type to unknown.
1366
1367 * frame.c (x_fullscreen_move): Remove addition of WM decoration
1368 sizes to move_x/y.
1369
be2fdba9
KH
13702003-10-03 Kenichi Handa <handa@m17n.org>
1371
1372 * macterm.c (x_load_font): Clear all members of FONTP before start
1373 filling them.
1374
13752003-10-02 Kenichi Handa <handa@m17n.org>
1376
1377 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
1378 before calling find_ccl_program_func. Call find_ccl_program_func
1379 only when fontp->font_encoder is not NULL.
1380
1381 * xterm.c (x_load_font): Clear all members of FONTP before start
1382 filling them.
1383
26a6e439
JPW
13842003-10-03 John Paul Wallington <jpw@gnu.org>
1385
1386 * keymap.c (map_keymap): Don't abort when binding is a vector.
1387
0d4c2dc2
JR
13882003-10-02 Jason Rumney <jasonr@gnu.org>
1389
854c1a59
SM
1390 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
1391 Sync dependencies with Makefile.in.
a63cf46f
JR
1392 (alloca.o): Remove.
1393
0d4c2dc2
JR
1394 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
1395 filling them.
1396
1397 * w32bdf.c (w32_load_bdf_font): Likewise.
1398
ab8f7d5c
RS
13992003-09-30 Richard M. Stallman <rms@gnu.org>
1400
1401 * term.c (set_tty_color_mode): Calculate current_mode_spec
1402 regardless of value of VAL.
1403
854c1a59 1404 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
1405 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
1406 Handle over_used when splitting UNDER.
1407
14082003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1409
1410 * regex.c (regex_compile): Free the stack when returning from function.
1411
3413f972
KH
14122003-09-28 Kenichi Handa <handa@m17n.org>
1413
1414 * fontset.c (Finternal_char_font): Change return value to
1415 cons (FONT-NAME . GLYPH-CODE).
1416
40409f05
EZ
14172003-09-28 Eli Zaretskii <eliz@elta.co.il>
1418
1419 * term.c (tty_setup_colors): Treat any negative argument as -1.
1420
f98ddc99
KH
14212003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
1422
1423 * process.c (send_process): Delete unused temp_buf.
1424
66c8f1a8
DL
14252003-09-26 Dave Love <fx@gnu.org>
1426
1427 * xterm.c (x_bitmap_mask): Declare.
1428
ca716c26
DL
14292003-09-25 Dave Love <fx@gnu.org>
1430
1431 * Makefile.in (fns.o): Depend on md5.h.
1432
fbe57420
KS
14332003-09-25 Kim F. Storm <storm@cua.dk>
1434
1435 * window.c (set_window_buffer): Fix redisplay problems when
1436 switching between buffers with different display margin widths.
1437
ef6ae4ff
KS
14382003-09-23 Kim F. Storm <storm@cua.dk>
1439
1440 * process.c (set_socket_option): Fix :bindtodevice option.
1441 (Fset_network_process_option): Update process contact list when
1442 setting option succeeds.
1443 (Fmake_network_process): Doc fix.
1444
68e03c1c
DL
14452003-09-23 Dave Love <fx@gnu.org>
1446
7146d1c1 1447 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 1448
2f809aae
EZ
14492003-09-22 Eli Zaretskii <eliz@elta.co.il>
1450
1451 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
1452 color mode is an integer number (it could be -1).
1453
8fe7d8c8
RS
14542003-09-22 Richard M. Stallman <rms@gnu.org>
1455
1456 * intervals.c (graft_intervals_into_buffer): Correct the main loop
1457 in the case where OVER is longer than UNDER.
1458
2f71b5ea
MY
14592003-09-22 Masatake YAMATO <jet@gyve.org>
1460
7146d1c1 1461 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 1462 `vertical_type'.
7146d1c1 1463
0c4da023
KS
14642003-09-21 Kim F. Storm <storm@cua.dk>
1465
1466 * frame.c (Vdefault_frame_scroll_bars): New variable.
1467 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
1468 (syms_of_frame): DEFVAR_LISP it, and initialize according to
1469 window-system default scroll bar position.
1470
b648413b
KS
1471 * window.c (Fwindow_scroll_bars): Doc fix.
1472
8f5b9e34
JD
14732003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1474
854c1a59 1475 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 1476
b0f23edf
RS
14772003-09-19 Richard M. Stallman <rms@gnu.org>
1478
1479 * atimer.h: Don't include lisp.h.
1480 (P_): Define it here (as well as elsewhere).
1481
1482 * print.c (Fprin1_to_string): Move the PRINTPREPARE
1483 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
1484
1485 * data.c (Fvariable_binding_locus): New function.
1486 (syms_of_data): defsubr it.
1487 (Flocal_variable_p): Delete duplicate call to indirect_variable.
1488
e1283999
DL
14892003-09-18 Dave Love <fx@gnu.org>
1490
ad5f3636
DL
1491 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
1492
e1283999
DL
1493 * process.c (Fnetwork_interface_info): Fix type error.
1494 (Fnetwork_interface_list): Doc fix.
1495 (read_process_output, read_process_output): Delete unused var.
1496
b8c7fd71
KS
14972003-09-17 Kim F. Storm <storm@cua.dk>
1498
1499 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
1500 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
1501 (Fnetwork_interface_info): Check that ifreq struct has required
1502 fields before accessing them; this requires that those fields are
1503 defined as macros, which may be too restrictive on some platforms,
1504 but it is better than failing on other platforms.
1505 (syms_of_process): Only defsubr above fns when included.
1506
11e0a411
DL
15072003-09-17 Dave Love <fx@gnu.org>
1508
1509 * unexalpha.c: Don't include varargs.h.
1510
e9c50801
KS
15112003-09-17 Kim F. Storm <storm@cua.dk>
1512
1513 * process.c (Fset_process_sentinel): Add sentinel to childp plist
1514 for network process.
1515 (socket_options): Add `:' prefix to option names. Add optbit field.
1516 (set_socket_option): Remove no_error arg and special handling of s < 0.
1517 Return 1<<optbit for known option, 0 for unknown.
1518 Do not interpret 0 as false for boolean option (only nil).
1519 Pass failed option and value to report_file_error.
7146d1c1 1520 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
1521 (Fset_network_process_option): New function to set just one option.
1522 (Fmake_network_process): Allow :coding arg to be a cons.
1523 Allow :server arg to be an integer specifying backlog size.
1524 Remove :options arg, and allow options to be specified directly
1525 as :KEY, VALUE pairs. Parse these options before binding socket.
1526 As before, :reuseaddr t is default for a server process, but this
1527 can now be disabled by specifying :reuseaddr nil.
1528 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
1529 (init_process): Availability of network options is now checked with
1530 simpler syntax (featurep 'make-network-process :OPTION); use loop to
1531 setup features.
1532 (syms_of_process): Fix defsubr's for the replaced functions.
1533
a0fc3644
DL
15342003-09-16 Dave Love <fx@gnu.org>
1535
1536 * Makefile.in: Depend on coding.h.
1537
6df2a645
KS
15382003-09-14 Kim F. Storm <storm@cua.dk>
1539
1540 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
1541 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
1542 (syms_of_process): Defsubr them.
1543
1544 * config.in: Regenerate.
7146d1c1
SM
1545
15462003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1547
1548 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
1549 * m/news-r6.h (XUNMARK): Remove.
1550 * m/mips.h (XUNMARK): Remove.
1551 * m/mips-siemens.h (XUNMARK): Remove.
1552 * m/iris4d.h (XUNMARK): Remove.
1553 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
1554
0930c1a1
SM
15552003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1556
31003b9e
SM
1557 * lisp.h (VALBITS): Don't remove 1 for the markbit.
1558 (union Lisp_Object): Use unsigned int for types. Remove markbit.
1559 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
1560 (XTYPE): Use unsigned right-shift.
1561 (XMARKBIT, XMARK, XUNMARK): Remove.
1562
0930c1a1
SM
1563 * alloc.c (init_intervals, init_symbol, init_marker):
1564 Don't preallocate anything.
1565 (Fgarbage_collect, mark_object): Ignore the markbit.
1566
1567 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
1568
19bb0fcd 15692003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
1570
1571 * xdisp.c (pint2hrstr): New function.
1572 (decode_mode_spec): Add `%i' and `%I' specs.
1573 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
1574 for `mode-line-format'.
1575
03bb6a06
AS
15762003-09-07 Andreas Schwab <schwab@suse.de>
1577
1578 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
1579 avoid warning.
1580
2063d89c
EZ
15812003-09-07 Eli Zaretskii <eliz@elta.co.il>
1582
0930c1a1 1583 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 1584
ed159bbf
KS
15852003-09-03 Kim F. Storm <storm@cua.dk>
1586
1587 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
1588 change (superseded by 2002-08-30 change); the default blink-off
1589 cursor is now again "no cursor".
1590
fe64a394
JR
15912003-09-01 Jason Rumney <jasonr@gnu.org>
1592
1593 * makefile.w32-in (alloca.o): Remove.
1594 (coding.o): Depend on intervals.h
1595 (emacs.o, bytecode.o): Depend on window.h
1596
c0175e24
DL
15972003-09-01 Dave Love <fx@gnu.org>
1598
1599 * Makefile.in (alloca.o): Remove commands.
1600 (coding.o): Depend on intervals.h composite.h window.h.
1601 (emacs.o): Depend on window.h keyboard.h keymap.h.
1602 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
1603 (bytecode.o): Depend on window.h.
1604
a24d4cb2
JR
16052003-08-31 Jason Rumney <jasonr@gnu.org>
1606
4bc2315e
JR
1607 * w32term.c (w32_per_char_metric): Allow cached metrics to be
1608 returned even when font_type is unknown.
1609
a24d4cb2
JR
1610 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
1611
9d35adc7
JD
16122003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1613
1614 * xterm.c (x_term_init): Initialize new fields in x_display_info.
1615
1616 * xterm.h (struct x_display_info): Add red/green/blue_bits and
1617 *_offset.
1618
1619 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
1620 calculate pixel value.
1621
6f68b035
GM
16222003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
1623
0930c1a1
SM
1624 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
1625 Don't tell redisplay display is accurate when it's actually been
1626 paused for pending input.
6f68b035 1627
4828b4d7
RS
16282003-08-29 Richard M. Stallman <rms@gnu.org>
1629
1630 * dispnew.c (adjust_glyph_matrix): Call window_box
1631 whenever W is nonzero.
1632
1633 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
1634 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 1635 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
1636 Use indirect_variable to trace thru variable aliases.
1637
1638 * config.in: Updated.
1639
1640 * callint.c (Fcall_interactively): Save and restore
1641 Vthis_command, Vthis_original_command, real_this_command,
1642 and current_kboard->Vlast_command.
1643
1644 * abbrev.c (Fexpand_abbrev): Insert before deleting.
1645
e019878d
GM
16462003-08-29 Gerd Moellmann <gerd@gnu.org>
1647
1648 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
1649
85478bc6
KH
16502003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
1651
0930c1a1 1652 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
1653 (decode_coding_sjis_big5): Likewise.
1654
07ce82d3
JR
16552003-08-27 Jason Rumney <jasonr@gnu.org>
1656
d3703de3
JR
1657 * w32.c (sys_pipe): Protect against file descriptor overflow.
1658
ee4a01d1
JR
1659 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
1660
07ce82d3
JR
1661 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
1662
72d19c66
LK
16632003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
1664
1665 * xfns.c (Vgtk_version_string): New variable.
1666 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
1667
5459e42a
EZ
16682003-08-24 Eli Zaretskii <eliz@elta.co.il>
1669
0930c1a1 1670 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 1671
5459e42a
EZ
1672 * Makefile.in (msdos.o): Depend on intervals.h.
1673
0930c1a1 1674 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 1675
231d6cfb
JD
16762003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1677
1678 * xterm.h (struct x_display_info): New fields: client_leader_window
1679 and Xatom_wm_client_leader.
1680
1681 * xterm.c (x_initialize): Move call to x_session_initialize to ...
1682 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
1683
1684 * xsmfns.c (create_client_leader_window): New function.
1685 (x_session_initialize): Call create_client_leader_window, take
1686 dpyinfo as argument.
1687
1688 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
1689
1690 * Makefile.in (xsmfns.o): Add more depenedencies.
1691
afa88464
DL
16922003-08-21 Dave Love <fx@gnu.org>
1693
1694 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
1695
f730033e
KH
16962003-08-21 Kenichi Handa <handa@m17n.org>
1697
1698 * term.c (term_init): Fix previous change; don't rely on the
1699 length of `buffer' if TERMINFO is defined.
1700
6dca786c
DL
17012003-08-20 Dave Love <fx@gnu.org>
1702
1703 * atimer.h: Include lisp.h.
1704
1705 * lisp.h (EMACS_LISP_H): New.
1706 (popup_activated_flag): Don't declare.
1707
1708 * alloca.c: Some merging with gnulib. Change logic and doc
1709 concerning (x)malloc/(x)free -- no longer Emacs-specific.
1710 [DO_BLOCK_INPUT]: Don't include lisp.h.
1711 (xmalloc, xfree): Declare.
1712 (malloc): Don't declare.
1713
0930c1a1 1714 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
1715 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
1716 atimer.h, blockinput.h.
1717
1718 * alloc.c (lisp_align_malloc): Change type of `aligned'.
1719
1720 * alloca.s: Removed.
1721
3a06a6d9
RS
17222003-08-19 Gerd Moellmann <gerd@gnu.org>
1723
1724 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
1725 use -lncurses.
1726
1727 * term.c (term_init): Use a buffer of size 4096 for tgetent since
1728 FreeBSD returns something longer than 2044. Abort if the end of
1729 the buffer is overwritten.
1730
27eeee55
MB
17312003-08-19 Miles Bader <miles@gnu.org>
1732
1733 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
1734
2f297815
GM
17352003-08-19 Gerd Moellmann <gerd@gnu.org>
1736
f4446bbf
GM
1737 * alloc.c (lisp_align_malloc): Check for memory full when
1738 allocating ablocks, which also avoids freeing a pointer into an
1739 ablocks structure.
1740
1741 * puresize.h (BASE_PURESIZE): Increase to 1100000.
1742
0930c1a1 1743 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 1744
0e7d7aae
RS
17452003-08-16 Richard M. Stallman <rms@gnu.org>
1746
1747 * editfns.c (Fencode_time): Doc fix.
1748
17492003-08-16 David Ponce <david@dponce.com>
1750
1751 * fileio.c (Fwrite_region): Fix conditional expression to issue
1752 the right message.
1753
17542003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
1755
1756 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 1757 Set default value to 1.
0e7d7aae 1758
5d551295
KH
17592003-08-15 Kenichi Handa <handa@m17n.org>
1760
1761 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
1762 what autoscaled.
1763 (best_matching_font): Once we find a better scalable font, set
1764 non_scalable_has_exact_height_p to 1.
1765 (try_font_list): Call try_alternative_families to try any family
1766 with the given registry.
1767
1661e56b
AS
17682003-08-09 Andreas Schwab <schwab@suse.de>
1769
f29181dc
AS
1770 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
1771
1661e56b
AS
1772 * print.c (print_string): Fix printing of multibyte string with
1773 nontrivial printcharfun.
1774
465aa50a
JD
17752003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1776
1777 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
1778
1779 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
1780
e430e5ba
KH
17812003-07-31 Kenichi Handa <handa@m17n.org>
1782
1783 * process.c (read_process_output): Return the actually read bytes
1784 instead of the result of decoding.
1785
97e7188e
KH
17862003-07-31 Kenichi Handa <handa@m17n.org>
1787
1788 * xterm.h (struct x_bitmap_record): New member have_mask.
1789
1790 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
1791 to 0.
1792 (x_create_bitmap_from_file): Likewise.
1793 (x_destroy_bitmap): Check have_mask member before freeing a mask.
1794 (x_destroy_all_bitmaps): Likewise.
1795 (x_create_bitmap_mask): Set have_mask member to 1.
1796
b53094d6
RS
17972003-07-30 Richard M. Stallman <rms@gnu.org>
1798
1799 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
1800
631f2082
JD
18012003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1802
1803 * gtkutil.c (xg_mark_data): Update calls to mark_object.
1804
c855f2ca
RS
18052003-07-29 Richard M. Stallman <rms@gnu.org>
1806
1807 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
1808 Conditionalize XIM code on HAVE_XIM.
1809
1810 * fns.c (Fclear_string): New function.
1811 (syms_of_fns): defsubr it.
1812
17e6d491
KH
18132003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
1814
0930c1a1 1815 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 1816
29ea8ae9
SM
18172003-07-22 Stefan Monnier <monnier@cs.yale.edu>
1818
1819 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
1820
1821 * buffer.c (delete_all_overlays): New function.
1822 * buffer.h (delete_all_overlays): Declare.
1823 * coding.c (run_pre_post_conversion_on_str):
1824 * print.c (temp_output_buffer_setup):
1825 * fileio.c (Finsert_file_contents):
1826 * minibuf.c (get_minibuffer): Use it.
1827
1dd7ccf2
AC
18282003-07-22 Andrew Choi <akochoi@shaw.ca>
1829
1830 * unexmacosx.c (unexec_regions_sort_compare):
1831 (unexec_regions_merge): New functions. Sort and merge unexec
1832 regions before dumping them.
1833
f57bd967
DL
18342003-07-22 Dave Love <fx@gnu.org>
1835
1836 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
1837
7cdee936
SM
18382003-07-21 Stefan Monnier <monnier@cs.yale.edu>
1839
1840 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
1841 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
1842 MARKBIT as the gcmarkbit for strings.
1843
e50886d3
RS
18442003-07-21 Richard M. Stallman <rms@gnu.org>
1845
1846 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
1847
29ea8ae9 1848 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
1849 (syms_of_fns): Corresponding change.
1850
1851 * alloc.c (syms_of_alloc): Doc fixes.
1852
18532003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
1854
1855 * s/netbsd.h: Use -Wl syntax.
1856
fdc39b59
RS
18572003-07-17 Richard M. Stallman <rms@gnu.org>
1858
1859 * xterm.c (xim_initialize): Redo 6/24 change.
1860
9c53385f
SM
18612003-07-15 Stefan Monnier <monnier@cs.yale.edu>
1862
1863 * buffer.c (copy_overlays): Use EMACS_INT for positions.
1864 (Fswitch_to_buffer): Don't signal an error when switching to the same
1865 buffer in a dedicated window.
1866
1867 * alloc.c: Use bitmaps for cons, as was done for floats.
1868 (init_float, init_cons): Let the normal code allocate the first block.
1869 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
1870 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
1871 New macros.
1872 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
1873 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
1874 (live_cons_p): Check the pointer is not past the `conses' array.
1875 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
1876 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
1877 (survives_gc_p): Use CONS_MARKED_P and simplify.
1878 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
1879
dde13196
PE
18802003-07-13 Paul Eggert <eggert@twinsun.com>
1881
1882 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
1883 puts it into BSS instead, at least on Solaris 8 and 9.
1884 This is a valid optimization, and it may occur on other platforms,
1885 so Emacs should not assume that initializing a static variable to
1886 zero puts it into data.
1887 * alloc.c (pure, staticvec):
1888 Initialize these arrays to nonzero, so that they're not
1889 put into BSS by that optimization.
1890
a801bc34
SM
18912003-07-13 Stefan Monnier <monnier@cs.yale.edu>
1892
1893 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
1894 (lisp_align_malloc): Use posix_memalign is available.
1895 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
1896 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
1897 for consistency. Update users.
1898
0c8b2afa
RS
18992003-07-13 Richard M. Stallman <rms@gnu.org>
1900
1901 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
1902
668c2ab0
JB
19032003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
1904
1905 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
1906 and use the Gtk+ function gtk_window_icon_from_file if available.
1907
1908 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
1909 handle mask of bitmaps.
1910 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
1911 mask property.
1912 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
1913
1914 * xterm.h (xg_set_icon): New function.
1915
800bebe3
RS
19162003-07-12 Paul Eggert <eggert@twinsun.com>
1917
1918 * unexelf.c (unexec): Consider a section to precede the .bss
1919 section if its addresses overlap that of .bss.
1920
69e38995
RS
19212003-07-12 Richard M. Stallman <rms@gnu.org>
1922
1923 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
1924
1925 * config.in (HAVE_CRTIN): Add #undef.
1926 (INLINE): Really inline only if OPTIMIZE is defined.
1927
1928 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
1929 END_FILES_1.
1930 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 1931 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
1932
1933 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
1934 (TERMINFO): Define.
1935 (LIBS_TERMCAP): Define.
1936 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
1937
1938 * xfns.c: Include libpng/png.h instead of png.h.
1939
f1d0c238
AS
19402003-07-11 Andreas Schwab <schwab@suse.de>
1941
1942 * buffer.c (modify_overlay): Update prototype.
1943 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
1944 Likewise.
1945
5f6bf5fe
SM
19462003-07-09 Stefan Monnier <monnier@cs.yale.edu>
1947
1948 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
1949 (struct interval): Move to intervals.h.
1950 (struct Lisp_Marker): Use EMACS_INT for position info.
1951 (forward_point): Remove prototype of defunct function.
1952 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
1953 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
1954 (syms_of_textprop, set_text_properties): Remove prototypes that are
1955 already in intervals.h.
1956
1957 * intervals.h (struct interval): Move from lisp.h.
1958 Use EMACS_INT for position and size info.
1959
1960 * coding.c: Include intervals.h for Fset_text_properties.
1961
1962 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
1963 position and length information.
1964
2765b457
SM
19652003-07-09 Stefan Monnier <monnier@cs.yale.edu>
1966
1967 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
1968 position and length information.
1969
2410d73a
SM
19702003-07-09 Stefan Monnier <monnier@cs.yale.edu>
1971
1972 Change overlays_after and overlays_before so the overlays themselves
1973 are linked into lists, rather than using cons cells. After all each
1974 Lisp_Misc already occupies 5 words, so we can add a `next' field to
1975 Lisp_Overlay for free and save up one cons cell per overlay (not
1976 to mention one indirection when traversing the list of overlay).
1977
1978 * lisp.h (struct Lisp_Overlay): New field `next'.
1979
1980 * buffer.h (struct buffer): Change overlays_before and overlays_after
1981 from Lisp lists of overlays to pointers to overlays.
1982
1983 * buffer.c (overlay_strings, recenter_overlay_lists):
1984 Fix typo in eassert in last commit.
1985 (unchain_overlay): New function.
1986 (add_overlay_mod_hooklist): Use AREF.
1987 (copy_overlays, reset_buffer, overlays_at, overlays_in)
1988 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
1989 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
1990 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
1991 (report_overlay_modification, evaporate_overlays, init_buffer_once):
1992 Adjust to new type of overlays_(before|after).
1993
1994 * alloc.c (mark_object): Mark the new `next' field of overlays.
1995 (mark_buffer): Manually mark the overlays_(after|before) fields.
1996
1997 * coding.c (run_pre_post_conversion_on_str):
1998 * editfns.c (overlays_around):
1999 * xdisp.c (load_overlay_strings):
2000 * fileio.c (Finsert_file_contents):
2001 * indent.c (current_column):
2002 * insdel.c (signal_before_change, signal_after_change):
2003 * intervals.c (set_point_both):
2004 * print.c (temp_output_buffer_setup): Use new type for
2005 overlays_(before|after).
2006
04812929
SM
20072003-07-08 Stefan Monnier <monnier@cs.yale.edu>
2008
2009 * buffer.c (report_overlay_modification): Don't run hooks while
2010 traversing the list of overlays.
2011
2012 * buffer.h (struct buffer): Use an int for overlay_center.
2013 (overlays_at, evaporate_overlays, recenter_overlay_lists)
2014 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
2015
2016 * buffer.c (reset_buffer, recenter_overlay_lists)
2017 (adjust_overlays_for_insert, adjust_overlays_for_delete)
2018 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
2019 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
2020 (overlays_at, evaporate_overlays, recenter_overlay_lists)
2021 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
2022
2023 * xdisp.c (fast_find_position): Remove unused var.
2024
2025 * cmds.c (Qexpand_abbrev): New sym.
2026 (syms_of_cmds): Initialize it.
2027 (internal_self_insert): Use it to call expand-abbrev.
2028
2e7ecf15
KS
20292003-07-09 Kim F. Storm <storm@cua.dk>
2030
2031 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
2032 was configured with --without-xim.
42f81f64 2033 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 2034
c6de56a0
RS
20352003-07-07 Richard M. Stallman <rms@gnu.org>
2036
2037 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
2038
2039 * alloc.c (Fgarbage_collect): Doc fix.
2040
b93fb365
KH
20412003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
2042
2043 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
2044
bfe1a3f7
SM
20452003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2046
04812929
SM
2047 * minibuf.c (read_minibuf): UNGCPRO before returning.
2048 (Ftry_completion, Fall_completions): Doc fix.
2049
bfe1a3f7
SM
2050 * alloc.c (live_float_p): Check that p is not past the `floats' array,
2051 now that `floats' is not the last element of the struct any more.
2052
ee79d1aa
JR
20532003-07-06 Jason Rumney <jasonr@gnu.org>
2054
2055 * w32term.h (ClipboardSequence_Proc): New type.
2056
2057 * w32fns.c (clipboard_sequence_fn): New variable.
2058 (globals_of_w32fns): Initialize it.
2059
2060 * w32select.c (last_clipboard_sequence_number): New variable.
2061 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
2062 number if possible.
2063
49723c04
SM
20642003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2065
4698665f
SM
2066 * m/amdx86-64.h (MARKBIT):
2067 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
2068 MARKBIT and ARRAY_MARK_FLAG any more.
2069
2070 * m/hp800.h (XSETMARKBIT):
2071 * m/sr2k.h (XSETMARKBIT):
2072 * lisp.h (XSETMARKBIT): Remove unused macro.
2073
49723c04
SM
2074 * lisp.h (mark_object): Change prototype.
2075
2076 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
2077 (last_marked): Change accordingly.
2078 (mark_interval, mark_maybe_object, mark_maybe_pointer)
2079 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
2080 (mark_buffer): Update calls to mark_object.
2081
2082 * bytecode.c (mark_byte_stack):
2083 * fns.c (sweep_weak_table):
2084 * keyboard.c (mark_kboards): Update calls to mark_object.
2085
1d660eca
JR
20862003-07-06 Jason Rumney <jasonr@gnu.org>
2087
2088 * alloc.c (struct ablock): Only include padding when there is some.
2089
618b5ae4
SM
20902003-07-04 Stefan Monnier <monnier@cs.yale.edu>
2091
2092 * alloc.c (ALIGN): Add casts to simplify usage.
2093 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
2094 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
2095 (struct ablock, struct ablocks): New types.
2096 (free_ablock): New global var.
2097 (lisp_align_malloc, lisp_align_free): New functions.
2098 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
2099 (struct float_block): Reorder and add gcmarkbits.
2100 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
2101 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
2102 (init_float, make_float): Use lisp_align_malloc.
2103 (free_float, live_float_p): Don't use `type' any more.
2104 (make_float): Use FLOAT_UNMARK to access to mark bit.
2105 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
2106 Use FLOAT_MARKED_P to access the mark bit.
2107 (pure_alloc): Simplify use of ALIGN.
2108 (mark_object): Use FLOAT_MARK to access the mark bit.
2109 (gc_sweep): Use new macros to access the float's mark bit.
2110 (init_alloc_once): Init free_ablock.
2111
2112 * lisp.h (struct Lisp_Float): Remove unused field `type'.
2113
3ef06d12
SM
21142003-06-27 Stefan Monnier <monnier@cs.yale.edu>
2115
2116 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
2117 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
2118 (allocate_buffer): Move.
2119 (string_bytes): Don't mask markbit of `size_byte'.
2120 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2121 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
2122 Use the `size' field of buffers (rather than the `name' field) for
2123 the mark bit, as is done for all other vectorlike objects.
2124 Use the new macros to access the mark bit of vectorlike objects.
2125
e81043aa
RS
21262003-06-26 Richard M. Stallman <rms@gnu.org>
2127
2128 * puresize.h (BASE_PURESIZE): Increment base size.
2129
2130 * xdisp.c (fast_find_position): Enable Gerd's new definition.
2131
2132 * xterm.c (xim_initialize): Undo previous change.
2133
2d0834cc
SM
21342003-06-26 Stefan Monnier <monnier@cs.yale.edu>
2135
2136 * alloc.c (survives_gc_p): Simplify.
2137
2138 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
2139
2140 * window.c (Fset_window_dedicated_p): Simplify.
2141 (display_buffer_1): Don't raise the win from which minibuf was entered.
2142 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
2143 (Fminibuffer_selected_window): Simplify.
2144
2145 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
2146
2147 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
2148 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
2149
2150 * insdel.c (check_markers, adjust_markers_for_delete)
2151 (adjust_markers_for_insert, adjust_markers_for_replace)
2152 (prepare_to_modify_buffer, RESTORE_VALUE):
2153 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
2154 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
2155 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
2156 * alloc.c (Fmake_marker, free_marker, gc_sweep):
2157 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
2158 * editfns.c (save_excursion_restore, transpose_markers):
2159 * window.c (delete_window):
2160 * xdisp.c (message_dolog): Update for new types.
2161
d54ae3d8
JD
21622003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2163
a5f696ac
JD
2164 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
2165 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 2166 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
2167
2168 * frame.c (make_frame): Initialize default_face_done_p.
2169
2170 * frame.h (struct frame): Add default_face_done_p.
2171
d54ae3d8
JD
2172 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
2173 will be defined.
2174
2336fe58
SM
21752003-06-25 Stefan Monnier <monnier@cs.yale.edu>
2176
2177 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
2178 Initialize the new field `gcmarkbit'.
2179 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
2180 (mark_interval_tree): Don't mark the tree separately from the nodes.
2181 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
2182 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2183 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
2184
2185 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
2186 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
2187 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
2188 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
2189 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
2190
bcea31c2
DL
21912003-06-24 Dave Love <fx@gnu.org>
2192
2193 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
2194
2195 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
2196 from gnulib.
2197
2601f59e
RS
21982003-06-21 Richard M. Stallman <rms@gnu.org>
2199
2200 * fileio.c (Fwrite_region): Alternate messages
2201 for append and partial write.
2202
2203 * keyboard.c (read_key_sequence): When converting upcase fn key to
2204 downcase, update fkey and keytran so `backspace' gets translated.
2205
2206 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
2207
2208 * process.c (wait_reading_process_input): Don't signal SIGIO
2209 in batch mode.
2210
b5d2c621
KH
22112003-06-17 Kenichi Handa <handa@m17n.org>
2212
2213 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
2214 composite.h.
2215
2216 * xselect.c: Don't include charset.h, coding.h, composite.h.
2217 (Qforeign_selection): New variable.
2218 (syms_of_xselect): Intern and static it.
2219 (selection_data_to_lisp_data): Return a unibyte string made from
2220 data with `foreign-selection' text property.
2221
6793bc63
SM
22222003-06-15 Stefan Monnier <monnier@cs.yale.edu>
2223
2224 * termhooks.h (EVENT_INIT): New macro.
2225
2226 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
2227
2228 * alloc.c (mark_kboards): Move to keyboard.c.
2229
2230 * keyboard.c (record_asynch_buffer_change, read_avail_input):
2231 * xterm.c (x_dispatch_event):
2232 * xmenu.c (find_and_call_menu_selection):
2233 * xdisp.c (handle_tool_bar_click):
2234 * w32menu.c (menubar_selection_callback):
2235 * sysdep.c (kbd_input_ast, read_input_waiting):
2236 * msdos.c (dos_rawgetc):
2237 * macterm.c (mac_check_for_quit_char):
2238 * macmenu.c (menubar_selection_callback):
2239 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
2240 data to kbd_buffer_store_event.
2241
b3ea810c
KS
22422003-06-15 Kim F. Storm <storm@cua.dk>
2243
2244 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 2245 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 2246
b8f75eda
KG
22472003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
2248
2249 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
2250
ba92ce48
KH
22512003-06-12 Kenichi Handa <handa@m17n.org>
2252
2253 * fileio.c (Fwrite_region): Save and restore restriction.
2254
b80263be
DL
22552003-06-12 Dave Love <fx@gnu.org>
2256
2257 * alloca.c (alloca): Declare arg as size_t.
2258
6793bc63
SM
2259 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
2260 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 2261
b23c0a83
DL
22622003-06-11 Dave Love <fx@gnu.org>
2263
2264 * search.c (shrink_regexp_cache): Use xrealloc.
2265 (syms_of_search): Use xmalloc.
2266
700e47c2
KS
22672003-06-10 Kim F. Storm <storm@cua.dk>
2268
2269 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
2270 Adjust phys_cursor.x to be relative to window box, rather than
2271 text area before checking -- to ensure cursor is redrawn when
2272 exposing window.
2273 Note: This also fixes a similar (older) bug if display margins
2274 are present.
2275
f11aa0b2
KH
22762003-06-06 Kenichi Handa <handa@m17n.org>
2277
2278 * coding.c (encoding_buffer_size): If coding->type is
2279 coding_type_ccl, double magnification on CRLF encoding.
2280
3d143690
JR
22812003-06-06 Jason Rumney <jasonr@gnu.org>
2282
2283 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
2284 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
2285
2286 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
2287 Mac too.
2288
f16205ca
DL
22892003-06-05 Dave Love <fx@gnu.org>
2290
b23c0a83
DL
2291 * strftime.c: Merge changes from gnulib.
2292
f16205ca
DL
2293 * mktime.c (__mktime_internal): Merge changes from gnulib
2294 involving year 69 and dst2.
2295
2296 Changes to merge with gnulib version and be consistent with the
2297 autoconf test:
2298
6793bc63
SM
2299 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
2300 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
2301 [HAVE_LOCALE_H]: Include locale.h.
2302 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
2303
9b87a0bc
KS
23042003-06-05 Kim F. Storm <storm@cua.dk>
2305
2306 * window.c (coordinates_in_window): Convert X and Y to window
2307 relative coordinates inside mode-line and header-line parts.
2308 Convert X and Y to margin area relative coordinates inside left
2309 and right display margin parts.
2310
5a8a15ec
JR
23112003-06-05 Jason Rumney <jasonr@gnu.org>
2312
2313 * w32fns.c (add_system_logical_colors_to_map): New function.
2314 (Fx_open_connection): Use it.
2315
01ed8ff1
SM
23162003-06-04 Stefan Monnier <monnier@cs.yale.edu>
2317
2318 * process.c (allocate_pty): Revert part of the previous patch.
2319 (Faccept_process_output): Simplify.
2320
b427b65d
JR
23212003-06-04 Jason Rumney <jasonr@gnu.org>
2322
2323 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
2324
2325 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
2326 (lispy_mouse_wheel_names): Remove.
2327 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
2328 Always define drag_and_drop_syms.
2329
2330 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
2331 WHEEL_EVENT events.
2332
914a8c47
SM
23332003-06-03 Stefan Monnier <monnier@cs.yale.edu>
2334
01ed8ff1
SM
2335 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
2336
914a8c47
SM
2337 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
2338
adcb132c
JD
23392003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2340
2341 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
2342 menu item label.
2343
be781fa7
RS
23442003-06-03 Richard M. Stallman <rms@gnu.org>
2345
2346 * window.c (Fwindow_edges): Doc fix.
2347 (Fwindow_pixel_edges, Fwindow_inside_edges)
2348 (Fwindow_inside_pixel_edges): New functions.
2349 (syms_of_window): defsubr them.
2350
2351 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
2352 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
2353
914a8c47
SM
23542003-06-02 Stefan Monnier <monnier@cs.yale.edu>
2355
2356 * dispnew.c (Fsit_for): Don't lie about the number of args.
2357
5b07197a
DL
23582003-06-02 Dave Love <fx@gnu.org>
2359
2360 * callproc.c: Use HAVE_FCNTL_H, not USG5.
2361 (syms_of_callproc) <process-environment>: Doc fix.
2362
2363 * doc.c: Use HAVE_FCNTL_H, not USG5.
2364
2365 * xfaces.c (font_rescale_ratio): Fix for K&R.
2366
2367 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
2368
2369 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
2370
2371 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
2372
2373 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
2374 (xg_create_frame_widgets): Use ENCODE_UTF_8.
2375
d7107586 2376 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
2377
2378 * xmenu.c (ENCODE_MENU_STRING): New.
2379 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
2380 Use it.
2381
2382 * coding.h (ENCODE_UTF_8): New.
2383 (Qutf_8): Declare.
2384
2385 * coding.c (Qutf_8): New.
2386 (syms_of_coding): Intern it.
2387
2388 * fns.c: Doc fixes.
2389
7335b336
KH
23902003-06-02 Kenichi Handa <handa@m17n.org>
2391
2392 * buffer.c (Fset_buffer_multibyte): Fix previous change.
2393
914a8c47
SM
23942003-06-01 Stefan Monnier <monnier@cs.yale.edu>
2395
2396 * lread.c (openp): Make sure STR is a string.
2397
9862c135
JR
23982003-06-01 David Ponce <david@dponce.com>
2399
2400 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
2401 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
2402
2403 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
2404 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
2405 (discard_mouse_events): Discard WHEEL_EVENT events too.
2406 (lispy_wheel_names, wheel_syms): New.
2407 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
2408 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
2409 defined.
914a8c47 2410 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
2411
2412 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
2413 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
2414 WHEEL_EVENT events.
2415
f984e73e
JPW
24162003-05-31 John Paul Wallington <jpw@gnu.org>
2417
2418 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
2419 timer are in lisp/emacs-lisp.
2420
1efcd78f
KH
24212003-05-31 Kenichi Handa <handa@m17n.org>
2422
458c8af4
KH
2423 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
2424 region when a buffer is changed to unibyte.
2425
1efcd78f
KH
2426 * charset.h (VALID_LEADING_CODE_P): New macro.
2427 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
2428
778e2804
KH
2429 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
2430 is nonzero, accept multibyte form of eight-bit-control chars.
2431 (decode_composition_emacs_mule): Likewise.
2432 (decode_coding_emacs_mule): Likewise.
2433 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
2434 multibyte form of eight-bit-control chars.
2435
2436 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
2437 (Finsert_file_contents): If coding-system-for-read is bound to
2438 Qauto_save_coding, use the coding system emacs-mule with special
2439 setting for recovering a file.
2440 (choose_write_coding_system): On auto saving, use the coding
2441 system emacs-mule with special setting for auto saving.
2442 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
2443
034060e4
KH
24442003-05-30 Kenichi Handa <handa@m17n.org>
2445
2446 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
2447 properly before calling ccl_driver.
2448
778e2804 2449 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
2450
2451 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
2452 nonzero.
2453 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
2454 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
2455
595f5aa5
GM
24562003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
2457
2458 * xfaces.c (realize_default_face): Do not abort if lface is
2459 non-existent - reverts change from 2003-05-19.
2460
103e0180
KH
24612003-05-29 Kenichi Handa <handa@m17n.org>
2462
2463 * coding.c (decode_coding_iso2022): Pay attention to the byte
2464 sequence of CTEXT extended segment, and retain those bytes as is.
2465
24662003-05-28 Kenichi Handa <handa@m17n.org>
2467
2468 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
2469 of CODING_REPLACEMENT_CHARACTER.
2470 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
2471 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
2472 check this flag on encoding.
2473 (encode_coding_sjis_big5): Check
2474 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
2475 (Fset_terminal_coding_system_internal): Set
2476 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
2477 instead of setting CODING_FLAG_ISO_SAFE flag in
2478 terminal_coding.flags.
2479
2480 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
2481 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
2482 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
2483
ff6a3bfb 24842003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 2485
ff6a3bfb
RS
2486 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
2487
2488 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 2489
1963c428
KS
24902003-05-28 Kim F. Storm <storm@cua.dk>
2491
2492 * xdisp.c (expose_window): Fix error in calculation of
2493 window relative coordinates of area to redisplay.
2494
2b5d4601
JR
24952003-05-27 Jason Rumney <jasonr@gnu.org>
2496
2497 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
2498
1c64a4a2
JB
24992003-05-27 David Ponce <david@dponce.com>
2500
2501 Handle W32 mouse wheel events as mouse click events, like in X.
2502
2503 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
2504 MOUSE_WHEEL_EVENT anymore.
2505
2506 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
2507 Scrolling down/up the mouse wheel is respectively mapped to mouse
2508 button 4 and 5.
2509 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
2510 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
2511 WM_MOUSEWHEEL events.
2512
2d031b89
AS
25132003-05-27 Andreas Schwab <schwab@suse.de>
2514
20464fdf
AS
2515 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
2516
2d031b89
AS
2517 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
2518 partially visible line.
2519
2520 * alloc.c (Fgarbage_collect): Fix last change.
2521
97bc76d4
JPW
25222003-05-26 John Paul Wallington <jpw@gnu.org>
2523
2524 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
2525
56613f06
SM
25262003-05-25 Stefan Monnier <monnier@cs.yale.edu>
2527
2528 * window.c (Fset_window_buffer): Add type of `keep_margins'.
2529 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
2530
2531 * window.h (window_box_text_cols): Declare.
2532
2533 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
2534 (x_draw_vertical_border): Remove unused var `f'.
2535
2536 * xfaces.c (build_scalable_font_name): Remove `unused var
2537 pixel_size' warning.
2538
2539 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
2540
2541 * unexelf.c (unexec): Remove `unused var n' warning.
2542
2543 * strftime.c (my_strftime_localtime_r): Remove `defined but
2544 unused' warning.
2545
2546 * process.c (allocate_pty): Remove `unused var stb' and
2547 `cp might be used uninitialized' warnings.
2548
2549 * dispnew.c (mode_line_string): Remove unused var `f'.
2550
2551 * coding.c (find_safe_codings): Remove unused var `i'.
2552
2553 * bytecode.c (Fbyte_code): Remove `unused val' warning.
2554
2555 * buffer.c (Fkill_buffer): Remove unused var `list'.
2556
2557 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
2558
93421a1f
JD
25592003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2560
2561 * frame.c (make_frame): Condition want_fullscreen with
2562 HAVE_WINDOW_SYSTEM.
2563
c4b8aebc
JB
25642003-05-25 Juanma Barranquero <lektu@terra.es>
2565
2566 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
2567 (Fwindow_scroll_bars): Fix typo in docstring.
2568
0416870b
KS
25692003-05-24 Kim F. Storm <storm@cua.dk>
2570
2571 The following changes serve several purposes:
2572
2573 1) Swap the position of fringes and display margins in windows, i.e.
2574 the fringes are now displayed between the margins and the text area
2575 (by default).
2576
2577 2) Allow fringe and scroll bar parameters to be set per-buffer and
2578 per-window (like display margins). Such settings are now stored
2579 in window configurations, preserved when frames are resized, and
9018a88e 2580 copied when windows are split vertically or horizontally.
0416870b
KS
2581 Several bugs related to display margins have been fixed.
2582
2583 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 2584
0416870b
KS
2585 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
2586 rather than FRAME_WIDTH (FRAME_FONT (f)).
2587
2588 5) Introduce a consistent naming of variables, members and macros
2589 depending on whether their value is measured in pixels or in
2590 canonical columns/lines. Pixel dimensions are named *_width and
2591 *_height, while canonical columns/lines are named *_cols and
2592 *_lines. Pixel positions are named *_x and *_y, while column/line
2593 positions are named *_col and *_line.
2594
2595 6) Consolidate more of the X, W32, and MAC gui code by moving
2596 common data into struct frame, and generalize it for the non-gui
2597 case by using suitable defaults.
2598
2599 7) Cleanup and consolidate the macros controlling frame and window
2600 layout into frame.h and window.h, and generalize the use of the
2601 various window_box_* functions (enhanced to handle the new fringe
2602 position and the per-window fringe and scroll bar settings).
2603
2604 * frame.h (struct frame): Rename members height to text_lines,
2605 width to text_cols, window_height to total_lines, window_width to
2606 total_cols, new_height to new_text_lines, new_width to
2607 new_text_cols. All uses changed.
2608 (struct frame): New members which consolidate common members of
2609 x_output, w32_output, and mac_output structures: left_pos,
2610 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
2611 win_gravity, size_hint_flags, border_width, internal_border_width,
2612 line_height, fringe_cols, left_fringe_width, right_fringe_width,
2613 want_fullscreen. All uses changed.
2614 (struct frame): New member column_width contaning the canonical
2615 column width, analogue to line_height. All uses changed.
2616 (struct frame): Rename members scroll_bar_pixel_width to
2617 config_scroll_bar_width, and scroll_bar_cols to
2618 config_scroll_bar_cols. All uses changed.
2619 (struct frame): New member scroll_bar_actual_width which
2620 consolidates and renames the vertical_scroll_bar_extra member of
2621 x_output, w32_output, and mac_output structures. All uses changed.
2622 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
2623 from x/w32/macterm.h files. All uses changed. Also change code
2624 which referred to f->output_data...->pixel_height.
2625 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
2626 from x/w32/macterm.h files. All uses changed. Also change code
2627 which referred to f->output_data...->pixel_width.
2628 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
2629 Also change code which referred to f->height.
2630 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
2631 Also change code which referred to f->width.
2632 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
2633 to update new_text_lines and new_text_cols members directly.
2634 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
2635 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
2636 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
2637 FRAME_SCROLL_BAR_COLS. All uses changed.
2638 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
2639 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
2640 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
2641 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
2642 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
2643 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
2644 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
2645 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
2646 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
2647 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
2648 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
2649 return line_height member (it now has proper value also for
2650 non-window frames).
2651 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
2652 return new column_width member (rather than the default font width).
2653 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
2654 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
2655 from x/w32/macterm.h files. Unconditionally return corresponding
2656 member of frame structure (they now have proper values also for
2657 non-window frames).
2658 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
2659 Calculate return value from left and right widths.
2660 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
2661 internal_border_width member (has proper value for non-window frame).
2662 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
2663 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
2664 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
2665 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
2666 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
2667 consolidated from xterm.h, macterm.h, and w32term.h.
2668 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
2669 consolidated from xterm.h, macterm.h, and w32term.h.
2670 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
2671 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
2672 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
2673 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
2674 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
2675 consolidated from x/mac/w32term.h.
2676 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
2677 consolidated from x/mac/w32term.h.
2678 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
2679 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
2680 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
2681 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
2682
2683 * window.h (struct window): Rename members left to left_col,
2684 top to top_line, height to total_lines, width to total_cols,
2685 left_margin_width to left_margin_cols, right_margin_width to
2686 right_margin_cols, orig_height to orig_total_lines, orig_top to
2687 orig_top_line. All uses changed.
2688 (struct window): New members left_fringe_width, right_fringe_width,
2689 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
2690 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
2691 New macros primarily used to simplify other macros.
2692 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
2693 referred to XINT (w->width).
2694 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
2695 referred to XINT (w->height).
2696 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
2697 referred to XINT (w->width) * canon_x_unit.
2698 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
2699 referred to XINT (w->height) * canon_y_unit.
2700 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
2701 referred to XINT (w->left).
2702 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
2703 all uses and code that referred to XINT (w->left) + XINT (w->width).
2704 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
2705 referred to XINT (w->top).
2706 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
2707 referred to XINT (w->top) + XINT (w->height).
2708 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
2709 referred to XINT (w->left) * canon_x_unit.
2710 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
2711 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
2712 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
2713 referred to XINT (w->top) * canon_y_unit.
2714 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
2715 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
2716 (WINDOW_LEFTMOST_P): New macro.
2717 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
2718 All uses changed.
2719 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
2720 All uses changed.
2721 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
2722 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
2723 Do not exclude left fringe width.
2724 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
2725 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
2726 Do not exclude fringe widths.
2727 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
2728 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
2729 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
2730 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
2731 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
2732 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
2733 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
2734 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
2735 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
2736 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
2737 New macros. Change code which referenced corresponding
2738 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
2739 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
2740 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
2741 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
2742 allow per-window scroll-bar settings.
2743 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
2744 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
2745 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
2746 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
2747 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
2748 FRAME_SCROLL_BAR_WIDTH.
2749 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 2750 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
2751 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
2752 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
2753 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
2754 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
2755 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
2756 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
2757 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
2758 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
2759 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
2760 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
2761 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
2762 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
2763 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
2764 (window_from_coordinates): Update prototype.
2765 (Fset_window_buffer): Update EXFUN.
2766 (set_window_buffer): Update prototype.
9018a88e 2767
0416870b 2768 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 2769 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
2770 changed.
2771 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
2772 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
2773 internal_border_width is now set to 0 for non-window frames.
2774 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
2775 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
2776 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
2777 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
2778 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
2779 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
2780 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
2781 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
2782 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 2783 Move to window.h and renamed [see window.h changes].
0416870b
KS
2784 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
2785 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
2786 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
2787 Use WINDOW_TOTAL_LINES.
0416870b
KS
2788 (frame_update_line_height): Remove prototype.
2789
2790 * buffer.h (struct buffer): Rename members measured in columns:
2791 left_margin_width to left_margin_cols, right_margin_width to
2792 right_margin_cols. All uses changed.
2793 New members left_fringe_width, right_fringe_width,
2794 fringes_outside_margins for per-buffer fringe settings.
2795 New members scroll_bar_width and vertical_scroll_bar_type for
2796 per-buffer scroll bar settings.
2797
2798 * buffer.c (init_buffer_once): Set buffer_defaults and
2799 buffer_local_flags for new buffer-local variables
2800 left_fringe_width, right_fringe_width, fringes_outside_margins,
2801 scroll_bar_width, and vertical_scroll_bar_type.
2802 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
2803 default-* variables for them.
2804
2805 * dispnew.c: Make (many) trivial substitutions for renamed and
2806 new macros in dispextern.h, frame.h and window.h.
2807 (mode_line_string): No need to adjust width for mode lines, as it
2808 is already adjusted by the caller.
2809 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 2810
0416870b
KS
2811 * frame.c: Make (many) trivial substitutions for renamed and
2812 new macros in dispextern.h, frame.h and window.h.
2813 (make_frame): Initialize left_fringe_width, right_fringe_width,
2814 fringe_cols, scroll_bar_actual_width, border_width,
2815 internal_border_width, column_width, line_height, x_pixels_diff,
2816 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
2817 members with values suitable for a non-window frames.
2818
2819 * gtkutil.c: Make (many) trivial substitutions for renamed and
2820 new macros in dispextern.h, frame.h and window.h.
9018a88e 2821
0416870b
KS
2822 * indent.c: Make (few) trivial substitutions for renamed and
2823 new macros in dispextern.h, frame.h and window.h.
2824
2825 * keyboard.c: Make (many) trivial substitutions for renamed and
2826 new macros in dispextern.h, frame.h and window.h.
2827 (make_lispy_event): Use window positions returned from
2828 window_from_coordinates when constructing the lisp event for
2829 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
2830 (incorrect) values locally.
2831 (make_lispy_movement): Use window positions returned from
2832 window_from_coordinates when constructing the lisp event, rather
2833 than calculating (incorrect) values locally.
2834
2835 * scroll.c: Make (some) trivial substitutions for renamed and
2836 new macros in dispextern.h, frame.h and window.h.
2837
2838 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
2839 scroll-bars.
2840
2841 * sysdep.c: Make (few) trivial substitutions for renamed and
2842 new macros in dispextern.h, frame.h and window.h.
2843
2844 * term.c: Make (some) trivial substitutions for renamed and
2845 new macros in dispextern.h, frame.h and window.h.
2846
2847 * widget.c: Make (few) trivial substitutions for renamed and
2848 new macros in dispextern.h, frame.h and window.h.
2849
2850 * window.c: Make (many) trivial substitutions for renamed and
2851 new macros in dispextern.h, frame.h and window.h.
2852 (make_window): Initialize new members
2853 left_margin_cols, right_margin_cols, left_fringe_width,
2854 right_fringe_width, fringes_outside_margins, scroll_bar_width,
2855 and vertical_scroll_bar_type.
2856 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 2857 and per-window fringes and scroll-bars.
0416870b 2858 Fix bug related to incorrectly adjusting coordinates by
9018a88e 2859 frame's internal_border_width (the effect normally negible since
0416870b
KS
2860 the internal_border_width is typically 0 or 1 pixel, but very
2861 noticeable for an internal_border_width of e.g. 25 pixels).
2862 Upon successful return (other than ON_NOTHING), the coordinates
2863 are now always properly converted to window relative for the
2864 given display element.
2865 (window_from_coordinates): Add new parameters wx and wy to
2866 return the window relative x and y position in the returned
2867 window and part. A null arg means, don't return the position.
2868 All callers changed.
2869 (adjust_window_margins): New function which may reduce the width
2870 of the display margins if a window's text area is too small after
2871 resizing or splitting windows.
2872 (size_window): Fix bug that did not account for display margin
2873 widths when checking the minimum width of a window; use
2874 adjust_window_margins.
2875 (set_window_buffer): Call Fset_window_fringes and
2876 Fset_window_scroll_bars to setup per-window elements.
2877 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
2878 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
2879 (e.g. after splitting a window or resizing the frame).
2880 All callers changed.
0416870b
KS
2881 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
2882 (Fsplit_window): Duplicate original window's display margin,
2883 fringe, and scroll-bar settings; then call Fset_window_buffer with
2884 KEEP_MARGINS non-nil. This fixes a bug which caused a split
2885 window to only preserve the display margins in one of the windows.
c4b8aebc 2886 When splitting horizontally, call adjust_window_margins on both
0416870b
KS
2887 windows to ensure that the text area of the new windows is non too
2888 narrow. This fixes a bug which could cause emacs to trap if the
2889 width of the split window was less than the width of the display
2890 margins.
9018a88e
SM
2891 (window_box_text_cols): Renamed from window_internal_width.
2892 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
2893 Fix bug that caused vertical separator to be subtracted also on
2894 window frames. Fix another bug that did not reduce the returned
2895 value by the columns used for display margins.
2896 (window_scroll_line_based): Fix bug related to scrolling too much
2897 when display margins are present (implicitly fixed by the fix to
2898 window_box_text_cols).
2899 (scroll_left, scroll_right): Fix bug related to scrolling too far
2900 by default when display margins are present (implicitly fixed by
2901 the fix to window_box_text_cols).
2902 (struct saved_window): Rename members left to left_col, top to
2903 top_line, width to total_cols, height to total_lines, orig_top to
2904 orig_top_line, orig_height to orig_total_lines. All uses changed.
2905 New members left_margin_cols, right_margin_cols,
2906 left_fringe_width, right_fringe_width, fringes_outside_margins,
2907 scroll_bar_width, and vertical_scroll_bar_type for saving
2908 per-window display elements.
2909 (Fset_window_configuration): Restore display margins, fringes,
2910 and scroll bar settings. This fixes a bug which caused display
2911 margins to be discarded when saving and restoring a window
2912 configuration.
2913 (save_window_save): Save display margins, fringes, and scroll bar
2914 settings. This fixes a bug which caused display margins to be
2915 discarded when saving and restoring a window configuration.
2916 (Fset_window_margins): Do nothing if display margins are not
2917 really changed. Otherwise, call adjust_window_margins to ensure
2918 the text area doesn't get too narrow. This fixes a bug which
2919 could cause emacs to trap if setting display margins wider than
2920 the width of the window.
2921 (Fset_window_fringes): New defun to allow user to specifically set
2922 this window's fringe widths and position vs. display margins.
2923 (Fwindow_fringes): New defun to return window's actual fringe
2924 settings.
2925 (Fset_window_scroll_bars): New defun to allow user to specifically
2926 set this window's scroll bar width and position.
2927 (Fwindow_scroll_bars): New defun to return window's actual scroll
2928 bar settings.
2929 (compare_window_configurations): Also compare display margins,
2930 fringes, and scroll bar settings.
2931 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
2932
2933 * xdisp.c: Make (many) trivial substitutions for renamed and
2934 new macros in dispextern.h, frame.h and window.h.
2935 (window_box_width): Adapt to per-window fringes and scroll bars,
2936 and new fringe vs. display margin position. Note that returned
2937 value is no longer guaranteed to be a whole multiple of the frame
2938 column width, since per-window fringes may now be any width.
2939 (window_box_left_offset): New function like window_box_left, but
2940 value is relative to left border of window (rather than frame).
2941 (window_box_right_offset): New function like window_box_right,
2942 but value is relative to left border of window.
2943 (window_box_left): Adapt to per-window fringes and scroll bars,
2944 and new fringe vs. display margin position. Simplify by using
2945 WINDOW_LEFT_EDGE_X and window_box_left_offset.
2946 (window_box): Allow null args for unnecessary return values;
2947 change/simplify relevant callers.
2948 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
2949 and new fringe vs. display margin position.
2950 Use window_box_left_offset and window_box_right_offset
0416870b 2951 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
2952 scroll bars, and new fringe vs. display margin position.
2953 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
2954 (draw_fringe_bitmap): Rework to handle per-window fringes and new
2955 fringe vs. display margin position.
2956 (hscroll_window_tree): Use window_box_width instead of window_box.
2957 (redisplay_window): Adapt to per-window scroll bars.
2958 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
2959 bars, and new fringe vs. display margin position.
2960 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
0416870b
KS
2961 (x_clear_end_of_line): Adapt to per-window fringes and scroll
2962 bars, and new fringe vs. display margin position. Fix bug which
2963 increased total width of full_width rows by width of scroll bars
2964 although window's total width already includes that.
2965 (x_fix_overlapping_area): Simplify using window_box_left_offset.
2966 (expose_area): Simplify using window_box_left_offset.
2967 (x_draw_vertical_border): Handle per-window scroll bar settings,
2968 mixing windows with left, right and no scroll bars.
2969
2970 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
2971 where it's used in x_list_fonts (for clarity).
2972 (frame_update_line_height): Remove unused function; functionality
2973 is now done directly when setting the default font in x_set_font.
2974
2975 * xfns.c: Make (many) trivial substitutions for renamed and
2976 new macros in dispextern.h, frame.h and window.h.
2977
2978 * xmenu.c: Make (some) trivial substitutions for renamed and
2979 new macros in dispextern.h, frame.h and window.h.
2980
2981 * xterm.h (struct x_output): Move members left_pos, top_pos,
2982 border_width, pixel_height, pixel_width, line_height,
2983 internal_border_width, vertical_scroll_bar_extra,
2984 left_fringe_width, right_fringe_width, fringe_cols,
2985 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
2986 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
2987 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
2988 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
2989 (PIXEL_WIDTH, PIXEL_HEIGHT)
2990 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
2991 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
2992 frame.h and renamed [see frame.h changes].
2993 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
2994 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
2995 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
2996 and renamed [see frame.h changes].
9018a88e 2997
0416870b
KS
2998 * xterm.c: Make (several) trivial substitutions for renamed and
2999 new macros in dispextern.h, frame.h and window.h.
3000 (x_draw_glyph_string_box): Adapt to per-window fringes and
3001 scroll-bars.
3002 (scroll_run): Adapt to new fringe position.
3003 (glyph_rect): Use window coordinates returned from
3004 window_from_coordinates rather than frame_to_window_pixel_xy.
3005 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3006 scroll-bars.
3007 (handle_one_xevent): Simplify a USE_GTK conditional.
3008 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3009 (fringes are now inside margins, i.e. always in the clipping area).
3010 All callers changed.
3011 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3012 directly, then call compute_fringe_widths. Don't call
3013 frame_update_line_height.
3014
3015 * w32term.h (struct w32_output): Move members left_pos, top_pos,
3016 border_width, pixel_height, pixel_width, line_height,
3017 internal_border_width, vertical_scroll_bar_extra,
3018 left_fringe_width, right_fringe_width, fringe_cols,
3019 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3020 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
3021 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3022 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3023 (PIXEL_WIDTH, PIXEL_HEIGHT)
3024 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3025 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3026 frame.h and renamed [see frame.h changes].
3027 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3028 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3029 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3030 and renamed [see frame.h changes].
9018a88e 3031
0416870b
KS
3032 * w32term.c: Make (several) trivial substitutions for renamed and
3033 new macros in dispextern.h, frame.h and window.h.
3034 (x_draw_glyph_string_box): Adapt to per-window fringes and
3035 scroll-bars.
3036 (glyph_rect): Use window coordinates returned from
3037 window_from_coordinates rather than frame_to_window_pixel_xy.
3038 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3039 scroll-bars.
3040 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
3041 (fringes are now inside margins, i.e. always in the clipping area).
3042 All callers changed.
3043 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3044 directly, then call compute_fringe_widths. Don't call
3045 frame_update_line_height.
3046
3047 * w32console.c: Make (few) trivial substitutions for renamed and
3048 new macros in dispextern.h, frame.h and window.h.
3049
3050 * w32fns.c: Make (many) trivial substitutions for renamed and
3051 new macros in dispextern.h, frame.h and window.h.
3052
3053 * w32menu.c: Make (few) trivial substitutions for renamed and
3054 new macros in dispextern.h, frame.h and window.h.
3055
3056 * macterm.h (struct mac_output): Move members left_pos, top_pos,
3057 border_width, pixel_height, pixel_width, line_height,
3058 internal_border_width, vertical_scroll_bar_extra,
3059 left_fringe_width, right_fringe_width, fringe_cols,
3060 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3061 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
3062 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3063 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3064 (PIXEL_WIDTH, PIXEL_HEIGHT)
3065 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3066 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3067 frame.h and renamed [see frame.h changes].
3068 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3069 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3070 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3071 and renamed [see frame.h changes].
9018a88e 3072
0416870b
KS
3073 * macterm.c: Make (several) trivial substitutions for renamed and
3074 new macros in dispextern.h, frame.h and window.h.
3075 (x_draw_glyph_string_box): Adapt to per-window fringes and
3076 scroll-bars.
3077 (glyph_rect): Use window coordinates returned from
3078 window_from_coordinates rather than frame_to_window_pixel_xy.
3079 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3080 scroll-bars.
3081 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3082 (fringes are now inside margins, i.e. always in the clipping area).
3083 All callers changed.
3084 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3085 directly, then call compute_fringe_widths. Don't call
3086 frame_update_line_height.
3087
3088 * macfns.c: Make (several) trivial substitutions for renamed and
3089 new macros in dispextern.h, frame.h and window.h.
9018a88e 3090 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
3091
3092 * macmenu.c: Make (few) trivial substitutions for renamed and
3093 new macros in dispextern.h, frame.h and window.h.
3094
3095 * msdos.h (struct x_output): Remove members left_pos, top_pos,
3096 and line_height, and use corresponding new members in struct
3097 frame. All uses changed.
3098 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
3099 superseeded by corresponding macros in frame.h.
3100
3101 * msdos.c: Make (several) trivial substitutions for renamed and
3102 new macros in dispextern.h, frame.h and window.h.
3103 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 3104 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
3105 (internal_terminal_init): No need to initialize line_height here;
3106 it now defaults to 1.
3107
9018a88e
SM
31082003-05-24 Stefan Monnier <monnier@cs.yale.edu>
3109
3110 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
3111 dropping `down' events.
3112
016bd3c0
AS
31132003-05-24 Andreas Schwab <schwab@suse.de>
3114
3115 * coding.c (find_safe_codings): Fix last change.
3116
4dacadcc
TTN
31172003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
3118
3119 * xfns.c (x_window): Fix typo from 2003-05-21 change.
3120
319830ce
SM
31212003-05-23 Stefan Monnier <monnier@cs.yale.edu>
3122
9018a88e
SM
3123 * xdisp.c (display_mode_element): Increase max depth.
3124 Simplify the error handling code. Use a different error string
3125 for the case where we hit the depth limit.
3126
319830ce
SM
3127 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
3128
3129 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
3130
31312003-05-21 Stefan Monnier <monnier@cs.yale.edu>
3132
3133 * intervals.c (get_local_map): Don't get char-property of previous
3134 point any more: get_pos_property already does it and better.
3135
c67de8ba
DL
31362003-05-21 Dave Love <fx@gnu.org>
3137
3138 [Merged from unicode branch.]
3139
3140 * xfns.c (x_window, x_window): Use use_xim.
3141
3142 * xterm.c (use_xim): Initialize.
3143 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
3144 (x_term_init): Maybe set use_xim.
3145
3146 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
3147
edd3ff1d
JR
31482003-05-21 Jason Rumney <jasonr@gnu.org>
3149
3150 * unexw32.c (_start): Remove _fmode initialization.
3151
3152 * emacs.c (main) [WINDOWSNT]: Move it here.
3153
463f55ee
DL
31542003-05-20 Dave Love <fx@gnu.org>
3155
3156 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
3157
af253914
RS
31582003-05-19 Richard M. Stallman <rms@gnu.org>
3159
3160 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
3161 as value for QCfont attribute.
3162 (realize_default_face): lface should already exist; crash if not.
3163 Specify 0 for FORCE_P when calling set_lface_from_font_name.
3164
3165 * frame.c (Fignore_event): Doc fix.
3166
1d211019
KH
31672003-05-19 Kenichi Handa <handa@m17n.org>
3168
3169 * coding.c (decode_coding_string): Handle post-read-conversion
3170 even if the coding doesn't require decoding.
3171
4dd68254
RS
31722003-05-18 Richard M. Stallman <rms@gnu.org>
3173
3174 * callproc.c (Fcall_process_region): Doc fix.
3175
14d87dc9
SM
31762003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3177
deca5d96
SM
3178 * lread.c (Fload): Print a message if package is obsolete.
3179
14d87dc9
SM
3180 * window.c (Fselect_window): Add optional `norecord' arg.
3181 (select_window_1): Fold into Fselect_window.
3182 (select_window_norecord): New function.
3183 (temp_output_buffer_show): Use it. Preserve current buffer.
3184
3185 * window.h (Fselect_window): Update declaration.
3186
3187 * window.c (delete_window, Fother_window, Fset_window_configuration):
3188 * minibuf.c (read_minibuf):
3189 * macterm.c (x_new_focus_frame):
3190 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
3191 * callint.c (Fcall_interactively):
3192 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
3193
3194 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
3195
78f52183
DK
31962003-05-17 David Kastrup <dak@gnu.org>
3197
3198 * process.c (read_process_output): Back out change from 2003-03-09.
3199
14d87dc9
SM
32002003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3201
3202 * editfns.c (get_pos_property): Don't assume that `object' = nil.
3203
3204 * textprop.c (text_property_stickiness): New arg `buffer'.
3205
3206 * intervals.h (text_property_stickiness): New arg `buffer'.
3207 (get_pos_property): Declare.
3208
3209 * intervals.c (get_local_map): Use get_pos_property, to obey
3210 stickiness and empty overlays.
3211 (create_root_interval, graft_intervals_into_buffer): Use BEG.
3212 (merge_properties, intervals_equal, merge_properties_sticky):
3213 Use XCAR, XCDR.
3214 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
3215
1fd1cc2f
RS
32162003-05-17 Richard M. Stallman <rms@gnu.org>
3217
4f9f637a
RS
3218 * minibuf.c (read_minibuf): If buffer is empty, record the default
3219 in the history.
3220 (Fminibuffer_complete_word): When deleting the overlap, take account
3221 of its real position.
3222
3223 * fns.c (map_char_table): Fix previous change.
3224
1fd1cc2f
RS
3225 * syntax.c (find_defun_start):
3226 When open_paren_in_column_0_is_defun_start,
3227 return beginning of buffer.
3228
3229 * lisp.h (map_char_table): Declare added arg.
3230
3231 * fns.c (map_char_table): New arg TABLE gets the master table.
3232 All calls changed.
3233 Process default and inheritance, resorting to Faref if necessary.
3234
3235 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
3236 (Faccessible_keymaps): Pass new arg to map_char_table.
3237
3238 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
3239
3240 * casetab.c (set_case_table): Pass new arg to map_char_table.
3241
3242 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
3243
3244 * lisp.h (specbinding_func): New typedef.
3245 (struct specbinding): Use specbinding_func, to put the `volatile'
3246 in the right place.
3247
3248 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
3249 to avoid GCC warning.
14d87dc9 3250
b4bd27c5
RS
32512003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
3252
14d87dc9 3253 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 3254
35fb885d
SM
32552003-05-15 Stefan Monnier <monnier@cs.yale.edu>
3256
3257 * keyboard.c (apply_modifiers): Don't fill the other cache.
3258
9a274fbd
SM
32592003-05-14 Stefan Monnier <monnier@cs.yale.edu>
3260
c55b5fad
SM
3261 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
3262
9a274fbd
SM
3263 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
3264 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
3265 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
3266 (Fset_window_configuration, Fcurrent_window_configuration)
3267 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
3268 (Fpos_visible_in_window_p, mark_window_cursors_off)
3269 (window_internal_height, window_internal_width, Frecenter)
3270 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
3271 (replace_buffer_in_all_windows, init_window_once, init_window)
3272 (syms_of_window, keys_of_window): Move from lisp.h.
3273 * lisp.h: Move window.c declarations to window.h.
3274
3275 * bytecode.c: Include window.h.
3276 * emacs.c: Include window.h.
3277
14d87dc9 3278 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
3279 (keyremap): Add `parent' field.
3280 (keyremap_step): Use it. Remove `parent' argument.
3281 (read_key_sequence): Setup and use the new `parent' field.
3282
fd93e331
SM
32832003-05-11 Stefan Monnier <monnier@cs.yale.edu>
3284
3285 * keyboard.c (adjust_point_for_property): Ensure termination.
3286
1c4001a1
SM
32872003-05-10 Stefan Monnier <monnier@cs.yale.edu>
3288
3289 * keyboard.c (follow_key): Remove dead variable `did_meta'.
3290 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
3291 duplicated handling of function-key-map and key-translation-map
3292 in read_key_sequence.
3293 (read_key_sequence): Use them.
3294
3295 * keyboard.c (adjust_point_for_property): Try harder to move point
3296 to the non-sticky end of an invisible property.
3297
3298 * xdisp.c (single_display_prop_intangible_p): Make `space' display
3299 property intangible as well.
3300
780379b1
AS
33012003-05-10 Andreas Schwab <schwab@suse.de>
3302
3303 * xmenu.c (single_menu_item): Change last parameter to void* to
3304 avoid warning.
3305
ca2de342
RS
33062003-05-09 Richard M. Stallman <rms@gnu.org>
3307
3308 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
3309 Bind Qinhibit_modification_hooks to t so there will be no GC.
3310 Rename local `tem' to `save_deactivate_mark'.
3311
3312 * eval.c (specpdl_ptr): Declare volatile.
3313 (unbind_to): Copy the whole binding and decrement specpdl_ptr
3314 before doing the work of unbinding it.
3315
3316 * lisp.h (struct specbinding): Declare elements volatile.
3317 (specpdl_ptr): Declare volatile.
3318
3319 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
3320
3321 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
3322 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
3323
347003be
DL
33242003-05-08 Dave Love <fx@gnu.org>
3325
3326 * coding.c (Vlast_coding_system_used): Doc fix.
3327
5adcec23
JR
33282003-05-07 Jason Rumney <jasonr@gnu.org>
3329
3330 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
3331 when system does not support them.
3332
5fe3b8a4
SM
33332003-05-05 Stefan Monnier <monnier@cs.yale.edu>
3334
3335 * fileio.c (Qwrite_region_annotate_functions): New var.
3336 (build_annotations): Use it to process the global part of the hook.
3337 (syms_of_fileio): Init and staticpro it.
3338
3339 * keyboard.c (safe_run_hooks_error): Display a message instead of
3340 silently ignoring the error.
3341
33422003-05-03 Stefan Monnier <monnier@cs.yale.edu>
3343
3344 * keyboard.c (input_available_signal): Mark static.
3345 (menu_bar_items): Use map_keymap.
3346 (menu_bar_one_keymap): Remove.
3347 (menu_bar_item): Adjust arglist (for use in map_keymap).
3348 Properly hide a second binding when not both are keymaps.
3349
3350 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
3351 (single_keymap_panes): Use it and map_keymap.
3352 (single_menu_item): Use skp as well.
3353
3354 * keymap.h (map_keymap_function_t): New type.
3355 (map_keymap): Declare.
3356
3357 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
3358 (map_keymap_call, Fmap_keymap): New functions.
3359 (syms_of_keymap): Defsubr map-keymap.
3360
4b1b4443
JD
33612003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3362
3363 * gtkutil.c (create_dialog, make_widget_for_menu_item)
3364 (make_menu_item, create_menus, xg_update_menu_item): Don't call
3365 ..._with_mnemonic functions for menu items.
3366
1f816871
KH
33672003-05-01 Kenichi Handa <handa@m17n.org>
3368
3369 * coding.c (coding_system_accept_latin_extra_p): Delete this
3370 function.
3371 (find_safe_codings): Pay attention to
3372 the property tranlsation-table-for-encode of each codings.
3373 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
3374
5ed6ba5b
SM
33752003-05-01 Stefan Monnier <monnier@cs.yale.edu>
3376
3377 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
3378
32c06229
SM
33792003-04-30 Stefan Monnier <monnier@cs.yale.edu>
3380
3381 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
3382
3383 * lisp.h (CHECK): Wrap args in parenthesis.
3384 (specbind): Fix doc: symbol = Qnil is not supported any more.
3385
3386 * bytecode.c (Fbyte_code) <unwind-protect>:
3387 Use Fprogn rather than 0 and Qnil.
3388
3389 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
3390 `double', and `triple' modifiers as well.
3391
ed3c3314
RS
33922003-04-30 Richard M. Stallman <rms@gnu.org>
3393
3394 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
3395
3396 * alloc.c (abort_on_gc): New variable.
3397 (Fgarbage_collect): Abort if abort_on_gc is set.
3398
3399 * lisp.h (abort_on_gc): Add decl.
3400
3401 * eval.c (Fsignal): Clear abort_on_gc.
3402
3403 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 3404 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
3405
3406 * xdisp.c (move_it_vertically_backward): Do the final big else
3407 even if nlines is 0.
3408
3409 * xdisp.c (redisplay_internal): Finish the per-frame loop
3410 even if redisplay is suspended by input.
3411
0b325c12
AC
34122003-04-24 Andrew Choi <akochoi@shaw.ca>
3413
3414 * macterm.c (x_list_fonts): Return all fonts that match if
3415 maxnames = -1.
3416
4e837cd0
KH
34172003-04-25 Kenichi Handa <handa@m17n.org>
3418
3419 * syntax.c (skip_chars): Fix previous change.
3420
9af7511a
KH
34212003-04-24 Kenichi Handa <handa@m17n.org>
3422
3423 * syntax.c (skip_chars): Make the code faster by using the common
3424 technique of *p, *stop, and *endp.
3425
e3b2c21f
JD
34262003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3427
3428 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 3429 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
3430 being updated.
3431
32c06229
SM
34322003-04-19 Stefan Monnier <monnier@cs.yale.edu>
3433
3434 * eval.c (Fapply): Undo last change and add a comment about why.
3435
c6464167
MB
34362003-04-18 Miles Bader <miles@gnu.org>
3437
3438 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
3439 pickier PARSE_MULTIBYTE_SEQ.
3440
e509f168
SM
34412003-04-17 Stefan Monnier <monnier@cs.yale.edu>
3442
3443 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
3444 Use XCDR, XCAR, CONSP.
3445 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
3446 (Fapply): Remove unnecessary GCPRO.
3447
3448 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
3449
3450 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
3451
3452 * buffer.h: Don't hardcode BEG==1.
3453
3454 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
3455
5ceea398
RS
34562003-04-16 Richard M. Stallman <rms@gnu.org>
3457
3458 * xdisp.c (try_window, try_window_reusing_current_matrix):
3459 When at end of window, set window_end_pos to Z-ZV.
3460
3461 * buffer.c (Foverlay_recenter): Doc fix.
3462
e509f168
SM
34632003-04-14 Stefan Monnier <monnier@cs.yale.edu>
3464
3465 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
3466
d243e605
AC
34672003-04-14 Andrew Choi <akochoi@shaw.ca>
3468
3469 * macterm.c (mac_check_for_quit_char): Don't check more often than
3470 once a second.
3471
6901b111
SM
34722003-04-11 Stefan Monnier <monnier@cs.yale.edu>
3473
3474 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
3475 specially, so that they can't hide an implicit switch-frame event.
3476 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
3477 (head_table): Use switch-frame as event_kind for select-window.
3478 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
3479
3480 * editfns.c (Fformat): Lisp_Object/int mixup.
3481 (format2): Remove unused var numargs.
3482
e301806f 34832003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 3484
6901b111 3485 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
3486 (Qafter_insert_file_set_coding): New variable.
3487 (syms_of_fileio): Initialize and staticpro it. Delete declaration
3488 for after-insert-file-adjust-coding-function.
3489 (Finsert_file_contents): Call Qafter_insert_file_set_coding
3490 instead of Vafter_insert_file_adjust_coding_function.
3491
38914424
KH
34922003-04-11 Kenichi Handa <handa@m17n.org>
3493
3494 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
3495
3496 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
3497 string. Callers changed.
3498
34992003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 3500
6901b111 3501 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 3502 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
3503 (Finsert_file_contents):
3504 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
3505 decode-format.
3506
f979dc05
JD
35072003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3508
3509 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
3510 get GtkAdjustment as widget now is a GtkRange.
3511
3512 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
3513 GtkRange to avoid memory leak.
3514
f8c6b4c2 35152003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 3516
50ebc53d
KH
3517 * xfaces.c (Vface_font_rescale_alist): New variable.
3518 (struct font_name): New member rescale_ratio.
3519 (font_rescale_ratio): New function.
6901b111 3520 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
3521 (better_font_p): On comparing point sized, pay attention to
3522 recale_ratio member of fonts.
3523 (build_scalable_font_name): Reflect font->rescale_ratio in the
3524 font name.
6901b111 3525 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 3526
cb98871c
KH
3527 * lread.c (read1): Before calling index, check if the 2nd
3528 arguemnt is in ASCII range.
3529
4773b8ca
RS
35302003-04-08 Richard M. Stallman <rms@gnu.org>
3531
b0ada147
RS
3532 * fileio.c (Ffile_symlink_p): Doc fix.
3533
3534 * editfns.c (Fformat): Translate positions of text properties
3535 in the format string to apply them to the result.
3536
4773b8ca
RS
3537 * fileio.c (Finsert_file_contents): Doc fix.
3538 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
3539
35402003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 3541
4773b8ca
RS
3542 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
3543
e8f25745 35442003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 3545
e8f25745
ST
3546 * mac.c (init_mac_osx_environment): Switch libexec and bin so
3547 that self-contained application finds libexec files.
3548
f8c6b4c2 35492003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 3550
6901b111
SM
3551 * coding.c (code_convert_region_unwind):
3552 Set Vlast_coding_system_used to the argument.
2310d84c
KH
3553 (code_convert_region): If post-read-conversion function changed
3554 the value of last-coding-sytem, keep the new value in
3555 coding->symbol so that it won't be overridden.
3556 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
3557 (coding_system_accept_latin_extra_p): New function.
3558 (find_safe_codings): Pay attention to characters registered in
3559 latin-extra-code-table.
2310d84c 3560
39c9a034
TTN
35612003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
3562
3563 * Makefile.in (md5.o): Add missing dependency info.
3564
eb67c5d6
RS
35652003-04-06 Richard M. Stallman <rms@gnu.org>
3566
3567 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
3568
3569 * marker.c (verify_bytepos): New function.
3570
3571 * intervals.c (set_intervals_multibyte_1): When becoming
3572 multibyte, adjust right and left child sizes to a whole set of
3573 characters. If an interval gets zero total-length, delete it.
3574 If an interval consists of just its children, delete one of them.
3575
3576 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
3577 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 3578
eb67c5d6
RS
3579 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
3580 All calls deleted.
3581 (lisp_malloc): Do the work here directly.
3582
b1f81fc5
JB
35832003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
3584
3585 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
3586 char tables.
3587
35882003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
3589
3590 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
3591 destructively change "%S" to "%s".
3592
774666fb
MB
35932003-04-03 Miles Bader <miles@gnu.org>
3594
3595 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
3596 always set.
3597
19c37f01
DL
35982003-04-01 Dave Love <fx@gnu.org>
3599
3600 * xfns.c (xpm_lookup_color): Grok "opaque".
3601
2f4b24c3
AC
36022003-03-31 Andrew Choi <akochoi@shaw.ca>
3603
3604 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
3605 parent window ID.
3606
3607 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
3608
3609 * macterm.h (struct mac_output): Define x_pixels_diff and
3610 y_pixels_diff.
b1f81fc5 3611
9443fcf6
JB
36122003-03-31 Juanma Barranquero <lektu@terra.es>
3613
3614 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
3615 blockinput.h and files included from it.
3616
e072891b
KS
36172003-03-31 Kim F. Storm <storm@cua.dk>
3618
3619 The following changes consolidates the common code related to
3620 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
3621 files into frame.c.
9443fcf6 3622
e072891b
KS
3623 * frame.c: Include blockinput.h.
3624 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
3625 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
3626 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
3627 related vars here.
3628 (struct frame_parm_table, frame_parms): New table for describing
3629 frame parameters and their associated Q-variable.
3630 The order of the parameters corresponds to the sequence of the
3631 frame_parm_handlers table in redisplay_interface.
3632 (x_fullscreen_move, x_set_frame_parameters)
3633 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
3634 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
3635 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3636 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
3637 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
3638 Generic functions for processing of frame parameters.
3639 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
3640 (display_x_get_resource, x_get_resource_string): Functions for
3641 generic access to X resources.
3642 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
3643 (x_default_parameter, Fx_parse_geometry): Functions for generic
3644 access to frame parameters.
6901b111
SM
3645 (x_figure_window_size): Generic calculation of frame size.
3646 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
3647 (syms_of_frame): Intern and staticpro frame parameter variables.
3648 Defvar_lisp Vx_resource_class and Vx_resource_name here.
3649 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 3650
e072891b
KS
3651 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
3652 parameter related vars defined in frame.c.
3653 (EMACS_CLASS): Define here.
3654 (enum FULLSCREEN_*): Define here.
3655 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
3656 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
3657 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
3658 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
3659 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
3660 (x_set_visibility, x_set_autoraise, x_set_autolower)
3661 (x_set_unsplittable, x_set_vertical_scroll_bars)
3662 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
3663 (x_figure_window_size): Add prototypes.
3664
3665 * dispextern.h (frame_parm_handler): New typedef.
3666 (struct redisplay_interface): New member frame_parm_handlers.
3667 (enum resource_types): Move declaration here.
3668 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
3669 (x_default_parameter): Add prototypes.
3670
3671 * window.c: Remove extern decl for frame parameter vars.
3672 (change_window_heights): New generic function;
3673 replaces x_change_window_heights. All users changed.
3674
3675 * window.h (change_window_heights): Add prototype.
3676
3677 * xfaces.c: Remove extern decl for frame parameter vars.
3678
3679 * xterm.h (EMACS_CLASS): Remove. Use generic define.
3680 (struct w32_display_info): Fix type of xrdb member.
3681 (enum FULLSCREEN_*): Remove.
3682 Remove prototypes for generic functions (in frame.h).
3683
3684 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3685 parameters now defined in frame.h and frame.c.
3686 (Vx_resource_name): Remove. Use generic var.
3687 (enum x_frame_parms): Remove (bogus, unused enum).
3688 (check_x_display_info): Make non-static (for frame.c).
3689 (struct x_frame_parm_table, x_frame_parms): Remove.
3690 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3691 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3692 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3693 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3694 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3695 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3696 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3697 Remove. Use generic functions instead.
3698 (enum resource_types): Remove.
3699 (x_set_scroll_bar_default_width): New global function (for frame.c).
3700 (Fx_create_frame): Depend on x_figure_window_size to add space for
3701 toolbar and setup size_hint_flags.
3702 (x_frame_parm_handlers): New table for redisplay_interface.
3703 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 3704
e072891b
KS
3705 * xterm.c: Remove unnecessary extern declarations.
3706 (x_fullscreen_adjust): Remove. Use generic instead.
3707 (x_redisplay_interface): Add x_frame_parm_handlers member.
3708
3709 * w32gui.h (XrmDatabase): New (dummy) typedef.
3710
3711 * w32term.h (EMACS_CLASS): Remove. Use generic define.
3712 (struct w32_display_info): Fix type of xrdb member.
3713 (enum FULLSCREEN_*): Remove.
3714 (x_fullscreen_adjust): Remove prototype.
3715
3716 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3717 parameters now defined in frame.h and frame.c.
3718 (Vx_resource_name): Remove. Use generic var.
3719 (enum x_frame_parms): Remove (bogus, unused enum).
3720 (check_x_display_info): Make non-static (for frame.c).
3721 (struct x_frame_parm_table, x_frame_parms): Remove.
3722 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3723 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3724 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3725 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3726 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3727 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3728 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3729 Remove. Use generic functions instead.
3730 (enum resource_types): Remove.
3731 (x_set_scroll_bar_default_width): New global function (for frame.c).
3732 (Fx_create_frame): Depend on x_figure_window_size to add space for
3733 toolbar and setup size_hint_flags.
3734 (w32_frame_parm_handlers): New table for redisplay_interface.
3735 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 3736
e072891b
KS
3737 * w32term.c: Remove unnecessary extern declarations.
3738 (x_fullscreen_adjust): Remove. Use generic instead.
3739 (x_redisplay_interface): Add w32_frame_parm_handlers member.
3740
3741 * w32reg.c (x_get_string_resource): Use XrmDatabase.
3742
3743 * macgui.h (XrmDatabase): New (dummy) typedef.
3744
3745 * macterm.h (EMACS_CLASS): Remove.
3746 (struct mac_display_info): Add xrdb member.
3747 (struct mac_output): Add want_fullscreen member.
3748
3749 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3750 parameters now defined in frame.h and frame.c.
3751 (Vx_resource_name): Remove. Use generic var.
3752 (check_x_display_info): Make non-static (for frame.c).
3753 (struct x_frame_parm_table, x_frame_parms): Remove.
3754 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3755 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3756 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3757 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3758 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3759 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3760 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3761 Remove. Use generic functions instead.
3762 (enum resource_types): Remove.
3763 (x_set_scroll_bar_default_width): New global function (for frame.c).
3764 (mac_frame_parm_handlers): New table for redisplay_interface.
3765 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 3766
e072891b
KS
3767 * macterm.c: Remove unnecessary extern declarations.
3768 (x_redisplay_interface): Add mac_frame_parm_handlers member.
3769
3e6a560b
KS
3770 * Makefile.in (frame.o): Add dependency on blockinput.h and files
3771 included from it (atimer.h and systime.h).
3772
7b7b454e
AS
37732003-03-30 Andreas Schwab <schwab@suse.de>
3774
3775 * xdisp.c (x_insert_glyphs): Fix swapped width and height
3776 parameters for shift_glyphs_for_insert.
3777
3778 * macterm.c (x_redisplay_interface): Add missing entry for
3779 draw_vertical_window_border.
3780
beb402de
KG
37812003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
3782
3783 * fileio.c (Fexpand_file_name): In the no-handler case, after
3784 expanding, look again for a handler and invoke it. This is needed
3785 for filenames like "/foo/../user@host:/bar/../baz" -- the first
3786 expansion produces "/user@host:/bar/../baz" which needs to be
3787 expanded again for the finame result "/user@host:/baz".
3788
b676f356
JD
37892003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3790
3791 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
3792 of area to be redrawn for better performance.
3793
3c671a56
SM
37942003-03-28 Stefan Monnier <monnier@cs.yale.edu>
3795
3796 * xterm.c (take_vertical_position_into_account): Remove.
3797 (xt_action_hook): Call set_vertical_scroll_bar if needed.
3798 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
3799 (xm_scroll_callback, x_create_toolkit_scroll_bar)
3800 (x_set_toolkit_scroll_bar_thumb): Simplify.
3801 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
3802 (XTread_socket): Remove unused var.
3803 (x_make_frame_invisible): Replace goto with else.
3804
3805 * xdisp.c (set_vertical_scroll_bar): New fun.
3806 (redisplay_window): Use it.
3807
84f2e615
RS
38082003-03-26 Richard M. Stallman <rms@gnu.org>
3809
3810 * xdisp.c (update_tool_bar): Recompute tool bar if
3811 update_mode_lines is set. Set w->update_mode_line
3812 only if the tool bar contents actually change.
3813 (update_menu_bar): Undo previous change.
3814
70b6104c
JD
38152003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3816
5fd6f727
JD
3817 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
3818 (xg_frame_set_char_size): Calculate scroll bar width before frame
3819 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
3820 (xg_separator_p): Check for all documented separator types.
3821 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
3822 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
3823
70b6104c
JD
3824 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
3825 so tool bar gets updated.
3826
d9b36d19
SM
38272003-03-26 Stefan Monnier <monnier@cs.yale.edu>
3828
3829 * data.c (store_symval_forwarding): Re-instate part of the code
3830 that was deleted with too much enthusiasm.
3831
38322003-03-25 Stefan Monnier <monnier@cs.yale.edu>
3833
3834 * data.c (store_symval_forwarding): Delete special read-only
3835 hack for type == -1, since we now use ->constant instead.
3836 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
3837
3838 * buffer.c (overlays_in): Declare static.
3839 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
3840 `constant' field rather than the variable's `type' field.
3841
365fa1b3
AC
38422003-03-24 Andrew Choi <akochoi@shaw.ca>
3843
3844 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
3845
3846 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
3847
3848 * fns.c [MAC_OSX]: Do not redefine vector.
3849
3850 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
3851
3852 * macgui.h: Remove definition of No_Cursor.
3853
d9b36d19 3854 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
3855
3856 * xdisp.c: Define No_Cursor.
3857 (x_write_glyphs, notice_overwritten_cursor)
3858 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
3859 (note_mouse_highlight): Remove Mac-specific code.
3860 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 3861
c0bcce6f
JPW
38622003-03-24 John Paul Wallington <jpw@gnu.org>
3863
3864 * xdisp.c (redisplay_window): If mini window's buffer is not
3865 empty, then redisplay it like other windows.
3866
a526b96c
KS
38672003-03-23 Kim F. Storm <storm@cua.dk>
3868
3869 * w32term.c (w32_draw_window_cursor): Fix last change.
3870
37ab321e
KH
38712003-03-23 Kenichi Handa <handa@m17n.org>
3872
a526b96c
KS
3873 * alloc.c (make_string_from_bytes, make_specified_string):
3874 Add `const' for the arg CONTENTS.
37ab321e
KH
3875
3876 * lisp.h (make_string_from_bytes, make_specified_string):
3877 Prototypes adjusted.
3878
7863d625
JD
38792003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3880
a526b96c 3881 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 3882
7863d625
JD
3883 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
3884 (XG_SB_RANGE): New define.
3885
3886 * gtkutil.c (xg_fixed_handle_expose): New function.
3887 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
3888 expose events.
3889 (xg_update_scrollbar_pos): Take two more arguments, left and width
3890 of scroll bar including borders.
3891 Clear left and right part outside scroll bar separately as some
3892 themes have bars that are not an even number of pixels.
d9b36d19 3893 Don't set reallocate_redraws, don't call
7863d625
JD
3894 gdk_window_process_all_updates.
3895 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
3896 so no need to change it. Calculate size and value with XG_SB_RANGE.
3897
d9b36d19
SM
3898 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
3899 Pass left and width of scroll bar including borders to
7863d625
JD
3900 xg_update_scrollbar_pos.
3901
af0ad939
TTN
39022003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
3903
3904 * Makefile.in: Make sure space precedes end-of-line backslashes.
3905
b22139fd
KS
39062003-03-22 Kim F. Storm <storm@cua.dk>
3907
3908 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
3909 Add generic versions here. Remove system specific versions
3910 defined elsewhere.
3911
3912 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
3913 Add prototypes.
3914
6e6410cf
KS
3915 * xterm.h (STORE_NATIVE_RECT): New macro.
3916
5c9cc435
KS
39172003-03-21 Kim F. Storm <storm@cua.dk>
3918
00c64fab
SM
3919 * xdisp.c (get_glyph_string_clip_rect):
3920 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
3921
3922 * dispextern.h (struct redisplay_interface): Add active_p
3923 argument to draw_window_cursor member. All uses changed.
3924
acd37560
KS
39252003-03-21 Kim F. Storm <storm@cua.dk>
3926
3927 The following changes consolidate code related to writing and
3928 inserting glyphs, exposing frame, the tool bar, the mouse face,
3929 the output cursor, and help echo from xterm.c, w32term.c and
3930 macterm.c into xdisp.c. It also generalizes the use of the
3931 window_part enum instead of using numeric values throughout.
af0ad939 3932
acd37560
KS
3933 * xdisp.c: Consolidate gui-independent code here.
3934 Include keymap.h.
3935 (Qhelp_echo): Import.
3936 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
3937 (help_echo_string, help_echo_window, help_echo_object)
3938 (previous_help_echo_string, help_echo_pos): Declare here.
3939 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
3940 (estimate_mode_line_height): Define here. Handle windowing
3941 systems directly (without using estimate_mode_line_height_hook).
3942 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
3943 (update_window_cursor, update_cursor_in_window_tree)
3944 (fast_find_position, fast_find_string_pos)
3945 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
3946 (expose_area, expose_line, expose_overlaps, expose_window)
3947 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
3948 declared static as they are only used locally in xdisp.c.
3949 (draw_glyphs): Rename from x_draw_glyphs and make static.
3950 (tool_bar_item_info, notice_overwritten_cursor): Make static.
3951 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
3952 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 3953 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
3954 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
3955 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
3956 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
3957 (note_mouse_highlight, x_clear_window_mouse_face)
3958 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
3959 (x_intersect_rectangles): New generic functions for use by xdisp.c
3960 and GUI front-ends.
3961 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
3962 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
3963
3964 * dispextern.h (Display_Info): Generic typedef for *_display_info.
3965 (NativeRectangle): Generic typedef for rectangle type.
3966 (enum window_part): Move here from window.c.
3967 (struct redisplay_interface): New members flush_display_optional,
3968 define_frame_cursor, clear_frame_area, draw_window_cursor,
3969 draw_vertical_window_border, shift_glyphs_for_insert.
3970 Rename member clear_mouse_face to clear_window_mouse_face.
3971 (estimate_mode_line_height_hook): Remove hook.
3972 (auto_raise_tool_bar_buttons_p): Don't declare extern.
3973 (tool_bar_item_info): Remove prototype.
3974 (help_echo_string, help_echo_window, help_echo_object)
3975 (previous_help_echo_string, help_echo_pos)
3976 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
3977 (x_stretch_cursor_p, output_cursor): Declare extern.
3978 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
3979 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
3980 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
3981 (display_and_set_cursor, set_output_cursor, x_cursor_to)
3982 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
3983 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
3984 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
3985 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
3986 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
3987 Add prototypes.
3988 (mode_line_string, marginal_area_string): Fix prototypes.
3989
3990 * window.c (enum window_part): Move to dispextern.h.
3991 (coordinates_in_window): Use enum window_part member names
3992 instead of numbers to describe return value.
3993 (struct check_window_data): Change part member to window_part.
3994 (check_window_containing): Return window_part unaltered.
3995 (window_from_coordinates): Change part arg from int to enum
3996 window_part. Allow part arg to be null. All users changed.
3997
3998 * window.h (window_from_coordinates): Fix prototype.
3999
4000 * term.c (estimate_mode_line_height): Move to xdisp.c.
4001
4002 * keyboard.c (make_lispy_event): Use enum window_part.
4003
4004 * dispnew.c (mode_line_string, marginal_area_string): Use enum
4005 window_part instead of int in arg list. Users changed.
4006
4007 * xterm.h (No_Cursor): Declare as None for X.
4008 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 4009
acd37560
KS
4010 * xterm.c: Remove consolidated defines and code.
4011 (BETWEEN): Remove unused macro.
4012 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
4013 (x_define_frame_cursor, x_clear_frame_area)
4014 (x_draw_window_cursor): New X-specific functions for RIF.
4015 (x_redisplay_interface): Add new members.
4016
4017 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
4018
4019 * w32term.h (struct w32_output): Remove cross_cursor member.
4020
4021 * w32term.c: Remove consolidated defines and code.
4022 (BETWEEN): Remove unused macro.
4023 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
4024 (w32_define_frame_cursor, w32_clear_frame_area)
4025 (w32_draw_window_cursor): New W32-specific functions for RIF.
4026 (w32_redisplay_interface): Add new members.
4027
4028 * w32gui.h (No_Cursor): Define as 0 for W32.
4029 (XRectangle): Add X compatible rectangle type.
4030 (NativeRectangle): Declare as RECT for W32.
4031 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4032
4033 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
4034
4035 * w32console.c: Remove consolidated defines and code.
af0ad939 4036
acd37560
KS
4037 * msdos.h (Display_Info): Add generic typedef.
4038
4039 * msdos.c: Remove consolidated defines and code.
4040 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
4041
4042 * macterm.h (struct mac_output): Replace member cross_cursor by
4043 hand_cursor.
4044 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
4045
4046 * macterm.c: Remove consolidated defines and code.
4047 (BETWEEN): Remove unused macro.
4048 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
4049 (mac_define_frame_cursor, mac_clear_frame_area)
4050 (mac_draw_window_cursor): New Mac-specific functions for RIF.
4051 (x_redisplay_interface): Add new members.
4052
4053 * macgui.h (No_Cursor): Define as 0 for Mac.
4054 (XRectangle): Add X compatible rectangle type.
4055 (NativeRectangle): Declare as Rect for Mac.
4056 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4057
204ccab1
KS
4058 * macfns.c (x_set_mouse_color): Setup hand_cursor.
4059 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 4060
9443fcf6 4061 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
4062 included from it. Add dependency on keymap.h.
4063
4064 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
4065
8ba01a70 40662003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
4067
4068 * fileio.c (Fexpand_file_name): Fix previous change.
4069
8ba01a70 40702003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
4071
4072 * fileio.c (Ffile_name_directory): Reconstruct file name by
4073 make_specified_string.
4074 (Ffile_name_nondirectory, Ffile_name_as_directory)
4075 (Fdirectory_file_name, Fexpand_file_name)
4076 (Fsubstitute_in_file_name): Likewise.
4077 (Fread_file_name): Compare decoded homedir with DIR and
4078 DEFAULT_FILENAME.
4079
4080 * alloc.c (make_specified_string): If NCHARS is negative, count
4081 the number of characters.
4082
19536747
JD
40832003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4084
de38ae5a
JD
4085 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
4086 all widgets.
4087
19536747
JD
4088 * gtkutil.h: Removed xg_ignore_next_thumb.
4089
37ab321e 40902003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
4091
4092 * coding.c (Vchar_coding_system_table): Remove this variable.
4093 (Vcoding_system_safe_chars): New variable.
4094 (intersection): Remove this function.
4095 (find_safe_codings): Don't use Vchar_coding_system_table, but try
4096 all codings in SAFE_CODINGS.
00c64fab 4097 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
4098 find_safe_codings. Get generic coding systems from
4099 Vcoding_system_safe_chars.
4100 (Fdefine_coding_system_internal): New function.
4101 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
4102 Initialize and staticpro Vcoding_system_safe_chars.
4103
17097258
JD
41042003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4105
2a2071c3
JD
4106 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
4107 equal old values before updating.
4108
17097258
JD
4109 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
4110
4111 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
4112
41132003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4114
4115 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
4116 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
4117 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
4118 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
4119 (xg_create_scroll_bar): Pass bar to button event callback.
4120 (xg_find_top_left_in_fixed): New function.
4121 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
4122 whole scroll bar area. Get old position with
4123 xg_find_top_left_in_fixed, calculate and only clear needed areas.
4124 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
4125 dragging is in progress. Calculate whole as for Motif.
4126 Remove code that saved last values. Call gtk_range functions to
4127 set scroll bar sizes.
4128
4129 * gtkutil.h: Removed xg_ignore_next_thumb.
4130
8cb9dfbf
JB
41312003-03-17 Juanma Barranquero <lektu@terra.es>
4132
4133 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
4134 and files included from it.
4135
00c64fab
SM
41362003-03-18 Stefan Monnier <monnier@cs.yale.edu>
4137
4138 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
4139 multiple occurrences of the same keymap under different prefixes.
4140 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
4141
c45bb3b2
JR
41422003-03-16 Jason Rumney <jasonr@gnu.org>
4143
4144 * w32gui.h: Use HDC for Display.
4145
4146 * w32term.c (w32_encode_char): Prevent double-byte chars from
4147 crashing Emacs.
4148
4149 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
4150 as binary.
4151
2a6d0874
JB
41522003-03-16 Juanma Barranquero <lektu@terra.es>
4153
4154 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
4155
03eb5fab
KS
41562003-03-16 Kim F. Storm <storm@cua.dk>
4157
4158 The following changes consolidate some of the gui-independent
4159 parts of the processing and drawing of "glyph strings" from
4160 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 4161
03eb5fab
KS
4162 * dispextern.h (struct glyph): Reduce face_id member from 22 to
4163 21 bits (this reduces number of faces from 4M to 2M).
4164 Replace W32 specific w32_font_type member (2 bits) by generic
4165 font_type member (3 bits) for portability.
4166 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
4167 (enum draw_glyphs_face): Define here.
4168 (struct glyph_string): Define here. Merge W32 and X versions.
4169 (struct redisplay_interface): New members per_char_metric,
4170 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
4171 (VCENTER_BASELINE_OFFSET): Define here.
4172 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
4173 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
4174
4175 * xdisp.c: Consolidate gui-independent "glyph string" code here.
4176 (dump_glyph_string): Moved here.
4177 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
4178 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
4179 (fill_composite_glyph_string, fill_glyph_string)
4180 (fill_image_glyph_string, fill_stretch_glyph_string)
4181 (left_overwritten, left_overwriting, right_overwritten)
4182 (right_overwriting, get_char_face_and_encoding)
4183 (set_glyph_string_background_width, compute_overhangs_and_x)
4184 (append_glyph, append_composite_glyph, produce_image_glyph)
4185 (take_vertical_position_into_account, append_stretch_glyph)
4186 (produce_stretch_glyph): New generic functions (based on X version).
4187 Call platform specific functions through rif.
4188 (INIT_GLYPH_STRING): New macro, hides W32 details.
4189 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
4190 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
4191 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
4192 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
4193 (notice_overwritten_cursor):
4194 Generic functions exported to platform modules. Users changed.
4195
4196 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
4197 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
4198 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 4199 New macros for consolidated code.
2a6d0874 4200
03eb5fab
KS
4201 * xterm.c: Remove consolidated defines and code.
4202 (x_per_char_metric, x_encode_char)
4203 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
4204 (x_redisplay_interface): Add new members.
4205
4206 * w32gui.h (Display): Add dummy typedef for consolidation.
4207 (XChar2b): Define alias for wchar_t for consolidation.
4208 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4209
4210 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 4211 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
4212 New macros for consolidation.
4213
fad49844 4214 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
4215 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
4216 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
4217 (w32_per_char_metric): Change font_type arg to int for RIF.
4218 (w32_encode_char): Return int according to RIF requirements.
4219 (w32_compute_glyph_string_overhangs): Adapt to RIF.
4220 (w32_get_glyph_overhangs): New function for RIF. Uses generic
4221 x_get_glyph_overhangs.
4222 (w32_redisplay_interface): Add new members.
4223
4224 * macgui.h (XChar2b): Move typedef here for consolidation.
4225 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4226
4227 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
4228 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
4229 consolidation.
4230
4231 * macterm.c: Remove consolidated defines and code.
4232 (mac_per_char_metric): New function for RIF.
00c64fab 4233 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
4234 (mac_compute_glyph_string_overhangs): Adapt for RIF.
4235 (x_redisplay_interface): Add new members.
4236
00c64fab
SM
42372003-03-15 Stefan Monnier <monnier@cs.yale.edu>
4238
4239 * keymap.c (Vmenu_events): New var.
4240 (syms_of_keymap): Initialize it.
4241 (where_is_internal): Check more carefully what is a menu event.
4242
225c7a07
RS
42432003-03-14 Richard M. Stallman <rms@gnu.org>
4244
4245 * lread.c (read1): After #!, exit loop on eof.
4246
cea9be54
JD
42472003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4248
9ea0e54d
JD
4249 * gtkutil.h: Add declaration for xg_frame_cleared.
4250
0cb35f4e
JD
4251 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
4252
cea9be54
JD
4253 * gtkutil.c (struct xg_last_sb_pos): New structure.
4254 (handle_fixed_child): New function.
4255 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
4256 and force a redraw on them.
4257 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
4258 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
4259 so we can avoid unneeded redraws.
4260 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
4261 and force a redraw on the scroll bar.
4262 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
4263 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 4264 (xg_frame_cleared): New function.
cea9be54 4265
20b853f3
KH
42662003-03-13 Kenichi Handa <handa@m17n.org>
4267
4268 * coding.c (Fdetect_coding_region): Fix docstring.
4269 (Fdetect_coding_string): Fix docstring.
4270
7a555aff
AS
42712003-03-13 Andreas Schwab <schwab@suse.de>
4272
25cc0080
AS
4273 * gtkutil.c: Add prototype for create_menus.
4274
30225431
AS
4275 * data.c (long_to_cons): Fix type of top.
4276
4277 * xselect.c (selection_data_to_lisp_data): Use int instead of
4278 long for an integer of size 4.
4279
7a555aff 4280 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 4281 (xg_tool_bar_help_callback): Likewise.
7a555aff 4282
a3e4741f
AS
42832003-03-12 Andreas Schwab <schwab@suse.de>
4284
4285 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
4286
9668be7c
KS
42872003-03-12 Kim F. Storm <storm@cua.dk>
4288
03eb5fab 4289 The following changes consolidate the fringe handling from
9668be7c 4290 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 4291
9668be7c
KS
4292 * xdisp.c: Consolidate fringe handling code here.
4293 (left_bits, right_bits, continued_bits, continuation_bits)
4294 (ov_bits, zv_bits): Define fringe bitmaps.
4295 (fringe_bitmaps): New array holding fringe bitmaps.
4296 (draw_fringe_bitmap): Draw a specific bitmap; call display
4297 specific drawing routine via rif->draw_fringe_bitmap.
4298 (draw_row_fringe_bitmaps): Generic replacement for
4299 x_draw_row_fringe_bitmaps; all callers changed.
4300 (compute_fringe_widths): Generic replacement for
4301 x_compute_fringe_widths; all callers changed.
4302
4303 * dispextern.h (enum fringe_bitmap_type): Define here.
4304 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
4305 (fringe_bitmaps): Declare extern.
4306 (struct redisplay_interface): New member draw_fringe_bitmap.
4307 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
4308
4309 * xterm.c: Remove generic fringe code.
4310 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
4311 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
4312
4313 * w32term.c: Remove generic fringe code.
4314 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
4315 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 4316
9668be7c
KS
4317 * macterm.c: Remove generic fringe code.
4318 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
4319 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
4320
00a88f32
SM
43212003-03-11 Stefan Monnier <monnier@cs.yale.edu>
4322
4323 * print.c (Fprin1_to_string): Return unibyte string if possible.
4324
1d1de695
DK
43252003-03-09 David Kastrup <dak@gnu.org>
4326
4327 * process.c (read_process_output): We have allocated enough space
4328 for readmax and carryover, so actually use the alloted space.
4329
257f40f2
JD
43302003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4331
4332 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
4333 toolkit scrollbar click.
4334
4335 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
4336 for USE_GTK.
4337 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
4338 also.
4339 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
4340 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 4341
257f40f2
JD
4342 * gtkutil.h: Declare xg_get_scroll_id_for_window.
4343
4344 * gtkutil.c (xg_get_scroll_id_for_window): New function.
4345 (xg_tool_bar_item_expose_callback): New function.
4346 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
4347 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
4348 on the tool bar widget.
4349 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
4350 to expose on the tool bar item widgets.
4351
15213141
JD
43522003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4353
26b74a0b 4354 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 4355 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
4356 deleted from the image cache).
4357
15213141
JD
4358 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
4359 the event isn't for a frame (i.e. for dialogs).
4360
20b853f3 43612003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
4362
4363 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
4364 composition components reaches the limit, terminate composing.
4365 (COMPOSITION_OK): New macro.
00a88f32 4366 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
4367 composition is found.
4368 (coding_restore_composition): Adjust the number of composition
4369 components if it is not sane.
4370
c9029fe5
JB
43712003-03-06 Juanma Barranquero <lektu@terra.es>
4372
4373 * w32term.h (struct w32_display_info): Add xrdb member to support
4374 passing resources via -xrm on Windows.
4375
4376 * w32term.c (w32_make_rdb): New function.
4377 (w32_term_init): Use it to initialize xrdb member of w32_display_info
4378 struct. Delete leftover code.
4379
4380 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
4381 for resources passed on the command line.
4382
4383 * w32reg.c (w32_get_rdb_resource): New function.
4384 (x_get_string_resource): Use it, so resources passed with -xrm
4385 supercede the ones in the registry.
4386
9d00001f
JD
43872003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4388
4389 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
4390 instead of x_top_window_to_frame.
4391
ca2417b9
JD
43922003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4393
4394 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
4395 when restarting Emacs.
4396
5b20caf0
RS
43972003-03-03 Richard M. Stallman <rms@gnu.org>
4398
4399 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
4400 to run kill-buffer-query-functions.
4401 (Qkill_buffer_query_functions): New var.
4402 (syms_of_buffer): Init and staticpro it.
4403
58e91b77
JD
44042003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4405
4406 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
4407
932357b4
KS
44082003-02-25 Kim F. Storm <storm@cua.dk>
4409
4410 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
4411 If centering point failed to make whole line visible and vscroll
4412 is non-zero, disable vscroll and try centering point again.
4413
4414 * lread.c (read1): Accept `single space' syntax like (? x).
4415
bb8db7e1
JD
44162003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4417
4418 * keyboard.c (cancel_hourglass_unwind): Surround with
4419 #ifdef HAVE_X_WINDOWS
4420
47d77aab
KH
44212003-02-25 Kenichi Handa <handa@m17n.org>
4422
4423 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
4424 process only when "subprocesses" is defined.
4425
6a097c0c
SM
44262003-02-24 Stefan Monnier <monnier@cs.yale.edu>
4427
4428 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
4429
0b063c27
JB
44302003-02-24 Juanma Barranquero <lektu@terra.es>
4431
d1135afc
JB
4432 * callint.c (fix_command): Declare as static void and move before
4433 Fcall_interactively.
4434
0b063c27
JB
4435 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
4436 (syms_of_xdisp): Don't initialize Qwhen.
4437
0af912f0
JD
44382003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4439
4440 * keyboard.c (cancel_hourglass_unwind): New function.
4441 (command_loop_1): Cancel hourglass with unwind-protect.
4442
120d0a23
RS
44432003-02-23 Richard M. Stallman <rms@gnu.org>
4444
4445 * callint.c (fix_command): New subroutine, from Fcall_interactively.
4446 Detect (when ... (region-beginning)) etc.
4447 (Fcall_interactively): Call fix_command.
4448 (Qif, Qwhen): New variables.
4449 (syms_of_callint): Init and staticpro them.
0b063c27 4450
120d0a23
RS
4451 * regex.c (print_partial_compiled_pattern): Output to stderr.
4452
4ece81a6
KG
44532003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
4454
4455 * dired.c (directory_files_internal): Don't expand directory.
4456 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
4457 instead. From Lars Hansen <larsh@math.ku.dk>.
4458
e52bd6b7
SM
44592003-02-22 Stefan Monnier <monnier@cs.yale.edu>
4460
4461 * fns.c (string_to_multibyte): Remove unused var i.
4462 (Flanginfo): Fix int/Lisp_Object mixup.
4463 (void_call2): New fun.
4464 (Fmap_char_table): Use it in place of call2.
4465
4466 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
4467
4468 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
4469
4470 * keymap.c (copy_keymap_1): Make it static.
4471
4472 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
4473
c33ef7c4
JB
44742003-02-22 David Ponce <david@dponce.com>
4475
4476 * lread.c (Fload): Don't check STRING_MULTIBYTE.
4477
16782258
JD
44782003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4479
4480 * process.h: Removed subtty field from struct Lisp_Process.
4481
4482 * process.c (create_process): Remove setting of subtty.
4483 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
4484 (Fprocess_running_child_p, process_send_signal):
4485 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
4486 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
4487
3abeca61
KG
44882003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
4489
4490 * keymap.c (Fdefine_key): Doc fix.
4491
92a8ce63
JB
44922003-02-21 Juanma Barranquero <lektu@terra.es>
4493
4494 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
4495
4496 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
4497 POLLING_PROBLEM_IN_SELECT.
4498
4499 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
4500 Delete #undef of POLLING_PROBLEM_IN_SELECT.
4501
4502 * s/hpux10-20.h: New file.
4503
e52bd6b7
SM
4504 * process.c (wait_reading_process_input):
4505 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 4506
20f1ef2e
KH
45072003-02-20 Kenichi Handa <handa@m17n.org>
4508
32d0a9dc
KH
4509 * fontset.c (check_fontset_name): If NAME is nil, return the
4510 default fontset.
4511 (override_font_info): New function.
e52bd6b7 4512 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
4513 (Ffontset_info): If FONTSET is not the default fontset, merge
4514 FONTSET onto the copy of the default fontset, and work on that
4515 copy. Document that NAME nil means the default fontset.
4516 (Ffontset_font): Document that NAME nil means the default fontset.
4517
20f1ef2e
KH
4518 * process.c (setup_process_coding_systems): If the process's
4519 in/out descriptor is -1, do nothing.
4520
77d1daf2
AS
45212003-02-19 Andreas Schwab <schwab@suse.de>
4522
e52bd6b7
SM
4523 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
4524 Add prototypes.
77d1daf2 4525
f9a45bb3
KH
45262003-02-19 Kenichi Handa <handa@m17n.org>
4527
4528 * xfaces.c (try_alternative_families): Try all scalable fonts if
4529 Vscalable_fonts_allowed is not Qt.
4530
72ecb43c
JD
45312003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4532
4533 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
4534
ee5be7c3
JD
45352003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4536
4537 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
4538 names.
4539
4540 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 4541 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
4542 x_face_list_fonts.
4543 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
4544 (Fx_list_fonts): Set maxnames to -1 to get all font names.
4545
4cd519a7
KS
45462003-02-18 Kim F. Storm <storm@cua.dk>
4547
068f9882
KS
4548 * lread.c (read1): Fix last change.
4549 "`" is not always special. Allow "?" after a character constant.
4cd519a7 4550
7290a344
AC
45512003-02-18 Andrew Choi <akochoi@shaw.ca>
4552
4553 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
4554
1f7fa69b
AS
45552003-02-18 Andreas Schwab <schwab@suse.de>
4556
4557 * window.c (window_scroll_pixel_based): Move outside a
4558 multi-glyph character before setting new window start.
4559
4560 * xdisp.c (in_display_vector_p): New function.
4561 * dispextern.h (in_display_vector_p): Declare.
4562
23e21195
KS
45632003-02-18 Kim F. Storm <storm@cua.dk>
4564
4565 * lread.c (read1): Fix and relax read syntax.
4566 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
4567 Only recognize "," after dotted-pair dot if inside backquote.
4568 Never include "`" or "," (inside backquote) in a symbol.
4569 Allow dotted-pair dot after a character constant.
4570 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 4571
f098b121
JD
45722003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4573
4574 * gtkutil.c (xg_tool_bar_expose_callback): New function.
4575 (xg_create_tool_bar): Force style of tool bar to be horizontal with
4576 icons. Set name of tool bar to emacs-toolbar.
4577 (update_frame_tool_bar): Connect expose event to
4578 xg_tool_bar_expose_callback.
4579
63020c46
RS
45802003-02-17 Richard M. Stallman <rms@gnu.org>
4581
4582 * keyboard.c (this_command_key_count_reset): New variable.
4583 Initiatize to 0 where this_command_key_count is set.
4584 (read_char): Save and restore this_command_key_count_reset
4585 around input method code.
4586 (read_char): If this_command_key_count_reset, echo reread commands.
4587 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
4588
fb4452cc
KH
45892003-02-17 Kenichi Handa <handa@m17n.org>
4590
4591 * fns.c (string_to_multibyte): Always return a multibyte string.
4592
bd11cc09
JR
45932003-02-16 Jason Rumney <jasonr@gnu.org>
4594
e52bd6b7
SM
4595 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
4596 Negative max_fonts parameter means list all.
bd11cc09 4597
4cdf4bde
DL
45982003-02-14 Dave Love <fx@gnu.org>
4599
4600 * fns.c (Flanginfo): Doc fix.
4601
023b93f6
KS
46022003-02-13 Kim F. Storm <storm@cua.dk>
4603
37cd4238
KS
4604 * lread.c (read_escape): Interpret \s as a SPACE character, except
4605 for \s-X in a character constant which still is the super modifier.
4606 (read1): Signal an `invalid read syntax' error if a character
4607 constant is immediately followed by a digit or symbol character.
4608
140a6b7e
KS
4609 * search.c (Fmatch_data): Doc fix. Explicitly state that
4610 match-data is undefined if last search failed.
4611
023b93f6
KS
4612 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
4613 All uses changed.
4614
7d5c86e5
JB
46152003-02-12 Juanma Barranquero <lektu@terra.es>
4616
4617 * eval.c (Fdefmacro): Fix typo.
4618
295fff2c
KS
46192003-02-12 Kim F. Storm <storm@cua.dk>
4620
4621 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
4622 macro is a string, convert meta modifiers in string when copying
4623 the string into a vector.
4624
60f3202d
KS
46252003-02-11 Kim F. Storm <storm@cua.dk>
4626
4627 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
4628
61cb0b53
KH
46292003-02-11 Kenichi Handa <handa@m17n.org>
4630
4631 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
4632
7392e23c
KS
46332003-02-10 Kim F. Storm <storm@cua.dk>
4634
4635 * process.c: Doc fixes.
4636 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
4637
ce4254bd
KH
46382003-02-10 Kenichi Handa <handa@m17n.org>
4639
9c7a329a
KH
4640 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
4641
ce4254bd
KH
4642 * process.c (QCfilter_multibyte): New variable.
4643 (setup_process_coding_systems): New function.
e52bd6b7
SM
4644 (Fset_process_buffer, Fset_process_filter):
4645 Call setup_process_coding_systems.
ce4254bd
KH
4646 (Fstart_process): Initialize the member `filter_multibyte' of
4647 struct Lisp_Process.
4648 (create_process): Call setup_process_coding_systems.
4649 (Fmake_network_process): New keyward `:filter-multibyte'.
4650 Initialize the member `filter_multibyte' of struct Lisp_Process.
4651 Call setup_process_coding_systems.
4652 (server_accept_connection): Call setup_process_coding_systems.
4653 (read_process_output): If the process has a filter, decide the
4654 multibyteness of a string to given to the filter by
4655 `filter_multibyte' member of the process. If the process doesn't
4656 have a filter and the result of conversion is unibyte, use
4657 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
4658 multibyte form.
4659 (Fset_process_coding_system): Call setup_process_coding_systems.
4660 (Fset_process_filter_multibyte): New function.
4661 (Fprocess_filter_multibyte_p): New function.
4662 (syms_of_process): Intern and staticpro QCfilter_multibyte.
4663 Defsubr Sset_process_filter_multibyte and
4664 Sprocess_filter_multibyte_p.
4665
4666 * process.h (struct Lisp_Process): New member filter_multibyte.
4667
4668 * lisp.h (setup_process_coding_systems): Add prototype.
4669
4670 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
4671 process, update coding systems for the process.
4672
b08d5f59
KH
46732003-02-09 Kenichi Handa <handa@m17n.org>
4674
4675 * fns.c (string_to_multibyte): New function.
4676 (Fstring_to_multibyte): New function.
4677 (syms_of_fns): Defsubr it.
4678
0dfd93c0
AS
46792003-02-08 Andreas Schwab <schwab@suse.de>
4680
4681 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
4682 instead of the substitution.
4683
7b76ca1c
JD
46842003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4685
4686 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
4687
4688 * xmenu.c (menu_position_func): Adjust menu popup position so that
4689 the menu is fully visible.
7b76ca1c 4690
2436a4e4
JD
46912003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4692
4693 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
4694 (x_make_frame_invisible, x_wm_set_icon_position):
4695 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
4696
4697 * xfns.c (x_set_name, x_set_title): Ditto.
4698
37d1e680
RS
46992003-02-04 Richard M. Stallman <rms@gnu.org>
4700
4701 * keyboard.c (echo_now): Update before_command_echo_length.
4702 (Freset_this_command_lengths): Reset this_command_key_count etc.
4703 immediately rather than arranging to do it later.
4704 (before_command_key_count_1, before_command_echo_length_1)
4705 (before_command_restore_flag): Vars deleted.
4706 (add_command_key): Don't handle before_command_restore_flag.
4707 (read_char, record_menu_key): Don't update before_command_key_count or
4708 before_command_echo_length.
4709 (read_char): Don't handle before_command_restore_flag.
4710
4711 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
4712 in direct-output clauses if it wouldn't be called in the ordinary case.
4713
578846a3
KS
47142003-02-04 Kim F. Storm <storm@cua.dk>
4715
4716 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
4717
49853a4d
JD
47182003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4719
4720 * gtkutil.c (remove_from_container): Copying list is not needed.
4721 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
4722 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
4723 on list returned from gtk_container_get_children to avoid memory leak.
4724
8b53dc06
JR
47252003-02-01 Jason Rumney <jasonr@gnu.org>
4726
5d54d177
JR
4727 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
4728 local malloc.
4729 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
4730 definitions in xpm.h.
4731 (init_xpm_functions): New function.
4732 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
4733 (init_external_image_libraries): Try to load libXpm.dll.
4734
8b53dc06
JR
4735 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
4736 timestamp.
4737
b222e415
DL
47382003-01-31 Dave Love <fx@gnu.org>
4739
4740 * syntax.c (Fskip_chars_forward)
4741 (open-paren-in-column-0-is-defun-start): Doc fix.
4742
c60ee5e7
JB
47432003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
4744
4745 * fileio.c: Support // at start of name for Cygwin (just added proper
4746 preprocessor tests).
4747
4748 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
4749
4750 * Makefile.in: Use @EXEEXT@ for Cygwin.
4751
4752 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
4753
4754 * s/cygwin.h: Added for Cygwin port.
4755
53b37591
JB
47562003-01-31 Juanma Barranquero <lektu@terra.es>
4757
4758 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
4759 when including gif_lib.h.
fe929957
JB
4760 (init_gif_functions, init_tiff_functions): New functions.
4761 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
4762 Windows. Disable color table lookups. Call library functions
53b37591 4763 through pointers determined at runtime.
fe929957
JB
4764 (init_external_image_libraries): Try to load libungif.dll and
4765 libtiff.dll.
53b37591 4766
45415a8f
KH
47672003-01-31 Kenichi Handa <handa@m17n.org>
4768
4769 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 4770 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 4771
a97e4138
JD
47722003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4773
e52bd6b7 4774 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 4775
6eed9bed
DL
47762003-01-30 Dave Love <fx@gnu.org>
4777
4778 * alloc.c (Vgc_elapsed, gcs_done): New variables.
4779 (Fgarbage_collect): Use them.
4780 (init_alloc, syms_of_alloc): Set them up.
4781
100dcd40
JB
47822003-01-30 Juanma Barranquero <lektu@terra.es>
4783
4784 * w32fns.c (init_external_image_libraries): Add missing operator.
4785
fbd852af
JR
47862003-01-29 Jason Rumney <jasonr@gnu.org>
4787
4788 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
4789 an alternative name for jpeg.dll.
4790
8a2d8020
KH
47912003-01-29 Kenichi Handa <handa@m17n.org>
4792
4793 * xdisp.c (set_cursor_from_row): Pay attention to string display
4794 properties.
4795
058c18c7
AC
47962003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
4797
4798 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
4799 <escape>.
4800 (keycode_to_xkeysym_table): Reformat and add more comments.
4801 (XTread_socket): Drop special case for backspace.
4802
385f11cf
AC
48032003-01-28 Andrew Choi <akochoi@shaw.ca>
4804
4805 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
4806 values in old-style RGB specs.
4807
c922a224
JB
48082003-01-27 Juanma Barranquero <lektu@terra.es>
4809
4810 * w32fns.c (init_external_image_libraries): Try alternate names for the
4811 jpeg dll.
4812
0a1d6de0
JD
48132003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4814
4815 * gtkutil.c (create_dialog, xg_separator_p)
4816 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
4817 before calling strcmp or strlen.
4818
a97e4138 48192003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
4820
4821 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
4822 and handle image load failure.
4823
28908312
JR
48242003-01-26 Jason Rumney <jasonr@gnu.org>
4825
4826 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
4827 New functions.
4828 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
4829 Disable color table lookups. Call jpeg library functions
4830 through pointers determined at runtime.
4831 (init_external_image_libraries): Try to load jpeg.dll.
4832
84e47416
RS
48332003-01-25 Richard M. Stallman <rms@gnu.org>
4834
4835 * lisp.h: Declare format2 instead of format1.
4836
4837 * fileio.c (barf_or_query_if_file_exists):
4838 Call format2 instead of format1.
4839
4840 * editfns.c (format2): New function, replaces format1
4841 but takes exactly two Lisp Objects as format args.
4842
4843 * buffer.c (Fkill_buffer): Call format2 instead of format1.
4844
a97e4138 48452003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
4846
4847 * xterm.h: Change to return value of x_dispatch_event to int.
4848
4849 * xterm.c (x_filter_event): New function.
4850 (event_handler_gdk, XTread_socket): Call x_filter_event.
4851 (x_dispatch_event): Change to return value of finish.
4852 (event_handler_gdk): Use return value from x_dispatch_event.
4853
4854 * xfns.c (x_window): Call create_frame_xic for GTK version to
4855 initialize input methods.
4856
4857 * gtkutil.h: Add (void) prototypes.
4858
4859 * gtkutil.c (create_menus): Remove code that puts the help menu to
4860 the right.
4861
54eefef1
JR
48622003-01-25 Jason Rumney <jasonr@gnu.org>
4863
4864 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
4865 [HAVE_PNG]: Sync with xfns.c version.
4866 (png_load): Adjust colors for Windows. Use Windows
4867 bitmaps. Disable color table lookups.
c262430d
JR
4868 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
4869 (init_png_functions): New function.
4870 (png_read_from_memory, png_load): Call png library functions
4871 through pointers determined at runtime.
4872 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
4873 (init_external_image_libraries): New function.
4874 (init_xfns): Call it.
54eefef1 4875
1a9e275b
AS
48762003-01-24 Andreas Schwab <schwab@suse.de>
4877
4878 * minibuf.c (Fminibuffer_message): Verify type of parameter.
4879
a97e4138 48802003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
4881
4882 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
4883 of static initializer.
4884
422eec7e
DL
48852003-01-24 Dave Love <fx@gnu.org>
4886
4887 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
4888 architectures.
4889
4890 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
4891 Use __alignof__.
4892
2a026b04
KH
48932003-01-24 Kenichi Handa <handa@m17n.org>
4894
4895 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 4896 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
4897 (command_loop_1): Call adjust_point_for_property with proper
4898 second arg.
4899
a18bb28d
JR
49002003-01-22 Jason Rumney <jasonr@gnu.org>
4901
4902 Sync changes with xterm.c and xfns.c.
4903
4904 * w32term.c (x_draw_glyph_string_foreground)
4905 (x_draw_composite_glyph_string_foreground): Implement overstriking.
4906
4907 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
4908 phys_cursor's hpos is overwritten. This is still not completely
4909 correct, as it doesn't really make sense to use hpos at all to
4910 get the cursor glyph (as that is relative to the width of the
4911 characters on the line, which may have changed during the update).
4912
4913 * w32term.c (notice_overwritten_cursor): Handle the special case
4914 of the cursor being in the first blank non-text line at the
4915 end of a window.
4916
4917 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
4918 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
4919 Compute from the x position returned by x_draw_glyphs.
4920
4921 (x_display_and_set_cursor): Don't set phys_cursor_width here,
4922 except for NO_CURSOR and system caret, to make phys_cursor_width
4923 contain what its name suggests.
4924 (notice_overwritten_cursor): Consider the cursor image erased if
4925 the output area intersects the cursor image in y-direction.
4926
6a097c0c
SM
4927 * w32term.c (note_mode_line_or_margin_highlight): Rename from
4928 note_mode_line_highlight and extend.
a18bb28d
JR
4929
4930 * w32term.c (last_window): New variable.
4931 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
4932 (note_mouse_movement): Remove reimplemented code in #if 0.
4933
4934 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
4935 not update_mode_lines, and always set it to 1.
4936
ac6e47ef
JR
49372003-01-21 Jason Rumney <jasonr@gnu.org>
4938
4939 * w32fns.c (IDC_HAND): Define it if system headers don't.
4940
49412003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
4942
4943 * w32term.h (struct w32_output): New member hand_cursor.
4944 (WM_EMACS_SETCURSOR): New message definition.
4945
4946 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
4947 function w32_define_cursor.
4948 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
4949 position, change member name output_data.x to output_data.w32 and
4950 add function w32_define_cursor.
4951 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
4952 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
4953 (w32_initialize_display_info):
4954 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
4955
4956 * w32fns.c (Vx_hand_shape): New variable.
4957 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
4958 WM_EMACS_SETCURSOR.
4959 (x-create-frame): Setup Cursor types.
4960
ceb39a17
JB
49612003-01-21 David Ponce <david@dponce.com>
4962
ac6e47ef
JR
4963 * w32term.c (w32_encode_char): For DIM=1 charset, set
4964 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
4965 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 4966 2002-09-30.)
ac6e47ef
JR
4967 (w32_draw_relief_rect): Declare all args.
4968 (w32_define_cursor): New.
4969
4970 * w32fns.c (w32_load_cursor): New function.
4971 (w32_init_class): Use it.
4972 (x_put_x_image): Declare all args.
4973
46cf0bed
JB
49742003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
4975
4976 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
4977
a97e4138 49782003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
4979
4980 * gtkutil.c: Must include stdio.h before termhooks.h
4981
83fc9c63
DL
49822003-01-21 Dave Love <fx@gnu.org>
4983
4984 * alloc.c (Fgc_status): Print zombie list.
4985 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
4986 Fix assignment of zombies.
4987 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
4988 Don't take car of non-cons.
4989
4990 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
4991
4992 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
4993
fe04b8c8
JR
49942003-01-20 David Ponce <david@dponce.com>
4995
4996 * w32menu.c (digest_single_submenu): Declare all args.
4997
4998 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
4999 changes in xmenu.c:
5000
5001 (parse_single_submenu): Use individual keymap's prompt
5002 string as pane name, if there is one.
5003 (set_frame_menubar): Save menu_items_n_panes from each call to
5004 parse_single_submenu and use it when calling digest_single_submenu.
5005
539e69a9
ST
50062003-01-20 Steven Tamm <steventamm@mac.com>
5007
5008 * macterm.c (XTread_socket): Checks for valid, visible window
5009 before sending a scroll-wheel event.
5010
675d000f
RS
50112003-01-20 Richard M. Stallman <rms@gnu.org>
5012
5013 * xdisp.c (redisplay_window): If mini window's buffer is not
5014 a minibuffer, then redisplay it like other windows.
5015
a97e4138 50162003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
5017
5018 * gtkutil.c (xg_create_frame_widgets): Check if there is an
5019 external tool bar before setting tool bar height.
5020
048addec
JD
50212003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5022
5023 * xterm.c (handle_one_xevent): Surround popup_activated
5024 with #ifdef:s for non-toolkit version.
5025
5026 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
5027 (gtkutil.o): New file.
5028 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
5029 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
5030
5031 * gtkutil.c: New file for GTK version.
5032
5033 * gtkutil.h: New file for GTK version.
5034
5035 * xterm.h: Add xt_or_gtk_widget.
5036 Include gtk files for USE_GTK.
5037 (struct x_output): Add toolbar_height.
5038 (struct x_output): Add GTK widgets and Gdk size_hints.
5039 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
5040 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
5041 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
5042
5043 * xterm.c: Include gtkutil.h for USE_GTK.
5044 Declare extern void free_frame_menubar for USE_GTK.
5045 (note_mouse_highlight): Check popup_activated for USE_GTK.
5046 (xt_action_hook): Don't compile if USE_GTK.
5047 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
5048 (xg_scroll_callback): New function.
5049 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
5050 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
5051 for USE_GTK.
5052 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
5053 xg_show_scroll_bar for USE_GTK.
5054 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
5055 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
5056 (event_handler_gdk): New function for USE_GTK.
5057 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
5058 (handle_one_xevent): Make sure widget is mapped before
5059 calling x_real_positions for USE_GTK.
5060 (XTread_socket): Add GTK event loop for USE_GTK.
5061 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
5062 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
5063 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
5064 (x_iconify_frame): Add code for USE_GTK.
5065 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
5066 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
5067 is in gtkutil.c.
5068 (x_term_init): Add initialization for GTK.
5069 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
5070
5071 * xmenu.c: Include gtkutil.h for USE_GTK.
5072 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
5073 (single_menu_item, single_menu_item, Fx_popup_dialog):
5074 Check for USE_GTK.
048addec
JD
5075 (popup_widget_loop): New function for USE_GTK.
5076 (x_activate_menubar): Add code for USE_GTK.
5077 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
5078 (menu_highlight_callback, menubar_selection_callback):
5079 Add USE_GTK versions.
048addec
JD
5080 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
5081 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
5082 (free_frame_menubar): Only compile if not USE_GTK. GTK version
5083 is in gtkutil.c.
5084 (popup_selection_callback): New version for USE_GTK.
5085 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 5086 one USE_X_TOOLKIT version.
048addec
JD
5087 (xmenu_show): Call create_and_show_popup_menu.
5088 (dialog_selection_callback): New version for USE_GTK.
5089 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 5090 one USE_X_TOOLKIT version.
048addec
JD
5091 (xdialog_show): Call create_and_show_dialog.
5092
5093 * xfns.c: Include gtkutil for USE_GTK.
5094 (x_window_to_frame, x_any_window_to_frame)
5095 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
5096 (x_top_window_to_frame): Add code for USE_GTK.
5097 (x_set_background_color): Call xg_set_background_color for GTK.
5098 (x_set_menu_bar_lines): Check for USE_GTK.
5099 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
5100 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
5101 (x_window): Call xg_create_frame_widgets for USE_GTK.
5102 (Fx_create_frame): Check for USE_GTK
5103 (Fx_file_dialog): New implementation for USE_GTK.
5104
5105 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
5106 (update_menu_bar): Add check for USE_GTK.
5107 (update_tool_bar): Add check for USE_GTK and external tool bar.
5108 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
5109 (redisplay_internal): Add check for USE_GTK and popup_activated.
5110 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
5111 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
5112 (display_menu_bar): Add check for USE_GTK
5113
5114 * lisp.h: Declare Vx_resource_name extern.
5115
5116 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
5117 for USE_GTK.
5118 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
5119
5120 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
5121 (FRAME_EXTERNAL_TOOL_BAR): New macro.
5122 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
5123
5124 * fileio.c (Fread_file_name): Add check for USE_GTK.
5125
6bdb309a
SM
5126 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
5127 Add check for USE_GTK.
048addec
JD
5128
5129 * config.in: Added HAVE_GTK
5130
5131 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
5132
51332003-01-18 Stefan Monnier <monnier@cs.yale.edu>
5134
5135 * charset.h (Funibyte_char_to_multibyte): Export.
5136
51372003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5138
5139 * xmenu.c (mouse_position_for_popup): New function.
5140 (Fx_popup_menu): Call mouse_position_for_popup for X and
5141 mouse_position_hook for others.
5142
51432003-01-17 Kim F. Storm <storm@cua.dk>
5144
5145 * editfns.c (Finsert): Mention `string-make-multibyte' and
5146 `string-as-multibyte' in doc string.
5147
51482003-01-17 Kenichi Handa <handa@m17n.org>
5149
5150 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 5151
048addec
JD
5152 * editfns.c (Fformat): Convert an unibyte char argument that is
5153 formatted by "%c" to multibyte if the total result must be a
5154 multibyte string.
cd7df9c0 5155
048addec 51562003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 5157
048addec
JD
5158 * process.c (set-process-filter): Document unibyte/multibyte-ness
5159 of string argument.
56210ecd 5160
048addec 51612003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 5162
048addec 5163 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 5164
048addec
JD
5165 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
5166 (re_search_2): Likewise.
6df8b9fe 5167
048addec 51682003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 5169
048addec
JD
5170 * xdisp.c (message_dolog): Fix bug of the case that *Message*
5171 buffer is unibyte.
292ddc31 5172
048addec 51732003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 5174
048addec 5175 * fns.c (Fsubstring): Clarify doc string.
292ddc31 5176
048addec
JD
5177 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
5178 (Fprevious_char_property_change)
5179 (Fnext_single_char_property_change)
5180 (Fprevious_single_char_property_change, Fnext_property_change)
5181 (Fnext_single_property_change, Fprevious_property_change)
5182 (Fprevious_single_property_change, Fadd_text_properties)
5183 (Fput_text_property, Fset_text_properties)
5184 (Fremove_text_properties, Fremove_list_of_text_properties)
5185 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 5186
048addec 51872003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 5188
048addec
JD
5189 * process.h (struct Lisp_Process): New member plist replaces old
5190 member private_vars. All uses changed.
63e4e4c6 5191
048addec 5192 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 5193 (QCplist): Rename from QCvars. Change all uses.
048addec 5194 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 5195 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 5196 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 5197 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 5198
048addec 51992003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 5200
6bdb309a 5201 * m/delta.h: Remove (obsolete).
e833850f 5202
048addec 52032003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 5204
048addec
JD
5205 * fileio.c (Fdelete_directory, Fdelete_file): Document the
5206 behaviour in front of symlinks.
5207 (Fdelete_file): Raise an error on directories.
817cb127 5208
048addec 52092003-01-13 Dave Love <fx@gnu.org>
817cb127 5210
048addec 5211 * fns.c (Freverse): Use QUIT.
3e8cf2ea 5212
048addec 52132003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 5214
048addec
JD
5215 * minibuf.c (minibuffer_completion_contents):
5216 Error if point is inside prompt.
3e8cf2ea 5217
048addec
JD
5218 * keyboard.c (command_loop_1): Don't redisplay directly
5219 if there's a post-command-hook.
3e8cf2ea 5220
048addec
JD
5221 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
5222 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 5223
048addec 52242003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 5225
048addec 5226 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 5227
048addec
JD
5228 * process.c (QCvars): New variable.
5229 (syms_of_process): Intern and staticpro it.
5230 (Fset_process_contact): Removed function.
5231 (Fprocess_variable, Fset_process_variable): New functions.
5232 (syms_of_process): Defsubr them.
5233 (Fstart_process): Initialize private_vars plist to nil.
5234 (Fmake_network_process): New arg :vars to setup the private
5235 variables for new network process.
5236 (server_accept_connection): Copy server's private variables to
5237 client process.
2c10f029 5238
048addec
JD
5239 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
5240 crashes). Code rewritten and simplified. Now directly aligns the
5241 pointer and recalculates pure_bytes_used, rather than aligning the
5242 size and adjusting the pointer.
b8a76c6c 5243
048addec 52442003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 5245
048addec
JD
5246 * process.c (Fset_process_contact): New function.
5247 (syms_of_process): defsubr it.
5248 (make-network-process): Update doc.
3a8d0899 5249
048addec 52502003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 5251
048addec
JD
5252 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
5253 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 5254
048addec 52552003-01-10 Dave Love <fx@gnu.org>
4abc7470 5256
048addec 5257 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 5258
048addec 52592003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 5260
048addec
JD
5261 * process.c (Fmake_network_process): Convert new port number
5262 to host byte order for `:service t' case. From Mario Lang.
bf338245 5263
048addec 52642003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 5265
048addec
JD
5266 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
5267 instead of XtAppProcessEvent.
bf338245 5268
048addec
JD
5269 * xterm.c (handle_one_xevent): New function.
5270 (x_dispatch_event): New function.
5271 (XTread_socket): Call handle_one_xevent.
bf338245 5272
048addec 5273 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 5274
048addec
JD
5275 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
5276 call XQueryPointer to get coordinates.
5277 (popup_get_selection): Do not set popup_activated_flag to zero,
5278 let popup_deactivate_callback do that. Needed for Motif.
5279 Call x_dispatch_event instead of XtDispatchEvent.
5280 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 5281
048addec 52822003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 5283
6bdb309a 5284 * process.c (server_accept_connection): Fix recording of new
048addec
JD
5285 connection's local address in :local property of contact info.
5286 (Fmake_network_process): Record local network address for new
5287 client processes in :local property of contact info.
6bdb309a 5288 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 5289
048addec 52902003-01-07 Dave Love <fx@gnu.org>
00e3ab56 5291
048addec 5292 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 5293
048addec 52942003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 5295
048addec 5296 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 5297
048addec
JD
5298 * eval.c (Fuser_variable_p): Doc change. For custom variables,
5299 use the same test as for custom-variable-p.
8c6d74c6 5300
048addec 53012003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 5302
048addec
JD
5303 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
5304 Count LAST_LINE_MISFIT in scroll margin for end of window.
5305 Move label too_near_end before setting SCROLL_MARGIN_POS.
5306 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 5307
048addec
JD
5308 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
5309 scroll_conservatively case. If scrolling that much doesn't change
5310 STARTP, move it down one line.
e833850f 5311
048addec
JD
5312 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
5313 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 5314
048addec
JD
5315 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
5316 selected frame.
8c6d74c6 5317
048addec
JD
5318 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
5319 (syms_of_keymap): staticpro them.
5320 (Fapropos_internal): Initialize them and clear them out.
5321 Don't GCPRO them.
8c6d74c6 5322
048addec
JD
5323 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
5324 Doc fixes.
8c6d74c6 5325
048addec
JD
5326 * lisp.h: New misc type Lisp_Save_Value.
5327 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
5328 (XSAVE_VALUE): New macro.
5329 (struct Lisp_Save_Value): New data type.
5330 (union Lisp_Misc): Add u_save_value alternative.
5331 (make_save_value): Declared.
8c6d74c6 5332
048addec 5333 * alloc.c (make_save_value): New function.
8c6d74c6 5334
048addec
JD
5335 * xterm.c (x_catch_errors): Save dpy using make_save_value.
5336 (x_catch_errors_unwind): Call XSync.
8c6d74c6 5337
048addec 53382003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 5339
048addec 5340 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 5341
048addec
JD
5342 * keyboard.c (command_loop_1): Call adjust_point_for_property
5343 in direct action cases for Qforward_char and Qbackward_char.
5344 Set already_adjusted so it won't be done twice.
8c6d74c6 5345
048addec 53462002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 5347
048addec
JD
5348 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
5349 type definition of size_t.
8c609cff 5350
048addec 53512003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 5352
048addec
JD
5353 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
5354 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 5355
048addec 53562002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 5357
048addec
JD
5358 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
5359 to default to t.
fa634a5e 5360
048addec 53612002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 5362
048addec 5363 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 5364
048addec 53652002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 5366
048addec
JD
5367 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
5368 allow building in a different directory than source. Uses some
5369 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 5370
048addec 53712002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 5372
048addec
JD
5373 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
5374 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
5375 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
5376 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 5377
048addec 53782002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 5379
048addec
JD
5380 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
5381 <scroll-down-aggressively>: Doc fix.
2155ecf3 5382
048addec
JD
5383 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
5384 string as pane name, if there is one.
5385 (set_frame_menubar): Save menu_items_n_panes from each call to
5386 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 5387
048addec
JD
5388 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
5389 Don't try to make last line fully visible if it is past end of window.
61f1d295 5390
048addec 53912002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 5392
048addec
JD
5393 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
5394 (mac_menu_show): Add support for hierarchical popup menus.
5395 (add_menu_item): Remove indentation support.
5396 (fill_submenu, fill_menu): Create hierarchical menus
5397 instead of using indentation.
0b17a217 5398
048addec 53992002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 5400
048addec
JD
5401 * xdisp.c (try_cursor_movement): Don't call try_window here.
5402 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 5403
048addec 5404 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 5405
048addec 54062002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 5407
048addec
JD
5408 * macterm.c (XTread_socket): Call KeyTranslate for control and
5409 meta to deal correctly shifted non-alpha characters, like C-S-5
5410 being treated like C-%. Does not look for shift key to deal
5411 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 5412
048addec 54132002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 5414
048addec
JD
5415 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
5416 If it is non-nil, run timers. Use an unwind-protect to requeue
5417 the events that were read ahead.
5418 (popup_get_selection_unwind): New subroutine.
5419 (popup_get_selection_queue): File-scope variable now holds that queue.
5420 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
5421 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
5422 Use an unwind-protect to pop down the dialog box.
5423 (xdialog_show_unwind): New subroutine implements that.
f02cac82 5424
048addec
JD
5425 * xdisp.c (row_containing_pos): Change exit test using last_y.
5426 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 5427
048addec
JD
5428 * lread.c (load_error_handler): New function.
5429 (Fload): Handle errors in Fsubstitute_in_file_name.
5430 Don't expect Fsignal to return.
f02cac82 5431
048addec
JD
5432 * eval.c: Errors and throws work right with interrupt blocking.
5433 (struct catchtag): New elt interrupt_input_blocked.
5434 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
5435 (internal_catch, Fcondition_case, internal_condition_case)
5436 (internal_condition_case_1, internal_condition_case_2): Save it.
5437 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 5438
048addec 5439 * editfns.c (Fformat): Add parens.
f02cac82 5440
048addec
JD
5441 * dired.c (file_name_completion): Fix that change.
5442 Delete special quit-handling code; just use QUIT.
f02cac82 5443
048addec 54442002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 5445
048addec
JD
5446 * dired.c (file_name_completion): Close directory on error
5447 just as in directory_files_internal.
1a590729 5448
048addec 54492002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 5450
048addec
JD
5451 * window.c (Fset_window_configuration): Set old_point to correct
5452 value when new_current_buffer == current_buffer.
f02cac82 5453
048addec 54542002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 5455
048addec
JD
5456 Revisited my earlier fix for the following entry in etc/PROBLEMS:
5457 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
5458 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 5459
048addec
JD
5460 These changes were in part based upon suggestions made by Peter
5461 'Luna' Runestig [peter@runestig.com].
9785d95b 5462
048addec
JD
5463 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
5464 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 5465 g_b_init_get_sid_identifier_authority ): Add several static
048addec 5466 global variables.
9785d95b 5467
048addec
JD
5468 * w32.c (globals_of_w32): New function. Used to initialize those
5469 global variables that must always be initialized on startup even
5470 when the global variable initialized is non zero. Its primary
5471 purpose at this time is to set the global variables
5472 g_b_init_is_windows_9x, g_b_init_open_process_token,
5473 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
5474 g_b_init_get_sid_identifier_authority to 0 on startup.
5475 Called from main.
9785d95b 5476
048addec
JD
5477 * w32.c (is_windows_9x): Perform initialization only if
5478 g_b_init_is_windows_9x is equal to 0. On initialization set
5479 g_b_init_is_windows_9x equal to 1.
2308af15 5480
048addec
JD
5481 * w32.c (open_process_token): Perform initialization only if
5482 g_b_init_open_process_token is equal to 0. On initialization set
5483 g_b_init_open_process_token equal to 1.
2308af15 5484
048addec
JD
5485 * w32.c (get_token_information): Perform initialization only if
5486 g_b_init_get_token_information is equal to 0. On initialization
5487 set g_b_init_get_token_information equal to 1.
9785d95b 5488
048addec
JD
5489 * w32.c (lookup_account_sid): Perform initialization only if
5490 g_b_init_lookup_account_sid is equal to 0. On initialization
5491 set g_b_init_lookup_account_sid equal to 1.
9785d95b 5492
048addec
JD
5493 * w32.c (get_sid_identifier_authority): Perform initialization
5494 only if g_b_init_get_sid_identifier_authority is equal to 0.
5495 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 5496
048addec
JD
5497 * w32fns.c (globals_of_w32fns): New function. Used to initialize
5498 those global variables that must always be initialized on startup
5499 even when the global variable initialized is non zero.
5500 Its primary purpose at this time is to initialize the global variable
5501 track_mouse_event_fn.
9785d95b 5502
048addec
JD
5503 * w32fns.c (w32_wnd_proc): Remove initialization of
5504 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 5505
048addec 5506 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 5507
048addec
JD
5508 * w32menu.c (globals_of_w32menu): New function. Used to
5509 initialize those global variables that must always be initialized
5510 on startup even when the global variable initialized is non zero.
5511 Its primary purpose at this time is to initialize the global
5512 variables get_menu_item_info and set_menu_item_info.
9785d95b 5513
048addec
JD
5514 * w32menu.c (initialize_frame_menubar): Remove initialization of
5515 get_menu_item_info and set_menu_item_info.
9785d95b 5516
048addec 5517 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 5518
048addec
JD
5519 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
5520 Declare them.
9785d95b 5521
048addec
JD
5522 * emacs.c (main): Call globals_of_w32 prior to calling
5523 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
5524 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
5525 is defined.
9785d95b 5526
048addec
JD
5527 * w32term.c (x_update_window_begin): Fix Windows API error
5528 detected by BoundsChecker. Test to determine if
5529 w32_system_caret_hwnd is NULL prior to attempting to use
5530 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 5531
048addec
JD
5532 * w32term.c (x_update_window_end): Fix Windows API error
5533 detected by BoundsChecker. Test to determine if
5534 w32_system_caret_hwnd is NULL prior to attempting to use
5535 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 5536
048addec 55372002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 5538
048addec
JD
5539 * coding.c (coding_system_require_warning): New variable.
5540 (syms_of_coding): DEFVAR it.
b6da19ef 5541
048addec 5542 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 5543
048addec
JD
5544 * fileio.c (choose_write_coding_system): Even if
5545 Vcoding_system_for_write is non-nil, if
5546 coding_system_require_warning is nonzero, call
5547 Vselect_safe_coding_system_function.
bfcf6dbe 5548
048addec 55492002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 5550
048addec
JD
5551 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
5552 (lisp): Add font-core.
2c568af5 5553
048addec 55542002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 5555
048addec
JD
5556 * textprop.c (text_read_only): New arg `propval'.
5557 (get_char_property_and_overlay): Remove unused var `next_overlay'.
5558 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 5559
048addec 55602002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 5561
048addec 5562 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 5563
048addec 55642002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 5565
048addec
JD
5566 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
5567 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
5568 Be more careful about when help_events are generated.
96720f09 5569
048addec 55702002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 5571
048addec
JD
5572 * macterm.c (mac_check_for_quit_char): Correctly set the
5573 modifiers of the event to 0.
5574 * mac.c (sys_select): Duplicate rfds before calling select to
5575 ensure that rfds survive the while loop.
e5ae1c49 5576
048addec 55772002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 5578
048addec
JD
5579 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
5580 row_containing_pos returned NULL.
2eb46b2d 5581
048addec 55822002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 5583
6bdb309a 5584 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 5585 non-blocking.
6bdb309a 5586 (sys_select): Fix sys_select to not use a timeout larger than
048addec 5587 the one given.
b11f1d8a 5588
048addec 55892002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 5590
048addec 5591 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 5592
048addec 55932002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 5594
048addec
JD
5595 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
5596 as the last thing.
a4ac5b17 5597
048addec 55982002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 5599
048addec 5600 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 5601
048addec 56022002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 5603
048addec
JD
5604 * editfns.c (Fformat): Handle precision in string conversion
5605 specifiers like libc functions do (ie, print at most that many
5606 characters).
85cce843 5607
048addec 56082002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 5609
048addec
JD
5610 * xdisp.c (row_containing_pos): Check more carefully
5611 whether charpos is really in the row before returning it.
0d4d26a7 5612
048addec 56132002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 5614
048addec 5615 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 5616
048addec
JD
5617 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
5618 each stack frame. This may change as it could be time consuming.
0d4d26a7 5619
048addec
JD
5620 * macterm.c (mac_check_for_quit_char, quit_char_comp)
5621 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 5622 (mac_initialize): Add code to check for pressing of quit_char
048addec 5623 in the OS event queue.
b11f1d8a 5624
048addec
JD
5625 * mac.c (sys_select): Call mac_check_for_quit_char every second
5626 while blocking on select.
0d4d26a7 5627
048addec
JD
5628 * mac.c (sys_read): Use sys_select to test for input first
5629 before calling read, to allow C-g to break.
9252f7bc 5630
048addec 56312002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 5632
048addec 5633 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 5634
048addec 5635 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 5636
048addec 5637 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 5638
048addec
JD
5639 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
5640 autoload.
9252f7bc 5641
048addec 5642 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 5643
048addec 5644 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 5645
048addec 56462002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 5647
048addec 5648 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 5649
048addec 56502002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 5651
048addec 5652 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 5653
048addec 5654 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 5655
048addec 5656 * alloca.c: Don't use #error.
02d588e2 5657
048addec 56582002-12-03 Dave Love <fx@gnu.org>
02d588e2 5659
048addec
JD
5660 * buffer.c (Qucs_set_table_for_input): New.
5661 (Fget_buffer_create): Use it.
5662 (Qset_buffer_major_mode_hook): Deleted.
5663 (Fset_buffer_major_mode): Revert previous change.
5664 (init_buffer_once): Intern ucs-set-table-for-input.
5665 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
5666 Add &Qucs_set_table_for_input.
451e2697 5667
048addec 56682002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 5669
048addec
JD
5670 * callint.c (Fcall_interactively): Use next_event only if less
5671 than key_count.
72742a99 5672
048addec 56732002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 5674
048addec
JD
5675 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
5676 names to 255 characters.
72742a99 5677
048addec
JD
5678 * macterm.c (XTread_socket): If all frames have been collapsed,
5679 expand the first one before handling drag-and-drop events.
72742a99 5680
048addec
JD
5681 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
5682 which is detected by autoconf.
40e6ff95 5683
048addec 56842002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 5685
048addec
JD
5686 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
5687 offset in two hints table to allow prebinding to be redone and
5688 allow the executable to be stripped.
c02138c6 5689
048addec 56902002-11-29 Dave Love <fx@gnu.org>
c02138c6 5691
048addec
JD
5692 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
5693 already provided.
0e47bbf7 5694
048addec 56952002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 5696
048addec
JD
5697 * xdisp.c (start_display): Check more intelligently for
5698 whether the line is continued.
5699 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 5700
048addec 57012002-11-28 Dave Love <fx@gnu.org>
44129dcb 5702
048addec
JD
5703 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
5704 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 5705
048addec 57062002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 5707
048addec
JD
5708 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
5709 more descriptive error output from lread.c:Fload upon most require
5710 cycles during boostrapping.
1637fd2c 5711
048addec 57122002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 5713
048addec
JD
5714 * fileio.c (Finsert_file_contents): Give a more appropriate error
5715 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 5716
048addec
JD
5717 * dired.c (Ffile_attributes): Don't return negative file sizes for
5718 files bigger than 2Gb when off_t is 32 bit.
540c2788 5719
048addec 57202002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 5721
048addec 5722 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 5723
048addec
JD
5724 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
5725 Test GETPGRP_VOID instead.
5726 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 5727
048addec
JD
5728 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
5729 Don't define.
5730 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 5731
048addec 5732 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 5733
048addec 57342002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 5735
048addec
JD
5736 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
5737 supported.
4042a81a 5738
048addec 57392002-11-25 Dave Love <fx@gnu.org>
4042a81a 5740
048addec 5741 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 5742
048addec 5743 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 5744
048addec 57452002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 5746
048addec 5747 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 5748
048addec 57492002-11-24 Steven Tamm <steventamm@mac.com>
82122254 5750
048addec
JD
5751 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
5752 determine the size of pointers alloced in unexed space instead
5753 of using possibly invalid emacs_zone pointers. This fixes the
5754 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 5755
048addec 57562002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 5757
048addec 5758 * search.c (Fstring_match): Doc fix.
c1ee53bc 5759
048addec
JD
5760 * callint.c (Fcall_interactively): If a command fails because
5761 `*' detects a read-only buffer, but RECORD_FLAG is set,
5762 record it anyway if the args don't actually do tty input.
5598c32e 5763
048addec 57642002-11-22 Dave Love <fx@gnu.org>
5598c32e 5765
048addec 5766 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 5767
048addec
JD
5768 * keyboard.c (interrupt_signal): Provide forward declaration.
5769 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 5770
048addec 5771 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 5772
048addec 57732002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 5774
048addec
JD
5775 * eval.c (interactive_p): Skip any number of bytecode
5776 and special form frames, in any order.
516eea8e 5777
048addec 57782002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 5779
048addec
JD
5780 * w32fns.c (convert_mono_to_color_image): New function.
5781 (xbm_load, xbm_load_image): Use it when foreground or background
5782 is explicitly set.
04dbfa08 5783
048addec 57842002-11-19 Dave Love <fx@gnu.org>
04dbfa08 5785
048addec 5786 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 5787
048addec 57882002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 5789
048addec
JD
5790 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
5791 (XPutPixel): Swap blue and red.
5792 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
5793 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
5794 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
5795 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 5796
048addec 57972002-11-18 Dave Love <fx@gnu.org>
d824beee 5798
048addec 5799 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 5800
048addec 5801 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 5802
048addec 5803 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 5804
048addec
JD
5805 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
5806 malloc, realloc, calloc.
d824beee 5807
048addec
JD
5808 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
5809 (bcmp): Don't define.
d824beee 5810
048addec 5811 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 5812
048addec 5813 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 5814
048addec 5815 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 5816
048addec 5817 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 5818
048addec
JD
5819 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
5820 Don't include alloca.h.
d824beee 5821
048addec 5822 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 5823
048addec 5824 * regex.c (_GNU_SOURCE): Don't define.
1998560a 5825
048addec 5826 * process.c (_GNU_SOURCE): Don't define.
1998560a 5827
048addec 5828 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 5829
048addec 58302002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 5831
048addec 5832 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 5833
048addec 58342002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 5835
048addec
JD
5836 * dispextern.h (struct face): Add `overstrike' field.
5837 * xterm.c (x_draw_glyph_string_foreground)
5838 (x_draw_composite_glyph_string_foreground): Implement overstriking.
5839 * xfaces.c (load_face_font): Set `face->overstrike' based on
5840 result from choose_face_font.
5841 (best_matching_font, choose_face_font): Add `needs_overstrike'
5842 argument, and use it to return whether overstriking is desirable
5843 for this face/font combo.
5844 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 5845
048addec 58462002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 5847
048addec
JD
5848 This change is my fix for the following entry in etc/PROBLEMS:
5849 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
5850 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 5851
048addec
JD
5852 * w32.c: Added wrapper functions around the win32 API functions
5853 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
5854 GetSidIdentifierAuthority. These wrapper functions serve two
5855 purposes:
5856 1. They ensure that the wrapped function can never be called
5857 when Emacs is running on an operating system on which they are
5858 not supported (Microsoft Windows 95 / 98 / ME).
5859 2. They call the wrapped functions via function pointers rather
5860 than calling them directly. This avoids taking advantage of the
5861 undocumented fact that although these functions are not supported
5862 in the 9x branch of Microsoft Windows, the functions do exist in
5863 the version of advapi32.dll that is found in the 9x branch of
5864 Microsoft Windows.
f60ae425 5865
6bdb309a 5866 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
5867 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
5868 and GetSidIdentifierAuthority with calls to the newly added
5869 wrapper functions.
f60ae425 5870
048addec
JD
5871 * w32.h: Added extern declarations for the following functions:
5872 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
5873 syms_of_w32menu, and void syms_of_fontset.
f60ae425 5874
6bdb309a 5875 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
5876 function pointer track_mouse_event_fn in the handler for the
5877 WM_SETFOCUS message.
3582b6a3 5878
6bdb309a 5879 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
5880 reinitialize the function pointers set_menu_item_info and
5881 get_menu_item_info.
f60ae425 5882
048addec 58832002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 5884
048addec
JD
5885 * sound.c: Added a partial implementation of play-sound-internal
5886 for Microsoft Windows. Added various #ifdef / #else / #endif
5887 code blocks to separate the code that will compile under
5888 Microsoft Windows from the code that is specific to Gnu/Linux.
5889 Moved several blocks of code around to make this separation of code
5890 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 5891
048addec 5892 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 5893
048addec
JD
5894 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
5895 added support for play-sound-internal under Windows would be
5896 included in the build of Emacs.
517f42a0 5897
048addec 58982002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 5899
048addec 5900 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 5901
048addec 5902 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 5903
048addec 59042002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 5905
048addec
JD
5906 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
5907 (adjust_point_for_property): Move out of display and invisible even if
5908 we were already inside before (in case a property was added while
5909 we weren't looking). Be more careful when handling invisible props.
5910 Skip invisible text as if it really wasn't there at all.
aab83f91 5911
048addec 59122002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 5913
048addec
JD
5914 * w32term.c (x_draw_image_foreground)
5915 (w32_draw_image_foreground_1): Use standard copy and invert
5916 operations to draw images.
aab83f91 5917
048addec
JD
5918 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
5919 depth of 1.
5920 (xbm_read_bitmap_data): Invert bits as xbm is read in.
5921 (XPutPixel): Don't invert bits here.
a4478a76 5922
048addec 59232002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 5924
048addec
JD
5925 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
5926 (w32_draw_image_foreground_1): Handle image masks.
5927 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 5928
048addec
JD
5929 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
5930 (x_from_xcolors): Adjust RGB values for W32.
5931 (image_background, image_background_transparent)
5932 (postprocess_image, x_to_xcolors, x_disable_image)
5933 (x_build_heuristic_mask): Adapt for W32 and enable.
5934 (x_create_x_image_and_pixmap): Mark images with palettes as such.
5935 (xbm_load): Remove unused variable.
03670a65 5936
048addec 59372002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 5938
048addec 5939 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 5940
048addec 59412002-11-14 Dave Love <fx@gnu.org>
59daa29a 5942
048addec 5943 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 5944
048addec
JD
5945 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
5946 * xmenu.c (unuse_menu_items, digest_single_submenu):
5947 * xfns.c (x_put_x_image):
5948 * xdisp.c (message2_nolog, set_message):
5949 * undo.c (record_point):
5950 * terminfo.c (tparam):
5951 * syntax.c (scan_sexps_forward):
5952 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
5953 * composite.c (update_compositions):
5954 * cm.c (calccost, cmgoto):
5955 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 5956
048addec 5957 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 5958
048addec
JD
5959 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
5960 Don't declare.
59daa29a 5961
048addec 5962 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 5963
048addec
JD
5964 * fns.c (Fcopy_sequence): Doc fix.
5965 (Fmap_char_table): Cast `call2'.
3947677c 5966
048addec
JD
59672002-11-14 Francesco Potorti` <pot@gnu.org>
5968
5969 * s/sol2-8.h: New file.
5970
59712002-11-14 Kim F. Storm <storm@cua.dk>
5972
5973 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
5974 dependency on `risky-local-variable' and the :propertize form.
5975
59762002-11-12 Stefan Monnier <monnier@cs.yale.edu>
5977
5978 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
5979
5980 * syntax.c (scan_sexps_forward): Undo last patch.
5981 Use a more obvious fix: check eob before updating the syntax table.
5982
59832002-11-09 Stefan Monnier <monnier@cs.yale.edu>
5984
5985 * syntax.c (scan_sexps_forward): Update syntax table before reading
5986 a char rather than after so we don't update the table past eob.
5987
59882002-11-09 Dave Love <fx@gnu.org>
5989
5990 * buffer.c (Fset_buffer_major_mode): Fix last change.
5991
5992 * regex.c (regexec): Fix pmatch declaration.
5993
5994 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
5995
5996 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
5997 to self-inserting characters.
5998 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
5999
6000 * coding.c (Vtranslation_table_for_input): New.
6001 (syms_of_coding): DEFVAR it.
6002
60032002-11-08 Juanma Barranquero <lektu@terra.es>
6004
6005 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
6006 window.
6007
60082002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6009
6bdb309a 6010 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
6011 cp, and i.
6012
60132002-11-06 Dave Love <fx@gnu.org>
6014
6015 * buffer.c (Qset_buffer_major_mode_hook): New.
6016 (Fset_buffer_major_mode): Use it.
6017
60182002-11-06 Richard M. Stallman <rms@gnu.org>
6019
6020 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
6021 and stop_polling.
6022
6023 * process.c (wait_reading_process_input):
6024 Test POLLING_PROBLEM_IN_SELECT, not hpux.
6025 Avoid initialization for auto Lisp_Object var.
6026
6027 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
6028
6029 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
6030
60312002-11-05 Richard M. Stallman <rms@gnu.org>
6032
6033 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
6034
6035 * callint.c (Fcall_interactively): New local filter_specs.
6036 (Fcall_interactively): Check for progn as well as let.
6037 Add a gcpro.
6038 (Qprogn): New variable.
6039 (syms_of_callint): Staticpro and init Qprogn.
6040
60412002-11-04 John Paul Wallington <jpw@shootybangbang.com>
6042
6043 * lread.c (Feval_buffer): Doc fix.
6044
60452002-11-04 Dave Love <fx@gnu.org>
6046
6047 * keyboard.c (read_char): Always translate iff
6048 Vkeyboard_translate_table is a char table and c is valid.
6049
6050 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
6051 and fix C types.
6052
60532002-11-03 Stefan Monnier <monnier@cs.yale.edu>
6054
6055 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
6056
6057 * editfns.c (get_pos_property): Don't hardcode Qfield.
6058
6059 * keyboard.c (adjust_point_for_property): Handle `display' prop on
6060 overlays. Also handle `invisible' prop.
6061
60622002-11-02 Stefan Monnier <monnier@cs.yale.edu>
6063
6064 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
6065 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
6066
60672002-11-01 Andreas Schwab <schwab@suse.de>
6068
6069 * editfns.c (Fmessage): Revert last change to properly handle %%.
6070
60712002-11-01 Stefan Monnier <monnier@cs.yale.edu>
6072
6073 * xmenu.c (unuse_menu_items): New fun.
6074 (menu_items_inuse): New var.
6075 (syms_of_xmenu): Initialize it.
6076 (init_menu_items): Use it to detect re-entrance.
6077 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
6078 (Fx_popup_menu): Remove spurious XSETFRAME.
6079
6080 * editfns.c (find_field): Make an exception for nil fields.
6081
60822002-11-01 Dave Love <fx@gnu.org>
6083
6084 * m/gec63.h: Deleted.
6085
60862002-10-31 Dave Love <fx@gnu.org>
6087
6088 * xterm.c (XTread_socket): Fix last change.
6089 (xaw_scroll_callback): Cast call_data to long to avoid warning.
6090
60912002-10-31 Stefan Monnier <monnier@cs.yale.edu>
6092
6093 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
6094
60952002-10-30 Stefan Monnier <monnier@cs.yale.edu>
6096
6097 * editfns.c (overlays_around, get_pos_property): New funs.
6098 (find_field): Use them.
6099 Also be careful not to modify POS before its last use.
6100 (Fmessage): Don't Fformat if there's nothing to format.
6101
61022002-10-30 Dave Love <fx@gnu.org>
6103
6104 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
6105 [HAVE_PTY_H]; Include pty.h.
6106
6107 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
6108
6109 * xterm.c (Qeql): Declare.
6110 (Vx_keysym_table): New.
6111 (syms_of_xterm): Initialize it.
6112 (XTread_socket): Use it. Deal with ASCII keysyms.
6113 (XSetIMValues) [HAVE_X11R6]: Prototype.
6114
6115 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
6116 (lispy_kana_keys): Comment out.
6117 (make_lispy_event) [XK_kana_A]: Comment out.
6118 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
6119 Fix sprintf call.
6120
6121 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
6122 regexp.h change).
6123 (TERMINFO, LIBS_TERMCAP): Define.
6124
6125 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
6126 (bcmp): Define conditional on HAVE_BCMP.
6127 (NO_SIOCTL_H): Don't define.
6128 (TIOCSIGSEND): Don't make conditional on IRIX6.
6129
6130 * s/sol2-5.h: Don't include strings.h.
6131 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
6132
6133 * s/irix6-0.h (IRIX6): Don't define.
6134 (bcopy, bcmp, bzero): Don't undef.
6135
6136 * s/irix6-5.h: Don't include strings.h.
6137 (IRIX6): Don't define.
6138 (bcopy, bcmp, bzero): Don't undef.
6139
6140 * syntax.c (Fforward_comment): Doc fix.
6141
61422002-10-29 Kim F. Storm <storm@cua.dk>
6143
6144 * process.c (Fsignal_process): Allow PROCESS to be specified by
6145 name in addition to pid (as integer or string).
6146
61472002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
6148
6149 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
6150 environments.
6151
61522002-10-27 Kim F. Storm <storm@cua.dk>
6153
6154 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6155
6156 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
6157
6158 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
6159
6160 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6161
61622002-10-26 Richard M. Stallman <rms@gnu.org>
6163
6164 * editfns.c (Fformat): Detect invalid format letters for floats.
6165
61662002-10-25 Kenichi Handa <handa@m17n.org>
6167
6168 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
6169 (x_set_title): Likewise.
6170
61712002-10-25 Juanma Barranquero <lektu@terra.es>
6172
6173 * macgui.h:
6174 * w32gui.h: Remove definition of XColor.
6175
6176 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
6177
61782002-10-24 Kim F. Storm <storm@cua.dk>
6179
6180 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
6181 Callers changed (supply dummy arg).
6182
6183 * lisp.h (get_window_cursor_type): Update prototype.
6184
6185 * w32term.c (x_display_and_set_cursor): Get active_cursor from
6186 get_window_cursor_type to track system caret.
6187
61882002-10-24 Kim F. Storm <storm@cua.dk>
6189
6190 * process.c (Fformat_network_address): New function.
6191 (syms_of_process): Defsubr it.
6192 (list_processes_1): Use it to format :local/:remote address if
6193 service/host is not set; before emacs would crash in that case.
6194 (Fmake_network_process): Don't use Ffind_operation_coding_system
6195 to setup coding system if host or service is not set.
6196
61972002-10-23 Juanma Barranquero <lektu@terra.es>
6198
6199 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
6200
6201 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
6202 COLORREF.
6203
6204 * macgui.h:
6205 * w32gui.h: Add definition of XColor.
6206
6207 * macfns.c:
6208 * w32fns.c:
6209 * xfaces.c: Remove definition of XColor.
6210
62112002-10-22 Stefan Monnier <monnier@cs.yale.edu>
6212
6213 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
6214
6215 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
6216 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
6217 window if it is dedicated.
6218 (Fshrink_window): Add preserve_before as was done for enlarge_window.
6219 (Vspecial_display_function): Update docstring.
6220
6221 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
6222 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
6223 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
6224
62252002-10-21 Stefan Monnier <monnier@cs.yale.edu>
6226
6227 * casefiddle.c (casify_region): Don't treat a prefix char as part
6228 of a word when at the beginning.
6229
62302002-10-17 Juanma Barranquero <lektu@terra.es>
6231
6232 * lread.c (syms_of_lread): Fix typos.
6233
62342002-10-17 Dave Love <fx@gnu.org>
6235
6236 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
6237
62382002-10-16 Richard M. Stallman <rms@gnu.org>
6239
6240 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
6241
62422002-10-14 Juanma Barranquero <lektu@terra.es>
6243
6244 * w16select.c (syms_of_win16select): Fix docstring for
6245 `selection-coding-system'.
6246
6247 * w32select.c (syms_of_w32select): Likewise.
6248
62492002-10-14 Stefan Monnier <monnier@cs.yale.edu>
6250
6251 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
6252 a backslash-quoted char.
6253 (scan_lists, scan_sexps_forward): Pacify the compiler.
6254
62552002-10-13 Richard M. Stallman <rms@gnu.org>
6256
6257 * window.c (window_scroll): Set immediate_quit.
6258
6259 * print.c (print): When backquote form is the car of a list,
6260 output in old style. Use old_backquote_output to output all
6261 comma forms inside it in old style too.
6262
6263 * buffer.h (struct buffer): Move `undo_list' down below `name'.
6264
62652002-10-11 Markus Rost <rost@math.ohio-state.edu>
6266
6267 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
6268 batch mode).
6269
6270 * lread.c (Fload): Doc fix (load-suffixes).
6271
62722002-10-10 Steven Tamm <steventamm@mac.com>
6273
6274 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
6275 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
6276 Also switch the default to Qnil from Qt.
6277
62782002-10-08 Kenichi Handa <handa@m17n.org>
6279
6280 * coding.c (code_convert_region): When we need more GAP for
6281 conversion, pay attention to the case that coding->produced is not
6282 greater than coding->consumed.
6283
62842002-10-07 Richard M. Stallman <rms@gnu.org>
6285
6286 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
6287
62882002-10-06 Andrew Choi <akochoi@shaw.ca>
6289
6290 * macmenu.c (mac_menu_show): Add j to count menu items; match
6291 menu_item_selection to it to find selected item.
6292
62932002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6294
6295 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
6296 cases. The correct fix is to pass ReparentNotify to Xt.
6297 The shell widget interprets ConfigureNotify differently depending
6298 on if it has been reparented or not.
6299
63002002-10-05 Markus Rost <rost@math.ohio-state.edu>
6301
6302 * editfns.c (Fformat_time_string): Doc fix.
6303
63042002-10-05 John Paul Wallington <jpw@shootybangbang.com>
6305
6306 * fns.c (Flength): Doc fix.
6307
63082002-10-04 Stefan Monnier <monnier@cs.yale.edu>
6309
6310 * keyboard.c (keyremap): New struct.
6311 (read_key_sequence): Use it: globally replace keytran_foo with
6312 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
6313 keytran_next and fkey_next to just `next'.
6314
63152002-10-04 Steven Tamm <steventamm@mac.com>
6316
6317 * macterm.c (keycode_to_xkeysym_table): Change return to be
6318 treated like an X keysym.
6319
63202002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6321
6322 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
6323 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
6324 This is to also handle x/y changes that occur because of a resize.
6325
63262002-10-02 John Paul Wallington <jpw@shootybangbang.com>
6327
6328 * frame.c (Vdelete_frame_functions): New variable.
6329 (syms_of_frame): Initialize and defvar it.
6330 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
6331 it when frame's `tooltip' parameter is non-nil.
6332
6333 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
6334
6335 * w32fns.c (x_create_tip_frame): Likewise.
6336
6337 * macfns.c (x_create_tip_frame): Likewise.
6338
63392002-09-30 Kenichi Handa <handa@m17n.org>
6340
6341 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
6342 -1 before calling ccl_driver.
6343
6344 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
6345 Only when it is non-nil, handle composition sequence.
6346 (setup_coding_system) <0>: Don't force composition handling.
6347
6348 * Makefile.in (lisp, shortlisp): Add utf-16.elc
6349
63502002-09-29 Richard M. Stallman <rms@gnu.org>
6351
6352 * search.c (Freplace_match): Adjust match data for the substitution
6353 just made in the buffer.
6354
6355 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
6356 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
6357
63582002-09-27 Richard M. Stallman <rms@gnu.org>
6359
6360 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
6361 (read_char): Use them. Do all exits thru the end of the function.
6362
63632002-09-27 Kenichi Handa <handa@etl.go.jp>
6364
6365 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
6366 is nil.
6367
63682002-09-26 Richard M. Stallman <rms@gnu.org>
6369
6370 * regex.h (__restrict_arr): Don't define if already defined.
6371
6372 * coding.c (run_pre_post_conversion_on_str):
6373 Save and restore Vdeactivate_mark.
6374
63752002-09-26 John Paul Wallington <jpw@shootybangbang.com>
6376
6377 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
6378
63792002-09-26 Kenichi Handa <handa@etl.go.jp>
6380
6381 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
6382 nonzero, try face's family at first. Otherwise try FAMILY at first.
6383 (choose_face_font): If C is a single byte char or latin-1, call
6384 try_font_list with PREFER_FACE_FAMILY 1.
6385
63862002-09-21 Richard M. Stallman <rms@gnu.org>
6387
6388 * window.c (select_window_1): Don't select frame.
6389 Set frame's selected window only when frame itself is selected.
6390 (Fselect_window): Doc fix.
6391
63922002-09-18 Kim F. Storm <storm@cua.dk>
6393
6394 * process.c (make-network-process): Doc fix (there is no
6395 network-server-log-function hook).
6396
63972002-09-18 Richard M. Stallman <rms@gnu.org>
6398
6399 * print.c (print): Clear out the unused parts of Vprint_number_table.
6400 (syms_of_print): Doc fix for `print-number-table'.
6401
6402 * unexelf.c (unexec): Undo previous change.
6403
64042002-09-17 Andreas Schwab <schwab@suse.de>
6405
6406 * m/alpha.h [LINUX]: Don't define DATA_START.
6407
64082002-09-16 Dave Love <fx@gnu.org>
6409
6410 * unexelf.c (unexec): Deal with .got, reinstating change from
6411 25-08-1999.
6412
64132002-09-13 Richard M. Stallman <rms@gnu.org>
6414
6415 * s/sol2-6.h (UNEXEC): Comment out definition.
6416
6417 * unexsol.c (unexec): Don't downcase first letter of error msg.
6418
6419 * xfaces.c (Fcolor_supported_p): Just one arg is required.
6420
64212002-09-12 Markus Rost <rost@math.ohio-state.edu>
6422
6423 * unexsol.c: Include buffer.h, charset.h, coding.h.
6424
64252002-09-11 Richard M. Stallman <rms@gnu.org>
6426
6427 * unexsol.c: Don't use report_file_error; do it by hand
6428 using dlerror.
6429
6430 * process.c (wait_reading_process_input, both versions):
6431 Before calling turn_on_atimers, call stop_polling.
6432
6433 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
6434
6435 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
6436 we go to too_near_end, call clear_glyph_matrix.
6437 (redisplay_window): After make_cursor_line_fully_visible,
6438 call clear_glyph_matrix and bypass `goto done'.
6439
6440 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
6441 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
6442
64432002-09-10 Richard M. Stallman <rms@gnu.org>
6444
6445 * fileio.c (Fdo_auto_save): Catch error making directory.
6446 Only call push_message if we need to.
6447 At the same time, make an unwind-protect to pop it.
6448 Rename local message_p to old_message_p.
6449 (do_auto_save_make_dir, do_auto_save_eh): New functions.
6450 (do_auto_save_unwind): Don't call pop_message.
6451
6452 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
6453
6454 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
6455
6456 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
6457
6458 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
6459
64602002-09-10 Stefan Monnier <monnier@cs.yale.edu>
6461
6462 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
6463 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
6464 (re_match_2_internal): Be more careful with infinite loops.
6465
64662002-09-10 Kim F. Storm <storm@cua.dk>
6467
6468 * macros.c (end_kbd_macro): New function.
6469 (Fend_kbd_macro): Use it.
6470
6471 * macros.h (end_kbd_macro): Declare extern.
6472
6473 * keyboard.c (Fdiscard_input): If defining keyboard macro,
6474 end and save it instead of discarding it.
6475
64762002-09-09 Markus Rost <rost@math.ohio-state.edu>
6477
6478 * s/sol2-6.h: Fix typo. Add comment.
6479
64802002-09-09 Richard M. Stallman <rms@gnu.org>
6481
6482 * regex.c (regnum_t): Use signed int, not unsigned int.
6483
6484 * s/sol2-6.h: New file.
6485
6486 * s/sol2-5.h (UNEXEC): Definition deleted.
6487
64882002-09-08 Kim F. Storm <storm@cua.dk>
6489
6490 * macros.c (executing_macro_index): Change type to EMACS_INT.
6491 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
6492
6493 * macros.h (executing_macro_index): Change type to EMACS_INT.
6494
64952002-09-06 Richard M. Stallman <rms@gnu.org>
6496
6497 * casetab.c (set_case_table): Make canon table point to eqv table.
6498
64992002-09-06 Juanma Barranquero <lektu@terra.es>
6500
6501 * coding.c (syms_of_coding): Fix spacing.
6502
6503 * composite.c (Fcompose_region_internal)
6504 (Fcompose_string_internal): Likewise.
6505
6506 * data.c (Flsh): Likewise.
6507
6508 * fontset.c (Fset_fontset_font): Likewise.
6509
6510 * macfns.c (Fx_server_max_request_size): Likewise.
6511
6512 * w16select.c (syms_of_win16select): Likewise.
6513
6514 * w32select.c (syms_of_w32select): Likewise.
6515
6516 * xselect.c (syms_of_xselect): Likewise.
6517
65182002-09-05 Richard M. Stallman <rms@gnu.org>
6519
6520 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
6521 call EXTEND_RANGE_TABLE and return a proper value.
6522 (set_image_of_range): Don't call set_image_of_range_1
6523 if no TRANSLATE or if range includes all of Latin-1.
6524 Only call it for the Latin-1 part of the range.
6525 For other cases, make two separate ranges,
6526 one for the original specified characters and one for
6527 their case-conversions.
6528
65292002-09-04 Richard M. Stallman <rms@gnu.org>
6530
6531 * s/sol2-5.h (UNEXEC): Use unexsol.o.
6532
6533 * window.c (displayed_window_lines): Correct for one-off bug
6534 in HEIGHT on non-window displays.
6535
6536 * regex.c (set_image_of_range_1): New function.
6537 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
6538 Return a value to indicate running out of memory.
6539 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
6540 (extend_range_table_work_area): New subroutine.
6541 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
6542 Different calling conventions, and used from set_image_of_range{,_1}.
6543 (IMMEDIATE_QUIT_CHECK): Definitions moved.
6544
65452002-09-04 Juanma Barranquero <lektu@terra.es>
6546
6547 * makefile.w32-in: All dependencies updated.
6548
65492002-09-01 Richard M. Stallman <rms@gnu.org>
6550
6551 * unexsol.c: New file.
6552
6553 * xfns.c (Qbox): Declare external, don't define.
6554
6555 * xdisp.c (redisplay_window) <force-start case>:
6556 If point is on semi-visible last line, reposition
6557 it at previous line.
6558
6559 * alloc.c (display_malloc_warning): Use display-warning.
6560 (malloc_warning_1): Function deleted.
6561
6562 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
6563
6564 * lread.c (read1): Handle #! by skipping the line.
6565
65662002-08-31 Richard M. Stallman <rms@gnu.org>
6567
6568 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
6569 Don't include LDFLAGS.
6570 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
6571
65722002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
6573
6574 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
6575 member of x_display_info unless we compile for some window system.
6576
65772002-08-31 Kim F. Storm <storm@cua.dk>
6578
6579 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
6580 (get_window_cursor_type): Don't use them.
6581 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
6582
65832002-08-30 Kenichi Handa <handa@etl.go.jp>
6584
6585 * xdisp.c (get_next_display_element): Fix previous change.
6586
65872002-08-30 Andrew Choi <akochoi@shaw.ca>
6588
6589 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
6590 (expose_window): Use it to fix the display of overlapping
6591 rows (merge code from xterm.c).
6592
6593 * macfns.c (Qbox): Add extern declaration.
6594
65952002-08-30 Juanma Barranquero <lektu@terra.es>
6596
6597 * w32fns.c (Qbox): Make extern.
6598 (syms_of_w32fns): Remove initialization of Qbox.
6599
66002002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
6601
6602 * xfns.c (Fx_open_connection): Fix error message.
6603
66042002-08-30 Kim F. Storm <storm@cua.dk>
6605
6606 The following changes consolidates the handling of the cursor
6607 type in xdisp.c, moving duplicate code and functionality from
6608 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
6609
6610 * frame.h (enum text_cursor_kinds): Consolidated here.
6611 Added DEFAULT_CURSOR value.
6612 (struct frame) <desired_cursor, cursor_width>
6613 <blink_off_cursor, blink_off_cursor_width>: New fields.
6614 Consolidated from output_x, output_w32 and output_mac structs.
6615 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6616 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
6617
6618 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
6619 Variables consolidated here.
6620 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
6621 (Vcursor_in_non_selected_windows): Renamed from
6622 cursor_in_non_selected_windows and changed to Lisp_Object.
6623 (syms_of_xdisp): Define and staticpro new and moved variables.
6624 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
6625 consolidated here. Recognize Qhollow setting.
6626 (set_frame_cursor_types): New function to set frame cursor types
6627 based on the frame parameters.
6628 (get_window_cursor_type): New function to calculate new cursor
6629 type and width for the specified window. Based on duplicated
6630 code consolidated here.
6631 Enhancements: cursor-in-non-selected-windows may be a cursor type,
6632 check buffer-local alternate-cursor-type and blink-cursor-alist
6633 before using built-in blink off methods.
6634
6635 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
6636
6637 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
6638 (get_specified_cursor_type, get_window_cursor_type)
6639 (set_frame_cursor_types): Added prototypes.
6640
6641 * macfns.c (x_specified_cursor_type): Removed.
6642 (x_set_cursor_type): Use set_frame_cursor_types.
6643 (Qbar, Qbox): Removed.
6644 (syms_of_macfns): Don't intern or staticpro them.
6645
6646 * macterm.c (x_specified_cursor_type): Remove prototype.
6647 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6648 (x_display_and_set_cursor): Use get_window_cursor_type.
6649 Remove unused local variables cursor_non_selected, active_cursor.
6650 Redraw cursor if hbar cursor width changes.
6651 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
6652
6653 * macterm.h (enum text_cursor_kinds): Removed.
6654 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
6655 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6656 (FRAME_DESIRED_CURSOR): Macro removed.
6657
6658 * w32fns.c (Vblink_cursor_alist): Removed.
6659 (Qbar, Qhbar, Qbox, Qhollow): Removed.
6660 (syms_of_w32fns): Don't intern, staticpro, or define them.
6661 (x_specified_cursor_type): Removed.
6662 (x_set_cursor_type): Use set_frame_cursor_types.
6663
6664 * w32term.c (x_specified_cursor_type): Remove prototype.
6665 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6666 (x_display_and_set_cursor): Use get_window_cursor_type.
6667 Remove unused local variables cursor_off_state.
6668 Redraw cursor if hbar cursor width changes.
6669 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
6670
6671 * w32term.h (enum text_cursor_kinds): Removed.
6672 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
6673 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6674 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6675 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
6676 (struct w32_display_info) <x_highlight_frame>: Renamed member from
6677 w32_highlight_frame.
6678
6679 * xfns.c (Vblink_cursor_alist): Removed.
6680 (Qbar, Qhbar, Qbox, Qhollow): Removed.
6681 (syms_of_xfns): Don't intern, staticpro, or define them.
6682 (x_specified_cursor_type): Removed.
6683 (x_set_cursor_type): Use set_frame_cursor_types.
6684
6685 * xterm.c (x_specified_cursor_type): Remove prototype.
6686 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6687 (x_display_and_set_cursor): Use get_window_cursor_type.
6688 Remove unused local variables cursor_off_state.
6689 Redraw cursor if hbar cursor width changes.
6690
6691 * xterm.h (enum text_cursor_kinds): Removed.
6692 (struct output_x) <current_cursor, desired_cursor, cursor_width>
6693 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6694 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6695 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
6696 (x_specified_cursor_type): Remove prototype.
6697
66982002-08-28 Richard M. Stallman <rms@gnu.org>
6699
6700 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
6701 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
6702 (Vblink_cursor_alist): New variable.
6703 (syms_of_w32fns): Initialize and defvar it.
6704 (x_specified_cursor_type): Recognize Qbox for filled box.
6705 Exceptions are hollow boxes.
6706 (Qbox, Qhollow): New variables.
6707 (syms_of_w32fns): Initialize and staticpro them.
6708
6709 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
6710 New macros.
6711 (struct w32_output): New fields blink_off_cursor,
6712 blink_off_cursor_width.
6713 (FRAME_CURSOR_WIDTH): New macro.
6714
6715 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
6716 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
6717
6718 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
6719 for bar cursor.
6720
6721 * w32term.c (expose_overlaps): New function.
6722 (expose_window): Use it to fix the display of overlapping rows.
6723
67242002-08-28 Simon Josefsson <jas@extundo.com>
6725
6726 * xfns.c (Fx_open_connection): Improve help when X connection
6727 fails, xhost is insecure and xauth is better.
6728
67292002-08-28 Juanma Barranquero <lektu@terra.es>
6730
6731 * makefile.w32-in: Add missing dependencies on w32term.h and
6732 composite.h.
6733
6734 * emacs.c (USAGE1): Add missing newline.
6735
67362002-08-27 Andrew Choi <akochoi@shaw.ca>
6737
6738 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
6739
67402002-08-27 Richard M. Stallman <rms@gnu.org>
6741
6742 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
6743 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
6744 (Vblink_cursor_alist): New variable.
6745 (syms_of_xfns): Initialize and defvar it.
6746 (x_specified_cursor_type): Recognize Qbox for filled box.
6747 Exceptions are hollow boxes.
6748 (Qbox, Qhollow): New variables.
6749 (syms_of_xfns): Initialize and staticpro them.
6750
6751 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
6752 New macros.
6753 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
6754
6755 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
6756 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
6757
6758 * emacs.c (main): Handle --script.
6759 (USAGE1): Mention --script.
6760 (standard_args): Define sort order for --script.
6761
67622002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
6763
6764 * xdisp.c (redisplay_updating_p): Variable removed.
6765 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
6766 New variables.
6767 (init_iterator): Don't free realized faces if
6768 inhibit_free_realized_faces is set.
6769 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
6770 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
6771 initialize Qinhibit_free_realized_faces.
6772
6773 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
6774 when iterator is adding glyphs to a glyph matrix.
6775
67762002-08-27 Kenichi Handa <handa@etl.go.jp>
6777
6778 * xdisp.c (get_next_display_element): In unibyte case, don't use
6779 octal form for such eight-bit characters that can be converted to
6780 multibyte char.
6781
67822002-08-26 Kim F. Storm <storm@cua.dk>
6783
6784 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
6785 and background colors. From Joe Buehler (tiny change).
6786
67872002-08-26 Miles Bader <miles@gnu.org>
6788
6789 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
6790
67912002-08-25 Andrew Choi <akochoi@shaw.ca>
6792
6793 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
6794 defined instead of MAC_OSX.
6795
6796 * s/darwin.h (select): Define select to sys_select only if
6797 HAVE_CARBON is defined.
6798 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
6799 (DONT_REOPEN_PTY): #def it.
6800
6801 * macterm.c (XTread_socket): Remove code to call
6802 SendEventToEventTarget for keys with command modifiers when
6803 mac_command_key_is_meta is nil.
6804
68052002-08-24 Andreas Schwab <schwab@suse.de>
6806
6807 * eval.c (Fdefvar): Fix last change.
6808
68092002-08-23 Richard M. Stallman <rms@gnu.org>
6810
6811 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
6812 Record variables in load history as (defvar . VAR).
6813 (Fdefvar): Don't record in load history if no initial value.
6814 (Qdefvar): New variable.
6815 (syms_of_eval): Init and staticpro it.
6816
6817 * lread.c (syms_of_lread): Doc fix.
6818 (build_load_history): Use Fmember to see if a definition
6819 is already in the Vload_history element.
6820
6821 * process.c (Fstart_process): Remove /: from program name.
6822
6823 * emacs.c (decode_env_path): Don't add /: if file name handler
6824 has a `safe-magic' property.
6825
6826 * callproc.c (Fcall_process): Remove /: from program name.
6827
68282002-08-23 Stefan Monnier <monnier@cs.yale.edu>
6829
6830 * regex.c (PATFETCH): Remove the translating fetch.
6831 (PATFETCH_RAW): Rename to PATFETCH.
6832 (set_image_of_range): New fun.
6833 (SET_RANGE_TABLE_WORK_AREA): Use it.
6834 (regex_compile): Don't translate the pattern chars so eagerly.
6835 Only do it when inserting an `exactn' bytecode or when handling
6836 a char-range.
6837 (mutually_exclusive_p): Avoid empty statement.
6838
68392002-08-22 Kim F. Storm <storm@cua.dk>
6840
6841 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
6842 end up on a partially visible line; this reverts a specific part
6843 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
6844 display error which has been reported several times now.
6845 However it introduces the problem that changes was supposed to fix.
6846 See my comments in the source if you want to debug this further.
6847
68482002-08-20 Kenichi Handa <handa@etl.go.jp>
6849
6850 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
6851
68522002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
6853
6854 * msdos.c (croak): Add `void' to definition.
6855
6856 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
6857 Don't define them, they are defined in msdos.c.
6858
6859 * mem-limits.h [MSDOS]: Declare etext.
6860
6861 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
6862 `const' since CORRECT_DIR_SEPS modifies its target.
6863
68642002-08-19 Kim F. Storm <storm@cua.dk>
6865
6866 * keyboard.c (Fclear_this_command_keys): Added optional arg
6867 KEEP-RECORD to avoid clearing lossage when we just want to clear
6868 the current key sequence (kmacro needs this).
6869
68702002-08-19 Kenichi Handa <handa@localhost>
6871
6872 * composite.c (run_composition_function): Call FUNC if it is fboundp.
6873
6874 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
6875 cons, return Qnil.
6876
68772002-08-17 Richard M. Stallman <rms@gnu.org>
6878
6879 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
6880
6881 * sysdep.c [!VMS]: Include sys/files.h.
6882
6883 * editfns.c (save_restriction_restore): Defend from unchained marker.
6884
6885 * buffer.c (overlays_at): Handle extending vec uniformly.
6886 (overlays_in): Handle extending vec from length 0 as in overlays_at.
6887
68882002-08-15 Andrew Choi <akochoi@shaw.ca>
6889
6890 * mac.c (init_mac_osx_environment): New function.
6891
6892 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
6893
68942002-08-14 Kim F. Storm <storm@cua.dk>
6895
6896 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
6897 executing macro before appending to it (when used from Lisp).
6898 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
6899 which is called prior to each iteration of macro (for kmacro.el).
6900 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
6901
6902 * lisp.h (Fexecute_kbd_macro): Update prototype.
6903
6904 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
6905
69062002-08-14 Kenichi Handa <handa@etl.go.jp>
6907
6908 * xselect.c (QUTF8_STRING): New variable.
6909 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
6910 (x_atom_to_symbol): Likewise.
6911 (x_get_local_selection): New argument local_request. If it is
6912 nonzero, call handler_fn with the second arg nil.
6913 (x_handle_selection_request): Call x_get_local_selection with
6914 local_request 0.
6915 (lisp_data_to_selection_data): Don't encode the string here.
6916 (Fx_get_selection_internal): Call x_get_local_selection with
6917 local_request 1.
6918 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
6919
6920 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
6921
6922 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
6923
69242002-08-13 Richard M. Stallman <rms@gnu.org>
6925
6926 * minibuf.c (Fminibufferp): New function.
6927 (syms_of_minibuf): Defsubr it.
6928 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
6929
69302002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
6931
6932 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
6933
69342002-08-12 Richard M. Stallman <rms@gnu.org>
6935
6936 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
6937 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
6938 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
6939 already.
6940
6941 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
6942
69432002-08-11 Andrew Choi <akochoi@shaw.ca>
6944
6945 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
6946 (Vmac_pass_command_to_system): New variable.
6947 (Vmac_pass_control_to_system): New variable.
6948 (do_mouse_moved): Check wp with is_emacs_window.
6949 (XTread_socket): Check window_ptr with is_emacs_window.
6950 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
6951 events back to Mac Toolbox for processing, depending on values of
6952 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
6953 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
6954 Vmac_pass_control_to_system.
6955
69562002-08-10 Kenichi Handa <handa@etl.go.jp>
6957
6958 * coding.c (unencodable_char_position): New function.
6959 (Funencodable_char_position): New function.
6960 (syms_of_coding): Defsubr Funencodable_char_position.
6961
69622002-08-10 Andrew Choi <akochoi@shaw.ca>
6963
6964 * mac.c (sys_select) [MAC_OSX]: New function.
6965
6966 * macterm.c (MakeMeTheFrontProcess): New function.
6967 (mac_initialize): Call MakeMeTheFrontProcess.
6968
6969 * s/darwin.h: Define select to sys_select.
6970
69712002-08-09 Richard M. Stallman <rms@gnu.org>
6972
6973 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
6974
69752002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
6976
6977 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
6978 end of the buffer.
6979
69802002-08-08 Ken Raeburn <raeburn@mit.edu>
6981
6982 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
6983
6984 * puresize.h (BASE_PURESIZE): Increase to 910000.
6985
69862002-08-08 Kenichi Handa <handa@etl.go.jp>
6987
6988 * coding.c (Ffind_operation_coding_system): For write-region, if
6989 VISIT is a filename, make it the target.
6990
69912002-08-07 Richard M. Stallman <rms@gnu.org>
6992
6993 * alloc.c (mark_object): Detect long lists for debugging.
6994 (mark_object_loop_halt): New variable.
6995
6996 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
6997
6998 * data.c (Fmake_variable_frame_local): Doc fix.
6999
70002002-08-01 David Ponce <david@dponce.com>
7001
7002 * w32menu.c (local_heap, local_alloc, local_free): New macros.
7003 (malloc_widget_value, free_widget_value)
7004 (w32_free_submenu_strings): Use them.
7005
7006 (push_submenu_start, push_submenu_end, push_left_right_boundary)
7007 (push_menu_pane, push_menu_item, single_keymap_panes)
7008 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
7009 (single_submenu, set_frame_menubar)
7010 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
7011
7012 (Fx_popup_menu): Don't show pop up menu until preceding one is
7013 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
7014
7015 * w32menu.c: Changes adapted from xmenu.c
7016 (set_frame_menubar): First parse all submenus,
7017 then make widget_value trees from them.
7018 Don't allocate any widget_value objects
7019 until we are done with the parsing.
7020 (parse_single_submenu): New function.
7021 (digest_single_submenu): New function.
7022 (single_submenu): Function deleted, replaced by those two.
7023
70242002-08-04 Andrew Choi <akochoi@shaw.ca>
7025
7026 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
7027 returns a valid window pointer before proceeding for keyDown and
7028 autoKey events.
7029
70302002-08-03 Andrew Choi <akochoi@shaw.ca>
7031
7032 * macterm.c (USE_CARBON_EVENTS): New macro.
7033 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
7034 (x_iconify_frame): Call CollapseWindow.
7035 (Vmac_reverse_ctrl_meta): New variable.
7036 (Vmac_wheel_button_is_mouse_2): New variable.
7037 (init_mac_drag_n_drop): New function.
7038 (mac_do_receive_drag): New function.
7039 (mac_handle_service_event): New function.
7040 (init_service_handler): New function.
7041 (mac_to_emacs_modifiers): New function.
7042 (mac_event_to_emacs_modifiers): New function.
7043 (mac_get_mouse_btn): New function.
7044 (mac_convert_event_ref): New function.
7045 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
7046 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
7047 mac_get_mouse_btn.
7048 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
7049
7050 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
7051 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
7052 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
7053 TOOL_BAR_EVENT for MAC_OS as well.
7054 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
7055 as for WINDOWS_NT.
7056 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
7057
7058 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
7059
70602002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
7061
7062 * xdisp.c (forward_to_next_line_start): Fix a condition that
7063 lead to a newline being skipped.
7064
70652002-08-02 Andrew Choi <akochoi@shaw.ca>
7066
7067 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
7068
70692002-08-01 Richard M. Stallman <rms@gnu.org>
7070
7071 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
7072
70732002-07-31 Andrew Choi <akochoi@shaw.ca>
7074
7075 * macfns.c: #undef init_process before #define-ing it.
7076
7077 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
7078 HAVE_CARBON is defined.
7079
70802002-07-31 Richard M. Stallman <rms@gnu.org>
7081
7082 * xmenu.c (set_frame_menubar): First parse all submenus,
7083 then make widget_value trees from them.
7084 Don't allocate any widget_value objects
7085 until we are done with the parsing.
7086 (parse_single_submenu): New function.
7087 (digest_single_submenu): New function.
7088 (single_submenu): Function deleted, replaced by those two.
7089
70902002-07-30 Juanma Barranquero <lektu@terra.es>
7091
7092 * w32proc.c (syms_of_ntproc): Fix docstring of
7093 `w32-get-true-file-attributes'.
7094
70952002-07-28 Richard M. Stallman <rms@gnu.org>
7096
7097 * s/hpux8.h (HPUX8): Define this before including hpux.h.
7098 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
7099
7100 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
7101
7102 * keyboard.c (make_lispy_event):
7103 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
7104 Explicitly clear up_modifier in event->modifiers.
7105
71062002-07-27 Richard M. Stallman <rms@gnu.org>
7107
7108 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
7109
7110 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7111 for bar cursor.
7112
71132002-07-26 Kenichi Handa <handa@etl.go.jp>
7114
7115 * coding.c (detect_coding_iso2022): While checking a byte sequence
7116 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
7117 it in the normal loop.
7118
71192002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
7120
7121 * xterm.c (expose_overlaps): New function.
7122 (expose_window): Use it to fix the display of overlapping rows.
7123
7124 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
7125
71262002-07-23 Ken Raeburn <raeburn@gnu.org>
7127
7128 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
7129 since it only depends on XUINT.
7130
7131 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
7132 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
7133 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
7134 Macros deleted.
3947677c 7135
77d1daf2
AS
7136 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
7137 its value over other approaches.
7138 * sysdep.c (start_of_data): Don't define the function if a macro
7139 form has been defined.
8a8e19a3 7140
048addec
JD
71412002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
7142
7143 * xdisp.c (redisplay_updating_p): New variable.
7144 (init_iterator): Don't free realized faces when
7145 redisplay_updating_p is set.
7146 (redisplay_internal): Set redisplay_updating_p while updating
7147 the display.
7148
71492002-07-23 Richard M. Stallman <rms@gnu.org>
7150
7151 * editfns.c (Fmessage): Treat "" like nil.
7152
71532002-07-23 Kenichi Handa <handa@etl.go.jp>
7154
7155 * xdisp.c (face_before_or_after_it_pos):
7156 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
7157
71582002-07-22 Juanma Barranquero <lektu@terra.es>
7159
7160 * callproc.c (init_callproc) [DOS_NT]:
7161 Initialize Vshared_game_score_directory to nil.
7162 (syms_of_callproc) [DOS_NT]: Likewise.
7163
71642002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
7165
7166 * xdisp.c (display_line): Replace an abort with xassert.
7167
71682002-07-21 Richard M. Stallman <rms@gnu.org>
7169
7170 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
7171 and END_UNCHANGED when setting buffer_unchanged_p.
7172 Use current_matrix_up_to_date_p to decide whether to use
7173 try_cursor_movement.
7174
7175 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
7176
7177 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
7178
7179 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
7180 Set to nil if dir does not exist.
7181 (syms_of_callproc): Init unconditionally and simply.
7182
7183 * buffer.c (Fbuffer_list): Doc fix.
7184
71852002-07-21 Ken Raeburn <raeburn@gnu.org>
7186
7187 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
7188
7189 * buffer.c (mmap_realloc): When shrinking, make sure number of
7190 pages to unmap is rounded towards zero.
7191
7192 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
7193 (XSETINT): Deleted.
7194
7195 * m/att3b.h (XINT): Don't define.
7196 (VALBITS, VALMASK, XTYPE): Deleted.
7197 (DATA_SEG_BITS): Define.
7198 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
7199 ARRAY_MARK_FLAG): Deleted.
7200 (DATA_SEG_BITS): Define.
7201 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
7202 (DATA_SEG_BITS): Define.
7203
72042002-07-20 Richard M. Stallman <rms@gnu.org>
7205
7206 * print.c (print_error_message): New args CONTEXT and CALLER.
7207 Calls changed.
7208
7209 * lisp.h (print_error_message): Declare new args.
7210
7211 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
7212 and CONTEXT to print_error_message, don't print them here.
7213 For a Quit, don't use Vsignaling_function.
7214 Call message_log_maybe_newline.
7215
7216 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
7217
72182002-07-20 Kim F. Storm <storm@cua.dk>
7219
7220 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
7221
72222002-07-19 Ken Raeburn <raeburn@gnu.org>
7223
7224 * bytecode.c (struct byte_stack): Pointers into byte string now
7225 point to const.
7226 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
7227 const.
7228 * charset.h (BCOPY_SHORT): Source pointer now points to const.
7229 * coding.c (encode_eol, detect_coding, detect_eol):
7230 (decode_coding, encode_coding, detect_coding_system):
7231 Source strings now treated as const.
7232 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
7233 modify Lisp string contents.
7234 * coding.h (decode_coding, encode_coding, detect_coding,
7235 detect_eol): Declarations updated.
7236 * composite.c (compose_chars_in_text): Treat Lisp string contents
7237 as const.
7238 * dispnew.c (safe_bcopy): Source pointer now points to const.
7239 * lisp.h (STRING_COPYIN): New macro.
7240 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
7241 (internal_with_output_to_temp_buffer): Declarations updated.
7242 * print.c (temp_output_buffer_setup):
7243 (internal_with_output_to_temp_buffer): Buffer name argument is now
7244 pointer to const.
7245 * sound.c (struct sound_device): Function pointer field "write"
7246 buffer argument now points to const.
7247 (vox_write): Buffer argument points to const.
7248 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
7249 contents as const.
7250 * sysdep.c (emacs_write): Buffer pointer now const.
7251 * term.c (encode_terminal_code): Buffer pointer now const.
7252 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
7253 (x_face_list_fonts, x_update_menu_appearance):
7254 (hash_string_case_insensitive): Treat Lisp string contents as const.
7255
72562002-07-19 Juanma Barranquero <lektu@terra.es>
7257
7258 * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
7259 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
7260
7261 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
7262
7263 * fileio.c (syms_of_fileio): Likewise.
7264
72652002-07-18 Richard M. Stallman <rms@gnu.org>
7266
7267 * data.c (Fdefalias): Doc fix.
7268
72692002-07-17 Dave Love <fx@gnu.org>
7270
7271 * intervals.h (text_property_stickiness): Use P_.
7272
7273 * ccl.c: Remove `emacs' conditionals.
7274 (ccl_backtrace_table): Fix size spec.
7275 (ccl_driver): Fix type errors.
7276
72772002-07-16 Ken Raeburn <raeburn@gnu.org>
7278
7279 * alloc.c (xstrdup, make_string, make_unibyte_string)
7280 (make_multibyte_string, build_string): String pointer args now
7281 point to const.
7282 * charset.c (find_charset_in_text, c_string_width):
7283 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
7284 * fileio.c (report_file_error):
7285 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
7286 (count_combining_before, count_combining_after, insert_1_both):
7287 (insert, insert_and_inherit, insert_string):
7288 (insert_before_markers, insert_before_markers_and_inherit):
7289 * lread.c (intern, oblookup, hash_string):
7290 * minibuf.c (temp_echo_area_glyphs):
7291 * search.c (fast_c_string_match_ignore_case):
7292 * sysdep.c (emacs_open, set_file_times):
7293 * xfaces.c (xstricmp):
7294 * xdisp.c (store_frame_title, string_char_and_length):
7295 (message_dolog, message2, message2_nolog, set_message): Likewise.
7296 (set_message_1): Cast message string argument to const pointer.
7297 * editfns.c (general_insert_function): Insertion function now
7298 takes pointer to const for input data.
7299 * charset.h (find_charset_in_text, c_string_width):
7300 (parse_str_as_multibyte): Declarations updated.
7301 * dispextern.h (xstricmp): Declaration updated.
7302 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
7303 (count_size_as_multibyte, count_combining_before):
7304 (count_combining_after, insert_1, insert_1_both, message_dolog):
7305 (insert, insert_and_inherit, insert_before_markers)
7306 (insert_before_markers_and_inherit, set_message, message2):
7307 (message2_dolog, build_string, make_string, make_unibyte_string):
7308 (make_multibyte_string, intern, oblookup, report_file_error):
7309 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
7310 (emacs_open, xstrdup): Declarations updated.
7311 * systime.h (set_file_times): Declaration updated.
7312
7313 * charset.c (find_charset_in_text, lisp_string_width): Use const
7314 for pointer to lisp string data.
7315 * charset.h (FETCH_STRING_CHAR_ADVANCE):
7316 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
7317 * coding.c (Ffind_coding_systems_region_interval):
7318 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
7319 (Fmake_directory_internal, Fdelete_directory):
7320 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
7321 * fontset.c (font_family_registry, fs_query_fontset):
7322 (list_fontsets):
7323 * frame.c (Fframe_parameter):
7324 * keyboard.c (cmd_error_internal):
7325 * keymap.c (Fdescribe_buffer_bindings):
7326 * lread.c (complete_filename_p, openp):
7327 * minibuf.c (Fminibuffer_complete_word):
7328 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
7329 (face_before_or_after_it_pos, next_element_from_string):
7330 (get_overlay_arrow_glyph_row, display_mode_element):
7331 (decode_mode_spec_coding):
7332 * xterm.c (same_x_server): Likewise.
7333
7334 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
7335 settings of non-existent fields.
7336
7337 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
7338 copy a lisp value.
7339
7340 * lread.c (Fintern_soft): Use string macros instead of
7341 Lisp_String fields.
7342 * keyboard.c (echo_char, parse_modifiers_uncached):
7343 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
7344 * textprop.c (validate_interval_range, interval_of): Likewise.
7345
7346 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
7347
7348 * charset.h (FETCH_STRING_CHAR_ADVANCE)
7349 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
7350 XSTRING()->size_byte.
7351
7352 * lisp.h (SDATA, SREF): Produce rvalue.
7353 (SSET): New macro.
7354 * alloc.c (make_event_array): Use SSET for storing into a string.
7355 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
7356 a string.
7357 * casefiddle.c (casify_object): Use SSET.
7358 * charset.h (FETCH_STRING_CHAR_ADVANCE)
7359 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
7360 address of string contents.
7361 * data.c (Faref): Use SDATA.
7362 (Faset): Use SDATA, SSET.
7363 * dired.c (directory_files_internal): Use SSET.
7364 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
7365 (Fread_file_name): Use SREF, SSET.
7366 * fns.c (concat): Use SSET.
7367 (concat, Fdelete): Use SDATA.
7368 * insdel.c (insert_from_string_1): Use SDATA.
7369 * keyboard.c (Fevent_convert_list): Use SREF.
7370 * lread.c (Fload): Use SDATA, SSET.
7371 * macfns.c (validate_x_resource_name): Use SSET.
7372 * process.c (status_message): Use SSET.
7373 * search.c (wordify): Use SDATA.
7374 (Freplace_match): Use SREF.
7375 * w32fns.c (validate_x_resource_name): Use SSET.
7376 * xfns.c (validate_x_resource_name): Use SSET.
7377 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
7378
73792002-07-16 Richard M. Stallman <rms@gnu.org>
7380
7381 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
7382
7383 * xdisp.c (reconsider_clip_changes):
7384 Don't test prevent_redisplay_optimizations_p.
7385 (redisplay_internal): Test prevent_redisplay_optimizations_p
7386 along with clip_changed in some cases.
7387 (try_window_id): Likewise.
7388 (redisplay_window): New local var buffer_unchanged_p.
7389
7390 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
7391
7392 * process.c (create_process): Test USG_SUBTTY_WORKS.
7393 (process_send_signal): Clean up handling of GID.
7394 Detect errors in ioctls meant to set GID.
7395
7396 * window.c (temp_output_buffer_show):
7397 Don't set prevent_redisplay_optimizations_p.
7398
73992002-07-15 Juanma Barranquero <lektu@terra.es>
7400
7401 * eval.c (Fdefvaralias): Add docstring argument.
7402
74032002-07-15 Ken Raeburn <raeburn@gnu.org>
7404
7405 * lisp.h (STRING_INTERVALS): Produce rvalue.
7406 (STRING_SET_INTERVALS): New macro.
7407 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
7408 * fns.c (Fstring_as_multibyte): Likewise.
7409 * intervals.c (balance_possible_root_interval, delete_interval)
7410 (create_root_interval, copy_intervals_to_string): Likewise.
7411 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
7412 instead of 0.
7413
74142002-07-14 Ken Raeburn <raeburn@gnu.org>
7415
7416 * lisp.h (STRING_SET_CHARS): New macro.
7417 (SCHARS, SBYTES): Produce rvalues.
7418 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
7419 * fns.c (concat): Likewise.
7420 * lread.c (read_vector): Likewise.
7421
7422 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
7423 (STRING_SET_UNIBYTE): New macro.
7424 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
7425 length of -1) changed to use STRING_SET_UNIBYTE.
7426 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
7427 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
7428 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
7429 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
7430 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
7431 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
7432 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
7433 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
7434 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
7435 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
7436 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
7437 STRING_BYTES or indirection changed to SCHARS, SBYTES,
7438 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
7439 unchanged for now.
7440
74412002-07-13 Kim F. Storm <storm@cua.dk>
7442
7443 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
7444
74452002-07-12 Richard M. Stallman <rms@gnu.org>
7446
7447 * fileio.c (Fwrite_region): Doc fix.
7448
7449 * print.c (print_error_message): Don't handle Vsignaling_function here.
7450
7451 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
7452 (command_loop_1): Avoid certain actions after memory-full error.
7453
7454 * eval.c (Fsignal): Don't call cancel_hourglass.
7455 For a memory-full error, don't call Vsignal_hook_function
7456 and don't set Vsignaling_function.
7457
7458 * process.c (process_send_signal): Add abort call.
7459
74602002-07-11 Markus Rost <rost@math.ohio-state.edu>
7461
7462 * keymap.c (Fkey_binding): Fix typo.
7463
74642002-07-11 Richard M. Stallman <rms@gnu.org>
7465
7466 * alloc.c (Vmemory_full): New variable.
7467 (Vmemory_signal_data): Renamed from memory_signal_data.
7468 Uses changed.
7469 (syms_of_alloc): Defvar them.
7470 (memory_full, buffer_memory_full): Set Vmemory_full.
7471
7472 * lisp.h (Vmemory_full): Add declaration.
7473 (current_column, indented_beyond_p): Change declaration.
7474
7475 * indent.c (last_known_column): Declare as double, not float.
7476 (current_column, current_column_1, string_display_width)
7477 (position_indentation): Return `double'.
7478 (indented_beyond_p): Arg `column' is `double'. Callers changed.
7479
7480 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
7481 (back_to_previous_visible_line_start)
7482 (reseat_at_next_visible_line_start, next_element_from_buffer):
7483 Use `double', not `float', when calling indented_beyond_p.
7484
7485 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
7486
7487 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
7488
74892002-07-11 Juanma Barranquero <lektu@terra.es>
7490
7491 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
7492 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
7493 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
7494 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
7495 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
7496 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
7497
74982002-07-10 Juanma Barranquero <lektu@terra.es>
7499
7500 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
7501 changed.
7502
75032002-07-09 Stefan Monnier <monnier@cs.yale.edu>
7504
7505 * data.c (Fdefalias): Add an optional `docstring' argument.
7506 (set_internal, Fsetq_default): Use XCAR/XCDR.
7507
7508 * composite.c (HASH_VALUE, HASH_KEY):
7509 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
7510
75112002-07-09 Kenichi Handa <handa@etl.go.jp>
7512
7513 * callproc.c (Fcall_process): Fix previous change.
7514
75152002-07-07 Stefan Monnier <monnier@cs.yale.edu>
7516
7517 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
7518 Add support for hash-tables.
7519 (Ftry_completion): Return t even if the string appears multiple times.
7520
7521 * fns.c (Fnconc): Use XCDR.
7522 (Fprovide): Use CONSP and XCDR.
7523 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
7524 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
7525 (Fmake_hash_table): Accept `:size nil'.
7526 (Fmakehash): Delete: moved to subr.el.
7527 (syms_of_fns): Don't defsubr makehash.
7528
7529 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
7530 (HASH_TABLE_SIZE): Move from fns.c.
7531
75322002-07-07 Richard M. Stallman <rms@gnu.org>
7533
7534 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
7535 Instead just return 0 when there is something to be done.
7536 (try_scrolling): If make_cursor_line_fully_visible returns 0,
7537 retry scrolling as if cursor were off the bottom.
7538 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
7539 return CURSOR_MOVEMENT_MUST_SCROLL.
7540 (redisplay_window): If make_cursor_line_fully_visible returns 0,
7541 go to try_to_scroll.
7542
7543 * buffer.c (Fbuffer_local_value): Store current value into its binding
7544 so we get the up-to-date value for the binding that is loaded.
7545
7546 * eval.c (Fdefmacro): Doc fix.
7547
75482002-07-05 Dave Love <fx@gnu.org>
7549
7550 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
7551 correctly.
7552
7553 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
7554 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
7555 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
7556 CCL_LookupCharConstTbl.
7557 (syms_of_ccl): Defvar translation-hash-table-vector.
7558
75592002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7560
7561 * xdisp.c: Remove unused variable `face'.
7562
75632002-07-04 Juanma Barranquero <lektu@terra.es>
7564
7565 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
7566 obsolescence information.
7567
75682002-07-03 Andrew Choi <akochoi@shaw.ca>
7569
7570 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
7571 pattern. Search cache first.
7572 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
7573 for Japanese font.
7574 (XLoadQueryFont): Use it.
7575
75762002-07-02 Richard M. Stallman <rms@gnu.org>
7577
7578 * keymap.c (Fdefine_key): Doc fix.
7579
7580 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
7581
75822002-07-02 Juanma Barranquero <lektu@terra.es>
7583
7584 * keymap.c (syms_of_keymap): Fix typo.
7585
75862002-07-01 Andrew Choi <akochoi@shaw.ca>
7587
7588 * s/darwin.h: Define POSIX_SIGNALS.
7589
7590 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
7591 and FSRefMakePath to convert FSSpec returned with Apple Event to
7592 Posix pathname.
7593 (mac_initialize) [TARGET_API_MAC_CARBON]:
7594 Call init_required_apple_events and disable the `Quit' menu item
7595 provided automatically by the Carbon Toolbox.
7596
75972002-07-01 Dave Love <fx@gnu.org>
7598
7599 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
7600 for K&R.
7601
7602 * xterm.c: Fix prototype for K&R.
7603
7604 * term.c (costs_set): Declare static, non-initialized for pcc.
7605
76062002-07-01 Richard M. Stallman <rms@gnu.org>
7607
7608 * keyboard.c (timer_last_idleness_start_time): New variable.
7609 (timer_start_idle): Set that.
7610 (read_key_sequence): Use that to reset timer_idleness_start_time
7611 to previous value.
7612
7613 * window.c (Frecenter): With arg, set optional_new_start.
7614
7615 * xdisp.c (redisplay_internal): Make optional_new_start really work.
7616
7617 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
7618 buffer for completion.
7619
76202002-06-29 Ken Raeburn <raeburn@gnu.org>
7621
7622 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
7623
76242002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7625
7626 * keyboard.c (readable_filtered_events): New function that filters
7627 FOCUS_IN_EVENT depending on parameter.
7628 (readable_events): Calls readable_filtered_events, not filtering
7629 FOCUS_IN_EVENT.
7630 (get_filtered_input_pending): New function, filtering parameter passed
7631 to readable_filtered_events.
7632 (get_input_pending): Calls get_filtered_input_pending, not filtering
7633 FOCUS_IN_EVENT.
7634 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
7635 FOCUS_IN_EVENT.
7636
7637 * xterm.h (struct x_output): Add focus_state.
7638
7639 * xterm.c (x_focus_changed): New function.
7640 (x_detect_focus_change): New function.
7641 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
7642 EnterNotify and LeaveNotify to track X focus changes.
7643
76442002-06-28 Andreas Schwab <schwab@suse.de>
7645
7646 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
7647
76482002-06-27 Kim F. Storm <storm@cua.dk>
7649
7650 * xdisp.c: (mode_line_string_list, mode_line_string_face)
7651 (mode_line_string_face_prop): New variables.
7652 (store_mode_line_string): New function.
7653 (display_mode_element): Use store_mode_line_string to
7654 add mode-line string elements to mode_line_string_list
7655 when mode_line_string_list is non-nil.
7656 (Fformat_mode_line): Now returns propertized string by
7657 default. New arg NO-PROPS to ignore properties.
7658 (decode_mode_spec): Only add two dashes for %- in propertized
7659 mode-line string.
7660 (syms_of_xdisp): Init and staticpro mode_line_string_list.
7661
76622002-06-27 Stefan Monnier <monnier@cs.yale.edu>
7663
7664 * minibuf.c (minibuffer_completion_contents): Add return type.
7665
76662002-06-27 Juanma Barranquero <lektu@terra.es>
7667
7668 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
7669
76702002-06-26 Juanma Barranquero <lektu@terra.es>
7671
7672 * fileio.c (read_file_name_cleanup): Add missing return.
7673
76742002-06-26 Richard M. Stallman <rms@gnu.org>
7675
7676 * window.c (Frecenter): Don't set force_start flag.
7677
7678 * minibuf.c (do_completion, Fminibuffer_complete_word)
7679 (Fminibuffer_completion_help): Complete just the text before point.
7680 (minibuffer_completion_contents): New function.
7681
7682 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
7683
7684 * frame.c (frames_bury_buffer): Function deleted.
7685
76862002-06-25 Miles Bader <miles@gnu.org>
7687
7688 * callint.c (Fcall_interactively): When checking to see if doprnt hit
7689 the end of callint_message, allow for a terminating '\0'.
7690
76912002-06-24 Juanma Barranquero <lektu@terra.es>
7692
7693 * w32select.c: Include composite.h
7694
7695 * w16select.c: Likewise.
7696
76972002-06-24 Kenichi Handa <handa@etl.go.jp>
7698
7699 * callproc.c (Fcall_process): If code detection is necessary,
7700 call detect_coding directly here.
7701
7702 * coding.c (detect_eol): Preserve coding->cmp_data.
7703
7704 * w16select.c (Fw16_get_clipboard_data):
7705 * w32fns.c (w32_to_x_font):
7706 * w32select.c (Fw32_get_clipboard_data):
7707 * xselect.c (selection_data_to_lisp_data):
7708 * xterm.c (XTread_socket): Disable composition handling.
7709
77102002-06-24 Stefan Monnier <monnier@cs.yale.edu>
7711
7712 * print.c (temp_output_buffer_setup): Kill all local variables.
7713
77142002-06-22 Stefan Monnier <monnier@cs.yale.edu>
7715
7716 * lread.c (Fread): Remove redundant and imprecise declaration.
7717
7718 * xfns.c (check_x_display_info): Use check_x_frame.
7719
7720 * .gdbinit (xprintsym): Use the new `xname' field.
7721 (xsymbol): Use it.
7722
77232002-06-22 Jason Rumney <jasonr@gnu.org>
7724
7725 * w32fns.c (file_dialog_callback): New function.
7726 (Fx_file_dialog): Allow selecting directories as well as files.
7727
77282002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7729
7730 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
7731 OpenBSD. Add support for mipseb-*-netbsd* machines.
7732
77332002-06-17 Andrew Choi <akochoi@shaw.ca>
7734
7735 * macterm.c (mac_scroll_area): Set foreground and backcolor to
7736 black and white before scrolling. Restore frame background and
7737 foreground color after scrolling.
7738 (do_window_update): Call XClearWindow before calling expose_frame.
7739 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
7740 FRAME_FOREGROUND_PIXEL of frame.
7741
7742 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
7743 test Mac command key as <ALT> key.
7744
77452002-06-17 Stefan Monnier <monnier@cs.yale.edu>
7746
7747 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
7748
7749 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
7750 Lookup keys in function-key-map immediately so that key-translation-map
7751 can be applied earlier.
7752 Remove function_key_possible and key_translation_possible, replaced
7753 by checking `keytran_start < t'.
7754
7755 * .gdbinit (xsymbol): Use the new `xname' field.
7756
77572002-06-17 Andrew Choi <akochoi@shaw.ca>
7758
7759 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
7760 test Mac command key as <ALT> key.
7761
7762 * mac.c (do_applescript): Call initialize_applescript if necessary
7763 when first called. Dispose of result_desc only when there is no error.
7764 (Fdo_applescript): Use %d format specifier instead of %ld.
7765
77662002-06-16 Andrew Choi <akochoi@shaw.ca>
7767
7768 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
7769 of FrontWindow for cases keyDown and autoKey.
7770
7771 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
7772 Vdefault_fontset to Monaco with mac-roman coding.
7773
7774 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
7775 init_process before and after inclusion of Carbon/Carbon.h, resp.
7776
7777 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
7778 cursor_gc.
7779 (add_font_name_table_entry): New function.
7780 (init_font_name_table): Use add_font_name_table_entry; add italic,
7781 bold, and bold-italic entries for truetype fonts.
7782
7783 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
7784 for Mac too.
7785 (try_font_list) [MAC_OS]: If no font matches given registry, try
7786 fonts with any registry matching face_family.
7787 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
7788
7789 * s/darwin.h: If autoconf detects the Ncurses library, define
7790 LIBS_TERMCAP to -lncurses to use it.
7791
77922002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
7793
7794 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
7795
77962002-06-15 Richard M. Stallman <rms@gnu.org>
7797
7798 * window.c (Fset_window_configuration): Explicitly preserve
7799 the point value that new_current_buffer had at the start.
7800
78012002-06-14 Juanma Barranquero <lektu@terra.es>
7802
7803 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
7804 Fix typos.
7805
78062002-06-14 Kim F. Storm <storm@cua.dk>
7807
7808 * insdel.c (insert_1_both, insert_from_string_1)
7809 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
7810 insert happened in the end_unchanged region. Otherwise, the
7811 redisplay may be confused and duplicate the last line in the
7812 buffer [seen after save-buffer when require-final-newline==t].
7813
78142002-06-13 Jason Rumney <jasonr@gnu.org>
7815
7816 * w32.c (init_environment): Remove EMACSLOCKDIR.
7817 (stat): Swap _S_IFDIR and _S_IFREG.
7818
78192002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7820
7821 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
7822 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
7823 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
7824 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
7825 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
7826 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
7827 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
7828 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
7829 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
7830 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
7831 SELECTION_REQUEST_EVENT, selection_clear_event to
7832 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
7833 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
7834 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
7835 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
7836 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
7837 no_event to NO_EVENT.
7838
78392002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7840
7841 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
7842
78432002-06-12 Stefan Monnier <monnier@cs.yale.edu>
7844
7845 * intervals.c (textget): Don't forget to `return'.
7846 (lookup_char_property): Use XCAR/XCDR.
7847
78482002-06-12 Juanma Barranquero <lektu@terra.es>
7849
7850 * xdisp.c (Fformat_mode_line): Fix typo.
7851
78522002-06-12 Kim F. Storm <storm@cua.dk>
7853
7854 * xdisp.c (Fformat_mode_line): New function.
7855 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
7856 (store_frame_title_char, store_frame_title): Use unconditionally.
7857 (init_xdisp): Defsubr Fformat_mode_line.
7858 Initialize frame_title_buf etc. unconditionally.
7859
78602002-06-11 Stefan Monnier <monnier@cs.yale.edu>
7861
7862 * keyboard.c (read_key_sequence):
7863 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
7864 things through those maps after downcasing events.
7865 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
7866 applies after function-key-map.
7867 Make sure that keytran can be done in the middle in the sequence.
7868 Be careful not to throw away events past the one we downcase.
7869
7870 * lread.c (read_integer): Remove unused var `tem'.
7871 (read1): Fix int/Lisp_Object mixup.
7872
7873 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
7874
78752002-06-11 Richard M. Stallman <rms@gnu.org>
7876
7877 * keyboard.c (readable_events): Ignore any number of
7878 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
7879
78802002-06-09 Miles Bader <miles@gnu.org>
7881
7882 * xfaces.c (Ftty_supports_face_attributes_p): New function.
7883 (parse_rgb_list, tty_lookup_color): New functions.
7884 (tty_defined_color): Use `tty_lookup_color' to do all the work.
7885 (color_distance, Fcolor_distance): New functions.
7886 (TTY_SAME_COLOR_THRESHOLD): New macro.
7887 (Qtty_color_standard_values): New variable.
7888 (syms_of_xfaces): Initialize new vars & functions.
7889
78902002-06-08 Colin Walters <walters@verbum.org>
7891
7892 * textprop.c (Vchar_property_alias_alist): New variable.
7893 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
7894
7895 * intervals.c (lookup_char_property): New function for looking up
7896 overlay and text properties, created from textget.
7897 (textget): Use it.
7898
7899 * intervals.h (lookup_char_property): Declare.
7900 (Vchar_property_alias_alist): Declare.
7901
7902 * buffer.c (Foverlay_get): Use lookup_char_property.
7903
79042002-06-07 Sam Steingold <sds@gnu.org>
7905
7906 * xselect.c (lisp_data_to_selection_data): Fix last change:
7907 *data_ret is not a Lisp string, while unibyte_string is.
7908
79092002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
7910
7911 * xselect.c (lisp_data_to_selection_data): Fix last change:
7912 set size_ret.
7913
79142002-06-07 Andreas Schwab <schwab@suse.de>
7915
7916 * m/amdx86-64.h: New file.
7917
79182002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
7919
7920 * fns.c (Fstring_make_unibyte): Doc fix.
7921
7922 * xselect.c (lisp_data_to_selection_data): If the requested type
7923 is STRING, call string_make_unibyte to encode the selected text
7924 as a string.
7925
7926 * window.c (Fset_window_hscroll): Doc fix.
7927
79282002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7929
7930 * fileio.c (choose_write_coding_system):
7931 Call select-safe-coding-system properly.
7932
79332002-06-03 Richard M. Stallman <rms@gnu.org>
7934
7935 * xdisp.c (message_with_string): Error if STRING is not a string.
7936
7937 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
7938
7939 * fileio.c (choose_write_coding_system): Pass FILE arg to
7940 Vselect_safe_coding_system_function.
7941
79422002-06-03 Ken Raeburn <raeburn@gnu.org>
7943
7944 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
7945
79462002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
7947
7948 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
7949 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
7950 * keymap.c (describe_command): Likewise.
7951 * minibuf.c (read_minibuf): Likewise.
7952
7953 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
7954 Cast `current_column' return value to int.
7955 (back_to_previous_visible_line_start)
7956 (reseat_at_next_visible_line_start, next_element_from_buffer):
7957 Cast `indented_beyond_p' 3rd arg to float.
7958
7959 * indent.c (last_known_column): Now a float.
7960 (current_column_1, position_indentation, current_column)
7961 (string_display_width): Return float.
7962 (Fcurrent_column): Cast `current_column' return value to int.
7963 (Fcurrent_indentation): Cast `position_indentation' retval to int.
7964 (indented_beyond_p): Third arg now a float.
7965 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
7966
7967 * lisp.h (current_column): Now returns float.
7968 (indented_beyond_p): 3rd arg now a float.
7969
79702002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
7971
7972 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
7973 is Qcompound_text_with_extensions.
7974
7975 * xselect.c (lisp_data_to_selection_data): Always set selection
7976 type as string if x_encode_text returns streingp non-NULL.
7977
7978 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
7979
79802002-05-30 Richard M. Stallman <rms@gnu.org>
7981
7982 * window.c (Fset_window_configuration): Correct the handling
7983 of point in current buffer, to work with multiple windows.
7984
79852002-05-29 Colin Walters <walters@verbum.org>
7986
7987 * lread.c (Fread_from_string): Don't depend on order of evaluation
7988 for C function parameters.
7989
79902002-05-28 Richard M. Stallman <rms@gnu.org>
7991
7992 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
7993 way for blinked-off state and for a nonselected window.
7994
7995 * window.c (window_scroll_pixel_based): Don't call Fbolp;
7996 instead, see if the new start pos is at beginning of line.
7997
7998 * fileio.c (Fwrite_region): If START is a string, don't
7999 make any annotations.
8000
8001 * eval.c (syms_of_eval): Doc fix.
8002
80032002-05-28 Colin Walters <walters@debian.org>
8004
8005 * emacs.c (USAGE1): Add --no-splash.
8006 (standard_args): Ditto.
8007
80082002-05-28 Colin Walters <walters@gnu.org>
8009
8010 * lread.c (readchar_count): New variable.
8011 (readchar): Increment it.
8012 (unreadchar): Decrement it.
8013 (read_multibyte): Decrement it.
8014 (Vread_with_symbol_positions): New variable.
8015 (Vread_symbol_positions_list): New variable.
8016 (read_internal_start): New function, created from Fread and
8017 Fread_from_string. Handle Vread_symbol_positions_list and
8018 Vread_with_symbol_positions.
8019 (readevalloop, Fread, Fread_from_string): Use it.
8020 (read1): Use readchar_count to add symbol positions to
8021 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
8022 (syms_of_lread): DEFVAR_LISP and initialize them.
8023
8024 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
8025 (substitute_object_recurse, substitute_object_in_subtree)
8026 (substitute_in_interval): Prototype.
8027 (read_multibyte): Return c if it's less than zero.
8028
80292002-05-28 Kim F. Storm <storm@cua.dk>
8030
8031 * fileio.c (Fread_file_name_internal): Added brute-force
8032 speed up for using predicate file-directory-p.
8033
80342002-05-28 Kim F. Storm <storm@cua.dk>
8035
8036 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
8037 New variables.
8038 (syms_of_fileio): DEFVAR_LISP them.
8039 (read_file_name_cleanup): New unwind function.
8040 (Fread_file_name_internal): Only return completions satifying
8041 Vread_file_name_predicate. Temporarily unwind protect and rebind
8042 default-directory while checking completions against the predicate.
8043 (Fread_file_name): Added PREDICATE argument. Specbind it to
8044 Vread_file_name_predicate during completion.
8045 Call Vread_file_name_function to read the file name if non-nil.
8046
8047 * lisp.h (Fread_file_name): Now has 6 args.
8048
8049 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
8050 predicate for Fread_file_name when reading directory name.
8051 Supply Qnil for predicate in other calls to Fread_file_name.
8052
80532002-05-26 Miles Bader <miles@gnu.org>
8054
8055 * term.c (tty_capable_p): New function.
8056 * dispextern.h (tty_capable_p): New function declaration.
8057 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
8058 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
8059
80602002-05-23 Stefan Monnier <monnier@cs.yale.edu>
8061
8062 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
8063 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
8064 (Vwrite_region_annotate_functions): Docstring fix.
8065
80662002-05-23 Kim F. Storm <storm@cua.dk>
8067
8068 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
8069 phys_cursor's hpos is overwritten. This is still not completely
8070 correct, as it doesn't really make sense to use hpos at all to
8071 get the cursor glyph (as that is relative to the width of the
8072 characters on the line, which may have changed during the update).
8073
80742002-05-22 Jason Rumney <jasonr@gnu.org>
8075
8076 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
8077 Lisp_Object.
8078 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
8079 Use modified enumfont_t struct.
8080
8081 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
8082
8083 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
8084 Handle the `hbar' cursor type.
8085 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
8086
8087 * w32fns.c (Qhbar): New variable.
8088 (x_specified_cursor_type): Use it.
8089
80902002-05-21 Ken Raeburn <raeburn@gnu.org>
8091
8092 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
8093 now, when the address is needed.
8094
80952002-05-21 Colin Walters <walters@gnu.org>
8096
8097 * Makefile.in (shortlisp): Add font-core.el.
8098
80992002-05-20 Richard M. Stallman <rms@gnu.org>
8100
8101 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
8102
8103 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
8104 equivalent key bindings here.
8105
81062002-05-20 Ken Raeburn <raeburn@gnu.org>
8107
8108 Change symbol structure to contain a lisp object for the symbol
8109 name:
8110 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
8111 object field named "xname".
8112 (SYMBOL_NAME): New macro.
8113 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
8114 name field.
8115 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
8116 (mark_object, gc_sweep): Use symbol xname field and XSTRING
8117 instead of name field.
8118 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
8119 SYMBOL_NAME instead of XSYMBOL and name field.
8120 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
8121 instead of XSYMBOL and name field.
8122 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
8123 and SYMBOL_NAME instead of XSYMBOL and name field.
8124 * coding.c (Fread_coding_system, code_convert_region1)
8125 (code_convert_string1, code_convert_string_norecord)
8126 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
8127 XSYMBOL and name field.
8128 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
8129 (Fmake_variable_buffer_local, Fmake_local_variable)
8130 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
8131 of XSYMBOL and name field.
8132 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
8133 XSYMBOL and name field.
8134 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
8135 instead of XSYMBOL and name field.
8136 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
8137 XSYMBOL and name field.
8138 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
8139 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8140 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
8141 instead of XSYMBOL and name field.
8142 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
8143 (parse_modifiers, apply_modifiers, Fevent_convert_list)
8144 (parse_solitary_modifier, Fexecute_extended_command):
8145 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8146 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
8147 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
8148 of XSYMBOL and name field.
8149 (describe_command, describe_translation): Use SYMBOL_NAME and
8150 assignment instead of XSYMBOL and name field and XSETSTRING.
8151 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
8152 instead of XSYMBOL and name field.
8153 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
8154 name field and XSETSTRING.
8155 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8156 of XSYMBOL and name field.
8157 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
8158 assignment instead of XSYMBOL and name field and XSETSTRING.
8159 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
8160 XSTRING instead of XSYMBOL and name field.
8161 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
8162 and XSTRING instead of XSYMBOL and name field.
8163 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
8164 and XSTRING instead of XSYMBOL and name field.
8165 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
8166 XSTRING instead of XSYMBOL and name field.
8167 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8168 of XSYMBOL and name field.
8169 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
8170 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8171
81722002-05-19 Ken Raeburn <raeburn@gnu.org>
8173
8174 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
8175 and XCDR real rvalues in most configurations.
8176
8177 * buffer.c (fix_overlays_in_range, fix_overlays_before):
8178 Don't take the address of the cdr part of a cons cell; instead, track
8179 the parent cell and call XSETCDR, or set the variable for the head
8180 of the list if we haven't started down the list yet.
8181
81822002-05-19 Richard M. Stallman <rms@gnu.org>
8183
8184 * doc.c (reread_doc_file): Don't ask for confirmation.
8185
81862002-05-18 Jason Rumney <jasonr@gnu.org>
8187
8188 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
8189 (xbm_load_image): Use it.
8190 (xbm_load): Ditto.
8191 (xbm_read_bitmap_data): Reverted to xfns.c version.
8192 From David Ponce <david@dponce.com>.
8193
81942002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
8195
8196 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
8197 2.02 and later.
8198
81992002-05-16 Juanma Barranquero <lektu@terra.es>
8200
8201 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
8202
82032002-05-15 Stefan Monnier <monnier@cs.yale.edu>
8204
8205 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
8206 meaningful test.
8207 (read_char_minibuf_menu_prompt): Fix typo.
8208
82092002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
8210
8211 * eval.c (Fcommandp): Doc fix.
8212
82132002-05-13 Stefan Monnier <monnier@cs.yale.edu>
8214
8215 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
8216 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
8217 (Fset_keymap_parent): Gcpro a bit more.
8218 (access_keymap): Gcpro around meta_map call and around the main loop.
8219 (get_keyelt): Gcpro when following indirect references.
8220 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
8221 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
8222 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
8223 Remove useless ad-hoc remap code.
8224
82252002-05-13 Richard M. Stallman <rms@gnu.org>
8226
8227 * search.c (search_buffer): Give up boyer moore search if inverse
8228 translation change charset_base.
8229
82302002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
8231
8232 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
8233 characters is carried over from the previous block of text, adjust
8234 coding->produced to account for the extra character.
8235
82362002-05-11 Andreas Schwab <schwab@suse.de>
8237
8238 * coding.c (intersection): Keep the elements of the returned list
8239 in the same order as in the first list.
8240
82412002-05-11 Kim F. Storm <storm@cua.dk>
8242
8243 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
8244 only update cmm_size if realloc actually succeeds.
8245 Testing with initial size of 2 elements revealed that using
8246 realloc on GNU/Linux would cause a random trap in xmalloc
8247 later on, so I rewrote the code to use malloc/bcopy/free instead
8248 of realloc.
8249
82502002-05-10 Jason Rumney <jasonr@gnu.org>
8251
8252 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
8253
82542002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
8255
8256 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
8257 parens, to ensure correct evaluation order.
8258
82592002-05-10 Kim F. Storm <storm@cua.dk>
8260
8261 * keymap.c (Vemulation_mode_map_alists): New variable.
8262 (syms_of_keymap): DEFVAR_LISP it.
8263 (current_minor_maps): Process keymap alists in that list before
8264 minor-mode-overriding-map-alist and minor-mode-map-alist.
8265
82662002-05-09 Richard M. Stallman <rms@gnu.org>
8267
8268 * search.c (Freplace_match): Doc fix.
8269
82702002-05-09 Kim F. Storm <storm@cua.dk>
8271
8272 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
8273 Enlarge cursor rectangle drawn around image with non-zero relief.
8274
8275 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
8276 Enlarge cursor rectangle drawn around image with non-zero relief.
8277
8278 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
8279 Enlarge cursor rectangle drawn around image with non-zero relief.
8280
82812002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
8282
8283 * xselect.c (lisp_data_to_selection_data): Don't set selection
8284 type if comes from the Lisp object's car. If the selection
8285 contains a pure ASCII text, always return QSTRING as its type.
8286
82872002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8288
8289 * mac.c (mac-cut-function): Doc fix.
8290
82912002-05-05 Richard M. Stallman <rms@gnu.org>
8292
8293 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
8294
82952002-05-04 Jason Rumney <jasonr@gnu.org>
8296
8297 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
8298 for event-click-count.
8299
8300 * process.c (init_process): Only add server subfeature if we can
8301 use non-blocking I/O.
8302
83032002-05-04 Andrew Choi <akochoi@shaw.ca>
8304
8305 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
8306 repeatedly.
8307
83082002-05-03 Jason Rumney <jasonr@gnu.org>
8309
8310 * process.c (Fmake_network_process): Only support server sockets
8311 when we can make them non-blocking.
8312
8313 * s/ms-w32.h (HAVE_SELECT): Define.
8314
8315 * w32.h (FILE_NDELAY): New flag.
8316
8317 * w32.c (sys_getpeername, fcntl): New functions.
8318 (_sys_read_ahead): Temporarily block on non-blocking sockets.
8319
8320 * w32proc.c: include sys/file.h.
8321
83222002-05-03 Colin Walters <walters@verbum.org>
8323
8324 * callproc.c (Vgame_score_directory): Renamed to
8325 Vshared_game_score_directory.
8326
83272002-04-30 Richard M. Stallman <rms@gnu.org>
8328
8329 * s/gnu.h [emacs]: Include stdio.h.
8330 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
8331
8332 * eval.c (do_autoload): Error if called while preparing to dump.
8333
8334 * fns.c (Frequire): Error if need to load while preparing to dump.
8335
83362002-04-28 Colin Walters <walters@verbum.org>
8337
8338 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
8339 Default to "~/.emacs.d/games".
8340
83412002-04-29 Stefan Monnier <monnier@cs.yale.edu>
8342
8343 * lread.c (openp): Change arg exec_only to predicate.
8344 (build_load_history): Use XCAR/XCDR.
8345 (Flocate_file_internal): New fun.
8346 (syms_of_lread): Defsubr it.
8347 (Fload): Update call to openp.
8348
8349 * lisp.h (openp): Update prototype.
8350
8351 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
8352 * w32proc.c (sys_spawnve):
8353 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
8354 * w32.c (check_windows_init_file):
8355 * sound.c (Fplay_sound_internal):
8356 * process.c (Fstart_process):
8357 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
8358 * mac.c (run_mac_command):
8359 * emacs.c (init_cmdargs):
8360 * callproc.c (Fcall_process): Update call to openp.
8361
8362 * textprop.c (remove_properties): Don't use XCAR without CONSP.
8363
8364 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
8365
83662002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8367
8368 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
8369 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
8370
83712002-04-28 Richard M. Stallman <rms@gnu.org>
8372
8373 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
8374
8375 * eval.c (Fcommandp): New arg for_call_interactively.
8376 * lisp.h (Fcommandp): Declare new arg.
8377
83782002-04-28 Jason Rumney <jasonr@gnu.org>
8379
8380 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
8381
8382 * w32.c (stat, fstat): Use file index information to generate
8383 inodes for directories where available.
8384
83852002-04-26 Andrew Choi <akochoi@shaw.ca>
8386
8387 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
8388 [HAVE_CARBON]: Include Mac object files.
8389
8390 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
8391 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
8392 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
8393 MAC_OSX, and MAC_OS instead of macintosh.
8394
8395 * editfns.c [MAC_OS8]: Include stdio.h.
8396
8397 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
8398
8399 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
8400 Apple Monaco.
8401
8402 * process.c: Declare QCfamily and QCfilter as extern.
8403 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
8404 calling select.
8405
8406 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
8407
8408 * tparam.c [MAC_OSX]: Don't define BC and UP.
8409
8410 * config.in [HAVE_CARBON]: Add.
8411
8412 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
8413 Move here from mac/src and mac/inc.
8414
8415 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
8416
84172002-04-26 Gerd Moellmann <gerd@gnu.org>
8418
8419 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
8420 Compute phys_cursor_width from the x position returned
8421 by x_draw_glyhs, which is cheaper.
8422 (x_display_and_set_cursor): Compute the buffer-local value
8423 of `cursor-in-non-selected-windows' only when needed.
8424
84252002-04-25 Gerd Moellmann <gerd@gnu.org>
8426
8427 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
8428 cursor on a stretch glyph has a width that depends on
8429 x_stretch_cursor_p.
8430
84312002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8432
8433 * abbrev.c (abbrev-start-location): Doc fix.
8434
8435 * indent.c (Fvertical_motion): Fix last change.
8436
84372002-04-25 Gerd Moellmann <gerd@gnu.org>
8438
8439 * indent.c (Fvertical_motion): Move to the start of the line
8440 containing PT before moving up or down.
8441
84422002-04-24 Gerd Moellmann <gerd@gnu.org>
8443
8444 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
8445 case of writing a whole row, more or less analogous to the case of
8446 writing only parts of a row.
8447
8448 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
8449 0 for NO_CURSOR.
8450
8451 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
8452
84532002-04-23 Colin Walters <walters@verbum.org>
8454
8455 * buffer.c (syms_of_buffer): Doc fix.
8456
84572002-04-23 Gerd Moellmann <gerd@gnu.org>
8458
8459 * xterm.c (notice_overwritten_cursor): Handle the special case
8460 of the cursor being in the first blank non-text line at the
8461 end of a window.
8462
8463 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8464 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8465 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
8466 bar cursors only, to make phys_cursor_width contain what its name
8467 suggests.
8468 (notice_overwritten_cursor): Consider the cursor image erased if
8469 the output area intersects the cursor image in y-direction.
8470
84712002-04-23 Simon Marshall <simon@gnu.org>
8472
8473 * xfns.c (x_set_mouse_color): Change default for cross_cursor
8474 to XC_hand2.
8475
84762002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8477
8478 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
8479
84802002-04-22 Kim F. Storm <storm@cua.dk>
8481
8482 * textprop.c (remove_properties): Fixed trap for malformed plist.
8483
84842002-04-22 Richard M. Stallman <rms@gnu.org>
8485
8486 * cmds.c (Fend_of_line): Handle intangible text in mid line.
8487
8488 * window.c (make_window): Initialize height_fixed_p,
8489 last_cursor_off_p, and p->cursor_off_p slots.
8490
84912002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8492
8493 * fns.c (use-dialog-box): Doc fix.
8494
84952002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8496
8497 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
8498 variables `row', `i' and `area'.
8499 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
8500 toolkit library.
8501
85022002-04-19 Stefan Monnier <monnier@cs.yale.edu>
8503
8504 * xfaces.c (clear_font_table): Don't free the default font of
8505 a frame even if it's on another display.
8506 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
8507 that could be Qt.
8508
85092002-04-19 Juanma Barranquero <lektu@terra.es>
8510
8511 * indent.c (Fmove_to_column): Remove unused local variable
8512 `next_boundary_byte'.
8513 (current_column_1): Likewise.
8514
85152002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
8516
8517 * msdos.c (Qhbar): New variable.
8518 (syms_of_msdos): Intern and staticpro it.
8519 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
8520 cursor type.
8521
85222002-04-19 Dave Lambert <dlambert@acm.org>
8523
8524 Theses change implement an underscore-like (`hbar') cursor.
8525
8526 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
8527
8528 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
8529 Handle the `hbar' cursor type.
8530 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
8531
8532 * xfns.c (Qhbar): New variable.
8533 (syms_of_xfns): Intern and staticpro it.
8534 (x_specified_cursor_type): Handle `hbar' cursor.
8535
8536 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
8537 not defined.
8538
85392002-04-18 Richard M. Stallman <rms@gnu.org>
8540
8541 * textprop.c (remove_properties): New arg LIST allows scanning
8542 either a list or a plist.
8543 (interval_has_some_properties_list): New function, like
8544 interval_has_some_properties using list instead of plist.
8545 All callers changed.
8546 (Fremove_list_of_text_properties): New function.
8547 (syms_of_textprop): Defsubr it.
8548
85492002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
8550
8551 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
8552
85532002-04-17 Juanma Barranquero <lektu@terra.es>
8554
8555 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
8556
85572002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
8558
8559 * window.c (coordinates_in_window): Don't report on margin area
8560 if its width is zero.
8561
85622002-04-16 Jason Rumney <jasonr@gnu.org>
8563
8564 * w32fns.c (Fx_file_dialog): Decode file name before using.
8565
8566 * w32term.c (construct_drag_n_drop): Likewise.
8567
85682002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
8569
8570 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
8571 store load-history in pure space.
8572
8573 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
8574
85752002-04-16 Stefan Monnier <monnier@cs.yale.edu>
8576
8577 * xterm.c (Qlatin_1, Qutf_8): New vars.
8578 (syms_of_xterm): Initialize them.
8579 (XTread_socket): Eliminate incorrect optimization that tried to avoid
8580 decoding the output of X*LookupString.
8581 Always use latin-1 to decode the output of XLookupString.
8582 Try Xutf8LookupString if XmbLookupString failed.
8583
8584 * region-cache.c (new_region_cache): Use BEG.
8585
85862002-04-16 Gerd Moellmann <gerd@gnu.org>
8587
8588 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
8589 configuration files.
8590 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
8591 returns 0.
8592
85932002-04-15 Andreas Schwab <schwab@suse.de>
8594
8595 * config.in: Regenerated using autoheader.
8596
8597 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
8598 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
8599 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
8600 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
8601 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
8602 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
8603 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
8604 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
8605 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
8606 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
8607 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
8608 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
8609 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
8610 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
8611 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
8612 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
8613 STACK_DIRECTION, now set by autoconf.
8614
86152002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8616
8617 * dispnew.c (marginal_area_string): Sort arguments.
8618
8619 * dispextern.h (marginal_area_string): Add prototype.
8620
86212002-04-13 Richard M. Stallman <rms@gnu.org>
8622
8623 * fileio.c (Finsert_file_contents):
8624 Don't call temp_output_buffer_setup--do just part, by hand.
8625
8626 * coding.c (run_pre_post_conversion_on_str):
8627 Don't call temp_output_buffer_setup--do just part, by hand.
8628
8629 * keyboard.c (command_loop_1): Don't call start_hourglass
8630 or cancel_hourglass when executing a macro.
8631
8632 * marker.c (count_markers): New function.
8633
8634 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
8635 grow without limit. Move recently used elements to the front.
8636
86372002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
8638
8639 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
8640
86412002-04-12 Gerd Moellmann <gerd@gnu.org>
8642
8643 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
8644 rows marginal areas.
8645 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
8646 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
8647
8648 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
8649
86502002-04-12 Dave Love <fx@gnu.org>
8651
8652 * dispnew.c (marginal_area_string): New.
8653
8654 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
8655 (Qleft_margin, Qright_margin): Declare.
8656 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
8657
8658 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
8659 note_mode_line_highlight and extended.
8660
8661 * keyboard.c (Qleft_margin, Qright_margin): Declare.
8662 (make_lispy_event): Deal with mouse events in margins.
8663
86642002-04-12 Stefan Monnier <monnier@cs.yale.edu>
8665
8666 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
8667
8668 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
8669 than deactivating the mark if tmm is set to `lambda'.
8670 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
8671 Use a single event for HELP_EVENT.
8672 (Fexecute_extended_command): Save last_point_position.
8673
86742002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8675
8676 * lisp.h (Fpropertize): Add prototype.
8677
8678 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
8679
86802002-04-10 Colin Walters <walters@verbum.org>
8681
8682 * config.in: Add HAVE_SHARED_GAME_DIR.
8683
8684 * callproc.c: (Vgame_score_directory): New variable.
8685 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
8686
86872002-04-10 Richard M. Stallman <rms@gnu.org>
8688
8689 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
8690
86912002-04-09 Stefan Monnier <monnier@cs.yale.edu>
8692
8693 * minibuf.c (read_minibuf): Use empty_string.
8694 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
8695 Short-circuit the search as soon as it "failed".
8696 (Fall_completions): Allow lambda forms and lists of strings for alist.
8697 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
8698 when require_match is nil.
8699 (Ftest_completion): Rename from `test_completion' and export to elisp.
8700 Call the predicate also when alist is a list.
8701 Obey Vcompletion_regexp_list.
8702 (do_completion, Fminibuffer_complete_and_exit): Use it.
8703 (Fassoc_string): Rename from `assoc_for_completion'.
8704 Allow list of strings as well and export to elisp.
8705
87062002-04-08 Stefan Monnier <monnier@cs.yale.edu>
8707
8708 * puresize.h (BASE_PURESIZE): Increase to 900KB.
8709
87102002-04-08 Juanma Barranquero <lektu@terra.es>
8711
8712 * w32.c (sys_accept): Don't hide variable `s'.
8713
87142002-04-05 Gerd Moellmann <gerd@gnu.org>
8715
8716 * callint.c (Fcall_interactively): Use INTEGERP instead of
8717 NUMBERP for checking Vhistory_length.
8718
87192002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8720
8721 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
8722 Doc fix to reflect it.
8723
87242002-04-04 Richard M. Stallman <rms@gnu.org>
8725
8726 * xdisp.c (display_mode_element): New arg RISKY.
8727 Disregard text props found or specified within a variable
8728 that isn't marked risky-local-variable.
8729 (Qrisky_local_variable): New variable.
8730 (syms_of_xdisp): Init and staticpro it.
8731
87322002-04-04 Stefan Monnier <monnier@cs.yale.edu>
8733
8734 * undo.c (record_point): New fun.
8735 (record_delete, record_insert): Use it.
8736
87372002-04-03 Juanma Barranquero <lektu@terra.es>
8738
8739 * doc.c (Fdocumentation): Add missing parentheses.
8740 (Fdocumentation_property): Likewise.
8741
87422002-04-03 Stefan Monnier <monnier@cs.yale.edu>
8743
8744 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
8745 data is 0, just return nil.
8746
87472002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
8748
8749 * msdos.c (syms_of_msdos): Fix last change with
8750 mouse_autoselect_window.
8751
87522002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8753
8754 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
8755 mouse_autoselect_window.
8756
87572002-04-02 Stefan Monnier <monnier@cs.yale.edu>
8758
8759 * keyboard.c (make_lispy_event): Handle unknown keysyms together
8760 with system-specific keysyms. Use it also for unknown function keys.
8761
8762 * doc.c (reread_doc_file): Return whether reload was attempted.
8763 (Fdocumentation, Fdocumentation_property): Don't try to reload
8764 if the doc is 0 and only ask once.
8765
8766 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
8767
87682002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
8769
8770 * keyboard.c (read_char): If the event was Qselect_window,
8771 restore timer_idleness_start_time to its previous value.
8772
8773 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
8774
87752002-04-01 Stefan Monnier <monnier@cs.yale.edu>
8776
8777 * region-cache.c (new_region_cache): Use BEG.
8778
8779 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
8780 Use BEG and BEG_BYTE.
8781
8782 * doc.c (get_doc_string): Return nil if the location is wrong.
8783 (reread_doc_file): New fun.
8784 (Fdocumentation, Fdocumentation_property):
8785 Call it if get_doc_string fails.
8786 (Fsnarf_documentation): Make it work for a dumped Emacs.
8787
8788 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
8789 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
8790
8791 * charset.c (Fstring): Allow 0 arguments.
8792
8793 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
8794
8795 * process.c (DATAGRAM_CONN_P, list_processes_1)
8796 (Fprocess_datagram_address, Fset_process_datagram_address)
8797 (Fset_network_process_options, server_accept_connection):
8798 Fix some int/Lisp_Object confusions (thank you union types).
8799
88002002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8801
8802 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
8803
8804 * w32term.c: Likewise.
8805 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
8806
8807 * keyboard.c (Qselect_window): New symbol.
8808 (head_table): Use it.
8809 (keys_of_keyboard): Bound select-window event to handle-select-window.
8810 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
8811
8812 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
8813 (last_window): New variable.
8814 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
8815 (note_mouse_movement): Remove reimplemented code in #if 0.
8816 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
8817 Emacs windows.
8818
8819 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
8820
88212002-03-31 Gerd Moellmann <gerd@gnu.org>
8822
8823 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
8824 Callers changed.
8825
88262002-03-30 Richard M. Stallman <rms@gnu.org>
8827
8828 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
8829 loop whenever it stops making progress.
8830
8831 * widget.c (set_frame_size): Don't call change_frame_size.
8832
88332002-03-30 Gerd Moellmann <gerd@gnu.org>
8834
8835 * dispnew.c (direct_output_for_insert):
8836 Call mark_window_display_accurate.
8837
88382002-03-29 Jason Rumney <jasonr@gnu.org>
8839
8840 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
8841
88422002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
8843
8844 * Makefile.in (lread.o): Depend on coding.h.
8845
8846 * lread.c (openp, Fload): Encode the file name before passing it
8847 to `stat', `access', and `emacs_open'.
8848 (openp): GCPRO the encoded file name. Don't recompute Lisp
8849 strings unnecessarily.
8850
88512002-03-29 Kim F. Storm <storm@cua.dk>
8852
8853 * fns.c (Flax_plist_put): Doc fix.
8854
88552002-03-28 Miles Bader <miles@gnu.org>
8856
8857 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
8858
88592002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8860
8861 * process.c (set-network-process-options): Add usage.
8862 (make-network-process): Doc fix.
8863
88642002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
8865
8866 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
8867
88682002-03-26 Richard M. Stallman <rms@gnu.org>
8869
8870 * fns.c (Fsubstring_no_properties): New function.
8871 (Flax_plist_get, Flax_plist_put): New functions.
8872 (syms_of_fns): defsubr them.
8873
8874 * xdisp.c (update_menu_bar): Test only update_mode_lines;
8875 don't test or alter w->update_mode_line.
8876
8877 * window.c (Fdisplay_buffer): Doc fix.
8878
88792002-03-24 Richard M. Stallman <rms@gnu.org>
8880
8881 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
8882
88832002-03-24 Gerd Moellmann <gerd@gnu.org>
8884
8885 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
8886 (Fdefmacro): Handle `(declare ...)'.
8887 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
8888 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
8889
88902002-03-24 Jason Rumney <jasonr@gnu.org>
8891
8892 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
8893 (xbm_file_p): Add prototypes.
8894 (xbm_format, xbm_image_p): Sync with xfns.c.
8895 (reflect_byte): New function.
8896 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
8897 (xbm_load_image): Create bitmaps with a depth of 1.
8898 (init_xfns): Enable XBM images.
8899
89002002-03-23 Jason Rumney <jasonr@gnu.org>
8901
8902 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
8903 correctly. Do not pass up_modifier to keyboard buffer.
8904
8905 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
8906
89072002-03-22 Stefan Monnier <monnier@cs.yale.edu>
8908
8909 * Makefile.in (bootstrapclean): New target.
8910 (bootstrap-temacs, bootstrap-doc): Remove.
8911 (bootstrap-emacs): Use a bog-standard `temacs'.
8912 Don't bother to build a DOC file.
8913
8914 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
8915
8916 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
8917 in temacs even if !CANNOT_DUMP.
8918 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
8919
8920 * alloc.c (check_pure_size): Only output a warning.
8921
89222002-03-22 Jason Rumney <jasonr@gnu.org>
8923
8924 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
8925 supported.
8926
8927 * w32term.c (zv_bits): Declare as short, for word alignment.
8928 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
8929 (syms_of_w32term): Define x-use-underline-position-properties.
8930
8931 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
8932 (clear_image_cache): Block input, fix logic, clear matrices in
8933 all frames that share this cache.
8934
89352002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
8936
8937 * emacs.c (main): Update the Copyright year in the blurb printed
8938 by "emacs --version".
8939
8940 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
8941
8942 * xterm.c (XTread_socket): If XK_ISO_Lock and
8943 XK_ISO_Last_Group_Lock are defined, handle keysyms between
8944 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
8945
89462002-03-21 Kim F. Storm <storm@cua.dk>
8947
8948 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
8949 menu-bar bindings in keymap and local-map properties _are_ used.
8950 But try keymap property first in accordance with 2002-01-03 patch.
8951 Added comment describing why this is not always reliable.
8952 (tool_bar_items): Ditto for tool-bar.
8953
89542002-03-21 Jason Rumney <jasonr@gnu.org>
8955
8956 * w32fns.c (x_clear_image_1): Disable color table code.
8957
89582002-03-21 Kim F. Storm <storm@cua.dk>
8959
8960 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
8961 removed the wrong version of the DEFUN macro; fixed it.
8962
8963 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
8964 Fmember rather than Fmemq).
8965 (Fprovide): Check that subfeatures is a list.
8966
8967 * process.c (QCfeature, QCdatagram): Removed variables.
8968 (QCtype, Qdatagram): New variables.
8969 (network_process_featurep): Removed function.
8970 (Fmake_network_process): Removed :feature check.
8971 Use :type 'datagram instead of :datagram t to create a datagram
8972 socket. This allows us to add other connection types (e.g. raw
8973 sockets) later in a consistent manner.
8974 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
8975 supported subfeatures for feature make-network-process.
8976 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
8977 Intern and staticpro QCtype and Qdatagram.
8978 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
8979
8980 * xfns.c: (QCtype): Remove duplicate declaration and
8981 initialization (is now declared in process.c).
8982
8983 * w32fns.c: (QCtype): Remove duplicate declaration and
8984 initialization (is now declared in process.c).
8985
89862002-03-21 Richard M. Stallman <rms@gnu.org>
8987
8988 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
8989 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
8990 when jumping to `fail' to avoid undoing reg changes in the
8991 last iteration of the loop.
8992 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
8993
8994 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
8995 Depend on process.h.
8996
89972002-03-20 Jason Rumney <jasonr@gnu.org>
8998
8999 Most of the following changes are still conditional on HAVE_IMAGES
9000 which is not set by default on Windows.
9001
9002 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
9003
9004 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
9005 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
9006 (four_corners_best, x_clear_image_1, x_clear_image)
9007 (x_alloc_image_color, postprocess_image)
9008 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
9009 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
9010 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
9011
9012 * w32gui.h (struct XImage): Define.
9013
9014 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
9015 extract mouse co-ordinates.
9016
90172002-03-20 Jason Rumney <jasonr@gnu.org>
9018
9019 * w32.c (init_winsock): Dynamically load new server and UDP
9020 socket functions.
9021 (socket_to_fd): New function.
9022 (sys_socket): Use it.
9023 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
9024 (sys_recvfrom, sys_sendto): New wrapper functions.
9025
9026 * process.c (QCfamily, QCfilter): Remove duplicate declaration
9027 and initialization.
9028
9029 * makefile.w32-in (LIBS): Remove $(WSOCK32).
9030
90312002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
9032
9033 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
9034 Don't use "sun" as a variable, it's a predefined constant on Sun
9035 machines.
9036
90372002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9038
9039 * bytecode.c (Fbyte_code): Revert last change.
9040
90412002-03-19 Kim F. Storm <storm@cua.dk>
9042
9043 * makefile.w32-in (LIBS): Add $(WSOCK32).
9044 From David Ponce <dponce@voila.fr>.
9045
90462002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9047
9048 * process.c (wait_reading_process_input): Move variables `pname'
9049 and `pnamelen' down where they are used.
9050
9051 * bytecode.c (Fbyte_code): Discard unused computed value to
9052 prevent gcc warning.
9053
9054 * lisp.h (Fplist_member): Add prototype.
9055
90562002-03-18 Kim F. Storm <storm@cua.dk>
9057
9058 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
9059 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
9060
9061 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
9062 Remove explicit GNU_LINUX settings for datagram support.
9063
90642002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9065
9066 * process.c (Fmake_network_process): Remove unused variable `sa'.
9067 Doc fix. Add usage:.
9068 (set_socket_options): Remove unused variables `optnum' and `opttype'.
9069
90702002-03-17 Richard M. Stallman <rms@gnu.org>
9071
9072 * xdisp.c (cursor_type_changed): New variable.
9073 (redisplay_internal): Redisplay all windows if cursor_type_changed.
9074 Clear it when clearing windows_or_buffers_changed.
9075 (try_cursor_movement, redisplay_window, try_window_id)
9076 (try_window_reusing_current_matrix): Test cursor_type_changed
9077 along with windows_or_buffers_changed.
9078
9079 * window.h (cursor_type_changed): New variable.
9080
9081 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
9082 not update_mode_lines, and always set it to 1.
9083
9084 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
9085 if no frames needed redrawing.
9086
90872002-03-17 Kim F. Storm <storm@cua.dk>
9088
9089 The following changes add support for network server processes,
9090 datagram connections, and local (unix) sockets.
9091
9092 * process.h (struct Lisp_Process): New member log.
9093 Doc fix: Member command used to indicate stopped network process.
9094 Doc fix: Member childp contains plist for network process.
9095 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
9096
9097 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
9098 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
9099 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
9100 New variables.
9101 (NETCONN1_P): New macro.
9102 (DATAGRAM_SOCKETS): New conditional symbol.
9103 (datagram_address): New array.
9104 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
9105 (status_message): Use concat3.
9106 (Fprocess_status): Add `listen' status to doc string. Return `stop'
9107 for a stopped network process.
9108 (Fset_process_buffer): Update contact plist for network process.
9109 (Fset_process_filter): Ditto. Don't enable input for stopped
9110 network processes. Server must listen, even if filter is t.
9111 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
9112 New functions.
9113 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
9114 (Fprocess_contact): Added KEY argument. Handle datagrams.
9115 (list_processes_1): Optionally show only processes with the query
9116 on exit flag set. Dynamically adjust column widths. Omit tty
9117 column if not needed. Report stopped network processes.
9118 Identify server and datagram network processes.
9119 (Flist_processes): New optional arg `query-only'.
9120 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
9121 (conv_lisp_to_sockaddr, set_socket_options)
9122 (network_process_featurep, unwind_request_sigio): New helper functions.
9123 (Fprocess_datagram_address, Fset_process_datagram_address):
9124 (Fset_network_process_options): New lisp functions.
9125 (Fopen_network_stream): Removed. Now defined in simple.el.
9126 (Fmake_network_process): New lisp function. Code is based on previous
9127 Fopen_network_stream, but heavily reworked with new property list based
9128 argument list, support for datagrams, server processes, and local
9129 sockets in addition to old client-only functionality.
9130 (server_accept_connection): New function.
9131 (wait_reading_process_input): Use it to handle incoming connects.
9132 Do not enable input on a new connection if process is stopped.
9133 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
9134 (send_process): Handle datagram sockets.
9135 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
9136 network process is indicated by setting command field to t .
9137 (Fprocess_send_eof): No-op if datagram connection.
9138 (Fstatus_notify): Don't read input for a stream server socket or a
9139 stopped network process.
9140 (init_process): Initialize datagram_address array.
9141 (syms_of_process): Intern and staticpro new variables, defsubr new
9142 functions.
9143
91442002-03-16 Jason Rumney <jasonr@gnu.org>
9145
9146 * w32fns.c (w32_to_all_x_charsets): Return correct type in
9147 startup case.
9148
91492002-03-16 Richard M. Stallman <rms@gnu.org>
9150
9151 * xdisp.c (redisplay_internal, redisplay_windows):
9152 Use list_of_error to call internal_condition_case_1.
9153 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
9154 so as to catch all errors with no possibility of debugger redisplay.
9155 (list_of_error): New variable.
9156 (syms_of_xdisp): Init and staticpro it.
9157
9158 * print.c (print_object): Delete `\ ' from printed rep of frame.
9159
91602002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
9161
9162 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
9163 until its implementation is fixed.
9164
91652002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9166
9167 * xfns.c (png_load): Remove unused variable `gamma_str'.
9168
91692002-03-14 Richard M. Stallman <rms@gnu.org>
9170
9171 * xfns.c (x_real_positions): Handle failure in XQueryTree.
9172
91732002-03-14 Miles Bader <miles@gnu.org>
9174
9175 * intervals.c (adjust_for_invis_intang): New function.
9176 (set_point_both): Use `adjust_for_invis_intang' to do most of the
9177 work for dealing with invisible+intangible regions. Do so before
9178 and after both forward and backward movements, to handle both
9179 front-sticky and rear-sticky cases.
9180 * textprop.c (text_property_stickiness): Function moved here from
9181 `editfns.c'.
9182 * intervals.h (text_property_stickiness): New declaration.
9183 * editfns.c (char_property_eq): Function removed.
9184 (text_property_stickiness): Function moved to `textprop.c'.
9185
91862002-03-13 Jason Rumney <jasonr@gnu.org>
9187
9188 * config.in: Add STRFTIME_NO_POSIX2.
9189
9190 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
9191 and %OX when underlying strftime does not.
9192
91932002-03-13 Stefan Monnier <monnier@cs.yale.edu>
9194
9195 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
9196 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
9197 line) to avoid annoying flicker.
9198 (xm_scroll_callback): Get rid of the now unnecessary kludge.
9199 (XTread_socket): Mark it static.
9200
9201 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
9202
92032002-03-13 Kim F. Storm <storm@cua.dk>
9204
9205 * puresize.h (BASE_PURESIZE): Increase to 775000.
9206
92072002-03-12 Juanma Barranquero <lektu@terra.es>
9208
9209 * editfns.c (syms_of_editfns): Fix typo.
9210
92112002-03-12 Gerd Moellmann <gerd@gnu.org>
9212
9213 * xsmfns.c: Include stdio.h because termhooks.h needs it.
9214 Include termopt.h for interrupt_input.
9215
92162002-03-11 Andreas Schwab <schwab@suse.de>
9217
9218 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
9219
92202002-03-11 Gerd Moellmann <gerd@gnu.org>
9221
9222 * xterm.c (note_mouse_movement): Put code for
9223 x_autoselect_window_p in #if 0.
9224
9225 * lread.c (Fload): Don't assume that message_with_string uses the
9226 string it is given like a C string.
9227
92282002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9229
9230 * xterm.h (x_session_check_input, x_session_initialize): Declared.
9231
9232 * xterm.c: (XTread_socket): Add call to x_session_check_input and
9233 x_session_have_connection.
9234 (x_initialize): Add call to x_session_initialize.
9235
9236 * termhooks.h (enum event_kind): Add save_session_event.
9237
9238 * keyboard.c: Add Emacs event save_session_event.
9239
9240 * emacs.c (main): Add call to syms_of_xsmfns.
9241
9242 * lisp.h: Declare syms_of_xsmfns as extern.
9243
9244 * config.in: Add HAVE_X_SM.
9245
9246 * Makefile.in (LIBXT): Add -lSM -lICE
9247 if HAVE_X_SM and not USE_X_TOOLKIT.
9248 (XOBJ): New file xsmfns.c added.
9249
9250 * xsmfns.c: New file for X session management.
9251
92522002-03-09 Jason Rumney <jasonr@gnu.org>
9253
9254 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
9255 read-only when setting modified time.
9256
92572002-03-08 Gerd Moellmann <gerd@gnu.org>
9258
9259 * xdisp.c (move_it_vertically_backward): At the end of the function,
9260 when moving forward by lines, treat terminal frames specially.
9261
9262 * keyboard.c (echo_char): Make sure to add a separator between
9263 keys even if echo_dash hasn't been called.
9264
9265 * xdisp.c: Use new string macros.
9266 (update_echo_area): Pass number of bytes to message3 instead of
9267 number of chars.
9268 (set_message_1): Don't access a string's size_byte directly.
9269 (decode_mode_spec_coding): Use number of bytes of eoltype string
9270 instead number of chars.
9271
9272 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
9273
92742002-03-08 Juanma Barranquero <lektu@terra.es>
9275
9276 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
9277 24-bit.
9278
92792002-03-06 Jason Rumney <jasonr@gnu.org>
9280
9281 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
9282
92832002-03-06 Gerd Moellmann <gerd@gnu.org>
9284
9285 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
9286 (cancel_echoing, echo_length, echo_truncate): Changed to
9287 work with new kboard definition.
9288 (echo_now): Use message3_nolog instead of message2_nolog.
9289
9290 * alloc.c (mark_kboards): Mark echo_string.
9291
9292 * keyboard.h (ECHOBUFSIZE): Removed.
9293 (struct kboard): Member echoptr removed, member echobuf renamed
9294 to echo_string.
9295
9296 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
9297 message3 instead of message2 to display the message using STRING's
9298 text properties.
9299
93002002-03-05 Andreas Schwab <schwab@suse.de>
9301
9302 * xdisp.c (hscroll_margin): Change to EMACS_INT.
9303
93042002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
9305
9306 * frame.c (default-frame-alist): Explain that setting it doesn't
9307 affect existing frames.
9308
93092002-03-05 Stefan Monnier <monnier@cs.yale.edu>
9310
9311 * indent.c (skip_invisible): Fix my brain fart.
9312
9313 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
9314
93152002-03-04 Stefan Monnier <monnier@cs.yale.edu>
9316
9317 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
9318 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
9319 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
9320 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
9321 and variables to use EMACS_INT instead of just int.
9322
9323 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
9324
93252002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
9326
9327 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
9328 environment, pass it down with corrected value.
9329
93302002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9331
9332 * lread.c (read_filtered_event): Do not call start_hourglass
9333 before returning.
9334
93352002-03-04 Juanma Barranquero <lektu@terra.es>
9336
9337 * w32term.c (x_display_and_set_cursor): Fix typo.
9338
93392002-03-03 Richard M. Stallman <rms@gnu.org>
9340
9341 * fileio.c (Fmake_temp_name): Doc fix.
9342
93432002-03-03 Gary Wong <gtw@gnu.org>
9344
9345 * termcap.c [!emacs]: Replace ospeed for building standalone
9346 libtermcap, for binary compatibility.
9347
9348 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
9349
93502002-03-03 Richard M. Stallman <rms@gnu.org>
9351
9352 * xrdb.c (file_p): Rename arg `path' to `filename'.
9353
9354 * abbrev.c (Fexpand_abbrev): Increment plist as use count
9355 only if it is an integer.
9356
9357 * xfns.c (png_load): Set screen_gamma based on f->gamma.
9358 If png_get_sRGB gives an answer, call png_set_gamma
9359 using the default image gamma value.
9360
9361 * lread.c (read1): When reading from a file, default string to
9362 multibyte only if it has some multibyte characters.
9363
9364 * print.c (print_object): Output multibyte chars 128...255
9365 using \x even if ! print_escape_multibyte.
9366
9367 * xdisp.c (display_mode_element): Move the places where
9368 bytepos, charpos, this, and lisp_string are set.
9369 Use lisp_string to set bytepos.
9370
9371 * xdisp.c (redisplay_internal):
9372 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
9373
9374 * xdisp.c (display_mode_element): Merge properties specified with
9375 :propertize onto those that come with the string.
9376
93772002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
9378
9379 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
9380 automatic-hscrolling. Users changed.
9381 <hscroll-margin>: Renamed from automatic-hscroll-margin.
9382 Users changed.
9383 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
9384
93852002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
9386
9387 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
9388
93892002-03-02 Kim F. Storm <storm@cua.dk>
9390
9391 * window.c (Fminibuffer_selected_window): New function.
9392 (syms_of_window): Defsubr it.
9393
93942002-03-01 Kim F. Storm <storm@cua.dk>
9395
9396 * window.h (struct window): New member phys_cursor_width.
9397
9398 * window.c (make_window, replace_window): Init phys_cursor_width.
9399
9400 * xterm.c (x_display_and_set_cursor): Blink box cursor using
9401 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
9402
9403 * w32term.c (x_display_and_set_cursor): Blink box cursor using
9404 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
9405
9406 * lisp.h (GCPRO6): New macro.
9407
9408 * process.c (Fopen_network_stream): Use GCPRO6.
9409
94102002-03-01 Kim F. Storm <storm@cua.dk>
9411
9412 * process.c (Qconnect, Qfailed): New variables.
9413 (syms_of_process): Intern and staticpro them.
9414 (Fprocess_status): Document connect and failed return values.
9415 [NON_BLOCKING_CONNECT]: New conditional.
9416 (connect_wait_mask, num_pending_connects): New variables.
9417 (status_message): Convert Qfailed status.
9418 (Fopen_network_stream): Added support for non-blocking connect.
9419 New optional args: filter, sentinel, non_blocking. Doc updated.
9420 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
9421 (deactivate_process): Handle pending non-blocking connect.
9422 (wait_reading_process_input): Poll for status of non-blocking
9423 connects. Exec sentinel directly when connect succeeds.
9424 (status_notify): Don't read process output if not yet connected.
9425
94262002-02-28 Kim F. Storm <storm@cua.dk>
9427
9428 * window.c: (minibuf_selected_window): Renamed from
9429 Vminibuf_selected_window. Users changed.
9430 (syms_of_window): Staticpro it.
9431
94322002-02-26 Kim F. Storm <storm@cua.dk>
9433
9434 The following changes add a new Vminibuf_selected_window variable
9435 which is similar to Vminibuf_scroll_window, but which is only set
9436 on entry to the minibuffer (from a non-minibuffer window):
9437
9438 * window.c: (Vminibuf_selected_window): New variable.
9439 (struct save_window_data): New member minibuf_selected_window.
9440 (Fset_window_configuration): Restore Vminibuf_selected_window.
9441 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
9442 Set minibuf_scroll_window member to nil if minibuf_level is 0.
9443 (compare_window_configurations): Compare minibuf_selected_window.
9444
9445 * window.h: (Vminibuf_selected_window): Declare extern.
9446
9447 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
9448 entry to minibuffer or on entry from a non-minibuffer window.
9449
9450 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
9451 Vminibuf_selected_window instead of Vminibuf_scroll_window.
9452
9453 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
9454 instead of Vminibuf_scroll_window when deciding in which window
9455 the region should be highlighted. Consequently, the region remains
9456 highlighteded even when a completion buffer is also displayed.
9457
94582002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
9459
9460 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
9461
9462 * xselect.c (Qcompound_text_with_extensions): Renamed from
9463 Qcompound_text_no_extensions.
9464 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
9465
94662002-02-26 Juanma Barranquero <lektu@terra.es>
9467
9468 * w32proc.c (syms_of_ntproc): Doc fix.
9469
94702002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9471
9472 * intervals.h: Include "dispextern.h" unconditionally.
9473
94742002-02-24 Jason Rumney <jasonr@gnu.org>
9475
9476 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
9477 and disp-table.elc.
9478 (lisp): Add emacs-lisp/backquote.elc.
9479
94802002-02-24 Kim F. Storm <storm@cua.dk>
9481
9482 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
9483 The validation of the event type was too strict as it didn't
9484 allow string events; buffer names are used in bindings for
9485 menu-bar-select-buffer (see `menu-bar-update-buffers').
9486
94872002-02-23 Kim F. Storm <storm@cua.dk>
9488
9489 The following changes rework my patch of 2002-02-06 which
9490 added command remapping by entering the commands directly into
9491 the keymaps. Now, command remapping uses an explicit `remap'
9492 prefix in the keymaps, i.e. [remap COMMAND].
9493
9494 * keymap.c (Qremap, remap_command_vector): New variables.
9495 (is_command_symbol): Removed function.
9496 (Fdefine_key): No longer accept a symbol for KEY.
9497 Added validation of [remap COMMAND] argument for KEY.
9498 The DEF is no longer required to be a symbol when remapping a command.
9499 (Fremap_command): New function to remap command through keymaps.
9500 (Flookup_key): Perform command remapping initiated by
9501 Fremap_command directly for speed.
9502 (Fkey_binding): Use Fremap_command for command remapping.
9503 (where_is_internal): Handle new command remapping representation.
9504 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
9505 staticpro them. Defsubr Fremap_command.
9506
9507 * keymap.h (Fremap_command): Declare extern.
9508 (is_command_symbol): Remove extern.
9509
9510 * keyboard.c (command_loop_1): Use Fremap_command for command
9511 remapping; now try command remapping for all symbols.
9512
95132002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
9514
9515 * coding.h (run_pre_post_conversion_on_str): Add prototype.
9516
95172002-02-23 Jason Rumney <jasonr@gnu.org>
9518
9519 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
9520 on the string before encoding it.
9521 (Fw32_get_clipboard_data): Run post-read-conversion on the string
9522 after decoding it.
9523
9524 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
9525
95262002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9527
9528 * w32term.c (enter_timestamp): Remove unused static variable to
9529 prevent warning.
9530
9531 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
9532
95332002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
9534
9535 * w16select.c (Fw16_get_clipboard_data): Fix last change.
9536
9537 * xselect.c (selection_data_to_lisp_data): Fix last change.
9538
95392002-02-22 Jason Rumney <jasonr@gnu.org>
9540
9541 * w32term.h (struct w32_output): New member menu_command_in_progress.
9542
9543 * w32menu.c (menubar_selection_callback): Free the menu and
9544 clear the menu_command_in_progress flag.
9545
9546 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
9547 (menu_free_timer): New variable.
9548 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
9549 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
9550 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
9551 menu command is in progress.
9552 <WM_COMMAND>: Set the menu_command_in_progress flag.
9553 Kill any menu_free_timer that is running.
9554
9555 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
9556 Call ExtTextOutA rather than ExtTextOut.
9557
95582002-02-22 Eli Zaretskii <eliz@gnu.org>
9559
9560 * puresize.h (BASE_PURESIZE): Increase to 755000.
9561
95622002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
9563
9564 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
9565 on the string before encoding it.
9566 (Fw16_get_clipboard_data): Run post-read-conversion on the string
9567 after decoding it.
9568
95692002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
9570
9571 Support for ICCCM Extended Segments in X selections:
9572
9573 * xselect.c <Qcompound_text_no_extensions>: New variable.
9574 (syms_of_xselect): Intern and staticpro it.
9575 (selection_data_to_lisp_data): Run post-read-conversion on decoded
9576 selection text.
9577 (lisp_data_to_selection_data): If next-selection-coding-system is
9578 compound-text-no-extensions, set the type of selection to be
9579 compound-text.
9580
9581 * xterm.h (x_encode_text): Update prototype.
9582
9583 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
9584 callers changed. If SELECTIONP is non-zero, run the
9585 pre-write-conversion function before encoding the selection text.
9586
95872002-02-21 Kim F. Storm <storm@cua.dk>
9588
9589 * frame.c (syms_of_frame): Change mouse-highlight default to t.
9590
9591 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
9592 Correct composing of language-change event.
9593
95942002-02-20 Kim F. Storm <storm@cua.dk>
9595
9596 * keyboard.c (menu_bar_items): Don't include keymap or local-map
9597 bindings at PT when building menu (the menu is not updated often
9598 enough for this to work reliable).
9599 (tool_bar_items): Likewise.
9600 (current_active_maps): Removed unused (and buggy) function.
9601
96022002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9603
9604 * xfns.c (gif_load): Use correct width and height for GIF images.
9605
96062002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
9607
9608 * floatfns.c (Fatan): Accept an optional second arg and call
9609 atan2 if passed 2 args.
9610
96112002-02-18 Jason Rumney <jasonr@gnu.org>
9612
9613 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
9614
96152002-02-17 Jason Rumney <jasonr@gnu.org>
9616
9617 * w32term.c (x_autoselect_window_p): New variable.
9618 (syms_of_w32term): DEFVAR_BOOL and initialize it.
9619 (note_mouse_movement): Use it.
9620
9621 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
9622
9623 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
9624
9625 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
9626 New variables.
9627 (syms_of_w32fns): Intern and staticpro them.
9628 (x_frame_parms) <"fullscreen">: New parameter.
9629 (x_fullscreen_move, x_set_fullscreen): New functions.
9630 (x_set_frame_parameters): Support Qfullscreen.
9631 (x_real_positions): Save x/y_pixels_diff frame params.
9632 (x_figure_window_size): Support full-screen frames.
9633 (Fx_create_frame): Default the fullscreen parameter.
9634
9635 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
9636 (x_fullscreen_adjust): New functions.
9637 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
9638 fullscreen. Call x_check_fullscreen_move, and set the
9639 want_fullscreen member of output_data.w32
9640 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
9641
9642 * w32term.h: New enum for FULLSCREEN_* constants.
9643 (struct w32_output): New members want_fullscreen, x_pixels_diff,
9644 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
9645 (x-fullscreen-adjust): New prototype.
9646
96472002-02-17 Kim F. Storm <storm@cua.dk>
9648
9649 * frame.c: (Vmouse_highlight): New variable.
9650 (syms_of_frame): DEFVAR_LISP it.
9651
9652 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 9653
048addec 9654 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 9655
048addec
JD
9656 * xterm.c (disable_mouse_highlight): Removed variable.
9657 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
9658 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9659 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
9660 and on after keyboard input.
9661 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 9662
048addec 9663 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 9664
048addec
JD
9665 * msdos.c (disable_mouse_highlight): Removed variable.
9666 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9667 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
9668 (internal_terminal_init): Initialize mouse_face_hidden.
9669 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
9670 and on after keyboard input.
4f1b1854 9671
048addec 9672 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 9673
048addec
JD
9674 * w32term.c (disable_mouse_highlight): Removed variable.
9675 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
9676 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9677 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
9678 and on after keyboard input.
9679 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 9680
048addec 96812002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 9682
048addec
JD
9683 * msdos.c (last_mouse_window): New variable.
9684 (dos_rawgetc): Fix last change--if the mouse is in the same window
9685 as recorded in last_mouse_window, don't select this window.
5cb6905d 9686
048addec 9687 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 9688
048addec
JD
9689 * msdos.c (x_autoselect_window_p): New variable.
9690 (syms_of_msdos): Defvar it.
9691 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
9692 which the last mouse movement occured, unless it is already selected.
437dfb9f 9693
048addec
JD
9694 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
9695 New variables.
9696 (syms_of_xdisp): DEVFAR them.
9697 (hscroll_window_tree): Use automatic_hscroll_margin and
9698 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 9699
048addec 97002002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 9701
048addec
JD
9702 * xterm.c (x-autoselect-window): New variable.
9703 (note_mouse_movement): Use it.
9f696a00 9704
048addec 9705 * keyboard.c: Do not include "systime.h" twice.
d57966d7 9706
048addec 97072002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 9708
048addec 9709 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 9710
048addec 9711 * alloc.c (NSTATICS): Increase to 1280.
74779f52 9712
048addec 97132002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 9714
048addec 9715 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 9716
048addec
JD
9717 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
9718 (Vx_super_keysym): New variables.
9719 (syms_of_xterm): DEFVAR_LISP them.
9720 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
9721 variables to determine which keys to use for the various modifiers.
a474d59c 9722
048addec 97232002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 9724
048addec
JD
9725 * window.c: (Vmode_line_in_non_selected_windows): Removed.
9726 (mode_line_in_non_selected_windows): New variable.
9727 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 9728
048addec
JD
9729 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
9730 Use mode_line_in_non_selected_windows.
9731 (mode_line_in_non_selected_windows): Declare extern.
9732 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 9733
048addec 97342002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 9735
048addec
JD
9736 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
9737 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
9738 (Fclear_this_command_keys): Doc fixes.
2d10309f 9739
048addec
JD
9740 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
9741 (update_face_from_frame_parameter): Increment face_change_count
9742 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 9743
048addec
JD
9744 * xdisp.c (QCpropertize): New variable.
9745 (mode_line_proptrans_alist): New variable.
9746 (display_mode_element): New arg PROPS; all calls changed.
9747 Implement this, for strings.
9748 Handle literal output of strings by sharing the
9749 main-line code for strings, using local var `literal'.
9750 Handle :propertize feature.
9751 (syms_of_xdisp): Initialze and staticpro QCpropertize and
9752 mode_line_proptrans_alist.
0b1e6b54 9753
048addec 97542002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 9755
048addec
JD
9756 * window.c: (Vmode_line_in_non_selected_windows): New variable.
9757 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 9758
048addec
JD
9759 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
9760 (CURRENT_MODE_LINE_FACE_ID): Use it.
9761 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 9762
048addec
JD
9763 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
9764 to get mode line face.
e17144de 9765
048addec 97662002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 9767
048addec
JD
9768 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
9769 variables; cus-start.el doesn't need them anymore.
44368f8f 9770
048addec 97712002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 9772
048addec
JD
9773 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
9774 reduction. This fixes a display problem where stray newlines were
9775 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 9776
048addec 97772002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 9778
048addec 9779 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 9780
048addec 9781 * xdisp.c (display_mode_lines): Fix last change.
453c5510 9782
048addec 97832002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 9784
048addec
JD
9785 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
9786 match each other.
9787 (w32_load_system_font): Prevent Cleartype fonts from loading.
9788 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 9789
048addec 97902002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 9791
048addec
JD
9792 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
9793 (CURRENT_MODE_LINE_HEIGHT): Use it.
9794 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 9795
048addec
JD
9796 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
9797 (pos_visible_p, handle_face_prop): Likewise.
9798 (display_mode_lines): Likewise, but for the real selected window.
9799 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 9800
048addec
JD
9801 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
9802 in non-selected windows.
9803 (realize_basic_faces): Realize it.
9804 (syms_of_term): Intern and staticpro it.
308dd672 9805
048addec 98062002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 9807
048addec
JD
9808 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
9809 Changed mail addresses to emacs-devel@gnu.org.
308dd672 9810
048addec 98112002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 9812
048addec
JD
9813 * fileio.c (Fsubstitute_in_file_name): If the file name includes
9814 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 9815
048addec 9816 * floatfns.c (Fround): Doc fix.
3c1e6b46 9817
048addec 98182002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 9819
048addec 9820 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 9821
048addec 98222002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 9823
048addec 9824 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 9825
048addec 98262002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 9827
048addec
JD
9828 * keymap.c (where_is_internal): Only check whether definition is
9829 remapped if it fulfills is_command_symbol.
0065bb74 9830
048addec 98312002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 9832
048addec 9833 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 9834
048addec 9835 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 9836
048addec 98372002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 9838
048addec
JD
9839 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
9840 defining command remapping. Doc updated.
9841 (Flookup_key): Remap command through keymap if KEY is a symbol.
9842 (is_command_symbol): New function.
9843 (Fkey_binding): Use it. New optional argument NO-REMAP.
9844 Doc updated. Callers changed. Perform command remapping via
9845 recursive call unless that arg is non-nil.
9846 (where_is_internal): New argument no_remap. Callers changed.
9847 Call recursively to find original key bindings for a remapped
9848 comand unless that arg is non-nil.
9849 (Fwhere_is_internal): New optional argument NO-REMAP.
9850 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 9851
048addec
JD
9852 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
9853 (is_command_symbol): Added prototype.
0d8466cc 9854
048addec
JD
9855 * keyboard.c (Vthis_original_command): New variable.
9856 (syms_of_keyboard): DEFVAR_LISP it.
9857 (command_loop_1): Set it, and perform command remapping.
15fff01d 9858
048addec 98592002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 9860
048addec 9861 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 9862
048addec 98632002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 9864
048addec 9865 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 9866
048addec 98672002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 9868
048addec 9869 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 9870
048addec 98712002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 9872
048addec 9873 * filelock.c (S_ISLNK): Define if not defined.
3a232704 9874
048addec 98752002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 9876
048addec 9877 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 9878
048addec
JD
9879 * lread.c (read1): Redesign strategy for force_multibyte and
9880 force_singlebyte. Now is_multibyte records whether read_buffer
9881 is multibyte. Encountering any multibyte character makes it so.
4e02881b 9882
048addec 98832002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 9884
048addec
JD
9885 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
9886 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 9887
048addec 98882002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 9889
048addec
JD
9890 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
9891 latter never being defined on GNU/Linux.
749f499f 9892
048addec 98932002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 9894
048addec
JD
9895 * xfaces.c (realize_default_face): Don't set the weight and slant of
9896 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 9897
048addec 98982002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 9899
048addec
JD
9900 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
9901 Call cancel_hourglass unconditionally.
d0fd26dd 9902
048addec
JD
9903 * eval.c (Fsignal): Remove duplicated declaration of
9904 the variable `display_hourglass_p'.
b4c45162 9905
048addec 99062002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 9907
048addec 9908 * editfns.c (region_limit): Nicer error message.
c95eaa61 9909
048addec
JD
9910 * coding.c (decode_composition_emacs_mule):
9911 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 9912
048addec
JD
9913 * callint.c (check_mark): New arg to specify clearer error message.
9914 Callers changed.
c95eaa61 9915
048addec 99162002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 9917
048addec 9918 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 9919
048addec 99202002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 9921
048addec
JD
9922 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
9923 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
9924 Fix doc-strings.
c95eaa61 9925
048addec 99262002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 9927
048addec 9928 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 9929
048addec
JD
9930 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
9931 and scroll_up_aggressively.
c95eaa61 9932
048addec 99332002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 9934
048addec 9935 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 9936
048addec 99372002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 9938
048addec
JD
9939 * textprop.c (Fnext_property_change, Fnext_single_property_change)
9940 (Fprevious_property_change, Fprevious_single_property_change):
9941 Stay within the narrowed-buffer boundaries.
e2c3786a 9942
048addec 99432002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 9944
048addec
JD
9945 * term.c (Ftty_display_color_cells): New function.
9946 (syms_of_term): Defsubr it.
9947 (Ftty_display_color_cells, Ftty_display_color_p): Change the
9948 argument name to DISPLAY. Doc fix.
bf794306 9949
048addec
JD
9950 * dispextern.h: Add prototype for set_tty_color_mode and
9951 tty_setup_colors.
bf794306 9952
048addec 99532002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 9954
048addec
JD
9955 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
9956 If region left to draw is not what was expected, mark the frame as
9957 garbaged.
62582985 9958
048addec
JD
9959 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
9960 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 9961
048addec 99622002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 9963
048addec
JD
9964 * w32term.c (x_update_window_begin): Only hide caret if
9965 w32_use_visible_system_caret is set.
9966 (x_update_window_end): Only show caret if
9967 w32_use_visible_system_caret is set.
9968 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 9969
048addec 9970 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 9971
048addec 99722002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 9973
048addec
JD
9974 * unexelf.c (unexec): Define n so as to cause compilation error
9975 for the code where people have often written n instead of nn.
1e9a6186 9976
048addec 9977 * .gdbinit (hookpost-run): Defined.
1e9a6186 9978
048addec 99792002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 9980
048addec 9981 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 9982
048addec 99832002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 9984
048addec
JD
9985 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
9986 if fullscreen is being set.
7c75be36 9987
048addec 99882002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 9989
048addec
JD
9990 * minibuf.c (Fminibuffer_contents)
9991 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
9992 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 9993
048addec 99942002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 9995
048addec 9996 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 9997
048addec 99982002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 9999
048addec
JD
10000 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
10001 height before comparison.
10002 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 10003
048addec 100042002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 10005
048addec
JD
10006 * w32term.c (w32_system_caret_width): Remove.
10007 (w32_use_visible_system_caret): New user flag.
10008 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
10009 Windows reports a screen reader running.
10010 (x_update_window_begin): Hide the system caret.
10011 (x_update_window_end): Show the system caret.
10012 (x_display_and_set_cursor): Don't draw a cursor when
10013 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 10014
048addec
JD
10015 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
10016 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
10017 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
10018 the user requests it. Use system default width when creating.
10019 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 10020
048addec
JD
10021 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
10022 New window messages.
905cc05a 10023
048addec 100242002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 10025
048addec 10026 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 10027
048addec 100282002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 10029
048addec 10030 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 10031
048addec 100322002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 10033
048addec 10034 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 10035
048addec 100362002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 10037
048addec
JD
10038 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
10039 that Windows returns. If a double check fails, try to guess how
10040 ExtTextOut is going to act.
4d0fa4f3 10041
048addec
JD
10042 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
10043 in place of stricmp.
10044 (w32_list_synthesized_fonts): Removed.
10045 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
10046 (struct enumfont_t): New element; list.
10047 (enum_font_cb2): List all style and charset variations of a font.
10048 (Fw32_select_font): New optional argument; include_proportional.
10049 Exclude vertical fonts. Exclude proportional fonts unless
10050 include_proportional is non-nil.
10051 (w32_enable_synthesized_fonts): Change to a boolean.
10052 (Fw32_send_sys_command): Doc fix.
493faf20 10053
048addec 100542002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 10055
048addec
JD
10056 * dispnew.c (update_frame): Move the variable `tem' to the block
10057 where it is used.
4971e491 10058
048addec 100592002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 10060
048addec
JD
10061 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
10062 call to face-set-after-frame-default.
4971e491 10063
048addec 100642002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 10065
048addec
JD
10066 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
10067 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 10068
048addec 100692002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 10070
048addec
JD
10071 * window.c (enlarge_window): When exceeding size of parent,
10072 directly delete all the siblings instead of trying to resize it.
201c831a 10073
048addec 100742002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 10075
048addec 10076 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 10077
048addec 100782002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 10079
048addec 10080 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 10081
048addec 100822002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 10083
048addec
JD
10084 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
10085 is invisible. This can happen if cursor is on top line of a
10086 window, and we switch to a buffer with a header line.
d77fbc16 10087
048addec 10088 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 10089
048addec 100902002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 10091
048addec
JD
10092 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
10093 `dont_resize' only when used.
61e3b944 10094
048addec 10095 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 10096
048addec 100972002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 10098
048addec
JD
10099 * xdisp.c (display_mode_element): When computing charpos, depend
10100 on multibyteness of elt, not the text in field.
8af01033 10101
048addec 101022002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 10103
048addec
JD
10104 * buffer.c (Fkill_all_local_variables):
10105 Increment `update_mode_lines' only once.
7363986a 10106
048addec 101072002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 10108
048addec
JD
10109 * lisp.h (adjust_after_replace_noundo)
10110 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 10111
048addec 10112 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 10113
048addec 101142002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 10115
048addec
JD
10116 Support for the --color command-line argument and tty-color-mode
10117 frame parameter:
f1a85b89 10118
048addec
JD
10119 * term.c (tty_default_color_capabilities, tty_setup_colors)
10120 (set_tty_color_mode): New functions.
10121 (term_init): Call tty_default_color_capabilities.
10122 (Qtty_color_mode_alist): New variable.
10123 (syms_of_term): Intern and staticpro it.
f1a85b89 10124
048addec
JD
10125 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
10126 frames.
10127 (do_switch_frame): For termcap frames, switch the tty
10128 color mode as specified by the frame's parameters.
10129 (Qtty_color_mode): New variable.
10130 (syms_of_frame): Intern and staticpro it.
3a62677f 10131
048addec
JD
10132 * emacs.c (USAGE2): Add the --color option.
10133 (standard_args): Ditto.
72244db2 10134
048addec
JD
101352002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10136
10137 * xterm.h (struct x_output): New members want_fullscreen,
10138 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
10139 y_pixels_outer_diff.
10140 New enum for FULLSCREEN_* constants.
10141 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
10142 is NULL.
10143 (x_fullscreen_adjust): Add prototype.
3a62677f 10144
048addec
JD
10145 * emacs.c (USAGE2): Add the new full-screen arguments.
10146 (standard_args): Ditto.
3a62677f 10147
048addec
JD
10148 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10149 New variables.
10150 (syms_of_xfns): Intern and staticpro them.
10151 (x_frame_parms) <"fullscreen">: New parameter.
10152 (x_fullscreen_move, x_set_fullscreen): New functions.
10153 (x_set_frame_parameters): Support for Qfullscreen.
10154 (x_real_positions): More accurate computation of the frame position.
10155 (x_figure_window_size): Support full-screen frames.
10156 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 10157
048addec
JD
10158 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
10159 (XTread_socket) <Expose>: Call x_check_fullscreen.
10160 <ConfigureNotify>: Don't resize to fullscreen.
10161 Call x_check_fullscreen_move, and set the want_fullscreen member of
10162 output_data.x.
3a62677f 10163
048addec 101642002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 10165
048addec
JD
10166 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
10167 for mice with more than 3 buttons.
b8523839 10168
048addec
JD
10169 * w32term.c (parse_button): New parameter xbutton. Callers changed.
10170 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 10171
048addec
JD
10172 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
10173 (syms_of_w32fns): DEFVAR_BOOL it.
10174 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 10175
048addec 101762002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 10177
048addec 10178 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 10179
048addec 101802002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 10181
048addec 10182 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 10183
048addec 101842002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 10185
048addec
JD
10186 * .gdbinit (xbuffer): Remove address operator since data is now a
10187 pointer.
c93674bb 10188
048addec 101892002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 10190
048addec 10191 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 10192
048addec 10193 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 10194
048addec 101952002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 10196
048addec
JD
10197 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
10198 when checking for multiple frames.
91175673 10199
048addec 102002002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 10201
048addec
JD
10202 * window.c (delete_window): Rewrite the code for changing the
10203 selected window to handle the case where WINDOW is not a leaf.
91175673 10204
048addec 102052002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 10206
048addec
JD
10207 * process.c (send_process): Set src_multibyte to 1 after the call
10208 top setup_coding_system, not before the call.
e0fead5d 10209
048addec 102102002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 10211
048addec
JD
10212 * xmenu.c (set_frame_menubar, xmenu_show):
10213 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 10214
048addec
JD
10215 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
10216 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 10217
048addec 102182002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 10219
048addec 10220 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 10221
048addec 10222 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 10223
048addec 10224 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 10225
048addec 102262002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 10227
048addec
JD
10228 * insdel.c (make_gap_larger): Make sure buffer size does not
10229 overflow range of int.
62854fe2 10230
048addec 102312002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 10232
048addec
JD
10233 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
10234 OVERLAPS_P.
656f46bb 10235
048addec 10236 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 10237
048addec
JD
10238 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
10239 to the left or to the right of the pointer, put it against
10240 the left screen edge.
10241 (x_frame_parms): Add missing braces around initializer.
036e218d 10242
048addec
JD
10243 * w32term.c (x_setup_relief_colors): Don't compute an image's
10244 background color if it doesn't have a Pixmap.
10245 (notice_overwritten_cursor): Don't depend on
10246 output_cursor and updated_area. Compare pixel coordinates with
10247 window's cursor pixel coordinates.
10248 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
10249 Call notice_overwritten_cursor with new arg list.
10250 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
10251 unconditionally.
10252 (x_draw_image_relief): Use predefined macro instead of
10253 constant when the value of `tool_bar_button_relief' is negative.
036e218d 10254
048addec 10255 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 10256
048addec 102572002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 10258
048addec 10259 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 10260
048addec 102612002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 10262
048addec
JD
10263 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
10264 (Fkey_binding): Try the `keymap' property map first.
10265 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
10266 minor mode bindings.
90647b07 10267
048addec 102682002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 10269
048addec 10270 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 10271
048addec 102722002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 10273
048addec
JD
10274 * keyboard.c (read_key_sequence): Handle the keymap property
10275 before minor mode maps.
9fbc32aa 10276
048addec
JD
10277 * editfns.c (Fformat): Update thissize from field_width
10278 based on the actual width, in the string case.
036e218d 10279
048addec 102802002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 10281
048addec
JD
10282 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
10283 when used as truth value to prevent gcc warnings.
9fbc32aa 10284
048addec
JD
10285 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
10286 * w32proc.c: Include <config.h>.
9fbc32aa 10287
048addec 102882002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 10289
048addec
JD
10290 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
10291 not EMACS_INT, to make them compatible with DEFVAR_INT.
10292 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 10293
048addec 102942002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 10295
048addec
JD
10296 * print.c (print_object): Test print_escape_nonascii only for
10297 unibyte strings.
10298 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
10299 when outputting to a multibyte buffer.
9fbc32aa 10300
048addec 103012001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 10302
048addec
JD
10303 * print.c (print_object): In multibyte string, use hex escapes.
10304 Use octal only for unibyte strings.
10305 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 10306
048addec
JD
10307 * lread.c (read_escape): New arg BYTEREP for reporting whether
10308 escape forces unibyte or multibyte.
10309 (read1): When reading a string, take note of that info.
0142178a 10310
048addec 103112001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 10312
048addec
JD
10313 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
10314 comparison to test lisp value returned by Fget.
d4824a5d 10315
048addec 103162001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 10317
048addec 10318 * lisp.h (max_specpdl_size): Add declaration.
b1356234 10319
048addec 10320 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 10321
048addec
JD
10322 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
10323 Handle modifier bits. Correct typo in error message.
99e380ee 10324
048addec 103252001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 10326
048addec
JD
10327 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
10328 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
10329 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
10330 Update calls to Fdefine_abbrev.
10331 (write_abbrev): Update for changed data format.
10332 Don't list "system" abbrevs.
10333 (Fexpand_abbrev): Update use count with new data format.
10334 (describe_abbrev): Update for changed data format.
10335 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 10336
048addec 10337 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 10338
048addec 10339 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 10340
048addec
JD
10341 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
10342 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 10343
048addec
JD
10344 * keymap.c (Flookup_key): Error message if key has wrong data type.
10345 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
10346 (exclude_key): New variable.
59a86c99 10347
048addec 103482001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 10349
048addec
JD
10350 * xterm.c (x_setup_relief_colors): Don't compute an image's
10351 background color if it doesn't have a Pixmap.
eb77a5f4 10352
048addec
JD
10353 * xterm.c (notice_overwritten_cursor): Don't depend on
10354 output_cursor and updated_area. Compare pixel coordinates with
10355 window's cursor pixel coordinates.
10356 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
10357 Call notice_overwritten_cursor with new arg list.
10358 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
10359 unconditionally.
eb77a5f4 10360
048addec
JD
10361 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
10362 height of the cursor line to the amount to scroll.
eb77a5f4 10363
048addec 103642001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 10365
048addec
JD
10366 * intervals.c (set_point_both): The position after an invisible,
10367 intangible character is not an acceptable stopping point.
bb313871 10368
048addec 103692001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 10370
048addec
JD
10371 * window.c (enlarge_window): In new preserve_before code, convert
10372 CURBEG from lisp object to integer before doing arithmetic.
6052529b 10373
048addec 103742001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 10375
048addec 10376 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 10377
048addec 103782001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 10379
048addec
JD
10380 * keyboard.c (record_char): Ignore duplicate help-echo events only
10381 separated by mouse-movement. When tracking mouse, only record
10382 first and last mouse-movement event in same window.
10383 Don't record mouse-movement events in keyboard macros.
3ce081f5 10384
048addec 103852001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 10386
048addec
JD
10387 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
10388 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 10389
048addec
JD
10390 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
10391 instead of Fstring_as_unibyte.
9fabb2f5 10392
048addec 103932001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 10394
048addec 10395 The following changes remove mocklisp support:
9fabb2f5 10396
048addec 10397 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 10398
048addec
JD
10399 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
10400 `Qmocklisp' and `Qmocklisp_arguments'.
10401 Remove prototype of syms_of_mocklisp.
2fa0eedf 10402
048addec 10403 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 10404
048addec
JD
10405 * callint.c: Do not include mocklisp.h.
10406 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 10407
048addec
JD
10408 * eval.c: Remove variables `Qmocklisp_arguments',
10409 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
10410 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
10411 Do not test for mocklisp case.
10412 (Fwhile): Remove unused variable `tem'.
10413 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 10414
048addec 10415 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 10416
048addec 10417 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 10418
048addec 10419 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 10420
048addec 104212001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 10422
048addec
JD
10423 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
10424 to the left or to the right of the pointer, put it against
10425 the left screen edge.
6108b49c 10426
048addec 104272001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 10428
048addec
JD
10429 * Makefile.in (distclean): Remove .gdbinit if we are building
10430 outside the source tree.
5eea19a4 10431
048addec 104322001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 10433
048addec 10434 * w32.c (emacs_root_dir): New function.
5eea19a4 10435
048addec 10436 * msdos.c (emacs_root_dir): New function.
5eea19a4 10437
048addec
JD
10438 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
10439 of the current drive as the fallback for default_directory.
438e57dd 10440
048addec
JD
10441 * dired.c (file_name_completion): Run the elements of
10442 completion-ignored-extensions through ENCODE_FILE.
438e57dd 10443
048addec
JD
10444 * lisp.h (scmp): Remove prototype, since it's now a static
10445 function private to dired.c.
c88e5347 10446
048addec 104472001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 10448
048addec
JD
10449 * dired.c (scmp): Function moved from minibuf.c.
10450 Delete multibyte handling--used only on encoded strings.
59ce1461 10451
048addec 10452 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 10453
048addec 10454 * fns.c (merge): Add QUIT call.
59ce1461 10455
048addec 104562001-12-18 Dave Love <fx@gnu.org>
8727d588 10457
048addec
JD
10458 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
10459 language/georgian.el.
8727d588 10460
048addec 104612001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 10462
048addec
JD
10463 * Makefile.in (lisp, shortlisp): Synchronize with changes to
10464 lisp/Makefile.in:DONTCOMPILE.
cc63037e 10465
048addec 104662001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 10467
048addec
JD
10468 * xdisp.c (window_box_height): Do not return negative values.
10469 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 10470
048addec 10471 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 10472
048addec 10473 * term.c (keys): Likewise.
deece6f5 10474
048addec 10475 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 10476
048addec 104772001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 10478
048addec
JD
10479 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
10480 patch (COMPOSING_P, not COMPOSING).
28ff4293 10481
048addec 104822001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 10483
048addec 10484 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 10485
048addec
JD
10486 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
10487 before calling decode_coding.
9b46de40 10488
048addec 10489 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 10490
048addec
JD
10491 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
10492 instead of only for COMPOSITION_DISABLED.
9b46de40 10493
048addec 104942001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 10495
048addec 10496 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 10497
048addec 10498 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 10499
048addec
JD
10500 * buffer.h (struct buffer): New field `display_error_modiff'.
10501 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 10502
048addec 10503 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 10504
048addec
JD
10505 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
10506 Call redisplay_window, but not if display_error_modiff field says no.
10507 (redisplay_window_error): New function.
10508 (displayed_buffer): New variable.
10509 (redisplay_internal, redisplay_windows): Call the new functions
10510 instead of redisplay_window directly.
2cd23960 10511
048addec 105122001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 10513
048addec 10514 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 10515
048addec 105162001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 10517
048addec
JD
10518 * makefile.w32-in (EMACSLOADPATH): Define.
10519 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
10520 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 10521
048addec 105222001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 10523
048addec
JD
10524 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
10525 parameter have a numeric value all the time.
f6fa0866 10526
048addec 10527 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 10528
048addec 105292001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 10530
048addec 10531 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 10532
048addec
JD
10533 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
10534 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 10535
048addec 105362001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 10537
048addec
JD
10538 * xdisp.c (move_it_vertically_backward): Change heuristic
10539 for the case that we didn't move far enough initially.
91c153e2 10540
048addec
JD
10541 * window.c (Frecenter): Simplify computation in the case of window
10542 system frames and ARG < 0; use window_box_height.
65b7d3e7 10543
048addec 105442001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 10545
048addec
JD
10546 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
10547 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 10548
048addec 105492001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 10550
048addec
JD
10551 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
10552 arg is negative.
be676094 10553
048addec 105542001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 10555
048addec
JD
10556 * m/hp800.h: Split the __hpux conditional into the parts
10557 that are right for GNU/Linux too and the parts that are not.
10558 Use the former if GNU_LINUX.
10559 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 10560
048addec 10561 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 10562
048addec 105632001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 10564
048addec
JD
10565 * macros.c, msdos.c, w16select.c: Change doc-string comments to
10566 `new style' [w/`doc:' keyword].
032a857d 10567
048addec 105682001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 10569
048addec
JD
10570 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
10571 before using.
b6270150 10572
048addec 105732001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 10574
048addec
JD
10575 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
10576 keyword].
98cbb9fa 10577
048addec 105782001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 10579
048addec 10580 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 10581
048addec 10582 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 10583
048addec 105842001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 10585
048addec
JD
10586 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
10587 Add comment to explain where the struct came from.
10588 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
10589 (add_menu_item): Process pop-up menus first to avoid memory leak.
10590 (add_menu_item, w32_menu_display_help): Use `help' field as
10591 Lisp_Object.
10592 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 10593
048addec 105942001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 10595
048addec 10596 * COPYING: Moved back.
fa336b91 10597
048addec
JD
10598 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
10599 Add parentheses around && within ||.
077907d4 10600
048addec 10601 * indent.c (compute_motion): Likewise.
aa2af83a 10602
048addec 10603 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 10604
048addec
JD
10605 * coding.c (setup_coding_system, shrink_encoding_region)
10606 (Fdecode_sjis_char): Likewise.
60a653f1 10607
048addec 106082001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 10609
048addec
JD
10610 * xdisp.c (display_mode_element): Don't read past end of string if
10611 it ends with '%'.
60a653f1 10612
048addec
JD
10613 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
10614 can hold.
60a653f1 10615
048addec
JD
10616 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
10617 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
10618 type changed to Lisp_Object.
10619 (syms_of_data): DEFVAR_LISP them.
60a653f1 10620
048addec 106212001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 10622
048addec
JD
10623 * callproc.c (init_callproc): Set Vdata_directory based on the source
10624 location whenever Emacs was run uninstalled.
60a653f1 10625
048addec 106262001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 10627
048addec
JD
10628 * config.in (HAVE_WORKING_VFORK): New #undefs.
10629 * process.c (create_process):
10630 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
10631 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
10632 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
10633 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
10634 * m/intel386.h (HAVE_VFORK): Likewise.
10635 * m/mips-siemens.h (HAVE_VFORK): Likewise.
10636 * m/mips.h (HAVE_VFORK): Likewise.
10637 * s/freebsd.h (vfork): Remove #define.
10638 * s/lynxos.h (HAVE_VFORK): Remove #undef.
10639 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 10640
048addec 106412001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 10642
048addec
JD
10643 * s/hpux10.h (random): Add undef.
10644 (HAVE_RANDOM): Define it just once.
60a653f1 10645
048addec 106462001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10647
048addec 10648 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 10649
048addec 106502001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10651
048addec
JD
10652 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
10653 scroll bars of the frame before deleting the frame itself. If the
10654 frame has a widget, delete the frame with XtDestroyWidget, and do
10655 not call XDestroyWindow before that.
60a653f1 10656
048addec 106572001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 10658
048addec 10659 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 10660
048addec 10661 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 10662
048addec 106632001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 10664
048addec
JD
10665 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
10666 excessively large.
60a653f1 10667
048addec
JD
10668 * insdel.c (make_gap_larger): New function.
10669 (make_gap_smaller): New function.
10670 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
10671 Call make_gap_smaller if arg is negative.
60a653f1 10672
048addec 106732001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10674
048addec
JD
10675 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
10676 Pass a dummy argument when calling interrupt_signal.
10677 (parse_menu_item): Mark disabled items before checking for empty def.
10678 (read_char_minibuf_menu_prompt): Make safety more visible.
10679 (read_key_sequence): Add a `first_unbound' variable.
10680 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
10681 unbound prefix as soon as we can detect it.
60a653f1 10682
048addec
JD
10683 * doc.c (Fsnarf_documentation): Add prototype.
10684 (get_doc_string): Handle negative arguments.
10685 (Fdocumentation): Use AREF and ASIZE.
10686 Move the calls to get_doc_string to a single place.
10687 Don't confuse an interactive-spec for a docstring reference.
10688 (Fdocumentation_property): Take advantage of the fact that
10689 get_doc_string now ignores the sign of the docstring position.
60a653f1 10690
048addec 10691 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 10692
048addec 106932001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10694
048addec 10695 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief` an option.
60a653f1 10696
048addec 106972001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10698
048addec
JD
10699 * xterm.c (x_draw_image_relief): Use predefined macro instead of
10700 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 10701
048addec 107022001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 10703
048addec
JD
10704 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
10705 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 10706
048addec 10707 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 10708
048addec 107092001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10710
048addec 10711 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 10712
048addec 107132001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 10714
048addec 10715 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 10716
048addec 107172001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 10718
048addec 10719 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 10720
048addec
JD
10721 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
10722 [!WM_MOUSELEAVE]: Define.
60a653f1 10723
048addec
JD
10724 * w32menu.c (current_popup_menu, get_menu_item_info):
10725 (set_menu_item_info): New vars.
10726 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
10727 (w32_menu_show): Set current_popup_menu.
10728 (add_menu_item): Allocate new strings for owner-drawn menu items
10729 and help strings.
10730 Use owner-draw for disabled menu items again.
10731 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
10732 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 10733
048addec
JD
10734 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
10735 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
10736 <WM_EXITMENULOOP>: Free menu strings.
10737 <WM_MOUSELEAVE>: Stop tracking mouse.
10738 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 10739
048addec
JD
10740 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
10741 and mouse face.
60a653f1 10742
048addec 107432001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 10744
048addec
JD
10745 The following changes add left-fringe and right-fringe
10746 frame parameters to adjust fringe widths, or remove one or
10747 both fringes.
60a653f1 10748
048addec
JD
10749 * frame.h (struct frame): Remove trunc_area_pixel_width and
10750 trunc_area_cols fields.
10751 (Qleft_fringe, Qright_fringe): Declare.
10752 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 10753
048addec
JD
10754 * frame.c (Qleft_fringe, Qright_fringe): New vars.
10755 (syms_of_frame): Initialize them.
60a653f1 10756
048addec
JD
10757 * window.c (coordinates_in_window): Handle separate left and right
10758 fringe widths.
60a653f1 10759
048addec
JD
10760 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
10761 and fringe_cols fields.
10762 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
10763 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
10764 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
10765 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
10766 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
10767 (x_compute_fringe_widths): Add prototype.
60a653f1 10768
048addec
JD
10769 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
10770 fill fringe evenly with small dashes.
10771 (x_draw_fringe_bitmap): Clear background if necessary. Align and
10772 clip the new ZV bitmap to avoid jitter between rows.
10773 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
10774 background. Don't draw fringe bitmaps if fringe width is zero.
10775 (x_compute_fringe_widths): New function.
10776 (x_new_font, x_set_window_size_1): Use it.
60a653f1 10777
048addec
JD
10778 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
10779 (x_set_frame_parameters): Process `font' parameter before other
10780 parameters as fringe widths depend on it.
10781 (x_set_fringe_width): New function.
10782 (x_figure_window_size): Use x_compute_fringe_widths.
10783 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
10784 parameters.
60a653f1 10785
048addec
JD
10786 * widget.c (set_frame_size): Use x_compute_fringe_widths.
10787 (EmacsFrameSetCharSize): Ditto.
60a653f1 10788
048addec
JD
10789 * w32term.h: Merged changes from xterm.h.
10790 * w32term.c: Merged changes from xterm.c.
10791 * w32fns.c: Merged changes from xfns.c.
60a653f1 10792
048addec 107932001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10794
048addec 10795 * COPYING: Removed.
60a653f1 10796
048addec 107972001-11-29 Dave Love <fx@gnu.org>
60a653f1 10798
048addec
JD
10799 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
10800 extra extra slot.
10801 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 10802
048addec 108032001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10804
048addec
JD
10805 * fileio.c (file-name-coding-system)
10806 (default-file-name-coding-system): Doc fix (links to referenced
10807 variables added).
60a653f1 10808
048addec 108092001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10810
048addec
JD
10811 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
10812 Add dummy uses of gcproN variables.
60a653f1 10813
048addec
JD
10814 * category.c (describe_category, describe_category_1)
10815 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
10816 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 10817
048addec 108182001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 10819
048addec 10820 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 10821
048addec
JD
10822 * Makefile.in (lispdir): New variable, referring to build dir.
10823 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 10824
048addec 108252001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 10826
048addec
JD
10827 * w32menu.c (w32_menu_display_help): Actually add the new argument
10828 OWNER.
60a653f1 10829
048addec 108302001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 10831
048addec
JD
10832 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
10833 menu items. From David Ponce <dponce@wanadoo.fr>.
10834 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
10835 conditionally.
10836 (w32_menu_display_help): New argument OWNER. Rewritten to store a
10837 help event in the owner frame's keyboard buffer.
60a653f1 10838
048addec
JD
10839 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
10840 (Fx_show_tip): Don't subtract last width from row width.
10841
10842 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
10843 (w32_read_socket): Use EQ to compare frames.
60a653f1 10844
048addec 108452001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 10846
048addec
JD
10847 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
10848 OVERLAPS_P.
60a653f1 10849
048addec 108502001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10851
048addec
JD
10852 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
10853 `gcpro3' and `gcpro4'.
60a653f1 10854
048addec 10855 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 10856
048addec 108572001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10858
048addec 10859 * ccl.c: Use AREF and ASIZE.
60a653f1 10860
048addec 108612001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10862
048addec
JD
10863 * lisp.h (run_hook_list_with_args): Remove.
10864 (LIST_END_P): Fix call to wrong_type_argument.
10865 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 10866
048addec 108672001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10868
048addec
JD
10869 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
10870 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 10871
048addec
JD
10872 * eval.c: Use AREF and ASIZE.
10873 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 10874
048addec
JD
10875 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
10876 which match the end of the file-name.
10877 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
10878 is not a valid env var, but leave it as is instead.
60a653f1 10879
048addec
JD
10880 * keymap.c (access_keymap): Handle t bindings like nil bindings.
10881 Make nil bindings in char-tables transparent.
10882 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 10883
048addec 108842001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 10885
048addec
JD
10886 * textprop.c (set_text_properties_1): Allow START, END in either order.
10887 Do nothing if range is empty.
60a653f1 10888
048addec 10889 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 10890
048addec
JD
10891 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
10892 (clean): Not here.
60a653f1 10893
048addec 108942001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10895
048addec
JD
10896 * textprop.c (set_text_properties_1): Clearly mark that the
10897 interval should not be empty.
60a653f1 10898
048addec
JD
10899 * intervals.c (graft_intervals_into_buffer):
10900 Don't call set_text_properties_1 on an empty interval.
60a653f1 10901
048addec 109022001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 10903
048addec 10904 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 10905
048addec
JD
10906 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
10907 don't lose the data in it.
60a653f1 10908
048addec 109092001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 10910
048addec 10911 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 10912
048addec 10913 * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
60a653f1 10914
048addec 10915 * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
60a653f1 10916
048addec 109172001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10918
048addec 10919 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 10920
048addec 109212001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10922
048addec
JD
10923 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
10924 Niemitalo <kon@iki.fi>.
60a653f1 10925
048addec 109262001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 10927
048addec 10928 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 10929
048addec
JD
10930 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
10931 (Fx_show_tip): Block input during frame creation.
10932 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 10933
048addec 109342001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 10935
048addec
JD
10936 * lread.c (Fload): Detect recursive load error for more than 3
10937 nestings of the same file.
10938 (Vrecursive_load_depth_limit): Variable deleted.
10939 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 10940
048addec 109412001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 10942
048addec
JD
10943 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
10944 mouse position if either left or top is not specified.
60a653f1 10945
048addec
JD
10946 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
10947 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
10948 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
10949 (my_create_tip_window): Assign tip_window.
10950 (x_create_tip_frame): Use same defaults as X.
10951 (compute_tip_xy): Remove unused variable. Use full screen width.
10952 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 10953
048addec
JD
10954 * w32term.c (x_after_update_window_line): Doc fix.
10955 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
10956 frames.
10957 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 10958
048addec
JD
10959 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
10960 for all Windowed systems.
60a653f1 10961
048addec 109622001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10963
048addec
JD
10964 * msdos.c (IT_clear_screen): If the frame's faces are not yet
10965 realized, use the initial screen colors to clear the screen.
60a653f1 10966
048addec 109672001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10968
048addec
JD
10969 * textprop.c (Fset_text_properties): Remove unused variables
10970 `unchanged', `prev_changed', `s' and `len'.
60a653f1 10971
048addec
JD
10972 * search.c (Freplace_match): Remove unused variable `inslen'.
10973
10974 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
10975
109762001-11-22 Jason Rumney <jasonr@gnu.org>
10977
10978 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
10979 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
10980 (my_create_tip_window): New function.
10981 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
10982 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
10983
109842001-11-20 Jason Rumney <jasonr@gnu.org>
10985
10986 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
10987 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
10988
10989 * w32fns.c (Vw32_system_coding_system): Remove.
10990 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
10991
109922001-11-19 Stefan Monnier <monnier@cs.yale.edu>
10993
10994 * fileio.c (Fwrite_region): Move choose_write_coding_system to
10995 after build_annotations.
10996
10997 * syntax.c (describe_syntax): Add dummy arg.
10998 (describe_syntax_1): Update call to describe_vector.
10999
11000 * category.c (describe_category): Add dummy arg.
11001 (describe_category_1): Update call to describe_vector.
11002
11003 * keymap.c (Fdescribe_vector): Add `describer' parameter.
11004 (describe_command, describe_translation): Add dummy second param.
11005 (describe_map): Call elt_describer with two arguments.
11006 (describe_vector_princ): Add `fun' parameter.
11007 Call it instead of the hardcoded `princ'.
11008 (describe_vector): Add arg `args'.
11009 Pass it as a new second argument to elt_describer.
60a653f1 11010
048addec 11011 * keymap.h (describe_vector): Update prototype.
60a653f1 11012
048addec
JD
11013 * frame.c: Don't include keymap.h any more.
11014 (keys_of_frame): Remove.
60a653f1 11015
048addec 11016 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 11017
048addec 11018 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 11019
048addec 110202001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 11021
048addec
JD
11022 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
11023 if defined, 0 otherwise.
11024 (MAP_FAILED): Define if not defined and use it to test mmap failure.
11025 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 11026
048addec 110272001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 11028
048addec 11029 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 11030
048addec 110312001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 11032
048addec
JD
11033 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
11034 (x_draw_bar_cursor): If the background color of the glyph under
11035 the cursor equals the frame's cursor color, use the glyph's
11036 foreground color for drawing the bar cursor.
11037 (x_after_update_window_line): Clear internal border in different
11038 circumstances.
11039 (w32_set_vertical_scroll_bar): Check for width and height > 0.
11040 (w32_draw_relief_rect): Correct relief by 1 pixel.
11041 (x_set_glyph_string_background_width):
11042 Set extends_to_end_of_line_p if the row's fill_line_p is set and
11043 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
11044 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
11045 if cursor_in_non_selected_windows is false.
11046 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
11047 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
11048 Notice if cursor gets overwritten.
11049 (notice_overwritten_cursor): Renamed from
11050 note_overwritten_text_cursor. Rewritten to take glyph widths
11051 into account, and to take X positions as parameters.
11052 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
11053 around call to x_draw_glyphs.
11054 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
11055 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
11056 color to use for image glyph reliefs.
11057 (x_draw_image_relief): Accept zero tool_bar_button_relief.
11058 (glyph_rect): Remove unused variable `area'.
60a653f1 11059
048addec
JD
11060 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
11061 some items.
11062 (x_set_internal_border_width): Set frame garbaged when window
11063 doesn't exist yet.
11064 (Fx_create_frame): Accept zero tool_bar_button_relief.
11065 (x_clear_image_1, four_corners_best, image_background)
11066 (image_background_transparent): New functions.
11067 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
11068 (gs_format): Add `:background' entry.
11069 (lookup_image): Set IMG's background color if specified.
11070 (pbm_load, xbm_load_image, png_load): Set IMG's background field
11071 when appropriate.
11072 (x_clear_image_1): Reset `background_valid' and
11073 `background_transparent_valid' fields.
11074 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
11075 calculating it here. Set IMG's background_transparent field.
11076 (enum xpm_keyword_index): Add XPM_BACKGROUND.
11077 (enum png_keyword_index): Add PNG_BACKGROUND.
11078 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
11079 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
11080 (enum gif_keyword_index): Add GIF_BACKGROUND.
11081 (enum gs_keyword_index): Add GS_BACKGROUND.
11082 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
11083 Pre-calculate image background color where necessary.
11084 (x_create_x_image_and_pixmap, xbm_load, gs_load):
11085 Use display info's n_cbits entry for screen depth.
11086 (Fx_show_tip): Remove unused variables `buffer', `top',
11087 `left', `max_width' and `max_height'.
60a653f1 11088
048addec 11089 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 11090
048addec 110912001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 11092
048addec 11093 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 11094
048addec 110952001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11096
048addec 11097 * frame.c (Fframe_live_p): Doc fix.
60a653f1 11098
048addec 110992001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 11100
048addec
JD
11101 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
11102 (message_dolog_marker3): New static variables hold three markers.
11103 (syms_of_xdisp): Initialize and staticpro them.
11104 (message_dolog): Use message_dolog_marker1..3 instead of
11105 allocating markers each time. Unchain them when done.
60a653f1 11106
048addec 111072001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11108
048addec 11109 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 11110
048addec 111112001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 11112
048addec 11113 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 11114
048addec 111152001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11116
048addec 11117 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 11118
048addec 111192001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 11120
048addec 11121 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 11122
048addec 111232001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 11124
048addec
JD
11125 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
11126 with invalid position.
60a653f1 11127
048addec 111282001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 11129
048addec 11130 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 11131
048addec
JD
11132 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
11133 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
11134 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 11135
048addec 11136 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 11137
048addec 111382001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11139
048addec
JD
11140 * fileio.c (build_annotations): Split off the tail.
11141 (build_annotations_2): New fun. Extracted from build_annotations.
11142 (Fwrite_region): Split the call to build_annotations into two
11143 calls to build_annotations and build_annotations_2.
077907d4 11144
048addec 111452001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 11146
048addec
JD
11147 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
11148 clear_waiting_for_input with argument.
1756e2fb 11149
048addec 11150 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 11151
048addec 11152 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 11153
048addec 11154 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 11155
048addec 11156 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 11157
048addec 111582001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 11159
048addec
JD
11160 * fileio.c (choose_write_coding_system): New fun, extracted
11161 from Fwrite_region.
11162 (Fwrite_region): Use it.
fa336b91 11163
048addec
JD
11164 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
11165 (funcall_lambda, run_hook_with_args): Make static and add prototype.
11166 (ml_apply, find_handler_clause): Add prototype.
fa336b91 11167
048addec 111682001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 11169
048addec 11170 * config.in: Add #undef HAVE_COFF_H.
fa336b91 11171
048addec
JD
11172 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
11173 Required for ISC 4.1.
fa336b91 11174
048addec 111752001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 11176
048addec
JD
11177 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
11178 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 11179
048addec 111802001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 11181
048addec
JD
11182 The following changes are made to clean up the various internal
11183 references to the fringes to actually use the term `fringe' for
11184 them. Previously, they were called `flags areas', `bitmap areas',
11185 `left/right side of windows', or implicitly as `flags' or
11186 `bitmaps':
fa336b91 11187
048addec
JD
11188 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
11189 Comments fixed. Use renamed symbols.
06e8f738 11190
048addec 11191 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 11192
048addec
JD
11193 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
11194 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
11195 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 11196
048addec 11197 * msdos.c: Comment fix.
9ce647f4 11198
048addec 11199 * w32fns.c: Use renamed symbols.
9b784ab8 11200
048addec
JD
11201 * w32term.c: Comment fixes. Use renamed symbols.
11202 (fringe_bitmap_type): Renamed from bitmap_type.
11203 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11204 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
11205 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 11206
048addec
JD
11207 * w32term.h: Comment fixes. Use renamed symbols.
11208 (fringes_extra): Renamed from flags_areas_extra.
11209 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11210 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11211 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11212 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11213 (FRAME_X_LEFT_FRINGE_WIDTH):
11214 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11215 (FRAME_X_RIGHT_FRINGE_WIDTH):
11216 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 11217
048addec 11218 * widget.c: Use renamed symbols.
9f7e52b4 11219
048addec
JD
11220 * window.c: Comment fixes. Use renamed symbols.
11221 (coordinates-in-window-p): Doc fix.
fa336b91 11222
048addec 11223 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 11224
048addec 11225 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 11226
048addec 11227 * xfns.c: Use renamed symbols.
89512fcd 11228
048addec
JD
11229 * xterm.c: Comment fixes. Use renamed symbols.
11230 (fringe_bitmap_type): Renamed from bitmap_type.
11231 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11232 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
11233 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 11234
048addec
JD
11235 * xterm.h: Comment fixes. Use renamed symbols.
11236 (fringes_extra): Renamed from flags_areas_extra.
11237 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11238 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11239 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11240 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11241 (FRAME_X_LEFT_FRINGE_WIDTH):
11242 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11243 (FRAME_X_RIGHT_FRINGE_WIDTH):
11244 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
11245
112462001-11-15 Jason Rumney <jasonr@gnu.org>
11247
11248 * w32menu.c (add-menu-item): Make help_echo and radio buttons
11249 work for most menu items. From David Ponce
11250 <david.ponce@wanadoo.fr>.
11251
112522001-11-15 Gerd Moellmann <gerd@gnu.org>
11253
11254 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
11255 Some x_set_* function expect to be called even if old and new
11256 value are equal.
11257
11258 * xdisp.c (build_desired_tool_bar_string): Accept zero
11259 tool_bar_button_relief.
11260
11261 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
11262
11263 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
11264
11265 * xterm.c (x_draw_bar_cursor): If the background color of the
11266 glyph under the cursor equals the frame's cursor color, use
11267 the glyph's foreground color for drawing the bar cursor.
11268
11269 * dispnew.c (direct_output_forward_char): Fix character/byte
11270 position comparison.
7d18891d 11271
048addec 112722001-11-15 Miles Bader <miles@gnu.org>
d2936d21 11273
048addec
JD
11274 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
11275 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
11276 Update arguments to find_field.
11277 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
11278 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
11279 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
11280 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 11281
048addec 112822001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 11283
048addec 11284 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 11285
048addec
JD
11286 * dispextern.h (image_background, image_background_transparent):
11287 Conditionalize on HAVE_X_WINDOWS.
7d18891d 11288
048addec 112892001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 11290
048addec 11291 * print.c (Fprin1_to_string): Doc fix.
7d18891d 11292
048addec 11293 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 11294
048addec 11295 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 11296
048addec 11297 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 11298
048addec 11299 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 11300
048addec 11301 * eval.c (syms_of_eval): Doc fix.
7d18891d 11302
048addec 11303 * coding.c (syms_of_coding): Doc fix.
7d18891d 11304
048addec 11305 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 11306
048addec 11307 * dispnew.c (syms_of_display): Doc fix.
9474c847 11308
048addec 11309 * category.c (Fget_unused_category): Doc fix.
9474c847 11310
048addec 11311 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 11312
048addec 113132001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 11314
048addec 11315 * print.c (prin1, print): Doc fix.
e3059a5d 11316
048addec 113172001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 11318
048addec
JD
11319 * fontset.h: Remove declarations of variables
11320 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 11321
048addec
JD
11322 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
11323 `Vclip_large_size_font'.
eae936e2 11324
048addec 113252001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 11326
048addec 11327 * w32fns.c: Doc fix.
ddb67bdc 11328
048addec 113292001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 11330
048addec 11331 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 11332
048addec 11333 * fns.c: Doc fix.
6e1b91d7 11334
048addec 11335 * emacs.c: Doc fix.
1c1d3d69 11336
048addec 11337 * coding.c: Doc fix.
1c1d3d69 11338
048addec
JD
11339 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
11340 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
11341 `new style' [w/`doc:' keyword].
b6f4c7ba 11342
048addec 113432001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 11344
048addec
JD
11345 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
11346 LeaveNotify events. Only FocusIn and FocusOut do that now.
11347 (x_display_and_set_cursor): Do display hollow cursors in active
11348 minibuffer windows when they are not selected.
b6f4c7ba 11349
048addec 113502001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 11351
048addec
JD
11352 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
11353 * w32term.c: Change doc-string comments to `new style'.
11354 [w/`doc:' keyword]. Doc fixes.
a89f435d 11355
048addec
JD
11356 * w32fns.c: Don't define max.
11357 (Fx_open_connection): Only execute once.
a4cd0cd7 11358
048addec 113592001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 11360
048addec
JD
11361 * ccl.c: Change macros to use do-while block instead of if-else.
11362 Use braces to follow GNU Coding Standards.
eafb659a 11363
048addec 113642001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 11365
048addec 11366 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 11367
048addec 11368 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 11369
048addec
JD
11370 * insdel.c (replace_range): Use adjust_markers_for_replace
11371 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 11372
048addec 11373 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 11374
048addec
JD
11375 * textprop.c (set_text_properties_1): New subroutine
11376 broken out of set_text_properties.
11377 (set_text_properties): Use set_text_properties_1.
91823618 11378
048addec
JD
11379 * intervals.c (graft_intervals_into_buffer):
11380 Use set_text_properties_1 to clear out properties.
91823618 11381
048addec
JD
11382 * search.c (Freplace_match): Use replace_range to insert
11383 and delete. Don't request property inheritance from
11384 surrounding text.
86928dfb 11385
048addec 113862001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 11387
048addec
JD
11388 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
11389 vertical fonts. Allow them if face name is explicitly specified.
11390 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 11391
048addec 113922001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 11393
048addec
JD
11394 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
11395 instead of malloc/free.
a78e0303 11396
048addec 113972001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 11398
048addec
JD
11399 * xfaces.c (merge_face_vectors): Use braces to follow GNU
11400 Coding Standards.
11401 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 11402
048addec 11403 * buffer.c (Fbury_buffer): Likewise.
0c99b139 11404
048addec 11405 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 11406
048addec
JD
11407 * coding.c (encode_coding): Use precomputed value of `src'.
11408 (encode_coding): Remove unused variable `src_end'.
11409 (code_convert_region): Remove unused variables `count'.
830ddd77 11410
048addec 114112001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 11412
048addec
JD
11413 * w32term.c (x_display_and_set_cursor): Do not move system caret
11414 if cursor_glyph is NULL.
55c6d645 11415
048addec 114162001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 11417
048addec 11418 * keymap.c (access_keymap): Fix compilation error.
5de38842 11419
048addec 114202001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 11421
048addec 11422 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 11423
048addec 114242001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 11425
048addec
JD
11426 * intervals.c (graft_intervals_into_buffer):
11427 Remove #ifdef'd-out code.
11428 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 11429
048addec
JD
11430 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
11431 code (eval-current-buffer).
11432 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 11433
048addec 114342001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 11435
048addec 11436 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 11437
048addec 114382001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 11439
048addec 11440 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 11441
048addec
JD
11442 * keyboard.c (make_lispy_event): Check integerness and fix
11443 Lisp_Object/int mixup.
17893c65 11444
048addec 114452001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 11446
048addec 11447 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 11448
048addec
JD
11449 * fontset.c (fontset_font_pattern): Remove unused variable
11450 `family_registry'.
d5360cc7 11451
048addec 11452 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 11453
048addec 114542001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 11455
048addec 11456 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 11457
048addec
JD
11458 * buffer.c (Fkill_buffer): Don't delete auto save file
11459 if buffer is modified.
d9d54213 11460
048addec 114612001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 11462
048addec
JD
11463 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
11464 CHECK_NUMBER_CDR.
b116830b 11465
048addec 114662001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 11467
048addec 11468 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 11469
048addec 114702001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 11471
048addec 11472 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 11473
048addec 114742001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 11475
048addec 11476 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 11477
048addec 114782001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 11479
048addec
JD
11480 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
11481 the program image directly.
982f6c7e 11482
048addec 114832001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 11484
048addec 11485 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 11486
048addec 114872001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 11488
048addec
JD
11489 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
11490 and CHECK_BUFFER.
d31053f9 11491
048addec
JD
11492 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
11493 (record_char): Likewise.
d31053f9 11494
048addec
JD
11495 * keyboard.c (make_lispy_event): Don't insist a drag event must
11496 move to a different buffer position. Instead, check for moving at
11497 least double_click_fuzz.
982f6c7e 11498
048addec 11499 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 11500
048addec 11501 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 11502
048addec
JD
11503 * indent.c (current_column_1, Fmove_to_column): Separate the code
11504 for display-table glyphs from the code for buffer text, to fix
11505 bugs in the former.
830047fd 11506
048addec 115072001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 11508
048addec
JD
11509 * buffer.c (Fbuffer_local_value): New function.
11510 (syms_of_buffer): Defsubr it.
2df5238c 11511
048addec
JD
11512 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
11513 value of `cursor-in-non-selected-windows'.
4e397688 11514
048addec
JD
11515 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
11516 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
11517 (syms_of_xdisp): Initialize it.
48b0f3ae 11518
048addec 115192001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 11520
048addec 11521 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 11522
048addec
JD
11523 * coding.c: Change doc-string comments to `new style' [w/`doc:'
11524 keyword].
3ecaf7e5 11525
048addec
JD
11526 * eval.c (top_level_value, top_level_set): Remove commented and
11527 #ifdef'd-out code.
11528 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 11529
048addec 115302001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 11531
048addec 11532 * xfns.c: Include unistd.h, if it exists.
8db2e33b 11533
048addec 11534 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 11535
048addec 11536 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 11537
048addec 115382001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 11539
048addec
JD
11540 * lisp.h (CHECK_STRING_CAR): New macro.
11541 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
11542 treating XCAR and XCDR as lvalues.
11543 (openp): Use CHECK_STRING_CAR.
11544 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 11545
048addec 115462001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 11547
048addec
JD
11548 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
11549 (SIGMASKTYPE): Define.
1b1acc13 11550
048addec 11551 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 11552
048addec 115532001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 11554
048addec
JD
11555 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
11556 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
11557 Fix typos in comments.
6cb16f95 11558
048addec
JD
11559 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
11560 and #ifdef'd-out code.
11561 Fix and reindent comments.
6cb16f95 11562
048addec 11563 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 11564
048addec
JD
11565 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
11566 argument `i' in macros.
6cb16f95 11567
048addec
JD
11568 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
11569 `i' in macros.
7e9d3c2f 11570
048addec
JD
11571 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
11572 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
11573 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
11574 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
11575 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
11576 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
11577 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
11578 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
11579 in macros.
7e9d3c2f 11580
048addec
JD
11581 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
11582 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
11583 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
11584 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
11585 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
11586 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
11587 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
11588 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
11589 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
11590 (remove unused second argument).
7e9d3c2f 11591
048addec 115922001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 11593
048addec
JD
11594 * syntax.c (describe_syntax): New wrapper.
11595 (Finternal_describe_syntax_value): Rename from describe_syntax.
11596 Don't insert space at front and \n at the end.
11597 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 11598
048addec
JD
11599 * regex.c (re_wctype): Try to fix some warnings.
11600 (regcomp, regexec): Don't forget the __restrict.
9ba48103 11601
048addec 116022001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 11603
048addec 11604 * textprop.c (Fget_char_property): Doc fix.
9ba48103 11605
048addec 116062001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 11607
048addec 11608 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 11609
048addec 11610 * data.c (Fsetq_default): Ditto.
c22e59e1 11611
048addec 11612 * callint.c (Finteractive): Ditto.
9271ed2c 11613
048addec 116142001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 11615
048addec
JD
11616 * macros.c: Don't include keymap.h any more.
11617
116182001-11-01 Richard M. Stallman <rms@gnu.org>
11619
11620 * data.c (Fmake_local_variable): Doc fix.
11621
11622 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
11623 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 11624
048addec 11625 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
11626 bindings along with or instead of the buffer local map.
11627 Make the overriding maps override what they should.
11628
f00691a3 116292001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
11630
11631 * window.c (grow_mini_window): Fix typo in comment.
11632
27188d11
GM
116332001-11-01 Gerd Moellmann <gerd@gnu.org>
11634
7b49b9d2
GM
11635 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
11636 (XTset_vertical_scroll_bar): Likewise.
11637
43f7c3ea
GM
11638 * xfns.c (x_build_heuristic_mask): Use four_corners_best
11639 instead of IMAGE_BACKGROUND.
c22e59e1 11640
b350c2e5
GM
11641 * xfns.c (four_corners_best): Reindent.
11642
c22e59e1 11643 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
11644 Handle :box so that it is possible to specify sexprs.
11645
bf00d461
EZ
116462001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
11647
11648 * s/hpux11.h: New file.
11649
f00691a3 116502001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 11651
2b209b97
PJ
11652 * emacs.c (USAGE1): Show command line option --no-window-system
11653 instead of --no-windows in usage.
11654 (standard_args): Rename --no-windows to --no-window-system.
11655 (bug_reporting_address): Follow Emacs coding conventions.
11656
9dbc9081
PJ
11657 * eval.c (Fcommandp): Doc fix.
11658 Change doc-string comments to `new style' [w/`doc:' keyword].
11659
4e10df59
PJ
11660 * frame.c (Fframe_live_p): Doc fix.
11661
11662 * buffer.c (selective-display-ellipses): Doc fix.
11663
dd387b25
GM
116642001-10-31 Gerd Moellmann <gerd@gnu.org>
11665
fe957e65
GM
11666 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
11667
dd387b25
GM
11668 * xfaces.c (realize_x_face): If C is not a single-byte character,
11669 set the face's colors_copied_bitwise_p instead of the defaulted_p
11670 members which have a different meaning.
11671 (free_face_colors): Do nothing for a face whose colors have been
11672 copied bitwise.
11673
c22e59e1 11674 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 11675
f00691a3 116762001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 11677
687784e8
PJ
11678 * marker.c, mocklisp.c: Change doc-string comments to `new style'
11679 [w/`doc:' keyword].
2e1280f8 11680
b9d9a9b9
GM
116812001-10-31 Gerd Moellmann <gerd@gnu.org>
11682
11683 * fns.c (require_unwind): Return Lisp_Object.
11684
f00691a3 116852001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 11686
fa1361cb
PJ
11687 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
11688 (last-input-char): Revert doc-string to be the same as the
11689 doc-string of `last-input-event'.
11690
6c465a15 11691 * xdisp.c: Fix typos in comments.
48400103 11692
eafa3196
GM
116932001-10-31 Gerd Moellmann <gerd@gnu.org>
11694
11695 * window.c (grow_mini_window): Handle case that the root
11696 window is already smaller than the nominal mininum height.
11697
747d3f2a
SM
116982001-10-30 Stefan Monnier <monnier@cs.yale.edu>
11699
bf9bb76f
SM
11700 * emacs.c (main): Don't call keys_of_macros any more.
11701
11702 * lisp.h (keys_of_macros): Remove.
11703
11704 * macros.c (keys_of_macros): Remove.
11705
747d3f2a
SM
11706 * xfaces.c (Fface_attribute_relative_p): Declare args.
11707
5e905a57
JR
117082001-10-30 Jason Rumney <jasonr@gnu.org>
11709
11710 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
11711 (enum_font_cb2): Ignore fonts with vertical orientation.
11712
3a426197
RS
117132001-10-30 Richard M. Stallman <rms@gnu.org>
11714
11715 * keyboard.c (Finput_pending_p): Doc fix.
11716
a742d646
GM
117172001-10-30 Gerd Moellmann <gerd@gnu.org>
11718
259cf6bc
GM
11719 * xterm.c (x_after_update_window_line): Don't run the code
11720 clearing in borders for rows whose visible height is 0.
11721
3f99f948
GM
11722 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
11723 resized_p flag is set. If not set, use the much less flickering
11724 method previously used.
11725
11726 * dispnew.c (change_frame_size_1): Set frame's resized_p.
11727
11728 * frame.h (struct frame) <resized_p>: New member.
11729
b4a3be43
GM
11730 * lread.c (to_multibyte): Ensure read_buffer is at least twice
11731 as large as the number of bytes to convert.
747d3f2a 11732
a742d646
GM
11733 * lread.c (to_multibyte): New function.
11734 (read1): Use it.
11735
cacbb9e9
EZ
117362001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
11737
11738 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
11739
99cb6b2f
GM
117402001-10-30 Gerd Moellmann <gerd@gnu.org>
11741
327f42ee 11742 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
11743 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
11744 if the row's fill_line_p is set and drawing the last glyph with
11745 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 11746
99cb6b2f
GM
11747 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
11748
8e8223e2
SM
117492001-10-29 Stefan Monnier <monnier@cs.yale.edu>
11750
11751 * xmenu.c: Include coding.h and charset.h.
11752 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
11753 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
11754 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
11755 Explicitly set wv->help. Use `TRUE' rather than `True'.
11756 (menu_help_callback): Use empty_string.
11757
11758 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
11759 (Fx_popup_dialog): Explicitly init f.
11760 (w32_menu_display_help): Use empty_string.
11761
4d083a8f
RS
117622001-10-29 Richard M. Stallman <rms@gnu.org>
11763
b2304472
RS
11764 * fns.c (Frequire): Detect recursive try to require the same
11765 feature 3 or more levels deep, and get error.
11766 (require_unwind): New subroutine.
11767 (require_nesting_list): New variable.
11768 (syms_of_fns): Init and staticpro it.
11769
4d083a8f
RS
11770 * print.c (print_object): Clarify indication of insertion type.
11771
2fe41216
EZ
117722001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
11773
90480000
EZ
11774 * coding.c (syms_of_coding): Document that locale-coding-system is
11775 used for decoding input on X.
11776
2fe41216
EZ
11777 * window.c (Fscroll_left, Fscroll_right): Doc fix.
11778
f00691a3 117792001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
11780
11781 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
11782 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
11783
60ebcfe8
GM
117842001-10-29 Gerd Moellmann <gerd@gnu.org>
11785
9a7bdceb
GM
11786 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
11787 use NO_CURSOR if cursor_in_non_selected_windows is false.
11788
3f08fcd2
GM
11789 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
11790 the slant attribute if FRAME is t.
11791
0ccfdad2
GM
11792 * xfns.c (x_set_internal_border_width): Set frame garbaged
11793 when X window doesn't exist yet.
11794
ef253080
GM
11795 * xterm.c (x_after_update_window_line): Clear internal border
11796 in different circumstances.
b116830b 11797
60ebcfe8
GM
11798 * xterm.c (XTread_socket) <KeyPress>: Don't use
11799 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
11800 <handa@etl.go.jp>.
11801
73d25f9c
EZ
118022001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
11803
11804 * m/ibms390.h: New file. From Adam Thornton
11805 <athornton@sinenomine.net>.
11806
cac1daf0
GM
118072001-10-28 Gerd Moellmann <gerd@gnu.org>
11808
053b3256 11809 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 11810
cac1daf0
GM
11811 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
11812 a loop counter.
11813
f00691a3 118142001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 11815
186486eb
PJ
11816 * emacs.c: Use argv[0] instead of emacs when -t was specified.
11817
4707d2d0
PJ
11818 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
11819 keyword].
11820 Fix typos in comments.
b116830b 11821
d883731c
PJ
11822 * emacs.c (bug_reporting_address): New function.
11823 Use it when displaying usage message.
11824
04012254
PJ
11825 * minibuf.c (read_minibuf): Remove unused external declaration of
11826 variable `Qread_only'.
11827
13b1a09c
PJ
11828 * keymap.c (access_keymap): Remove unused variable `charset'.
11829
5bbf4378
MB
118302001-10-28 Miles Bader <miles@gnu.org>
11831
11832 * xfaces.c (merge_face_heights): Handle TO being relative as well.
11833 Remove #ifdef'd-out code.
11834 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
11835 (syms_of_xfaces): Initialize them.
11836
1ce1e4ee
JR
118372001-10-27 Jason Rumney <jasonr@gnu.org>
11838
11839 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
11840 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
11841 position using the system caret.
11842
11843 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
11844 (w32_system_caret_height, w32_system_caret_x)
11845 (w32_system_caret_y): New variables for tracking system caret.
11846 (w32_initialize): Initialize them.
c2d53558 11847 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 11848
c2d53558
SM
11849 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
11850 New messages types.
1ce1e4ee
JR
11851
11852 * w32term.c (note_mouse_highlight): Clear old help_echo.
11853
f00691a3 118542001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 11855
bb4600a4
PJ
11856 * xterm.c: Fix typo in a comment.
11857
7db35a48
PJ
11858 * emacs.c: Fix typos in comments.
11859 Remove unnecessary spaces.
11860 Change doc-string comments to `new style' [w/`doc:' keyword].
11861 (USAGE2): Fix typos in usage string.
11862
a7248e4f
PJ
11863 * xterm.c: Fix typo in a comment.
11864
4e30ce42
PJ
11865 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
11866 emacs.c.
11867
62725a92
GM
118682001-10-27 Gerd Moellmann <gerd@gnu.org>
11869
798dbe1f 11870 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 11871 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
11872 farther backward when target_y was not reached.
11873
62725a92
GM
11874 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
11875 Display errno only if non-zero.
11876 (sound_warning): New function.
11877 (vox_configure): Don't treat failing to set sample rate as error.
11878 (various places): Improve error messages.
11879
d4e34d24
EZ
118802001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
11881
944e6f60
EZ
11882 * fileio.c (Faccess_file): Run the argument filename through
11883 Fexpand_file_name, before using it.
11884
d4e34d24
EZ
11885 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
11886 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
11887
38d2af0c
GM
118882001-10-26 Gerd Moellmann <gerd@gnu.org>
11889
da80a8d5
GM
11890 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
11891
38d2af0c
GM
11892 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
11893 Fix clearing in the case of scroll bars on the right.
c2d53558 11894
45de4a6f 118952001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
11896
11897 * w32gui.h (XImage): Add a dummy typedef.
11898
fbd5ceb2
GM
118992001-10-26 Gerd Moellmann <gerd@gnu.org>
11900
c2d53558 11901 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 11902
b23236fb
EZ
119032001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
11904
11905 * frame.c (Fframe_parameter): Fix last change.
11906
5d991fc4
EZ
11907 * fileio.c: Revert last change (which removed old commented-out
11908 version of expand-file-name). Add a comment that explains why
11909 this old version should not be removed.
11910
879eadc3
GM
119112001-10-25 Gerd Moellmann <gerd@gnu.org>
11912
75700ff2
GM
11913 * frame.c (Fframe_parameter): Fix a bug whereby some
11914 ``artificial'' frame parameters, like `minibuffer' were not
11915 obtained by calling Fframe_parameters.
11916
dfe92a6a
GM
11917 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
11918 cursor differently.
11919
879eadc3
GM
11920 * xdisp.c (move_it_vertically_backward): Compute line height
11921 differently. Add heuristic to try to be more compatible to 20.x.
11922
e1010ebe
SM
119232001-10-25 Stefan Monnier <monnier@cs.yale.edu>
11924
d73a471b
SM
11925 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
11926
d6da5a06
GM
11927 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
11928 boolean.
e1010ebe 11929
f66bd220
MB
119302001-10-25 Miles Bader <miles@gnu.org>
11931
11932 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
11933 BG is a pointer to a structure, not a structure.
11934 (gif_format, png_format): Add missing commas.
11935
d436d538
RS
119362001-10-24 Richard M. Stallman <rms@gnu.org>
11937
11938 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 11939 (syms_of_xfaces): Defsubr it.
d436d538 11940
f00691a3 119412001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
11942
11943 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
11944 variable `area'.
11945
f00691a3 119462001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 11947
c2d53558 11948 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 11949
e2a57b34
MB
119502001-10-25 Miles Bader <miles@gnu.org>
11951
11952 * dispextern.h (struct image): Add `background',
11953 `background_valid', and `background_transparent' fields.
11954 (image_background, image_background_transparent): New declarations.
11955 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
11956 * xfns.c (image_background, image_background_transparent)
11957 (four_corners_best): New functions.
c2d53558 11958 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
11959 (gs_format): Add `:background' entry.
11960 (lookup_image): Set IMG's background color if specified.
11961 (pbm_load, xbm_load_image, png_load): Set IMG's background field
11962 when appropriate.
11963 (x_clear_image_1): Reset `background_valid' and
11964 `background_transparent_valid' fields.
11965 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
11966 calculating it here. Set IMG's background_transparent field.
11967 (enum xpm_keyword_index): Add XPM_BACKGROUND.
11968 (enum png_keyword_index): Add PNG_BACKGROUND.
11969 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
11970 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
11971 (enum gif_keyword_index): Add GIF_BACKGROUND.
11972 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 11973 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
11974 Pre-calculate image background color where necessary.
11975 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
11976 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
11977 color to use for image glyph reliefs.
11978
b547b6e8
GM
119792001-10-24 Gerd Moellmann <gerd@gnu.org>
11980
d9e3b8c6
GM
11981 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
11982 in full-width rows.
c2d53558 11983
b547b6e8
GM
11984 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
11985 Fix clearing of area not covered by scroll bar.
11986
f00691a3 119872001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
11988
11989 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
11990 and `real_start'.
c2d53558 11991 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
11992 (glyph_rect): Remove unused variable `area'.
11993
76cb5e06
GM
119942001-10-24 Gerd Moellmann <gerd@gnu.org>
11995
bdbdebff 11996 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
11997
11998 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
11999 (row_containing_pos): Take additional argument DY.
12000 Treat rows ending in middle of char differently.
62e33982
GM
12001 (display_line): Handle tabs on window systems differently.
12002
12003 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
12004 with additional argument.
12005
12006 * dispextern.h (row_containing_pos): Adjust prototype.
12007
76cb5e06
GM
12008 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
12009 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
12010 (try_window_id, try_window_reusing_current_matrix)
12011 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 12012 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 12013
f00691a3 120142001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 12015
c9e60620
PJ
12016 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
12017 gnuemacs).
12018 (HAVE_BOXES): Fix typo in comment.
12019 (push_menu_pane): Fix typo in comment.
12020
3b552d56
PJ
12021 * xdisp.c: (display_prop_string_p): Remove unused local declaration
12022 of `Qwhen'.
12023 (single_display_prop_string_p): Remove unused local declarations
12024 of `Qwhen' and `Qmargin'.
12025 (string_buffer_position): Remove unused variable `around'.
12026 (store_frame_title): Remove unused variable `width'.
12027
15c565ac
PJ
12028 * window.c: Don't define max.
12029 (coordinates_in_window): Remove unused variable `uy'.
12030
a8818eb9
PJ
12031 * widget.c: Don't define max.
12032
996fee11
PJ
12033 * process.c: Don't define max.
12034 (create_process): Remove unused variable `buffer'.
12035
496e1a5b
GM
120362001-10-23 Gerd Moellmann <gerd@gnu.org>
12037
c2d53558 12038 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 12039
5905ae8b
EZ
120402001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
12041
12042 * xfaces.c (Finternal_set_lisp_face_attribute)
12043 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
12044 frame is on a windowed display.
12045
24db49fb
GM
120462001-10-23 Gerd Moellmann <gerd@gnu.org>
12047
c2d53558
SM
12048 * dispnew.c (sync_window_with_frame_matrix_rows):
12049 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
12050 of marginal areas.
12051
c2d53558 12052 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 12053
f0487f05
EZ
120542001-10-23 Andreas Schwab <schwab@suse.de>
12055
12056 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
12057 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
12058
f0a48a01
GM
120592001-10-23 Gerd Moellmann <gerd@gnu.org>
12060
c2d53558 12061 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
12062 REAL_END. Notice if cursor gets overwritten.
12063 (notice_overwritten_cursor): Take X positions as parameters.
12064 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
12065 around call to x_draw_glyphs.
12066
f00691a3 120672001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 12068
fc11dff0
PJ
12069 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
12070 instead of C) and usage.
a50a10a0 12071
fc11dff0
PJ
12072 * editfns.c (char-to-string): Fix argument names (use CHAR instead
12073 of C) and usage.
a50a10a0
PJ
12074
12075 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
12076 `left', `max_width' and `max_height'.
12077
8738febd
GM
120782001-10-23 Gerd Moellmann <gerd@gnu.org>
12079
12080 * xdisp.c (display_line): For a tab continued to the next line,
12081 set row's ends_in_middle_of_char_p.
12082
653c329b
GM
120832001-10-22 Gerd Moellmann <gerd@gnu.org>
12084
12085 * xdisp.c (display_line): Fix computation of continuation lines
12086 width for TABs.
12087
f00691a3 120882001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 12089
7ba51063
PJ
12090 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
12091 `Qlaplace'.
12092
f958c5ac
PJ
12093 * fileio.c: Remove unused code.
12094
eb360291
MB
120952001-10-22 Miles Bader <miles@gnu.org>
12096
12097 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
12098 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
12099 Remove `DOC_STRINGS_IN_COMMENTS' cases.
12100
98515cf0
JR
121012001-10-21 Jason Rumney <jasonr@gnu.org>
12102
12103 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
12104
93026d88
EZ
121052001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
12106
12107 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
12108 (Finsert_string): Avoid the multi-line string literals warning.
12109
c9a95b79
MB
121102001-10-22 Miles Bader <miles@gnu.org>
12111
12112 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
12113 (Fdocumentation): Don't use it.
12114 (syms_of_doc): Don't initialize it.
12115
12116 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
12117 * print.c (Fwith_output_to_temp_buffer): Likewise.
12118 * window.c (Fsave_window_excursion): Likewise.
c2d53558 12119 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 12120 (Fsave_restriction): Likewise.
c2d53558
SM
12121 * eval.c (Frun_hooks, Frun_hook_with_args)
12122 (Frun_hook_with_args_until_failure)
12123 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
12124 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
12125 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
12126 (Funwind_protect, Fcondition_case): Likewise.
12127 * coding.c (Ffind_operation_coding_system): Likewise.
12128 * keyboard.c (Ftrack_mouse): Likewise.
12129
a3b10252
MB
121302001-10-21 Miles Bader <miles@gnu.org>
12131
c2d53558 12132 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
12133 (Fmake_hash_table): Add usage: string to doc string.
12134 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 12135 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
12136 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
12137 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
12138 (Fml_prefix_argument_loop): Likewise.
12139
f00691a3 121402001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 12141
c2d53558 12142 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 12143
c6f73eec
PJ
12144 * sysdep.c (init_sys_modes): Change doc-string comments to `new
12145 style' [w/`doc:' keyword].
12146
12147 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
12148 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
12149 comments to `new style' [w/`doc:' keyword].
12150
3cf3436e
JR
121512001-10-21 Jason Rumney <jasonr@gnu.org>
12152
12153 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
12154
c169b8f1
JR
12155 * w32term.c (remember_mouse_glyph): New function.
12156 (w32_mouse_position): Use it.
12157 (note_mouse_movement): If the mouse moved off the glyph, remember
12158 its new position.
c2d53558 12159
4fdd691b
JR
12160 * w32term.h (struct w32_output): Correct spelling of x_compatible.
12161 (w32_display_info): Add mouse_face_overlay.
12162
c169b8f1
JR
12163 * w32term.c (notice_overwritten_cursor): Renamed from
12164 note_overwritten_text_cursor. Rewritten to take glyph widths into
12165 account.
12166 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
12167 (fast_find_string_pos): New function.
12168 (fast_find_position): Return the correct vpos. Add parameter
12169 STOP. In the final row, stop before glyphs having STOP as object.
12170 Don't consider glyphs that are not from a buffer.
12171 (fast_find_position) [0]: Add a presumably more correct version
12172 for after 21.1.
12173 (expose_window_tree, expose_frame): Don't compute intersections here.
12174 (expose_window): Do it here instead.
12175 (expose_window_tree, expose_window, expose_line): Return 1 when
12176 overwriting mouse-face.
12177 (expose_window): If W is the window currently being updated, mark
12178 the frame garbaged.
12179 (expose_frame): If mouse-face was overwritten, redo it.
12180 (x_use_underline_position_properties): New variable.
12181 (syms_of_xterm): DEFVAR_BOOL it.
12182 (x_draw_glyph_string): Add comment to use it in future.
12183 (x_draw_glyph_string): Restore clipping after drawing box.
12184 Fix a computation of the underline position.
12185 (w32_get_glyph_string_clip_rect): Minor cleanup.
12186 (x_fill_stretch_glyph_string): Remove an assertion.
12187 (x_produce_glyphs): Don't convert multibyte characters
12188 to unibyte characters in unibyte buffers.
12189 (cursor_in_mouse_face_p): New function.
12190 (x_draw_stretch_glyph_string): Use it to choose a different GC
12191 when drawing a cursor within highlighted text. Don't draw
12192 background again if it has already been drawn.
12193 (x_draw_glyph_string_box): Don't draw a full-width
12194 box just because the glyph row's full_width_p flag is set.
12195 (x_draw_glyphs): Fix computation of rightmost x for
12196 full-width rows.
12197 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
12198 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
12199 change bottom shadow accordingly. Some cleanup.
12200 (x_update_window_end): Handle overwritten mouse face
12201 also for tool bar windows.
12202 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
12203 DRAW is DRAW_IMAGE_RAISED.
12204 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
12205 actually redrawn. Make the function static.
12206 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
12207 optimize away highlighting if we pass over that same overlay again.
12208 (note_mouse_highlight): Call mouse_face_overlay_overlaps
12209 to detect a case where we have to highlight a different region
12210 despite not having left the currently highlighted region.
12211 Set mouse_face_overlay in the x_display_info. Avoid changing the
12212 mouse pointer shape when show_mouse_face has already done it, or
12213 there is no need. Handle mouse-face and help-echo in strings.
12214 (glyph_rect): New function.
12215 (w32_mouse_position): Use it to raise the threshold for mouse
12216 movement event generation.
12217 (w32_initialize_display_info): Initialize the x_display_info's
12218 mouse_face_overlay.
12219 (w32_set_vertical_scroll_bar): Don't clear a zero height
12220 or width area.
12221 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
12222 a widget to zero height.
12223
3cf3436e 12224 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 12225 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
12226 equivalents in menu_items.
12227 (w32_menu_show): Don't overwrite an item's name with its key
12228 description in case the description is a multibyte string.
12229 (single_submenu): Some cleanup.
12230
12231 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
12232 (postprocess_image): New function.
12233 (lookup_image): Call it for all image types except PostScript.
12234 (x_kill_gs_process): Call postprocess_image.
12235 (tiff_error_handler, tiff_warning_handler): New functions.
12236 (tiff_load): Install them as handlers.
12237 (x_kill_gs_process): Recognize if someone has cleared the image
12238 cache under us.
12239 (valid_image_p): Protect better against invalid image
12240 specifications. Previous code could signal an error.
12241 (Fx_hide_tip, Fshow_tip): Doc fix.
12242 (Fv_max_tooltip_size): New variable.
12243 (syns_of_xfns): DEFVAR_LISP it.
12244 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
12245 window buffer to *tip* right after creating the frame. Set frame's
12246 window_width. Use a maximum tooltip size specified by
12247 Vx_max_tooltip_size, if that has valid contents.
12248 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
12249 Make sure the tooltip is completely visible.
12250 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
12251 (Fx_create_frame): Adjust the frame's height for presence
12252 of the tool bar before calling x_figure_window_size.
12253 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
12254 when the window gets smaller.
12255 (x_set_foreground_color): Set frame's cursor_pixel.
12256 (x_set_foreground_color, x_set_background_color): Cleaned up.
12257 (x_set_font): Handle case of x_new_fontset returning the same name
12258 as before, although there was a change in fontsets.
12259
386ca361
MB
122602001-10-21 Miles Bader <miles@gnu.org>
12261
c2d53558 12262 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
12263 (Flogxor): Add usage: string to doc string.
12264 * charset.c (Fstring): Likewise.
12265 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
12266 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
12267
f00691a3 122682001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 12269
03be2694
PJ
12270 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
12271
12272 * alloc.c: Reindent DEFUNs with doc: keywords.
12273
12274 * abbrev.c (Finsert_abbrev_table_description): Reindent.
12275
14ff1ee0
PJ
12276 * frame.c: Change doc-string comments to `new style' [w/`doc:'
12277 keyword].
12278
2f147815 12279See ChangeLog.9 for earlier changes.
6922b018
KH
12280
12281;; Local Variables:
49b3bd82 12282;; coding: iso-2022-7bit
6922b018 12283;; End:
2a34a036 12284
2f147815 12285 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
12286 Copying and distribution of this file, with or without modification,
12287 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
12288
12289;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4