(struct draw_fringe_bitmap_params): Change member
[bpt/emacs.git] / src / ChangeLog
CommitLineData
12fde2dc
KS
12004-02-14 Kim F. Storm <storm@cua.dk>
2
3 * dispextern.h (struct draw_fringe_bitmap_params): Change member
4 bits from char to short to facilitate wider bitmaps.
5 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
6 member.
7
8 * fringe.c (struct fringe_bitmap): Change member bits from char to
9 short to facilitate 16 bits wide bitmaps. Modify all standard
10 bitmaps accordingly.
11 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
12 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
13 (draw_fringe_bitmap): Ditto.
14 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
15 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
16 handle up to 16 bits wide bitmaps.
17 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
18
19 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
20 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
21 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
22
23 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
24 so it is no longer necessary to expand them here.
25
26 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
27
9d7271e8
KS
282004-02-12 Kim F. Storm <storm@cua.dk>
29
30 * window.c (Fwindow_fringes): Doc fix.
31
706c1e4f
JD
322004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
33
34 * xselect.c (x_get_foreign_selection): Add new optional parameter
35 time_stamp.
36 (Fx_get_selection_internal): Ditto, pass time_stamp to
37 x_get_foreign_selection.
38
39 * data.c (Fbyteorder): New function.
40
c2d12b5d
JD
412004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
42
43 * atimer.c: Move include stdio.h to same place as in other files.
44
45 * region-cache.c: Ditto.
46
47 * sysdep.c: Ditto.
48
49 * xfaces.c: Ditto.
50
4c1947b9
SS
512004-02-09 Sam Steingold <sds@gnu.org>
52
53 * w32term.c (w32_draw_fringe_bitmap): Fixed a typo in the last patch.
54
82722af3
KS
552004-02-09 Kim F. Storm <storm@cua.dk>
56
57 * fringe.c: New file. Move original fringe related declarations
58 and code from dispextern.h and xdisp.c here.
59 Rework code to support user defined fringe bitmaps, redefining
60 standard bitmaps, ability to overlay user defined bitmap with
61 overlay arrow bitmap, and add faces to bitmaps.
62 (Voverflow_newline_into_fringe): Declare here.
63 (enum fringe_bitmap_align): New enum.
64 (..._bits): All bitmaps are now defined without bitswapping; that
65 is now done in init_fringe_once (if necessary).
66 (standard_bitmaps): New array with specifications for the
67 standard fringe bitmaps.
68 (fringe_faces): New array.
69 (valid_fringe_bitmap_id_p): New function.
70 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
71 (draw_fringe_bitmap): New function which draws fringe bitmap,
72 possibly overlaying bitmap with cursor in right fringe or the
73 overlay arrow in the left fringe.
74 (update_window_fringes): Do not handle overlay arrow here.
75 Compare and copy fringe bitmap faces.
76 (init_fringe_bitmap): New function.
77 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
78 define and destroy user defined fringe bitmaps.
79 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
80 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
81 (syms_of_fringe): New function. Defsubr new DEFUNs.
82 DEFVAR_LISP Voverflow_newline_into_fringe.
83 (init_fringe_once, init_fringe): New functions.
84 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 85
82722af3
KS
86 * Makefile.in (obj): Add fringe.o.
87 (fringe.o): New dependencies.
88
89 * dispextern.h (FRINGE_ID_BITS): New definition for number of
90 bits allocated to hold a fringe number. Increase number of bits
91 from 4 to 8 to allow user defined fringe bitmaps.
92 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
93 left_user_fringe_face_id, right_user_fringe_bitmap,
94 right_user_fringe_face_id.
95 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
96 Move to new file fringe.c.
97 (MAX_FRINGE_BITMAPS): Define here.
98 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
99 and overlay_p. Change member which to int.
100 (struct redisplay_interface): New members define_fringe_bitmap
101 and destroy_fringe_bitmap.
102 (valid_fringe_bitmap_id_p): Add prototype.
103 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
104
105 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
106 arrows.
107 (update_frame): Do flush_display if force_flush_display_p to
108 ensure display (specifically fringes) are updated in a timely
109 manner when resizing the frame by dragging the mouse.
110 (update_window_line): Update row if overlay arrow changed.
111 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
112 or overlay arrow changed.
113
114 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
115 syms_of_fringe, and init_fringe.
116
117 * frame.h (struct frame): New member force_flush_display_p.
118
119 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
120 Add prototypes.
121
a3993cc8
KS
122 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
123 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
124 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
125 Use cursor color for displaying cursor in fringe.
82722af3
KS
126 (x_redisplay_interface): Add null handlers for
127 define_fringe_bitmap and destroy_fringe_bitmap functions.
128
129 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
130 xterm.c to handle overlayed fringe bitmaps and to use cursor color
131 for displaying cursor in fringe.
132 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
133 specific functions to define and destroy fringe bitmaps in fringe_bmp.
134 (w32_redisplay_interface): Add them to redisplay_interface.
135 (w32_term_init): Call w32_init_fringe instead of explicitly
136 defining fringe bitmaps in fringe_bmp array.
137 (x_delete_display): Call w32_reset_fringes instead of explicitly
138 destroying fringe bitmaps in fringe_bmp array.
139
140 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
141 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
142 (continued_bits, continuation_bits, ov_bits, first_line_bits)
143 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
144 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
145 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
146 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
147 Move fringe handling vars and code to new file fringe.c.
148 (handle_display_prop): Handle left-fringe and right-fringe
149 display properties; store user fringe bitmaps in iterator.
150 (move_it_in_display_line_to): Handle cursor in fringe at eob.
151 (clear_garbaged_frames): Set force_flush_display_p if resized.
152 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
153 (display_line): Handle cursor in fringe at eob.
154 (display_line): Set row user fringe bitmaps from iterator.
155
156 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
157 Use cursor color for displaying cursor in fringe.
158 (x_redisplay_interface): Add null handlers for
159 define_fringe_bitmap and destroy_fringe_bitmap functions.
160
030400eb
JD
1612004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
162
163 * macfns.c (Fx_change_window_property): Make doc string and
164 parameters same as for X version.
165
166 * w32fns.c (Fx_change_window_property): Ditto.
167
3af55251
KS
1682004-02-07 Kim F. Storm <storm@cua.dk>
169
ec110e9e
KS
170 * xdisp.c (hscroll_window_tree): Position cursor near to right
171 margin in hscrolled window when jumping to end of line (rather
172 than centering cursor).
173
3af55251
KS
174 * process.c (wait_reading_process_input): Don't do adaptive read
175 buffering if waiting for a specific process.
176
b0c138ce
LT
1772004-02-05 Luc Teirlinck <teirllm@auburn.edu>
178
179 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
180 (Fread_minibuffer, Feval_minibuffer)
181 (Fread_string, Fread_no_blanks_input)
182 (Fcompleting_read): Doc fixes.
183 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
184 completion-regexp-list. Define Qcase_fold_search and staticpro it.
185 (read_minibuf): Fix initial comment.
186 (Ftry_completion, Fall_completions, Ftest_completion): Bind
187 case-fold-serach to the value of completion-ignore-case when
188 checking completion-regexp-list.
189 (Fdisplay_completion_list): Make it handle arguments that are
190 symbols. Doc fix.
191
9676f5ad 1922004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 193
9676f5ad 194 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 195
9676f5ad
JD
196 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
197 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 198 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 199 format. Remove unused variable cons.
5b698285
JD
200
201 * xselect.c: Include stdio,h.
202
fc1d15f6
KH
2032004-02-05 Kenichi Handa <handa@m17n.org>
204
ebaff4af
KH
205 * fns.c (Fset_char_table_range): Fix previous change.
206
fc1d15f6
KH
207 * buffer.c (Fset_buffer_multibyte): Fix docstring.
208
9676f5ad
JD
2092004-02-04 Luc Teirlinck <teirllm@auburn.edu>
210
211 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
212
da75761f
SM
2132004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
214
215 * keymap.c (Vmouse_events): Rename from Vmenu_events.
216 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
217
13c5d120
KH
2182004-02-04 Kenichi Handa <handa@m17n.org>
219
220 * fns.c (Fset_char_table_range): Handle charsets ascii,
221 eight-bit-control, and eight-bit-graphic correctly.
222
2883d842
JR
2232004-02-03 Jason Rumney <jasonr@gnu.org>
224
225 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
226
227 * w32fns.c (x_to_w32_font): Likewise.
228
69eff41f
JD
2292004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
230
231 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
232 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
233
234 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
235 ClientMessages.
236
237 * xselect.c: Include termhooks.h and X11/Xproto.h
238 (x_check_property_data, x_fill_property_data)
239 (x_property_data_to_lisp, mouse_position_for_drop)
240 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 241 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
242 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
243
da75761f 244 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
245 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
246 OUTER_P.
247 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
248 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
249 if vector_ret_p is true.
250 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 251
dcdbbb5d
EZ
2522004-02-02 Eli Zaretskii <eliz@elta.co.il>
253
254 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
255 basename of FILE relative to it, not FILE itself.
256
09721b31
KH
2572004-02-02 Kenichi Handa <handa@m17n.org>
258
259 * coding.c (coding_restore_composition): Check invalid
260 composition data more rigidly.
261
eb996101
LT
2622004-01-30 Luc Teirlinck <teirllm@auburn.edu>
263
264 * fileio.c (Fread_file_name_internal): Correctly handle the case
265 where insert-default-directory is nil.
266 (Fread_file_name): Always return an empty string if the user exits
267 with an empty minibuffer. Adapt the docstring accordingly.
268 (syms_of_fileio): Adapt the docstring of insert-default-directory
269 to the change in Fread_file_name.
270
a0367d42
EZ
2712004-01-29 Eli Zaretskii <eliz@elta.co.il>
272
273 * alloca.c [!alloca]: Fix the prototype for xfree.
274
13f52ed8
KH
2752004-01-29 Kenichi Handa <handa@m17n.org>
276
277 * fns.c (string_char_to_byte): Optimize for ASCII only string.
278 (string_byte_to_char): Likewise.
279
d57625a0
JR
2802004-01-28 Peter Runestig <peter@runestig.com>
281
282 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
283
911c78b4
ST
2842004-01-27 Steven Tamm <steventamm@mac.com>
285
286 * unexmacosx.c (unexec_copy): Do not copy more than was
287 requested to prevent overwriting during unexec.
288
eb37b8fd
JD
2892004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
290
ce38070a
JD
291 * process.c (sigchld_handler): Add comment about not calling malloc.
292
eb37b8fd
JD
293 * process.h: Add extern to synch_process_termsig.
294
21a3e657
ST
2952004-01-27 Steven Tamm <steventamm@mac.com>
296
da75761f
SM
297 * macterm.c (make_mac_frame, make_mac_terminal_frame):
298 Move setting of scroll bars from make_mac_frame to
299 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 300
d62a265d
RS
3012004-01-26 Richard M. Stallman <rms@gnu.org>
302
303 * search.c (Freplace_match): Handle nonexistent
304 back-references properly.
305
3062004-01-03 Richard M. Stallman <rms@gnu.org>
307
308 * window.c (decode_any_window): New function.
309 (Fwindow_height, Fwindow_width, Fwindow_edges)
310 (Fwindow_pixel_edges, Fwindow_inside_edges)
311 (Fwindow_inside_pixel_edges): Use decode_any_window.
312
ff236419
JD
3132004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
314
315 * process.h: synch_process_termsig new variable.
316
317 * callproc.c: Define synch_process_termsig.
318 (Fcall_process): Initiate synch_process_termsig to zero and
319 check if non-zero and get signal name after subprocess has ended.
320
321 * process.c (sigchld_handler): Set synch_process_termsig
322 if terminated by a signal. synch_process_death setting removed.
323
324 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
325
41b867ea
AS
3262004-01-26 Andreas Schwab <schwab@suse.de>
327
328 * print.c (print_preprocess): Declare size as EMACS_INT to not
329 lose bits.
330 (print_object): Likewise.
331 * alloc.c (Fpurecopy): Likewise.
332
a08084ff
LT
3332004-01-25 Luc Teirlinck <teirllm@auburn.edu>
334
335 * window.c (Fwindow_minibuffer_p): Doc fix.
336
b19ac475
JY
3372004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
338
339 * editfns.c (Fformat): Make both passes accept the same set of flags.
340
fe905025
KH
3412004-01-23 Kenichi Handa <handa@m17n.org>
342
343 * fns.c (Fmd5): If OBJECT is a buffer different from the current
344 one, set buffer to OBJECT temporarily.
345
438fc6c0
SM
3462004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
347
455316e2
SM
348 * keyboard.c (kbd_buffer_gcpro): Remove.
349 (kbd_buffer_store_event, clear_event, Fdiscard_input)
350 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
351 Don't initialize and/or maintain the variable any more. It was made
352 redundant by my commit of 2003-06-15.
353
438fc6c0
SM
354 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
355
5335a4ee
JD
3562004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
357
358 * lisp.h: Add undef DECL_ALIGN.
359
dcdaeebc
SM
3602004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
361
362 * process.c (wait_reading_process_input) [SYNC_INPUT]:
363 Check interrupt_input_pending explicitly.
364
365 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
366
367 * keyboard.c (handle_async_input): New fun,
368 extracted from input_available_signal.
369 (input_available_signal, reinvoke_input_signal): Use it.
370
9076a823
SM
3712004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
372
d7107586
SM
373 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
374
375 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
376 manipulation macros for when tags are in the lower bits.
377 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
378 (DECL_ALIGN): New macro.
379 (DEFUN): Use it.
380
381 * lisp.h [ENABLE_CHECKING]: Don't force union type.
382
383 * s/darwin.h (__attribute__): Remove outdated workaround.
384
385 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
386
387 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
388 Don't check range of malloc address.
389 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
390
9076a823
SM
391 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
392
393 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
394
ba029065
KH
3952004-01-19 Kenichi Handa <handa@m17n.org>
396
397 * fontset.c (fontset_font_pattern): Fix previous change.
398
7af0e8d7
MB
3992004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
400
401 * xdisp.c (Voverflow_newline_into_fringe)
402 (move_it_in_display_line_to, redisplay_internal)
403 (update_window_fringes, redisplay_window, display_line, window):
404 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
405 that it compiles without a window-system.
406 * dispnew.c (direct_output_for_insert, update_window): Likewise.
407
77a9cf69
KS
4082004-01-16 Kim F. Storm <storm@cua.dk>
409
410 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
411
412 * buffer.c (init_buffer_once): Set buffer_defaults and
413 buffer_local_flags for indicate_buffer_boundaries.
414 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
415 default- variable for it.
416
417 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
418 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 419 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
420 overflowing newlines into right fringe.
421 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
422 and indicate_bottom_line_p for buffer boundaries and scrolling.
423 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
424 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
425 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
426 and HOLLOW_SQUARE_BITMAP.
427 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
428 Add prototypes.
429
430 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
431 instead of related indicator fields.
432 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
433 (direct_output_for_insert): Handle exact width lines like
434 contined lines. Call update_window_fringes.
435 (update_window): Call update_window_fringes.
436 (scrolling_window): Don't skip desired rows with changed bitmaps.
437 Check if fringe bitmaps changes when assigning scrolled rows.
438
439 * xdisp.c (Voverflow_newline_into_fringe): New variable.
440 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
441 (move_it_in_display_line_to): Overflow newline into fringe for
442 rows that are exactly as wide as the window.
443 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
444 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
445 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
446 (fringe_bitmaps): Add new bitmaps.
447 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
448 Select proper bitmap for cursor in fringe when appropriate.
449 Handle alignment of bitmap to top or bottom of row.
450 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
451 done by update_window_fringes.
452 (update_window_fringes, draw_window_fringes): New functions.
453 (redisplay_internal): Call update_window_fringes in case only
454 cursor row is updated.
455 (redisplay_window): Call update_window_fringes.
456 Explicitly call draw_window_fringes if redisplay was done using
457 the current matrix or the overlay arrow is in the window.
458 (try_window_reusing_current_matrix): Mark scrolled rows for
459 fringe update (to update buffer-boundaries / scrolling icons).
460 (find_last_unchanged_at_beg_row): Handle exact width lines line
461 continued lines.
462 (display_line): Overflow newline into fringe for rows that are
463 exactly as wide as the window. Don't append space for newline
d7107586 464 in this case.
77a9cf69
KS
465 (notice_overwritten_cursor): Explicitly clear cursor bitmap
466 in fringe as if it had been overwritten.
467 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 468 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
469 void-text-area-pointer as user options.
470 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 471
77a9cf69
KS
472 * xterm.c (x_update_window_end): Call draw_window_fringes.
473 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
474 in row instead of actually drawing fringe bitmaps.
475 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
476 (x_draw_window_cursor): Draw cursor in fringe.
477
478 * w32term.c (x_update_window_end): Call draw_window_fringes.
479 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
480 in row instead of actually drawing fringe bitmaps.
481 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
482 (w32_draw_window_cursor): Draw cursor in fringe.
483
484 * macterm.c (x_update_window_end): Call draw_window_fringes.
485 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
486 in row instead of actually drawing fringe bitmaps.
487 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
488 (mac_draw_window_cursor): Draw cursor in fringe.
489
a633a954
JD
4902004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
491
492 * xterm.c (handle_one_xevent): Don't handle characters that are part
493 of an old style (XLookupString) compose sequence.
494
80460525
KH
4952004-01-15 Kenichi Handa <handa@m17n.org>
496
497 * search.c (Freplace_match): Use make_multibyte_string or
498 make_unibyte_string according to the buffer multibyteness.
499
7fc34f85
SM
5002004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
501
502 * alloc.c (struct interval_block, struct string_block)
503 (struct symbol_block, struct marker_block, live_string_p)
504 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
505 Better preserve alignment for objects in blocks.
506 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
507
508 * lread.c (defvar_per_buffer): Remove dead declaration.
509
510 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
511 space size.
512
66070bd1
JD
5132004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
514
515 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
516 if a key press should pop down. Only pop down if a key is pressed
517 outside the menu/dialog.
518 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
519 popup_get_selection.
520 (create_and_show_dialog): Pass 1 for down_on_keypress to
521 popup_get_selection.
522
de7515d6
JD
5232004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
524
525 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
526 BLOCK/UNBLOCK_INPUT.
527
160b1b50
JD
5282004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
529
530 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
531 specified.
532
3a9f36e6
KH
5332004-01-08 Kenichi Handa <handa@m17n.org>
534
535 * editfns.c (Fformat): Fix '&' to '&&'.
536
3803eb32
AS
5372004-01-08 Andreas Schwab <schwab@suse.de>
538
539 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
540 size if PSEUDOVECTOR_FLAG is set.
541
9da88f37
KH
5422004-01-07 Kenichi Handa <handa@m17n.org>
543
74ac5074
KH
544 * charset.c (Fdeclare_equiv_charset): Fix docstring.
545
9da88f37
KH
546 * fontset.c (fontset_ref_via_base): Fix previous change.
547
05faee07
KS
5482004-01-07 Kim F. Storm <storm@cua.dk>
549
550 * process.c (read_process_output): Only activate adaptive
551 buffering if we read less than 256 bytes at a time.
552
634910c8
KS
5532004-01-06 Kim F. Storm <storm@cua.dk>
554
555 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
556 object and image object. Return glyph width and height.
557 (mode_line_string, marginal_area_string): Ditto.
558
559 * dispextern.h (buffer_posn_from_coords, mode_line_string)
560 (marginal_area_string): Fix prototypes.
561
562 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
563 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
564 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
565
566 * keyboard.c (make_lispy_position): Use modified mode_line_string,
567 buffer_posn_from_coords, and marginal_area_string functions to
568 include both string object and image object in the lispy position.
569 Also add actual glyph width and height to position.
570 (read_key_sequence): Use real buffer position from mouse
571 event to find keymap property even when click is in marginal area.
572
573 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
574 mode_line_string and marginal_area_string functions to handle
575 both string object and image object properties.
d7107586 576
57951c2e
AS
5772004-01-06 Andreas Schwab <schwab@suse.de>
578
579 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
580 character.
581
181e6a61
AS
5822004-01-02 Andreas Schwab <schwab@suse.de>
583
d7107586
SM
584 * macterm.c (emacs_options, x_initialized, same_x_server):
585 Remove unused (and duplicated) definitions.
181e6a61 586
31e0fbdd
KS
5872004-01-02 Kim F. Storm <storm@cua.dk>
588
589 * process.h (struct Lisp_Process): New members for adaptive read
590 buffering: adaptive_read_buffering, read_output_delay, and
591 read_output_skip.
592
593 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
594 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
595 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
596 (process_output_delay_count, process_output_skip): New vars.
597 (Vprocess_adaptive_read_buffering): New variable.
598 (make_process): Initialize adaptive read buffering members.
599 (Fstart_process): Set adaptive_read_buffering member.
600 (deactivate_process): Cleanup adaptive read buffering.
601 (wait_reading_process_input): Temporarily omit delayed
602 subprocesses from the set of file descriptors to read from;
603 adjust the select timeout if we skipped any subprocesses.
604 (read_process_output): Increase adaptive read buffering delay if
605 we read less than a full buffer; reduce delay when we read a
606 full buffer.
607 (send_process): Simplify using local Lisp_Process var.
608 Reset adaptive read buffering delay after write.
609 (init_process): Initialize process_output_delay_count and
610 process_output_skip.
611 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
612
68c6a789
JR
6132004-01-01 Jason Rumney <jasonr@gnu.org>
614
d7107586 615 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 616
3f70fe82
LT
6172003-12-30 Luc Teirlinck <teirllm@auburn.edu>
618
619 * print.c (Ferror_message_string): Add hyperlink in the docstring
620 to the definition of `signal' in the Elisp manual.
621 * eval.c (Fsignal): Ditto.
622
c2be49ed
EZ
6232003-12-29 James Clark <jjc@jclark.com> (tiny change)
624
625 * fns.c (internal_equal): Return t for two NaN arguments.
626
7abd90ea
RS
6272003-12-29 Richard M. Stallman <rms@gnu.org>
628
629 * data.c (store_symval_forwarding): Handle setting
630 default-fill-column, etc., by changing the value in
631 buffers that use the default.
632
633 * minibuf.c (Fset_minibuffer_window): Doc fix.
634
635 * fileio.c (choose_write_coding_system): Ignore auto_saving
636 if using the visited file for auto saves.
637 (Fwrite_region): Don't update SAVE_MODIFF
638 if auto-saving in visited file.
639
3e7cfcdc
KH
6402003-12-29 Kenichi Handa <handa@m17n.org>
641
642 * dispextern.h (face_font_available_p): Extern it.
643
644 * fontset.c (Voverriding_fontspec_alist): New variable.
645 (lookup_overriding_fontspec): New function.
d7107586 646 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
647 (fontset_font_pattern): Likewise.
648 (regulalize_fontname): New function.
649 (Fset_fontset_font): Call regulalize_fontname.
650 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
651 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
652 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
653
654 * xfaces.c (face_font_available_p): New function.
655
7abd90ea
RS
6562003-12-28 Richard M. Stallman <rms@gnu.org>
657
658 * buffer.c (Fother_buffer): Don't crash if BUF is nil
659 or if its name is nil.
660
661 * buffer.c (Fkill_buffer): Don't delete auto-save file
662 if it's the same as the visited file.
663
de1d1a40
LT
6642003-12-28 Luc Teirlinck <teirllm@auburn.edu>
665
666 * coding.c (Fcheck_coding_system): Doc fix.
667
204fb75e
KS
6682003-12-28 Kim F. Storm <storm@cua.dk>
669
670 * Makefile.in (eval.o): Depend on dispextern.h.
671
672 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
673 image glyph using image's ascent.
674 (mode_line_string): Return image glyph as object clicked on.
675 Adjust y0 for image glyph using image's ascent.
676
677 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
678 (struct glyph): New members, ascent and descent. Used to save
679 this glyph's ascent and descent, instead of having.
680 (struct glyph): Declare member face_id using FACE_ID_BITS.
681 (find_hot_spot): Add prototype.
682
683 * keyboard.c (Qimage): Remove extern (now in lisp.h).
684 (QCmap): Declare extern.
685 (make_lispy_position): When position is inside image hot-spot,
686 use hot-spot element's id as posn element.
687
688 * lisp.h (IMAGEP): New macro to test for image object type.
689 (Qimage): Declare extern.
690
691 * macfns.c (Qimage): Remove extern (now in lisp.h).
692 (valid_image_p, parse_image_spec): Use IMAGEP macro.
693
694 * macterm.c (Qface, Qmouse_face): Remove unused externs.
695
696 * w32fns.c (Qimage): Remove extern (now in lisp.h).
697 (valid_image_p, parse_image_spec): Use IMAGEP macro.
698
699 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
700
701 * w32term.c (Qface, Qmouse_face): Remove unused externs.
702
703 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
704 pointer types.
705 (Qrelative_width, Qalign_to): Remove unused variables.
706 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
707 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
708 image maps.
d7107586 709 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
710 new dx and dy args.
711 Remove buffer_only_p arg (always 0). Simplify code accordingly.
712 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
713 than row's ascent and height, to get sensible height on tall rows.
714 (build_desired_tool_bar_string): Remove Qimage extern.
715 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
716 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
717 image glyph is alone on the last line.
718 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 719 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 720 (on_hot_spot_p): New function to check if position is inside an
d7107586 721 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
722 (find_hot_spot): New function to search for image hot-spot.
723 (Flookup_image_map): New defun to search for image hot-spot.
724 (define_frame_cursor1): New aux function to determine frame pointer.
725 (note_mode_line_or_margin_highlight, note_mouse_highlight):
726 Handle `pointer' text property and :pointer image property to
727 control frame pointer shape. Detect image hot-spots for pointer
728 and help_echo properties. Use define_frame_cursor1.
729 (note_mouse_highlight): Use Vvoid_text_area_pointer.
730 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
731 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
732
733 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
734
735 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
736 (Qimage): Remove extern (now in lisp.h).
737 (valid_image_p, parse_image_spec): Use IMAGEP macro.
738
739 * xmenu.c (show_help_event): Remove unused code.
740
741 * xterm.c (Qface, Qmouse_face): Remove unused externs.
742 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
743 row's ascent and descent, to get a sensible height on tall rows.
744
fc052137
LT
7452003-12-25 Luc Teirlinck <teirllm@auburn.edu>
746
747 * minibuf.c (Fcompleting_read): Undo previous change.
748
b9148500
LH
7492003-12-25 Lars Hansen <larsh@math.ku.dk>
750
751 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
752 Arguments GCPRO'ed in call to file name handler.
753
56ffd194
TTN
7542003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
755
756 * termcap.c (tgetst1): Scan for "%pN"; if all
757 N are continuous in [1,9], remove all "%pN".
758
5202d23d
JD
7592003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
760
f26fab36
JD
761 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
762
5202d23d
JD
763 * xfaces.c (lface_fully_specified_p): Take into account that
764 MAC OS always have unspecified stipple.
765
8babaa59
TTN
7662003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
767
768 * tparam.c (tparam1): Add handling for `%pN', which
769 means use param N for the next substitution.
770
2d176448
TTN
7712003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
772
773 * xfaces.c (Fcolor_gray_p): Fix omission bug:
774 In case `frame' is nil, consult the selected frame.
775 (Fcolor_supported_p): Likewise.
776
adb0708c
LT
7772003-12-23 Luc Teirlinck <teirllm@auburn.edu>
778
000eeb15
LT
779 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
780 Doc fixes.
0dc72b11
LT
781
782 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
783 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
784 (Fread_from_minibuffer): Delete code moved into read_minibuf.
785 Doc fix.
786 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
787 read_minibuf.
788 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 789 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 790
2e4d132b
KH
7912003-12-03 Kenichi Handa <handa@m17n.org>
792
793 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
794 encoding sequence.
795
3999c705
KH
7962003-12-01 Kenichi Handa <handa@m17n.org>
797
798 * composite.c (syms_of_composite): Don't make the compostion hash
799 table week.
800
d344ecbb
LT
8012003-11-30 Luc Teirlinck <teirllm@auburn.edu>
802
803 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
804 * textprop.c (Fget_char_property_and_overlay): New function.
805 (syms_of_textprop): Defsubr it.
806
03d6484e
JD
8072003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
808
019b1f0e
JD
809 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
810 to compile on terminal configuration.
811
03d6484e
JD
812 * fileio.c (Fread_file_name): Check use_file_dialog also before
813 calling Fx_file_dialog.
814
815 * fns.c: use_file_dialog: New variable.
816 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
817
442d3fd0
KS
8182003-11-29 Kim F. Storm <storm@cua.dk>
819
820 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
821 (syms_of_msdos): Don't intern and staticpro them.
822
0f6a07a8
KS
8232003-11-27 Kim F. Storm <storm@cua.dk>
824
825 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
826 coordinates relative to glyph at posn. If glyph is an image,
827 return that as object at posn. Callers changed.
828 (mode_line_string, marginal_area_string): Calculate and return
829 pixel coordinates relative to glyph. Callers changed.
830
831 * dispextern.h (buffer_posn_from_coords, mode_line_string)
832 (marginal_area_string): Fix prototypes.
833 (window_box_left_offset, window_box_right_offset): Add prototypes.
834
835 * frame.h (get_specified_cursor_type, get_window_cursor_type):
836 Remove prototypes.
837
838 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
839
840 * keyboard.c (make_lispy_position): Add x and y coordinates
841 relative to the current glyph as 7th element of position.
842 If glyph is an image, return it in the object element.
843 (read_key_sequence): Skip checks for keymap property in cases
844 where POSN_STRING is not a string (e.g. an image).
845
846 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
847 (Vshow_text_cursor_in_void): New variable.
848 (glyph_to_pixel_coords): Don't use negative hpos.
849 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
850 (append_stretch_glyph): Change ascent arg to be actual value
851 in pixels rather than ratio to height. Callers changed.
852 (calc_pixel_width_or_height): New aux function, implementing
853 pixel based artihmetic for glyph widths and heights.
854 (produce_stretch_glyph): Use calc_pixel_width_or_height for
855 :width, :height, :align-to, and :ascent, thus allowing these to
856 be specified in pixels as well as multiples of characters.
857 Don't produce stretch glyphs with zero width or height.
858 (get_specified_cursor_type): Declare static.
859 (get_window_cursor_type): Declare static. Add glyph arg to be
860 able to know when cursor is on an image; always substitute
861 hollow-box cursor for filled-box cursor on images, to avoid
862 negative images and flicker when blinking the cursor.
863 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
864 (note_mode_line_or_margin_highlight): Use non-text cursor rather
865 than vertical scroll-bar cursor in display margins.
866 (note_mouse_highlight): Use non-text cursor rather than text
867 cursor in fringes and over images in the text area.
868 Use non-text cursor when mouse pointer is outside editable text,
869 i.e. in the void after end-of-line or end-of-buffer; this was
870 already done for W32, but is now standard for all systems --
871 user can toggle show-text-cursor-in-void to get old behaviour.
872 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
873 Vdisplay_pixels_per_inch.
874
00498bfc
AS
8752003-11-25 Andreas Schwab <schwab@suse.de>
876
877 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
878 EMACS_INT to not lose bits.
879 (Ffillarray): Don't set bits beyond the size of a bool vector.
880
edaa824d
KS
8812003-11-25 Kim F. Storm <storm@cua.dk>
882
883 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
884 define this defun on systems that cannot use stderr as lvalue.
885
74d6f539
GM
8862003-11-24 Gerd Moellmann <gerd@gnu.org>
887
888 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
889 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
890 ld's default is incompatible with unexec.
891
6a1ff3ba
KS
8922003-11-23 Kim F. Storm <storm@cua.dk>
893
63dc7c6b
KS
894 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
895 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
896 (Fforce_window_update): New defun.
897 (syms_of_window): Defsubr it.
898 (Fset_window_margins, Fset_window_fringes): Doc fix.
899
6a1ff3ba
KS
900 * print.c (Fredirect_debugging_output): New defun.
901 (syms_of_print): Defsubr it.
902
aef109b7
LT
9032003-11-22 Luc Teirlinck <teirllm@auburn.edu>
904
905 * fns.c (Fset_char_table_parent): Doc fix.
906
6a1ff3ba 9072003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
908
909 * dispnew.c (buffer_posn_from_coords): Return actual row/column
910 for glyph clicked on, rather than (unused) pixel positions.
911 (mode_line_string, marginal_area_string): Change X and Y args to
912 pointers for returning actual row/column for glyph clicked on.
913 Simplify and optimize loops.
914
aef109b7
LT
915 * dispextern.h (mode_line_string, marginal_area_string):
916 Update prototypes.
63ccbe21
KS
917
918 * keyboard.c (make_lispy_position): New function for generating
919 mouse click positions from frame and pixel coordinates.
920 Enhanced to return buffer position and actual row/column for
921 events outside the text area using updated mode_line_string and
922 marginal_area_string functions.
923 Return left-fringe and right-fringe clicks as such, rather than
924 clicks in text area.
925 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
926 pixel_to_glyph_coords, as we never use the results.
927 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
928 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
929 Eliminate unused code in WHEEL_EVENT handling.
930 (make_lispy_movement): Use make_lispy_position.
931
932 * window.c (coordinates_in_window): Remove redundant tests.
933 Fix returned X pixel value for left-margin.
934
935 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
936 mode_line_string and marginal_area_string parameters.
937
930a9995
LH
9382003-11-22 Lars Hansen <larsh@math.ku.dk>
939
d7107586
SM
940 * w32.c (struct the_group, getgrgid): Add.
941 * mac.c (struct my_group, getgrgid): Add.
aef109b7 942
3dbf3426
LT
9432003-11-21 Luc Teirlinck <teirllm@auburn.edu>
944
945 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
946
cae8ddbb 9472003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 948
d7107586
SM
949 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
950 include in call to file name handler. Optionally translate numeric
951 UID and GID to strings. Update docstring.
952 (directory_files_internal): Add parameter ID-FORMAT.
953 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
954 include in call to file name handler and call to
955 directory_files_internal. Update Docstring.
956 (Fdirectory_files): Add dummy parameter in call to
957 directory_files_internal.
958 * lisp.h (Qinteger): Add.
959 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
960 (Ffile_attributes): Add parameter.
961 * data.c (Qinteger): Export.
cae8ddbb 962
2550b848
LT
9632003-11-21 Luc Teirlinck <teirllm@auburn.edu>
964
3dbf3426 965 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 966
88380018
KS
9672003-11-19 Kim F. Storm <storm@cua.dk>
968
969 * xdisp.c (init_iterator): Initialize it->start to position
970 before reseating (in case start position is invisible).
971 (init_to_row_start): Set it->start to row-start.
972 (redisplay_window): Accept optional_new_start if start position
973 is invisible (in which case IT_CHARPOS overshoots PT).
974 (display_line): Setup row->start from it->start (rather than
975 it->current which is wrong if first char on line is invisible).
976 When done, reseat it->start to it->current (= start of next row).
977 (expose_area): Fix exposure of text area when first char (e.g. TAB)
978 is only partially visible.
979
980 * dispextern.h (struct it): New member start.
981
854c1a59
SM
9822003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
983
455316e2
SM
984 * alloc.c (make_float, Fcons): Clear the markbit at init time.
985 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
986 of block_index outside of the macro call.
987 (Fgarbage_collect): Remove null code.
988
989 * m/amdx86-64.h: Don't redefine XPNTR.
990
854c1a59
SM
991 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
992 of VALMASK.
993
994 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
995 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
996 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
997
998 * lisp.h (VALMASK): Only define for non-union type.
999 (MARKBIT): Remove.
1000 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
1001 (XTYPE): Define unconditionally.
1002 (XSETTYPE): Remove one more remnant.
1003 (EQ): Define differently for the union and non-union cases.
1004 (INTMASK): New bit mask.
1005 (struct Lisp_Marker): Move down to prepare for upcoming patch.
1006 (GC_EQ): Delegate to EQ.
1007
1008 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
1009
a0c6ef2d
JD
10102003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1011
1012 * xterm.c (x_window_to_scroll_bar): Move check of display to
1013 where window_id is compared.
1014
859492c4
KS
10152003-11-17 Kim F. Storm <storm@cua.dk>
1016
1017 * dispextern.h (struct it): New member first_vpos.
1018
1019 * xdisp.c (start_display): Set it->first_vpos.
1020 (try_window_id): Use first_vpos to start display in first _text_
1021 line if no reusable lines at start of window with header line.
1022
810f2256
JD
10232003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1024
7c402969 1025 * w32fns.c (XPutPixel):
854c1a59
SM
1026 * w32bdf.c (w32_init_bdf_font):
1027 * sunfns.c (sel_read):
1028 * process.c (Fmake_network_process):
1029 * frame.c (store_frame_param):
1030 * fontset.c (Fset_fontset_font):
1031 * emacs.c (shut_down_emacs):
7c402969
JD
1032 * ccl.c (ccl_driver): Remove period at end of error message.
1033
a32e9bfd
JD
1034 * config.in: Regenerate.
1035
810f2256
JD
1036 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1037 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1038 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
1039 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
1040 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
1041
1042 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
1043
1044 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
1045 (XTmouse_position, handle_one_xevent): Pass Display* to
1046 x_window_to_scroll_bar.
1047 (x_window_to_scroll_bar): Take a Display* argument.
1048 Check that display for frame is equal to Display* argument.
854c1a59 1049 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
1050 x_display_info_for_display instead. Use Display in xev instead
1051 of GDK_DISPLAY.
1052 (x_dispatch_event): Call x_display_info_for_display.
1053 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
1054 (x_connection_closed): Call xg_display_close for GTK.
1055 (x_term_init): Call xg_display_open for additional displays.
1056 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
1057 for GTK.
1058
1059 * xmenu.c (single_menu_item, mouse_position_for_popup)
1060 (x_activate_menubar): Formatting adjustments.
1061
1062 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
1063 adjustments.
1064
1065 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
1066 (xg_display_close, xg_create_default_cursor)
1067 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
1068 handling.
854c1a59
SM
1069 (xg_left_ptr_cursor): Remove.
1070 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
1071 cursor here.
1072 (xg_win_to_widget): Take Display* argument, call
1073 gdk_xid_table_lookup_for_display.
1074 (xg_create_frame_widgets, xg_get_file_name, create_menus)
1075 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
1076 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
1077 in FRAME_X_DISPLAY_INFO.
1078 (xg_get_scroll_id_for_window): Take Display* argument.
1079 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 1080 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
1081
1082 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
1083 Display* argument also. Declare xg_display_open,
1084 xg_display_close, xg_create_default_cursor.
1085
0b03cc78
JD
10862003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1087
1088 * xterm.c (x_detect_focus_change): Do not change focus frame for
1089 Enter/LeaveNotify if the current focus frame has explicit focus.
1090
77e688fa
KS
10912003-11-14 Kim F. Storm <storm@cua.dk>
1092
1093 * dispnew.c (update_text_area): Fix redisplay error when hscroll
1094 is active and first glyph is only partially visible.
854c1a59 1095
dd429b03
KH
10962003-11-13 Kenichi Handa <handa@m17n.org>
1097
1098 * xdisp.c (select_frame_for_redisplay): New function.
1099 (redisplay_internal): Record also selected_frame for
1100 unwind_redisplay. Call select_frame_for_redisplay before
1101 redrawing each frame.
1102 (unwind_redisplay): Argument changed to a cons.
1103
6d9266f4
LT
11042003-11-12 Luc Teirlinck <teirllm@auburn.edu>
1105
1106 * fns.c (Fstring_to_multibyte): Doc fix.
1107
80060eb3
KH
11082003-11-11 Kenichi Handa <handa@m17n.org>
1109
1110 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
1111
74305183
JD
11122003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1113
1114 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
1115 program specified positions.
1116
cfda993e
JD
11172003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1118
1119 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
1120
df211069
KH
11212003-11-08 Kenichi Handa <handa@m17n.org>
1122
1123 * Makefile.in (lisp): Add kannada.el.
1124 (shortlisp): Likewise.
1125
4307d534
KH
11262003-11-07 Kenichi Handa <handa@m17n.org>
1127
854c1a59
SM
1128 * coding.c (coding_allocate_composition_data):
1129 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
1130 (coding_restore_composition): Detect invalid composition data.
1131 Give Fstring and Fvector a Lispy integer, not C int.
1132
854c1a59
SM
11332003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
1134
1135 * floatfns.c (Flogb): Don't use VALMASK.
1136
1137 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
1138 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
1139
1140 * lisp.h (XINT): Move the cast to clarify what is going on.
1141 (GCTYPEMASK, XSETTYPE): Remove.
1142 (XGCTYPE): Make it an alias of XTYPE.
1143
d04103a1
JD
11442003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1145
1146 * xterm.c (x_term_init): Fix formatting.
1147
da18b5ac
JD
11482003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1149
1150 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
1151 and xg_did_tearoff.
1152
1153 * gtkutil.c: Remove variable xg_did_tearoff.
1154 (xg_have_tear_offs): New function.
1155 (tearoff_remove): Just decrease xg_detached_menus.
1156 (tearoff_activate): Increase xg_detached_menus and call
1157 tearoff_remove when tearoff is removed.
854c1a59 1158 (xg_keep_popup): Remove function.
da18b5ac
JD
1159 (create_menus): Give add_tearoff_p as argument to recursive
1160 call to create_menus.
1161 (xg_create_widget): Use variables instead of multiple
1162 strcmp. Tell create_menus to create tear off only for
1163 menu bar menus.
1164 (xg_update_menubar): Change title for a detached menu also.
1165 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
1166 of deep_p.
1167 (xg_initialize): Initialize xg_detached_menus, remove
1168 initialization of xg_did_tearoff.
1169
1170 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
1171 xg_have_tear_offs returns non-zero.
1172 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
1173 call to xg_keep_popup.
1174
64d4923e
AC
11752003-11-01 Andrew Choi <akochoi@shaw.ca>
1176
1177 * macterm.c (XTread_socket): Handle menubar selection and grow
1178 window only for mouseDown events.
854c1a59 1179
6cc8bc07
JD
11802003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1181
1182 * xterm.c (x_term_init): For GTK part, increase x_initialized
1183 to check for more than one display. Use error instead of return 0.
1184
043131c4
AC
11852003-10-31 Andrew Choi <akochoi@shaw.ca>
1186
854c1a59 1187 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
1188 (copy_dysymtab): Call it.
1189
bdda99a1
LT
11902003-10-31 Luc Teirlinck <teirllm@auburn.edu>
1191
1192 * eval.c (Fdefvaralias): Doc fix.
1193
800f42ff 11942003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
1195
1196 * data.c (Fsetplist): Doc fix.
1197
ef35b389
LK
11982003-10-14 Lute Kamstra <lute@gnu.org>
1199
1200 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 1201
ef35b389 12022003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 1203
07107abc
KS
1204 * window.c (Fset_window_margins): Simplify arg checking.
1205
f7005886
RS
12062003-10-13 Richard M. Stallman <rms@gnu.org>
1207
1208 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
1209 (print_partial_compiled_pattern): Replace assert with a printout.
1210 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
1211
1212 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
1213
1214 * window.c (Fset_window_margins): Allow only integers as args.
1215 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
1216 Doc fixes.
1217
9c0c2af5
LK
12182003-10-13 Lute Kamstra <lute@gnu.org>
1219
1220 * window.c (Fset_window_fringes): Elaborate docstring.
1221
3f080e4e
AC
12222003-10-12 Andrew Choi <akochoi@shaw.ca>
1223
854c1a59 1224 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 1225
3f080e4e
AC
1226 * s/darwin.h (GC_MARK_STACK): Define.
1227
0aa513ed
JD
12282003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1229
1230 * window.c (shrink_windows): New function.
1231 (size_window): Call shrink_windows to calculate window sizes when
1232 shrinking frame with more than one window.
1233
6aa8858a
KS
12342003-10-12 Kim F. Storm <storm@cua.dk>
1235
1236 * xdisp.c (compute_fringe_widths): Doc fix.
1237
c2164d91
KH
12382003-10-08 Kenichi Handa <handa@m17n.org>
1239
854c1a59 1240 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 1241
f82ac129
KH
12422003-10-07 Kenichi Handa <handa@m17n.org>
1243
1244 * coding.c (Qcoding_system_define_form): New variable.
1245 (syms_of_coding): Intern and staticpro it.
1246 (Fcheck_coding_system): Try to autoload the definition of
1247 CODING-SYSTEM.
1248
9296c947
LT
12492003-10-05 Luc Teirlinck <teirllm@auburn.edu>
1250
1251 * fns.c (Frequire): Doc fix.
1252
c1f0671a
JD
12532003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1254
3d8c3826
JD
1255 * xfns.c (Fx_send_client_event): New function as a base for
1256 manipulating extended window manager hints.
6dc15d98 1257 (Fx_send_client_event): Remove unused variable s.
3d8c3826 1258
068ae0fd
JD
1259 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
1260 that function is removed.
1261
1262 * xterm.c (x_set_offset): Use move_offset_left/top instead of
1263 x/y_pixels_outer_diff.
1264 (x_check_expected_move): Calculate move_offset_left/top.
1265
1266 * xterm.h (struct x_output): New members: move_offset_top/left.
1267
854c1a59 1268 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
1269 call x_set_offset directly.
1270
1271 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
1272
96f09305
JD
1273 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
1274
1275 * xterm.c (x_delete_display): Free font names and font_encoder
1276 in dpyinfo->font_table.
1277
854c1a59
SM
1278 * xfns.c (Fx_close_connection): Only call XFreeFont here.
1279 Move xfree of font names to x_delete_display.
96f09305 1280
c1f0671a
JD
1281 * xterm.h (struct x_display_info): New member, wm_type.
1282 (struct x_output): New members, expected_top/left and
1283 check_expected_move.
1284
1285 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
1286 is received.
854c1a59
SM
1287 (handle_one_xevent): Rename x_check_expected_move from
1288 x_check_fullscreen_move.
c1f0671a
JD
1289 (x_set_offset): Only add WM decoration sizes to modified_top/left
1290 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 1291 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
1292 Removed fullscreen specific code. Use check_expected_move,
1293 expected_left/top instead. Also, set wm_type.
1294 (x_term_init): Initialize wm_type to unknown.
1295
1296 * frame.c (x_fullscreen_move): Remove addition of WM decoration
1297 sizes to move_x/y.
1298
be2fdba9
KH
12992003-10-03 Kenichi Handa <handa@m17n.org>
1300
1301 * macterm.c (x_load_font): Clear all members of FONTP before start
1302 filling them.
1303
13042003-10-02 Kenichi Handa <handa@m17n.org>
1305
1306 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
1307 before calling find_ccl_program_func. Call find_ccl_program_func
1308 only when fontp->font_encoder is not NULL.
1309
1310 * xterm.c (x_load_font): Clear all members of FONTP before start
1311 filling them.
1312
26a6e439
JPW
13132003-10-03 John Paul Wallington <jpw@gnu.org>
1314
1315 * keymap.c (map_keymap): Don't abort when binding is a vector.
1316
0d4c2dc2
JR
13172003-10-02 Jason Rumney <jasonr@gnu.org>
1318
854c1a59
SM
1319 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
1320 Sync dependencies with Makefile.in.
a63cf46f
JR
1321 (alloca.o): Remove.
1322
0d4c2dc2
JR
1323 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
1324 filling them.
1325
1326 * w32bdf.c (w32_load_bdf_font): Likewise.
1327
ab8f7d5c
RS
13282003-09-30 Richard M. Stallman <rms@gnu.org>
1329
1330 * term.c (set_tty_color_mode): Calculate current_mode_spec
1331 regardless of value of VAL.
1332
854c1a59 1333 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
1334 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
1335 Handle over_used when splitting UNDER.
1336
13372003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1338
1339 * regex.c (regex_compile): Free the stack when returning from function.
1340
3413f972
KH
13412003-09-28 Kenichi Handa <handa@m17n.org>
1342
1343 * fontset.c (Finternal_char_font): Change return value to
1344 cons (FONT-NAME . GLYPH-CODE).
1345
40409f05
EZ
13462003-09-28 Eli Zaretskii <eliz@elta.co.il>
1347
1348 * term.c (tty_setup_colors): Treat any negative argument as -1.
1349
f98ddc99
KH
13502003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
1351
1352 * process.c (send_process): Delete unused temp_buf.
1353
66c8f1a8
DL
13542003-09-26 Dave Love <fx@gnu.org>
1355
1356 * xterm.c (x_bitmap_mask): Declare.
1357
ca716c26
DL
13582003-09-25 Dave Love <fx@gnu.org>
1359
1360 * Makefile.in (fns.o): Depend on md5.h.
1361
fbe57420
KS
13622003-09-25 Kim F. Storm <storm@cua.dk>
1363
1364 * window.c (set_window_buffer): Fix redisplay problems when
1365 switching between buffers with different display margin widths.
1366
ef6ae4ff
KS
13672003-09-23 Kim F. Storm <storm@cua.dk>
1368
1369 * process.c (set_socket_option): Fix :bindtodevice option.
1370 (Fset_network_process_option): Update process contact list when
1371 setting option succeeds.
1372 (Fmake_network_process): Doc fix.
1373
68e03c1c
DL
13742003-09-23 Dave Love <fx@gnu.org>
1375
7146d1c1 1376 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 1377
2f809aae
EZ
13782003-09-22 Eli Zaretskii <eliz@elta.co.il>
1379
1380 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
1381 color mode is an integer number (it could be -1).
1382
8fe7d8c8
RS
13832003-09-22 Richard M. Stallman <rms@gnu.org>
1384
1385 * intervals.c (graft_intervals_into_buffer): Correct the main loop
1386 in the case where OVER is longer than UNDER.
1387
2f71b5ea
MY
13882003-09-22 Masatake YAMATO <jet@gyve.org>
1389
7146d1c1 1390 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 1391 `vertical_type'.
7146d1c1 1392
0c4da023
KS
13932003-09-21 Kim F. Storm <storm@cua.dk>
1394
1395 * frame.c (Vdefault_frame_scroll_bars): New variable.
1396 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
1397 (syms_of_frame): DEFVAR_LISP it, and initialize according to
1398 window-system default scroll bar position.
1399
b648413b
KS
1400 * window.c (Fwindow_scroll_bars): Doc fix.
1401
8f5b9e34
JD
14022003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1403
854c1a59 1404 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 1405
b0f23edf
RS
14062003-09-19 Richard M. Stallman <rms@gnu.org>
1407
1408 * atimer.h: Don't include lisp.h.
1409 (P_): Define it here (as well as elsewhere).
1410
1411 * print.c (Fprin1_to_string): Move the PRINTPREPARE
1412 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
1413
1414 * data.c (Fvariable_binding_locus): New function.
1415 (syms_of_data): defsubr it.
1416 (Flocal_variable_p): Delete duplicate call to indirect_variable.
1417
e1283999
DL
14182003-09-18 Dave Love <fx@gnu.org>
1419
ad5f3636
DL
1420 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
1421
e1283999
DL
1422 * process.c (Fnetwork_interface_info): Fix type error.
1423 (Fnetwork_interface_list): Doc fix.
1424 (read_process_output, read_process_output): Delete unused var.
1425
b8c7fd71
KS
14262003-09-17 Kim F. Storm <storm@cua.dk>
1427
1428 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
1429 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
1430 (Fnetwork_interface_info): Check that ifreq struct has required
1431 fields before accessing them; this requires that those fields are
1432 defined as macros, which may be too restrictive on some platforms,
1433 but it is better than failing on other platforms.
1434 (syms_of_process): Only defsubr above fns when included.
1435
11e0a411
DL
14362003-09-17 Dave Love <fx@gnu.org>
1437
1438 * unexalpha.c: Don't include varargs.h.
1439
e9c50801
KS
14402003-09-17 Kim F. Storm <storm@cua.dk>
1441
1442 * process.c (Fset_process_sentinel): Add sentinel to childp plist
1443 for network process.
1444 (socket_options): Add `:' prefix to option names. Add optbit field.
1445 (set_socket_option): Remove no_error arg and special handling of s < 0.
1446 Return 1<<optbit for known option, 0 for unknown.
1447 Do not interpret 0 as false for boolean option (only nil).
1448 Pass failed option and value to report_file_error.
7146d1c1 1449 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
1450 (Fset_network_process_option): New function to set just one option.
1451 (Fmake_network_process): Allow :coding arg to be a cons.
1452 Allow :server arg to be an integer specifying backlog size.
1453 Remove :options arg, and allow options to be specified directly
1454 as :KEY, VALUE pairs. Parse these options before binding socket.
1455 As before, :reuseaddr t is default for a server process, but this
1456 can now be disabled by specifying :reuseaddr nil.
1457 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
1458 (init_process): Availability of network options is now checked with
1459 simpler syntax (featurep 'make-network-process :OPTION); use loop to
1460 setup features.
1461 (syms_of_process): Fix defsubr's for the replaced functions.
1462
a0fc3644
DL
14632003-09-16 Dave Love <fx@gnu.org>
1464
1465 * Makefile.in: Depend on coding.h.
1466
6df2a645
KS
14672003-09-14 Kim F. Storm <storm@cua.dk>
1468
1469 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
1470 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
1471 (syms_of_process): Defsubr them.
1472
1473 * config.in: Regenerate.
7146d1c1
SM
1474
14752003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1476
1477 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
1478 * m/news-r6.h (XUNMARK): Remove.
1479 * m/mips.h (XUNMARK): Remove.
1480 * m/mips-siemens.h (XUNMARK): Remove.
1481 * m/iris4d.h (XUNMARK): Remove.
1482 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
1483
0930c1a1
SM
14842003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1485
31003b9e
SM
1486 * lisp.h (VALBITS): Don't remove 1 for the markbit.
1487 (union Lisp_Object): Use unsigned int for types. Remove markbit.
1488 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
1489 (XTYPE): Use unsigned right-shift.
1490 (XMARKBIT, XMARK, XUNMARK): Remove.
1491
0930c1a1
SM
1492 * alloc.c (init_intervals, init_symbol, init_marker):
1493 Don't preallocate anything.
1494 (Fgarbage_collect, mark_object): Ignore the markbit.
1495
1496 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
1497
19bb0fcd 14982003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
1499
1500 * xdisp.c (pint2hrstr): New function.
1501 (decode_mode_spec): Add `%i' and `%I' specs.
1502 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
1503 for `mode-line-format'.
1504
03bb6a06
AS
15052003-09-07 Andreas Schwab <schwab@suse.de>
1506
1507 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
1508 avoid warning.
1509
2063d89c
EZ
15102003-09-07 Eli Zaretskii <eliz@elta.co.il>
1511
0930c1a1 1512 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 1513
ed159bbf
KS
15142003-09-03 Kim F. Storm <storm@cua.dk>
1515
1516 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
1517 change (superseded by 2002-08-30 change); the default blink-off
1518 cursor is now again "no cursor".
1519
fe64a394
JR
15202003-09-01 Jason Rumney <jasonr@gnu.org>
1521
1522 * makefile.w32-in (alloca.o): Remove.
1523 (coding.o): Depend on intervals.h
1524 (emacs.o, bytecode.o): Depend on window.h
1525
c0175e24
DL
15262003-09-01 Dave Love <fx@gnu.org>
1527
1528 * Makefile.in (alloca.o): Remove commands.
1529 (coding.o): Depend on intervals.h composite.h window.h.
1530 (emacs.o): Depend on window.h keyboard.h keymap.h.
1531 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
1532 (bytecode.o): Depend on window.h.
1533
a24d4cb2
JR
15342003-08-31 Jason Rumney <jasonr@gnu.org>
1535
4bc2315e
JR
1536 * w32term.c (w32_per_char_metric): Allow cached metrics to be
1537 returned even when font_type is unknown.
1538
a24d4cb2
JR
1539 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
1540
9d35adc7
JD
15412003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1542
1543 * xterm.c (x_term_init): Initialize new fields in x_display_info.
1544
1545 * xterm.h (struct x_display_info): Add red/green/blue_bits and
1546 *_offset.
1547
1548 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
1549 calculate pixel value.
1550
6f68b035
GM
15512003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
1552
0930c1a1
SM
1553 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
1554 Don't tell redisplay display is accurate when it's actually been
1555 paused for pending input.
6f68b035 1556
4828b4d7
RS
15572003-08-29 Richard M. Stallman <rms@gnu.org>
1558
1559 * dispnew.c (adjust_glyph_matrix): Call window_box
1560 whenever W is nonzero.
1561
1562 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
1563 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 1564 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
1565 Use indirect_variable to trace thru variable aliases.
1566
1567 * config.in: Updated.
1568
1569 * callint.c (Fcall_interactively): Save and restore
1570 Vthis_command, Vthis_original_command, real_this_command,
1571 and current_kboard->Vlast_command.
1572
1573 * abbrev.c (Fexpand_abbrev): Insert before deleting.
1574
e019878d
GM
15752003-08-29 Gerd Moellmann <gerd@gnu.org>
1576
1577 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
1578
85478bc6
KH
15792003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
1580
0930c1a1 1581 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
1582 (decode_coding_sjis_big5): Likewise.
1583
07ce82d3
JR
15842003-08-27 Jason Rumney <jasonr@gnu.org>
1585
d3703de3
JR
1586 * w32.c (sys_pipe): Protect against file descriptor overflow.
1587
ee4a01d1
JR
1588 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
1589
07ce82d3
JR
1590 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
1591
72d19c66
LK
15922003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
1593
1594 * xfns.c (Vgtk_version_string): New variable.
1595 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
1596
5459e42a
EZ
15972003-08-24 Eli Zaretskii <eliz@elta.co.il>
1598
0930c1a1 1599 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 1600
5459e42a
EZ
1601 * Makefile.in (msdos.o): Depend on intervals.h.
1602
0930c1a1 1603 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 1604
231d6cfb
JD
16052003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1606
1607 * xterm.h (struct x_display_info): New fields: client_leader_window
1608 and Xatom_wm_client_leader.
1609
1610 * xterm.c (x_initialize): Move call to x_session_initialize to ...
1611 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
1612
1613 * xsmfns.c (create_client_leader_window): New function.
1614 (x_session_initialize): Call create_client_leader_window, take
1615 dpyinfo as argument.
1616
1617 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
1618
1619 * Makefile.in (xsmfns.o): Add more depenedencies.
1620
afa88464
DL
16212003-08-21 Dave Love <fx@gnu.org>
1622
1623 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
1624
f730033e
KH
16252003-08-21 Kenichi Handa <handa@m17n.org>
1626
1627 * term.c (term_init): Fix previous change; don't rely on the
1628 length of `buffer' if TERMINFO is defined.
1629
6dca786c
DL
16302003-08-20 Dave Love <fx@gnu.org>
1631
1632 * atimer.h: Include lisp.h.
1633
1634 * lisp.h (EMACS_LISP_H): New.
1635 (popup_activated_flag): Don't declare.
1636
1637 * alloca.c: Some merging with gnulib. Change logic and doc
1638 concerning (x)malloc/(x)free -- no longer Emacs-specific.
1639 [DO_BLOCK_INPUT]: Don't include lisp.h.
1640 (xmalloc, xfree): Declare.
1641 (malloc): Don't declare.
1642
0930c1a1 1643 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
1644 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
1645 atimer.h, blockinput.h.
1646
1647 * alloc.c (lisp_align_malloc): Change type of `aligned'.
1648
1649 * alloca.s: Removed.
1650
3a06a6d9
RS
16512003-08-19 Gerd Moellmann <gerd@gnu.org>
1652
1653 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
1654 use -lncurses.
1655
1656 * term.c (term_init): Use a buffer of size 4096 for tgetent since
1657 FreeBSD returns something longer than 2044. Abort if the end of
1658 the buffer is overwritten.
1659
27eeee55
MB
16602003-08-19 Miles Bader <miles@gnu.org>
1661
1662 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
1663
2f297815
GM
16642003-08-19 Gerd Moellmann <gerd@gnu.org>
1665
f4446bbf
GM
1666 * alloc.c (lisp_align_malloc): Check for memory full when
1667 allocating ablocks, which also avoids freeing a pointer into an
1668 ablocks structure.
1669
1670 * puresize.h (BASE_PURESIZE): Increase to 1100000.
1671
0930c1a1 1672 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 1673
0e7d7aae
RS
16742003-08-16 Richard M. Stallman <rms@gnu.org>
1675
1676 * editfns.c (Fencode_time): Doc fix.
1677
16782003-08-16 David Ponce <david@dponce.com>
1679
1680 * fileio.c (Fwrite_region): Fix conditional expression to issue
1681 the right message.
1682
16832003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
1684
1685 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 1686 Set default value to 1.
0e7d7aae 1687
5d551295
KH
16882003-08-15 Kenichi Handa <handa@m17n.org>
1689
1690 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
1691 what autoscaled.
1692 (best_matching_font): Once we find a better scalable font, set
1693 non_scalable_has_exact_height_p to 1.
1694 (try_font_list): Call try_alternative_families to try any family
1695 with the given registry.
1696
1661e56b
AS
16972003-08-09 Andreas Schwab <schwab@suse.de>
1698
f29181dc
AS
1699 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
1700
1661e56b
AS
1701 * print.c (print_string): Fix printing of multibyte string with
1702 nontrivial printcharfun.
1703
465aa50a
JD
17042003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1705
1706 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
1707
1708 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
1709
e430e5ba
KH
17102003-07-31 Kenichi Handa <handa@m17n.org>
1711
1712 * process.c (read_process_output): Return the actually read bytes
1713 instead of the result of decoding.
1714
97e7188e
KH
17152003-07-31 Kenichi Handa <handa@m17n.org>
1716
1717 * xterm.h (struct x_bitmap_record): New member have_mask.
1718
1719 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
1720 to 0.
1721 (x_create_bitmap_from_file): Likewise.
1722 (x_destroy_bitmap): Check have_mask member before freeing a mask.
1723 (x_destroy_all_bitmaps): Likewise.
1724 (x_create_bitmap_mask): Set have_mask member to 1.
1725
b53094d6
RS
17262003-07-30 Richard M. Stallman <rms@gnu.org>
1727
1728 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
1729
631f2082
JD
17302003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1731
1732 * gtkutil.c (xg_mark_data): Update calls to mark_object.
1733
c855f2ca
RS
17342003-07-29 Richard M. Stallman <rms@gnu.org>
1735
1736 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
1737 Conditionalize XIM code on HAVE_XIM.
1738
1739 * fns.c (Fclear_string): New function.
1740 (syms_of_fns): defsubr it.
1741
17e6d491
KH
17422003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
1743
0930c1a1 1744 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 1745
29ea8ae9
SM
17462003-07-22 Stefan Monnier <monnier@cs.yale.edu>
1747
1748 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
1749
1750 * buffer.c (delete_all_overlays): New function.
1751 * buffer.h (delete_all_overlays): Declare.
1752 * coding.c (run_pre_post_conversion_on_str):
1753 * print.c (temp_output_buffer_setup):
1754 * fileio.c (Finsert_file_contents):
1755 * minibuf.c (get_minibuffer): Use it.
1756
1dd7ccf2
AC
17572003-07-22 Andrew Choi <akochoi@shaw.ca>
1758
1759 * unexmacosx.c (unexec_regions_sort_compare):
1760 (unexec_regions_merge): New functions. Sort and merge unexec
1761 regions before dumping them.
1762
f57bd967
DL
17632003-07-22 Dave Love <fx@gnu.org>
1764
1765 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
1766
7cdee936
SM
17672003-07-21 Stefan Monnier <monnier@cs.yale.edu>
1768
1769 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
1770 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
1771 MARKBIT as the gcmarkbit for strings.
1772
e50886d3
RS
17732003-07-21 Richard M. Stallman <rms@gnu.org>
1774
1775 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
1776
29ea8ae9 1777 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
1778 (syms_of_fns): Corresponding change.
1779
1780 * alloc.c (syms_of_alloc): Doc fixes.
1781
17822003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
1783
1784 * s/netbsd.h: Use -Wl syntax.
1785
fdc39b59
RS
17862003-07-17 Richard M. Stallman <rms@gnu.org>
1787
1788 * xterm.c (xim_initialize): Redo 6/24 change.
1789
9c53385f
SM
17902003-07-15 Stefan Monnier <monnier@cs.yale.edu>
1791
1792 * buffer.c (copy_overlays): Use EMACS_INT for positions.
1793 (Fswitch_to_buffer): Don't signal an error when switching to the same
1794 buffer in a dedicated window.
1795
1796 * alloc.c: Use bitmaps for cons, as was done for floats.
1797 (init_float, init_cons): Let the normal code allocate the first block.
1798 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
1799 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
1800 New macros.
1801 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
1802 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
1803 (live_cons_p): Check the pointer is not past the `conses' array.
1804 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
1805 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
1806 (survives_gc_p): Use CONS_MARKED_P and simplify.
1807 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
1808
dde13196
PE
18092003-07-13 Paul Eggert <eggert@twinsun.com>
1810
1811 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
1812 puts it into BSS instead, at least on Solaris 8 and 9.
1813 This is a valid optimization, and it may occur on other platforms,
1814 so Emacs should not assume that initializing a static variable to
1815 zero puts it into data.
1816 * alloc.c (pure, staticvec):
1817 Initialize these arrays to nonzero, so that they're not
1818 put into BSS by that optimization.
1819
a801bc34
SM
18202003-07-13 Stefan Monnier <monnier@cs.yale.edu>
1821
1822 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
1823 (lisp_align_malloc): Use posix_memalign is available.
1824 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
1825 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
1826 for consistency. Update users.
1827
0c8b2afa
RS
18282003-07-13 Richard M. Stallman <rms@gnu.org>
1829
1830 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
1831
668c2ab0
JB
18322003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
1833
1834 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
1835 and use the Gtk+ function gtk_window_icon_from_file if available.
1836
1837 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
1838 handle mask of bitmaps.
1839 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
1840 mask property.
1841 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
1842
1843 * xterm.h (xg_set_icon): New function.
1844
800bebe3
RS
18452003-07-12 Paul Eggert <eggert@twinsun.com>
1846
1847 * unexelf.c (unexec): Consider a section to precede the .bss
1848 section if its addresses overlap that of .bss.
1849
69e38995
RS
18502003-07-12 Richard M. Stallman <rms@gnu.org>
1851
1852 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
1853
1854 * config.in (HAVE_CRTIN): Add #undef.
1855 (INLINE): Really inline only if OPTIMIZE is defined.
1856
1857 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
1858 END_FILES_1.
1859 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 1860 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
1861
1862 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
1863 (TERMINFO): Define.
1864 (LIBS_TERMCAP): Define.
1865 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
1866
1867 * xfns.c: Include libpng/png.h instead of png.h.
1868
f1d0c238
AS
18692003-07-11 Andreas Schwab <schwab@suse.de>
1870
1871 * buffer.c (modify_overlay): Update prototype.
1872 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
1873 Likewise.
1874
5f6bf5fe
SM
18752003-07-09 Stefan Monnier <monnier@cs.yale.edu>
1876
1877 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
1878 (struct interval): Move to intervals.h.
1879 (struct Lisp_Marker): Use EMACS_INT for position info.
1880 (forward_point): Remove prototype of defunct function.
1881 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
1882 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
1883 (syms_of_textprop, set_text_properties): Remove prototypes that are
1884 already in intervals.h.
1885
1886 * intervals.h (struct interval): Move from lisp.h.
1887 Use EMACS_INT for position and size info.
1888
1889 * coding.c: Include intervals.h for Fset_text_properties.
1890
1891 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
1892 position and length information.
1893
2765b457
SM
18942003-07-09 Stefan Monnier <monnier@cs.yale.edu>
1895
1896 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
1897 position and length information.
1898
2410d73a
SM
18992003-07-09 Stefan Monnier <monnier@cs.yale.edu>
1900
1901 Change overlays_after and overlays_before so the overlays themselves
1902 are linked into lists, rather than using cons cells. After all each
1903 Lisp_Misc already occupies 5 words, so we can add a `next' field to
1904 Lisp_Overlay for free and save up one cons cell per overlay (not
1905 to mention one indirection when traversing the list of overlay).
1906
1907 * lisp.h (struct Lisp_Overlay): New field `next'.
1908
1909 * buffer.h (struct buffer): Change overlays_before and overlays_after
1910 from Lisp lists of overlays to pointers to overlays.
1911
1912 * buffer.c (overlay_strings, recenter_overlay_lists):
1913 Fix typo in eassert in last commit.
1914 (unchain_overlay): New function.
1915 (add_overlay_mod_hooklist): Use AREF.
1916 (copy_overlays, reset_buffer, overlays_at, overlays_in)
1917 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
1918 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
1919 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
1920 (report_overlay_modification, evaporate_overlays, init_buffer_once):
1921 Adjust to new type of overlays_(before|after).
1922
1923 * alloc.c (mark_object): Mark the new `next' field of overlays.
1924 (mark_buffer): Manually mark the overlays_(after|before) fields.
1925
1926 * coding.c (run_pre_post_conversion_on_str):
1927 * editfns.c (overlays_around):
1928 * xdisp.c (load_overlay_strings):
1929 * fileio.c (Finsert_file_contents):
1930 * indent.c (current_column):
1931 * insdel.c (signal_before_change, signal_after_change):
1932 * intervals.c (set_point_both):
1933 * print.c (temp_output_buffer_setup): Use new type for
1934 overlays_(before|after).
1935
04812929
SM
19362003-07-08 Stefan Monnier <monnier@cs.yale.edu>
1937
1938 * buffer.c (report_overlay_modification): Don't run hooks while
1939 traversing the list of overlays.
1940
1941 * buffer.h (struct buffer): Use an int for overlay_center.
1942 (overlays_at, evaporate_overlays, recenter_overlay_lists)
1943 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
1944
1945 * buffer.c (reset_buffer, recenter_overlay_lists)
1946 (adjust_overlays_for_insert, adjust_overlays_for_delete)
1947 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
1948 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
1949 (overlays_at, evaporate_overlays, recenter_overlay_lists)
1950 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
1951
1952 * xdisp.c (fast_find_position): Remove unused var.
1953
1954 * cmds.c (Qexpand_abbrev): New sym.
1955 (syms_of_cmds): Initialize it.
1956 (internal_self_insert): Use it to call expand-abbrev.
1957
2e7ecf15
KS
19582003-07-09 Kim F. Storm <storm@cua.dk>
1959
1960 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
1961 was configured with --without-xim.
42f81f64 1962 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 1963
c6de56a0
RS
19642003-07-07 Richard M. Stallman <rms@gnu.org>
1965
1966 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
1967
1968 * alloc.c (Fgarbage_collect): Doc fix.
1969
b93fb365
KH
19702003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
1971
1972 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
1973
bfe1a3f7
SM
19742003-07-06 Stefan Monnier <monnier@cs.yale.edu>
1975
04812929
SM
1976 * minibuf.c (read_minibuf): UNGCPRO before returning.
1977 (Ftry_completion, Fall_completions): Doc fix.
1978
bfe1a3f7
SM
1979 * alloc.c (live_float_p): Check that p is not past the `floats' array,
1980 now that `floats' is not the last element of the struct any more.
1981
ee79d1aa
JR
19822003-07-06 Jason Rumney <jasonr@gnu.org>
1983
1984 * w32term.h (ClipboardSequence_Proc): New type.
1985
1986 * w32fns.c (clipboard_sequence_fn): New variable.
1987 (globals_of_w32fns): Initialize it.
1988
1989 * w32select.c (last_clipboard_sequence_number): New variable.
1990 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
1991 number if possible.
1992
49723c04
SM
19932003-07-06 Stefan Monnier <monnier@cs.yale.edu>
1994
4698665f
SM
1995 * m/amdx86-64.h (MARKBIT):
1996 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
1997 MARKBIT and ARRAY_MARK_FLAG any more.
1998
1999 * m/hp800.h (XSETMARKBIT):
2000 * m/sr2k.h (XSETMARKBIT):
2001 * lisp.h (XSETMARKBIT): Remove unused macro.
2002
49723c04
SM
2003 * lisp.h (mark_object): Change prototype.
2004
2005 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
2006 (last_marked): Change accordingly.
2007 (mark_interval, mark_maybe_object, mark_maybe_pointer)
2008 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
2009 (mark_buffer): Update calls to mark_object.
2010
2011 * bytecode.c (mark_byte_stack):
2012 * fns.c (sweep_weak_table):
2013 * keyboard.c (mark_kboards): Update calls to mark_object.
2014
1d660eca
JR
20152003-07-06 Jason Rumney <jasonr@gnu.org>
2016
2017 * alloc.c (struct ablock): Only include padding when there is some.
2018
618b5ae4
SM
20192003-07-04 Stefan Monnier <monnier@cs.yale.edu>
2020
2021 * alloc.c (ALIGN): Add casts to simplify usage.
2022 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
2023 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
2024 (struct ablock, struct ablocks): New types.
2025 (free_ablock): New global var.
2026 (lisp_align_malloc, lisp_align_free): New functions.
2027 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
2028 (struct float_block): Reorder and add gcmarkbits.
2029 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
2030 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
2031 (init_float, make_float): Use lisp_align_malloc.
2032 (free_float, live_float_p): Don't use `type' any more.
2033 (make_float): Use FLOAT_UNMARK to access to mark bit.
2034 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
2035 Use FLOAT_MARKED_P to access the mark bit.
2036 (pure_alloc): Simplify use of ALIGN.
2037 (mark_object): Use FLOAT_MARK to access the mark bit.
2038 (gc_sweep): Use new macros to access the float's mark bit.
2039 (init_alloc_once): Init free_ablock.
2040
2041 * lisp.h (struct Lisp_Float): Remove unused field `type'.
2042
3ef06d12
SM
20432003-06-27 Stefan Monnier <monnier@cs.yale.edu>
2044
2045 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
2046 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
2047 (allocate_buffer): Move.
2048 (string_bytes): Don't mask markbit of `size_byte'.
2049 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2050 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
2051 Use the `size' field of buffers (rather than the `name' field) for
2052 the mark bit, as is done for all other vectorlike objects.
2053 Use the new macros to access the mark bit of vectorlike objects.
2054
e81043aa
RS
20552003-06-26 Richard M. Stallman <rms@gnu.org>
2056
2057 * puresize.h (BASE_PURESIZE): Increment base size.
2058
2059 * xdisp.c (fast_find_position): Enable Gerd's new definition.
2060
2061 * xterm.c (xim_initialize): Undo previous change.
2062
2d0834cc
SM
20632003-06-26 Stefan Monnier <monnier@cs.yale.edu>
2064
2065 * alloc.c (survives_gc_p): Simplify.
2066
2067 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
2068
2069 * window.c (Fset_window_dedicated_p): Simplify.
2070 (display_buffer_1): Don't raise the win from which minibuf was entered.
2071 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
2072 (Fminibuffer_selected_window): Simplify.
2073
2074 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
2075
2076 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
2077 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
2078
2079 * insdel.c (check_markers, adjust_markers_for_delete)
2080 (adjust_markers_for_insert, adjust_markers_for_replace)
2081 (prepare_to_modify_buffer, RESTORE_VALUE):
2082 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
2083 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
2084 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
2085 * alloc.c (Fmake_marker, free_marker, gc_sweep):
2086 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
2087 * editfns.c (save_excursion_restore, transpose_markers):
2088 * window.c (delete_window):
2089 * xdisp.c (message_dolog): Update for new types.
2090
d54ae3d8
JD
20912003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2092
a5f696ac
JD
2093 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
2094 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 2095 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
2096
2097 * frame.c (make_frame): Initialize default_face_done_p.
2098
2099 * frame.h (struct frame): Add default_face_done_p.
2100
d54ae3d8
JD
2101 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
2102 will be defined.
2103
2336fe58
SM
21042003-06-25 Stefan Monnier <monnier@cs.yale.edu>
2105
2106 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
2107 Initialize the new field `gcmarkbit'.
2108 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
2109 (mark_interval_tree): Don't mark the tree separately from the nodes.
2110 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
2111 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2112 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
2113
2114 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
2115 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
2116 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
2117 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
2118 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
2119
bcea31c2
DL
21202003-06-24 Dave Love <fx@gnu.org>
2121
2122 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
2123
2124 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
2125 from gnulib.
2126
2601f59e
RS
21272003-06-21 Richard M. Stallman <rms@gnu.org>
2128
2129 * fileio.c (Fwrite_region): Alternate messages
2130 for append and partial write.
2131
2132 * keyboard.c (read_key_sequence): When converting upcase fn key to
2133 downcase, update fkey and keytran so `backspace' gets translated.
2134
2135 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
2136
2137 * process.c (wait_reading_process_input): Don't signal SIGIO
2138 in batch mode.
2139
b5d2c621
KH
21402003-06-17 Kenichi Handa <handa@m17n.org>
2141
2142 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
2143 composite.h.
2144
2145 * xselect.c: Don't include charset.h, coding.h, composite.h.
2146 (Qforeign_selection): New variable.
2147 (syms_of_xselect): Intern and static it.
2148 (selection_data_to_lisp_data): Return a unibyte string made from
2149 data with `foreign-selection' text property.
2150
6793bc63
SM
21512003-06-15 Stefan Monnier <monnier@cs.yale.edu>
2152
2153 * termhooks.h (EVENT_INIT): New macro.
2154
2155 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
2156
2157 * alloc.c (mark_kboards): Move to keyboard.c.
2158
2159 * keyboard.c (record_asynch_buffer_change, read_avail_input):
2160 * xterm.c (x_dispatch_event):
2161 * xmenu.c (find_and_call_menu_selection):
2162 * xdisp.c (handle_tool_bar_click):
2163 * w32menu.c (menubar_selection_callback):
2164 * sysdep.c (kbd_input_ast, read_input_waiting):
2165 * msdos.c (dos_rawgetc):
2166 * macterm.c (mac_check_for_quit_char):
2167 * macmenu.c (menubar_selection_callback):
2168 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
2169 data to kbd_buffer_store_event.
2170
b3ea810c
KS
21712003-06-15 Kim F. Storm <storm@cua.dk>
2172
2173 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 2174 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 2175
b8f75eda
KG
21762003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
2177
2178 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
2179
ba92ce48
KH
21802003-06-12 Kenichi Handa <handa@m17n.org>
2181
2182 * fileio.c (Fwrite_region): Save and restore restriction.
2183
b80263be
DL
21842003-06-12 Dave Love <fx@gnu.org>
2185
2186 * alloca.c (alloca): Declare arg as size_t.
2187
6793bc63
SM
2188 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
2189 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 2190
b23c0a83
DL
21912003-06-11 Dave Love <fx@gnu.org>
2192
2193 * search.c (shrink_regexp_cache): Use xrealloc.
2194 (syms_of_search): Use xmalloc.
2195
700e47c2
KS
21962003-06-10 Kim F. Storm <storm@cua.dk>
2197
2198 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
2199 Adjust phys_cursor.x to be relative to window box, rather than
2200 text area before checking -- to ensure cursor is redrawn when
2201 exposing window.
2202 Note: This also fixes a similar (older) bug if display margins
2203 are present.
2204
f11aa0b2
KH
22052003-06-06 Kenichi Handa <handa@m17n.org>
2206
2207 * coding.c (encoding_buffer_size): If coding->type is
2208 coding_type_ccl, double magnification on CRLF encoding.
2209
3d143690
JR
22102003-06-06 Jason Rumney <jasonr@gnu.org>
2211
2212 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
2213 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
2214
2215 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
2216 Mac too.
2217
f16205ca
DL
22182003-06-05 Dave Love <fx@gnu.org>
2219
b23c0a83
DL
2220 * strftime.c: Merge changes from gnulib.
2221
f16205ca
DL
2222 * mktime.c (__mktime_internal): Merge changes from gnulib
2223 involving year 69 and dst2.
2224
2225 Changes to merge with gnulib version and be consistent with the
2226 autoconf test:
2227
6793bc63
SM
2228 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
2229 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
2230 [HAVE_LOCALE_H]: Include locale.h.
2231 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
2232
9b87a0bc
KS
22332003-06-05 Kim F. Storm <storm@cua.dk>
2234
2235 * window.c (coordinates_in_window): Convert X and Y to window
2236 relative coordinates inside mode-line and header-line parts.
2237 Convert X and Y to margin area relative coordinates inside left
2238 and right display margin parts.
2239
5a8a15ec
JR
22402003-06-05 Jason Rumney <jasonr@gnu.org>
2241
2242 * w32fns.c (add_system_logical_colors_to_map): New function.
2243 (Fx_open_connection): Use it.
2244
01ed8ff1
SM
22452003-06-04 Stefan Monnier <monnier@cs.yale.edu>
2246
2247 * process.c (allocate_pty): Revert part of the previous patch.
2248 (Faccept_process_output): Simplify.
2249
b427b65d
JR
22502003-06-04 Jason Rumney <jasonr@gnu.org>
2251
2252 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
2253
2254 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
2255 (lispy_mouse_wheel_names): Remove.
2256 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
2257 Always define drag_and_drop_syms.
2258
2259 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
2260 WHEEL_EVENT events.
2261
914a8c47
SM
22622003-06-03 Stefan Monnier <monnier@cs.yale.edu>
2263
01ed8ff1
SM
2264 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
2265
914a8c47
SM
2266 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
2267
adcb132c
JD
22682003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2269
2270 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
2271 menu item label.
2272
be781fa7
RS
22732003-06-03 Richard M. Stallman <rms@gnu.org>
2274
2275 * window.c (Fwindow_edges): Doc fix.
2276 (Fwindow_pixel_edges, Fwindow_inside_edges)
2277 (Fwindow_inside_pixel_edges): New functions.
2278 (syms_of_window): defsubr them.
2279
2280 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
2281 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
2282
914a8c47
SM
22832003-06-02 Stefan Monnier <monnier@cs.yale.edu>
2284
2285 * dispnew.c (Fsit_for): Don't lie about the number of args.
2286
5b07197a
DL
22872003-06-02 Dave Love <fx@gnu.org>
2288
2289 * callproc.c: Use HAVE_FCNTL_H, not USG5.
2290 (syms_of_callproc) <process-environment>: Doc fix.
2291
2292 * doc.c: Use HAVE_FCNTL_H, not USG5.
2293
2294 * xfaces.c (font_rescale_ratio): Fix for K&R.
2295
2296 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
2297
2298 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
2299
2300 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
2301
2302 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
2303 (xg_create_frame_widgets): Use ENCODE_UTF_8.
2304
d7107586 2305 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
2306
2307 * xmenu.c (ENCODE_MENU_STRING): New.
2308 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
2309 Use it.
2310
2311 * coding.h (ENCODE_UTF_8): New.
2312 (Qutf_8): Declare.
2313
2314 * coding.c (Qutf_8): New.
2315 (syms_of_coding): Intern it.
2316
2317 * fns.c: Doc fixes.
2318
7335b336
KH
23192003-06-02 Kenichi Handa <handa@m17n.org>
2320
2321 * buffer.c (Fset_buffer_multibyte): Fix previous change.
2322
914a8c47
SM
23232003-06-01 Stefan Monnier <monnier@cs.yale.edu>
2324
2325 * lread.c (openp): Make sure STR is a string.
2326
9862c135
JR
23272003-06-01 David Ponce <david@dponce.com>
2328
2329 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
2330 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
2331
2332 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
2333 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
2334 (discard_mouse_events): Discard WHEEL_EVENT events too.
2335 (lispy_wheel_names, wheel_syms): New.
2336 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
2337 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
2338 defined.
914a8c47 2339 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
2340
2341 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
2342 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
2343 WHEEL_EVENT events.
2344
f984e73e
JPW
23452003-05-31 John Paul Wallington <jpw@gnu.org>
2346
2347 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
2348 timer are in lisp/emacs-lisp.
2349
1efcd78f
KH
23502003-05-31 Kenichi Handa <handa@m17n.org>
2351
458c8af4
KH
2352 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
2353 region when a buffer is changed to unibyte.
2354
1efcd78f
KH
2355 * charset.h (VALID_LEADING_CODE_P): New macro.
2356 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
2357
778e2804
KH
2358 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
2359 is nonzero, accept multibyte form of eight-bit-control chars.
2360 (decode_composition_emacs_mule): Likewise.
2361 (decode_coding_emacs_mule): Likewise.
2362 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
2363 multibyte form of eight-bit-control chars.
2364
2365 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
2366 (Finsert_file_contents): If coding-system-for-read is bound to
2367 Qauto_save_coding, use the coding system emacs-mule with special
2368 setting for recovering a file.
2369 (choose_write_coding_system): On auto saving, use the coding
2370 system emacs-mule with special setting for auto saving.
2371 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
2372
034060e4
KH
23732003-05-30 Kenichi Handa <handa@m17n.org>
2374
2375 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
2376 properly before calling ccl_driver.
2377
778e2804 2378 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
2379
2380 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
2381 nonzero.
2382 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
2383 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
2384
595f5aa5
GM
23852003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
2386
2387 * xfaces.c (realize_default_face): Do not abort if lface is
2388 non-existent - reverts change from 2003-05-19.
2389
103e0180
KH
23902003-05-29 Kenichi Handa <handa@m17n.org>
2391
2392 * coding.c (decode_coding_iso2022): Pay attention to the byte
2393 sequence of CTEXT extended segment, and retain those bytes as is.
2394
23952003-05-28 Kenichi Handa <handa@m17n.org>
2396
2397 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
2398 of CODING_REPLACEMENT_CHARACTER.
2399 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
2400 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
2401 check this flag on encoding.
2402 (encode_coding_sjis_big5): Check
2403 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
2404 (Fset_terminal_coding_system_internal): Set
2405 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
2406 instead of setting CODING_FLAG_ISO_SAFE flag in
2407 terminal_coding.flags.
2408
2409 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
2410 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
2411 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
2412
ff6a3bfb 24132003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 2414
ff6a3bfb
RS
2415 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
2416
2417 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 2418
1963c428
KS
24192003-05-28 Kim F. Storm <storm@cua.dk>
2420
2421 * xdisp.c (expose_window): Fix error in calculation of
2422 window relative coordinates of area to redisplay.
2423
2b5d4601
JR
24242003-05-27 Jason Rumney <jasonr@gnu.org>
2425
2426 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
2427
1c64a4a2
JB
24282003-05-27 David Ponce <david@dponce.com>
2429
2430 Handle W32 mouse wheel events as mouse click events, like in X.
2431
2432 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
2433 MOUSE_WHEEL_EVENT anymore.
2434
2435 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
2436 Scrolling down/up the mouse wheel is respectively mapped to mouse
2437 button 4 and 5.
2438 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
2439 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
2440 WM_MOUSEWHEEL events.
2441
2d031b89
AS
24422003-05-27 Andreas Schwab <schwab@suse.de>
2443
20464fdf
AS
2444 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
2445
2d031b89
AS
2446 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
2447 partially visible line.
2448
2449 * alloc.c (Fgarbage_collect): Fix last change.
2450
97bc76d4
JPW
24512003-05-26 John Paul Wallington <jpw@gnu.org>
2452
2453 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
2454
56613f06
SM
24552003-05-25 Stefan Monnier <monnier@cs.yale.edu>
2456
2457 * window.c (Fset_window_buffer): Add type of `keep_margins'.
2458 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
2459
2460 * window.h (window_box_text_cols): Declare.
2461
2462 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
2463 (x_draw_vertical_border): Remove unused var `f'.
2464
2465 * xfaces.c (build_scalable_font_name): Remove `unused var
2466 pixel_size' warning.
2467
2468 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
2469
2470 * unexelf.c (unexec): Remove `unused var n' warning.
2471
2472 * strftime.c (my_strftime_localtime_r): Remove `defined but
2473 unused' warning.
2474
2475 * process.c (allocate_pty): Remove `unused var stb' and
2476 `cp might be used uninitialized' warnings.
2477
2478 * dispnew.c (mode_line_string): Remove unused var `f'.
2479
2480 * coding.c (find_safe_codings): Remove unused var `i'.
2481
2482 * bytecode.c (Fbyte_code): Remove `unused val' warning.
2483
2484 * buffer.c (Fkill_buffer): Remove unused var `list'.
2485
2486 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
2487
93421a1f
JD
24882003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2489
2490 * frame.c (make_frame): Condition want_fullscreen with
2491 HAVE_WINDOW_SYSTEM.
2492
c4b8aebc
JB
24932003-05-25 Juanma Barranquero <lektu@terra.es>
2494
2495 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
2496 (Fwindow_scroll_bars): Fix typo in docstring.
2497
0416870b
KS
24982003-05-24 Kim F. Storm <storm@cua.dk>
2499
2500 The following changes serve several purposes:
2501
2502 1) Swap the position of fringes and display margins in windows, i.e.
2503 the fringes are now displayed between the margins and the text area
2504 (by default).
2505
2506 2) Allow fringe and scroll bar parameters to be set per-buffer and
2507 per-window (like display margins). Such settings are now stored
2508 in window configurations, preserved when frames are resized, and
9018a88e 2509 copied when windows are split vertically or horizontally.
0416870b
KS
2510 Several bugs related to display margins have been fixed.
2511
2512 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 2513
0416870b
KS
2514 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
2515 rather than FRAME_WIDTH (FRAME_FONT (f)).
2516
2517 5) Introduce a consistent naming of variables, members and macros
2518 depending on whether their value is measured in pixels or in
2519 canonical columns/lines. Pixel dimensions are named *_width and
2520 *_height, while canonical columns/lines are named *_cols and
2521 *_lines. Pixel positions are named *_x and *_y, while column/line
2522 positions are named *_col and *_line.
2523
2524 6) Consolidate more of the X, W32, and MAC gui code by moving
2525 common data into struct frame, and generalize it for the non-gui
2526 case by using suitable defaults.
2527
2528 7) Cleanup and consolidate the macros controlling frame and window
2529 layout into frame.h and window.h, and generalize the use of the
2530 various window_box_* functions (enhanced to handle the new fringe
2531 position and the per-window fringe and scroll bar settings).
2532
2533 * frame.h (struct frame): Rename members height to text_lines,
2534 width to text_cols, window_height to total_lines, window_width to
2535 total_cols, new_height to new_text_lines, new_width to
2536 new_text_cols. All uses changed.
2537 (struct frame): New members which consolidate common members of
2538 x_output, w32_output, and mac_output structures: left_pos,
2539 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
2540 win_gravity, size_hint_flags, border_width, internal_border_width,
2541 line_height, fringe_cols, left_fringe_width, right_fringe_width,
2542 want_fullscreen. All uses changed.
2543 (struct frame): New member column_width contaning the canonical
2544 column width, analogue to line_height. All uses changed.
2545 (struct frame): Rename members scroll_bar_pixel_width to
2546 config_scroll_bar_width, and scroll_bar_cols to
2547 config_scroll_bar_cols. All uses changed.
2548 (struct frame): New member scroll_bar_actual_width which
2549 consolidates and renames the vertical_scroll_bar_extra member of
2550 x_output, w32_output, and mac_output structures. All uses changed.
2551 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
2552 from x/w32/macterm.h files. All uses changed. Also change code
2553 which referred to f->output_data...->pixel_height.
2554 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
2555 from x/w32/macterm.h files. All uses changed. Also change code
2556 which referred to f->output_data...->pixel_width.
2557 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
2558 Also change code which referred to f->height.
2559 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
2560 Also change code which referred to f->width.
2561 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
2562 to update new_text_lines and new_text_cols members directly.
2563 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
2564 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
2565 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
2566 FRAME_SCROLL_BAR_COLS. All uses changed.
2567 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
2568 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
2569 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
2570 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
2571 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
2572 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
2573 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
2574 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
2575 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
2576 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
2577 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
2578 return line_height member (it now has proper value also for
2579 non-window frames).
2580 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
2581 return new column_width member (rather than the default font width).
2582 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
2583 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
2584 from x/w32/macterm.h files. Unconditionally return corresponding
2585 member of frame structure (they now have proper values also for
2586 non-window frames).
2587 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
2588 Calculate return value from left and right widths.
2589 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
2590 internal_border_width member (has proper value for non-window frame).
2591 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
2592 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
2593 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
2594 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
2595 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
2596 consolidated from xterm.h, macterm.h, and w32term.h.
2597 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
2598 consolidated from xterm.h, macterm.h, and w32term.h.
2599 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
2600 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
2601 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
2602 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
2603 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
2604 consolidated from x/mac/w32term.h.
2605 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
2606 consolidated from x/mac/w32term.h.
2607 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
2608 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
2609 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
2610 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
2611
2612 * window.h (struct window): Rename members left to left_col,
2613 top to top_line, height to total_lines, width to total_cols,
2614 left_margin_width to left_margin_cols, right_margin_width to
2615 right_margin_cols, orig_height to orig_total_lines, orig_top to
2616 orig_top_line. All uses changed.
2617 (struct window): New members left_fringe_width, right_fringe_width,
2618 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
2619 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
2620 New macros primarily used to simplify other macros.
2621 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
2622 referred to XINT (w->width).
2623 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
2624 referred to XINT (w->height).
2625 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
2626 referred to XINT (w->width) * canon_x_unit.
2627 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
2628 referred to XINT (w->height) * canon_y_unit.
2629 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
2630 referred to XINT (w->left).
2631 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
2632 all uses and code that referred to XINT (w->left) + XINT (w->width).
2633 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
2634 referred to XINT (w->top).
2635 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
2636 referred to XINT (w->top) + XINT (w->height).
2637 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
2638 referred to XINT (w->left) * canon_x_unit.
2639 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
2640 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
2641 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
2642 referred to XINT (w->top) * canon_y_unit.
2643 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
2644 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
2645 (WINDOW_LEFTMOST_P): New macro.
2646 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
2647 All uses changed.
2648 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
2649 All uses changed.
2650 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
2651 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
2652 Do not exclude left fringe width.
2653 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
2654 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
2655 Do not exclude fringe widths.
2656 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
2657 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
2658 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
2659 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
2660 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
2661 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
2662 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
2663 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
2664 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
2665 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
2666 New macros. Change code which referenced corresponding
2667 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
2668 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
2669 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
2670 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
2671 allow per-window scroll-bar settings.
2672 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
2673 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
2674 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
2675 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
2676 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
2677 FRAME_SCROLL_BAR_WIDTH.
2678 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 2679 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
2680 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
2681 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
2682 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
2683 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
2684 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
2685 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
2686 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
2687 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
2688 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
2689 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
2690 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
2691 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
2692 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
2693 (window_from_coordinates): Update prototype.
2694 (Fset_window_buffer): Update EXFUN.
2695 (set_window_buffer): Update prototype.
9018a88e 2696
0416870b 2697 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 2698 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
2699 changed.
2700 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
2701 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
2702 internal_border_width is now set to 0 for non-window frames.
2703 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
2704 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
2705 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
2706 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
2707 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
2708 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
2709 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
2710 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
2711 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 2712 Move to window.h and renamed [see window.h changes].
0416870b
KS
2713 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
2714 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
2715 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
2716 Use WINDOW_TOTAL_LINES.
0416870b
KS
2717 (frame_update_line_height): Remove prototype.
2718
2719 * buffer.h (struct buffer): Rename members measured in columns:
2720 left_margin_width to left_margin_cols, right_margin_width to
2721 right_margin_cols. All uses changed.
2722 New members left_fringe_width, right_fringe_width,
2723 fringes_outside_margins for per-buffer fringe settings.
2724 New members scroll_bar_width and vertical_scroll_bar_type for
2725 per-buffer scroll bar settings.
2726
2727 * buffer.c (init_buffer_once): Set buffer_defaults and
2728 buffer_local_flags for new buffer-local variables
2729 left_fringe_width, right_fringe_width, fringes_outside_margins,
2730 scroll_bar_width, and vertical_scroll_bar_type.
2731 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
2732 default-* variables for them.
2733
2734 * dispnew.c: Make (many) trivial substitutions for renamed and
2735 new macros in dispextern.h, frame.h and window.h.
2736 (mode_line_string): No need to adjust width for mode lines, as it
2737 is already adjusted by the caller.
2738 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 2739
0416870b
KS
2740 * frame.c: Make (many) trivial substitutions for renamed and
2741 new macros in dispextern.h, frame.h and window.h.
2742 (make_frame): Initialize left_fringe_width, right_fringe_width,
2743 fringe_cols, scroll_bar_actual_width, border_width,
2744 internal_border_width, column_width, line_height, x_pixels_diff,
2745 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
2746 members with values suitable for a non-window frames.
2747
2748 * gtkutil.c: Make (many) trivial substitutions for renamed and
2749 new macros in dispextern.h, frame.h and window.h.
9018a88e 2750
0416870b
KS
2751 * indent.c: Make (few) trivial substitutions for renamed and
2752 new macros in dispextern.h, frame.h and window.h.
2753
2754 * keyboard.c: Make (many) trivial substitutions for renamed and
2755 new macros in dispextern.h, frame.h and window.h.
2756 (make_lispy_event): Use window positions returned from
2757 window_from_coordinates when constructing the lisp event for
2758 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
2759 (incorrect) values locally.
2760 (make_lispy_movement): Use window positions returned from
2761 window_from_coordinates when constructing the lisp event, rather
2762 than calculating (incorrect) values locally.
2763
2764 * scroll.c: Make (some) trivial substitutions for renamed and
2765 new macros in dispextern.h, frame.h and window.h.
2766
2767 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
2768 scroll-bars.
2769
2770 * sysdep.c: Make (few) trivial substitutions for renamed and
2771 new macros in dispextern.h, frame.h and window.h.
2772
2773 * term.c: Make (some) trivial substitutions for renamed and
2774 new macros in dispextern.h, frame.h and window.h.
2775
2776 * widget.c: Make (few) trivial substitutions for renamed and
2777 new macros in dispextern.h, frame.h and window.h.
2778
2779 * window.c: Make (many) trivial substitutions for renamed and
2780 new macros in dispextern.h, frame.h and window.h.
2781 (make_window): Initialize new members
2782 left_margin_cols, right_margin_cols, left_fringe_width,
2783 right_fringe_width, fringes_outside_margins, scroll_bar_width,
2784 and vertical_scroll_bar_type.
2785 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 2786 and per-window fringes and scroll-bars.
0416870b 2787 Fix bug related to incorrectly adjusting coordinates by
9018a88e 2788 frame's internal_border_width (the effect normally negible since
0416870b
KS
2789 the internal_border_width is typically 0 or 1 pixel, but very
2790 noticeable for an internal_border_width of e.g. 25 pixels).
2791 Upon successful return (other than ON_NOTHING), the coordinates
2792 are now always properly converted to window relative for the
2793 given display element.
2794 (window_from_coordinates): Add new parameters wx and wy to
2795 return the window relative x and y position in the returned
2796 window and part. A null arg means, don't return the position.
2797 All callers changed.
2798 (adjust_window_margins): New function which may reduce the width
2799 of the display margins if a window's text area is too small after
2800 resizing or splitting windows.
2801 (size_window): Fix bug that did not account for display margin
2802 widths when checking the minimum width of a window; use
2803 adjust_window_margins.
2804 (set_window_buffer): Call Fset_window_fringes and
2805 Fset_window_scroll_bars to setup per-window elements.
2806 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
2807 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
2808 (e.g. after splitting a window or resizing the frame).
2809 All callers changed.
0416870b
KS
2810 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
2811 (Fsplit_window): Duplicate original window's display margin,
2812 fringe, and scroll-bar settings; then call Fset_window_buffer with
2813 KEEP_MARGINS non-nil. This fixes a bug which caused a split
2814 window to only preserve the display margins in one of the windows.
c4b8aebc 2815 When splitting horizontally, call adjust_window_margins on both
0416870b
KS
2816 windows to ensure that the text area of the new windows is non too
2817 narrow. This fixes a bug which could cause emacs to trap if the
2818 width of the split window was less than the width of the display
2819 margins.
9018a88e
SM
2820 (window_box_text_cols): Renamed from window_internal_width.
2821 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
2822 Fix bug that caused vertical separator to be subtracted also on
2823 window frames. Fix another bug that did not reduce the returned
2824 value by the columns used for display margins.
2825 (window_scroll_line_based): Fix bug related to scrolling too much
2826 when display margins are present (implicitly fixed by the fix to
2827 window_box_text_cols).
2828 (scroll_left, scroll_right): Fix bug related to scrolling too far
2829 by default when display margins are present (implicitly fixed by
2830 the fix to window_box_text_cols).
2831 (struct saved_window): Rename members left to left_col, top to
2832 top_line, width to total_cols, height to total_lines, orig_top to
2833 orig_top_line, orig_height to orig_total_lines. All uses changed.
2834 New members left_margin_cols, right_margin_cols,
2835 left_fringe_width, right_fringe_width, fringes_outside_margins,
2836 scroll_bar_width, and vertical_scroll_bar_type for saving
2837 per-window display elements.
2838 (Fset_window_configuration): Restore display margins, fringes,
2839 and scroll bar settings. This fixes a bug which caused display
2840 margins to be discarded when saving and restoring a window
2841 configuration.
2842 (save_window_save): Save display margins, fringes, and scroll bar
2843 settings. This fixes a bug which caused display margins to be
2844 discarded when saving and restoring a window configuration.
2845 (Fset_window_margins): Do nothing if display margins are not
2846 really changed. Otherwise, call adjust_window_margins to ensure
2847 the text area doesn't get too narrow. This fixes a bug which
2848 could cause emacs to trap if setting display margins wider than
2849 the width of the window.
2850 (Fset_window_fringes): New defun to allow user to specifically set
2851 this window's fringe widths and position vs. display margins.
2852 (Fwindow_fringes): New defun to return window's actual fringe
2853 settings.
2854 (Fset_window_scroll_bars): New defun to allow user to specifically
2855 set this window's scroll bar width and position.
2856 (Fwindow_scroll_bars): New defun to return window's actual scroll
2857 bar settings.
2858 (compare_window_configurations): Also compare display margins,
2859 fringes, and scroll bar settings.
2860 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
2861
2862 * xdisp.c: Make (many) trivial substitutions for renamed and
2863 new macros in dispextern.h, frame.h and window.h.
2864 (window_box_width): Adapt to per-window fringes and scroll bars,
2865 and new fringe vs. display margin position. Note that returned
2866 value is no longer guaranteed to be a whole multiple of the frame
2867 column width, since per-window fringes may now be any width.
2868 (window_box_left_offset): New function like window_box_left, but
2869 value is relative to left border of window (rather than frame).
2870 (window_box_right_offset): New function like window_box_right,
2871 but value is relative to left border of window.
2872 (window_box_left): Adapt to per-window fringes and scroll bars,
2873 and new fringe vs. display margin position. Simplify by using
2874 WINDOW_LEFT_EDGE_X and window_box_left_offset.
2875 (window_box): Allow null args for unnecessary return values;
2876 change/simplify relevant callers.
2877 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
2878 and new fringe vs. display margin position.
2879 Use window_box_left_offset and window_box_right_offset
0416870b 2880 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
2881 scroll bars, and new fringe vs. display margin position.
2882 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
2883 (draw_fringe_bitmap): Rework to handle per-window fringes and new
2884 fringe vs. display margin position.
2885 (hscroll_window_tree): Use window_box_width instead of window_box.
2886 (redisplay_window): Adapt to per-window scroll bars.
2887 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
2888 bars, and new fringe vs. display margin position.
2889 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
0416870b
KS
2890 (x_clear_end_of_line): Adapt to per-window fringes and scroll
2891 bars, and new fringe vs. display margin position. Fix bug which
2892 increased total width of full_width rows by width of scroll bars
2893 although window's total width already includes that.
2894 (x_fix_overlapping_area): Simplify using window_box_left_offset.
2895 (expose_area): Simplify using window_box_left_offset.
2896 (x_draw_vertical_border): Handle per-window scroll bar settings,
2897 mixing windows with left, right and no scroll bars.
2898
2899 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
2900 where it's used in x_list_fonts (for clarity).
2901 (frame_update_line_height): Remove unused function; functionality
2902 is now done directly when setting the default font in x_set_font.
2903
2904 * xfns.c: Make (many) trivial substitutions for renamed and
2905 new macros in dispextern.h, frame.h and window.h.
2906
2907 * xmenu.c: Make (some) trivial substitutions for renamed and
2908 new macros in dispextern.h, frame.h and window.h.
2909
2910 * xterm.h (struct x_output): Move members left_pos, top_pos,
2911 border_width, pixel_height, pixel_width, line_height,
2912 internal_border_width, vertical_scroll_bar_extra,
2913 left_fringe_width, right_fringe_width, fringe_cols,
2914 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
2915 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
2916 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
2917 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
2918 (PIXEL_WIDTH, PIXEL_HEIGHT)
2919 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
2920 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
2921 frame.h and renamed [see frame.h changes].
2922 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
2923 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
2924 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
2925 and renamed [see frame.h changes].
9018a88e 2926
0416870b
KS
2927 * xterm.c: Make (several) trivial substitutions for renamed and
2928 new macros in dispextern.h, frame.h and window.h.
2929 (x_draw_glyph_string_box): Adapt to per-window fringes and
2930 scroll-bars.
2931 (scroll_run): Adapt to new fringe position.
2932 (glyph_rect): Use window coordinates returned from
2933 window_from_coordinates rather than frame_to_window_pixel_xy.
2934 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
2935 scroll-bars.
2936 (handle_one_xevent): Simplify a USE_GTK conditional.
2937 (x_clip_to_row): Remove superfluous whole_line_p arg and code
2938 (fringes are now inside margins, i.e. always in the clipping area).
2939 All callers changed.
2940 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
2941 directly, then call compute_fringe_widths. Don't call
2942 frame_update_line_height.
2943
2944 * w32term.h (struct w32_output): Move members left_pos, top_pos,
2945 border_width, pixel_height, pixel_width, line_height,
2946 internal_border_width, vertical_scroll_bar_extra,
2947 left_fringe_width, right_fringe_width, fringe_cols,
2948 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
2949 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
2950 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
2951 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
2952 (PIXEL_WIDTH, PIXEL_HEIGHT)
2953 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
2954 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
2955 frame.h and renamed [see frame.h changes].
2956 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
2957 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
2958 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
2959 and renamed [see frame.h changes].
9018a88e 2960
0416870b
KS
2961 * w32term.c: Make (several) trivial substitutions for renamed and
2962 new macros in dispextern.h, frame.h and window.h.
2963 (x_draw_glyph_string_box): Adapt to per-window fringes and
2964 scroll-bars.
2965 (glyph_rect): Use window coordinates returned from
2966 window_from_coordinates rather than frame_to_window_pixel_xy.
2967 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
2968 scroll-bars.
2969 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
2970 (fringes are now inside margins, i.e. always in the clipping area).
2971 All callers changed.
2972 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
2973 directly, then call compute_fringe_widths. Don't call
2974 frame_update_line_height.
2975
2976 * w32console.c: Make (few) trivial substitutions for renamed and
2977 new macros in dispextern.h, frame.h and window.h.
2978
2979 * w32fns.c: Make (many) trivial substitutions for renamed and
2980 new macros in dispextern.h, frame.h and window.h.
2981
2982 * w32menu.c: Make (few) trivial substitutions for renamed and
2983 new macros in dispextern.h, frame.h and window.h.
2984
2985 * macterm.h (struct mac_output): Move members left_pos, top_pos,
2986 border_width, pixel_height, pixel_width, line_height,
2987 internal_border_width, vertical_scroll_bar_extra,
2988 left_fringe_width, right_fringe_width, fringe_cols,
2989 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
2990 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
2991 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
2992 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
2993 (PIXEL_WIDTH, PIXEL_HEIGHT)
2994 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
2995 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
2996 frame.h and renamed [see frame.h changes].
2997 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
2998 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
2999 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3000 and renamed [see frame.h changes].
9018a88e 3001
0416870b
KS
3002 * macterm.c: Make (several) trivial substitutions for renamed and
3003 new macros in dispextern.h, frame.h and window.h.
3004 (x_draw_glyph_string_box): Adapt to per-window fringes and
3005 scroll-bars.
3006 (glyph_rect): Use window coordinates returned from
3007 window_from_coordinates rather than frame_to_window_pixel_xy.
3008 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3009 scroll-bars.
3010 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3011 (fringes are now inside margins, i.e. always in the clipping area).
3012 All callers changed.
3013 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3014 directly, then call compute_fringe_widths. Don't call
3015 frame_update_line_height.
3016
3017 * macfns.c: Make (several) trivial substitutions for renamed and
3018 new macros in dispextern.h, frame.h and window.h.
9018a88e 3019 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
3020
3021 * macmenu.c: Make (few) trivial substitutions for renamed and
3022 new macros in dispextern.h, frame.h and window.h.
3023
3024 * msdos.h (struct x_output): Remove members left_pos, top_pos,
3025 and line_height, and use corresponding new members in struct
3026 frame. All uses changed.
3027 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
3028 superseeded by corresponding macros in frame.h.
3029
3030 * msdos.c: Make (several) trivial substitutions for renamed and
3031 new macros in dispextern.h, frame.h and window.h.
3032 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 3033 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
3034 (internal_terminal_init): No need to initialize line_height here;
3035 it now defaults to 1.
3036
9018a88e
SM
30372003-05-24 Stefan Monnier <monnier@cs.yale.edu>
3038
3039 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
3040 dropping `down' events.
3041
016bd3c0
AS
30422003-05-24 Andreas Schwab <schwab@suse.de>
3043
3044 * coding.c (find_safe_codings): Fix last change.
3045
4dacadcc
TTN
30462003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
3047
3048 * xfns.c (x_window): Fix typo from 2003-05-21 change.
3049
319830ce
SM
30502003-05-23 Stefan Monnier <monnier@cs.yale.edu>
3051
9018a88e
SM
3052 * xdisp.c (display_mode_element): Increase max depth.
3053 Simplify the error handling code. Use a different error string
3054 for the case where we hit the depth limit.
3055
319830ce
SM
3056 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
3057
3058 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
3059
30602003-05-21 Stefan Monnier <monnier@cs.yale.edu>
3061
3062 * intervals.c (get_local_map): Don't get char-property of previous
3063 point any more: get_pos_property already does it and better.
3064
c67de8ba
DL
30652003-05-21 Dave Love <fx@gnu.org>
3066
3067 [Merged from unicode branch.]
3068
3069 * xfns.c (x_window, x_window): Use use_xim.
3070
3071 * xterm.c (use_xim): Initialize.
3072 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
3073 (x_term_init): Maybe set use_xim.
3074
3075 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
3076
edd3ff1d
JR
30772003-05-21 Jason Rumney <jasonr@gnu.org>
3078
3079 * unexw32.c (_start): Remove _fmode initialization.
3080
3081 * emacs.c (main) [WINDOWSNT]: Move it here.
3082
463f55ee
DL
30832003-05-20 Dave Love <fx@gnu.org>
3084
3085 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
3086
af253914
RS
30872003-05-19 Richard M. Stallman <rms@gnu.org>
3088
3089 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
3090 as value for QCfont attribute.
3091 (realize_default_face): lface should already exist; crash if not.
3092 Specify 0 for FORCE_P when calling set_lface_from_font_name.
3093
3094 * frame.c (Fignore_event): Doc fix.
3095
1d211019
KH
30962003-05-19 Kenichi Handa <handa@m17n.org>
3097
3098 * coding.c (decode_coding_string): Handle post-read-conversion
3099 even if the coding doesn't require decoding.
3100
4dd68254
RS
31012003-05-18 Richard M. Stallman <rms@gnu.org>
3102
3103 * callproc.c (Fcall_process_region): Doc fix.
3104
14d87dc9
SM
31052003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3106
deca5d96
SM
3107 * lread.c (Fload): Print a message if package is obsolete.
3108
14d87dc9
SM
3109 * window.c (Fselect_window): Add optional `norecord' arg.
3110 (select_window_1): Fold into Fselect_window.
3111 (select_window_norecord): New function.
3112 (temp_output_buffer_show): Use it. Preserve current buffer.
3113
3114 * window.h (Fselect_window): Update declaration.
3115
3116 * window.c (delete_window, Fother_window, Fset_window_configuration):
3117 * minibuf.c (read_minibuf):
3118 * macterm.c (x_new_focus_frame):
3119 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
3120 * callint.c (Fcall_interactively):
3121 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
3122
3123 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
3124
78f52183
DK
31252003-05-17 David Kastrup <dak@gnu.org>
3126
3127 * process.c (read_process_output): Back out change from 2003-03-09.
3128
14d87dc9
SM
31292003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3130
3131 * editfns.c (get_pos_property): Don't assume that `object' = nil.
3132
3133 * textprop.c (text_property_stickiness): New arg `buffer'.
3134
3135 * intervals.h (text_property_stickiness): New arg `buffer'.
3136 (get_pos_property): Declare.
3137
3138 * intervals.c (get_local_map): Use get_pos_property, to obey
3139 stickiness and empty overlays.
3140 (create_root_interval, graft_intervals_into_buffer): Use BEG.
3141 (merge_properties, intervals_equal, merge_properties_sticky):
3142 Use XCAR, XCDR.
3143 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
3144
1fd1cc2f
RS
31452003-05-17 Richard M. Stallman <rms@gnu.org>
3146
4f9f637a
RS
3147 * minibuf.c (read_minibuf): If buffer is empty, record the default
3148 in the history.
3149 (Fminibuffer_complete_word): When deleting the overlap, take account
3150 of its real position.
3151
3152 * fns.c (map_char_table): Fix previous change.
3153
1fd1cc2f
RS
3154 * syntax.c (find_defun_start):
3155 When open_paren_in_column_0_is_defun_start,
3156 return beginning of buffer.
3157
3158 * lisp.h (map_char_table): Declare added arg.
3159
3160 * fns.c (map_char_table): New arg TABLE gets the master table.
3161 All calls changed.
3162 Process default and inheritance, resorting to Faref if necessary.
3163
3164 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
3165 (Faccessible_keymaps): Pass new arg to map_char_table.
3166
3167 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
3168
3169 * casetab.c (set_case_table): Pass new arg to map_char_table.
3170
3171 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
3172
3173 * lisp.h (specbinding_func): New typedef.
3174 (struct specbinding): Use specbinding_func, to put the `volatile'
3175 in the right place.
3176
3177 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
3178 to avoid GCC warning.
14d87dc9 3179
b4bd27c5
RS
31802003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
3181
14d87dc9 3182 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 3183
35fb885d
SM
31842003-05-15 Stefan Monnier <monnier@cs.yale.edu>
3185
3186 * keyboard.c (apply_modifiers): Don't fill the other cache.
3187
9a274fbd
SM
31882003-05-14 Stefan Monnier <monnier@cs.yale.edu>
3189
c55b5fad
SM
3190 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
3191
9a274fbd
SM
3192 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
3193 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
3194 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
3195 (Fset_window_configuration, Fcurrent_window_configuration)
3196 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
3197 (Fpos_visible_in_window_p, mark_window_cursors_off)
3198 (window_internal_height, window_internal_width, Frecenter)
3199 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
3200 (replace_buffer_in_all_windows, init_window_once, init_window)
3201 (syms_of_window, keys_of_window): Move from lisp.h.
3202 * lisp.h: Move window.c declarations to window.h.
3203
3204 * bytecode.c: Include window.h.
3205 * emacs.c: Include window.h.
3206
14d87dc9 3207 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
3208 (keyremap): Add `parent' field.
3209 (keyremap_step): Use it. Remove `parent' argument.
3210 (read_key_sequence): Setup and use the new `parent' field.
3211
fd93e331
SM
32122003-05-11 Stefan Monnier <monnier@cs.yale.edu>
3213
3214 * keyboard.c (adjust_point_for_property): Ensure termination.
3215
1c4001a1
SM
32162003-05-10 Stefan Monnier <monnier@cs.yale.edu>
3217
3218 * keyboard.c (follow_key): Remove dead variable `did_meta'.
3219 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
3220 duplicated handling of function-key-map and key-translation-map
3221 in read_key_sequence.
3222 (read_key_sequence): Use them.
3223
3224 * keyboard.c (adjust_point_for_property): Try harder to move point
3225 to the non-sticky end of an invisible property.
3226
3227 * xdisp.c (single_display_prop_intangible_p): Make `space' display
3228 property intangible as well.
3229
780379b1
AS
32302003-05-10 Andreas Schwab <schwab@suse.de>
3231
3232 * xmenu.c (single_menu_item): Change last parameter to void* to
3233 avoid warning.
3234
ca2de342
RS
32352003-05-09 Richard M. Stallman <rms@gnu.org>
3236
3237 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
3238 Bind Qinhibit_modification_hooks to t so there will be no GC.
3239 Rename local `tem' to `save_deactivate_mark'.
3240
3241 * eval.c (specpdl_ptr): Declare volatile.
3242 (unbind_to): Copy the whole binding and decrement specpdl_ptr
3243 before doing the work of unbinding it.
3244
3245 * lisp.h (struct specbinding): Declare elements volatile.
3246 (specpdl_ptr): Declare volatile.
3247
3248 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
3249
3250 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
3251 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
3252
347003be
DL
32532003-05-08 Dave Love <fx@gnu.org>
3254
3255 * coding.c (Vlast_coding_system_used): Doc fix.
3256
5adcec23
JR
32572003-05-07 Jason Rumney <jasonr@gnu.org>
3258
3259 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
3260 when system does not support them.
3261
5fe3b8a4
SM
32622003-05-05 Stefan Monnier <monnier@cs.yale.edu>
3263
3264 * fileio.c (Qwrite_region_annotate_functions): New var.
3265 (build_annotations): Use it to process the global part of the hook.
3266 (syms_of_fileio): Init and staticpro it.
3267
3268 * keyboard.c (safe_run_hooks_error): Display a message instead of
3269 silently ignoring the error.
3270
32712003-05-03 Stefan Monnier <monnier@cs.yale.edu>
3272
3273 * keyboard.c (input_available_signal): Mark static.
3274 (menu_bar_items): Use map_keymap.
3275 (menu_bar_one_keymap): Remove.
3276 (menu_bar_item): Adjust arglist (for use in map_keymap).
3277 Properly hide a second binding when not both are keymaps.
3278
3279 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
3280 (single_keymap_panes): Use it and map_keymap.
3281 (single_menu_item): Use skp as well.
3282
3283 * keymap.h (map_keymap_function_t): New type.
3284 (map_keymap): Declare.
3285
3286 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
3287 (map_keymap_call, Fmap_keymap): New functions.
3288 (syms_of_keymap): Defsubr map-keymap.
3289
4b1b4443
JD
32902003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3291
3292 * gtkutil.c (create_dialog, make_widget_for_menu_item)
3293 (make_menu_item, create_menus, xg_update_menu_item): Don't call
3294 ..._with_mnemonic functions for menu items.
3295
1f816871
KH
32962003-05-01 Kenichi Handa <handa@m17n.org>
3297
3298 * coding.c (coding_system_accept_latin_extra_p): Delete this
3299 function.
3300 (find_safe_codings): Pay attention to
3301 the property tranlsation-table-for-encode of each codings.
3302 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
3303
5ed6ba5b
SM
33042003-05-01 Stefan Monnier <monnier@cs.yale.edu>
3305
3306 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
3307
32c06229
SM
33082003-04-30 Stefan Monnier <monnier@cs.yale.edu>
3309
3310 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
3311
3312 * lisp.h (CHECK): Wrap args in parenthesis.
3313 (specbind): Fix doc: symbol = Qnil is not supported any more.
3314
3315 * bytecode.c (Fbyte_code) <unwind-protect>:
3316 Use Fprogn rather than 0 and Qnil.
3317
3318 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
3319 `double', and `triple' modifiers as well.
3320
ed3c3314
RS
33212003-04-30 Richard M. Stallman <rms@gnu.org>
3322
3323 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
3324
3325 * alloc.c (abort_on_gc): New variable.
3326 (Fgarbage_collect): Abort if abort_on_gc is set.
3327
3328 * lisp.h (abort_on_gc): Add decl.
3329
3330 * eval.c (Fsignal): Clear abort_on_gc.
3331
3332 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 3333 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
3334
3335 * xdisp.c (move_it_vertically_backward): Do the final big else
3336 even if nlines is 0.
3337
3338 * xdisp.c (redisplay_internal): Finish the per-frame loop
3339 even if redisplay is suspended by input.
3340
0b325c12
AC
33412003-04-24 Andrew Choi <akochoi@shaw.ca>
3342
3343 * macterm.c (x_list_fonts): Return all fonts that match if
3344 maxnames = -1.
3345
4e837cd0
KH
33462003-04-25 Kenichi Handa <handa@m17n.org>
3347
3348 * syntax.c (skip_chars): Fix previous change.
3349
9af7511a
KH
33502003-04-24 Kenichi Handa <handa@m17n.org>
3351
3352 * syntax.c (skip_chars): Make the code faster by using the common
3353 technique of *p, *stop, and *endp.
3354
e3b2c21f
JD
33552003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3356
3357 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 3358 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
3359 being updated.
3360
32c06229
SM
33612003-04-19 Stefan Monnier <monnier@cs.yale.edu>
3362
3363 * eval.c (Fapply): Undo last change and add a comment about why.
3364
c6464167
MB
33652003-04-18 Miles Bader <miles@gnu.org>
3366
3367 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
3368 pickier PARSE_MULTIBYTE_SEQ.
3369
e509f168
SM
33702003-04-17 Stefan Monnier <monnier@cs.yale.edu>
3371
3372 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
3373 Use XCDR, XCAR, CONSP.
3374 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
3375 (Fapply): Remove unnecessary GCPRO.
3376
3377 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
3378
3379 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
3380
3381 * buffer.h: Don't hardcode BEG==1.
3382
3383 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
3384
5ceea398
RS
33852003-04-16 Richard M. Stallman <rms@gnu.org>
3386
3387 * xdisp.c (try_window, try_window_reusing_current_matrix):
3388 When at end of window, set window_end_pos to Z-ZV.
3389
3390 * buffer.c (Foverlay_recenter): Doc fix.
3391
e509f168
SM
33922003-04-14 Stefan Monnier <monnier@cs.yale.edu>
3393
3394 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
3395
d243e605
AC
33962003-04-14 Andrew Choi <akochoi@shaw.ca>
3397
3398 * macterm.c (mac_check_for_quit_char): Don't check more often than
3399 once a second.
3400
6901b111
SM
34012003-04-11 Stefan Monnier <monnier@cs.yale.edu>
3402
3403 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
3404 specially, so that they can't hide an implicit switch-frame event.
3405 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
3406 (head_table): Use switch-frame as event_kind for select-window.
3407 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
3408
3409 * editfns.c (Fformat): Lisp_Object/int mixup.
3410 (format2): Remove unused var numargs.
3411
e301806f 34122003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 3413
6901b111 3414 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
3415 (Qafter_insert_file_set_coding): New variable.
3416 (syms_of_fileio): Initialize and staticpro it. Delete declaration
3417 for after-insert-file-adjust-coding-function.
3418 (Finsert_file_contents): Call Qafter_insert_file_set_coding
3419 instead of Vafter_insert_file_adjust_coding_function.
3420
38914424
KH
34212003-04-11 Kenichi Handa <handa@m17n.org>
3422
3423 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
3424
3425 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
3426 string. Callers changed.
3427
34282003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 3429
6901b111 3430 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 3431 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
3432 (Finsert_file_contents):
3433 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
3434 decode-format.
3435
f979dc05
JD
34362003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3437
3438 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
3439 get GtkAdjustment as widget now is a GtkRange.
3440
3441 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
3442 GtkRange to avoid memory leak.
3443
f8c6b4c2 34442003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 3445
50ebc53d
KH
3446 * xfaces.c (Vface_font_rescale_alist): New variable.
3447 (struct font_name): New member rescale_ratio.
3448 (font_rescale_ratio): New function.
6901b111 3449 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
3450 (better_font_p): On comparing point sized, pay attention to
3451 recale_ratio member of fonts.
3452 (build_scalable_font_name): Reflect font->rescale_ratio in the
3453 font name.
6901b111 3454 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 3455
cb98871c
KH
3456 * lread.c (read1): Before calling index, check if the 2nd
3457 arguemnt is in ASCII range.
3458
4773b8ca
RS
34592003-04-08 Richard M. Stallman <rms@gnu.org>
3460
b0ada147
RS
3461 * fileio.c (Ffile_symlink_p): Doc fix.
3462
3463 * editfns.c (Fformat): Translate positions of text properties
3464 in the format string to apply them to the result.
3465
4773b8ca
RS
3466 * fileio.c (Finsert_file_contents): Doc fix.
3467 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
3468
34692003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 3470
4773b8ca
RS
3471 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
3472
e8f25745 34732003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 3474
e8f25745
ST
3475 * mac.c (init_mac_osx_environment): Switch libexec and bin so
3476 that self-contained application finds libexec files.
3477
f8c6b4c2 34782003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 3479
6901b111
SM
3480 * coding.c (code_convert_region_unwind):
3481 Set Vlast_coding_system_used to the argument.
2310d84c
KH
3482 (code_convert_region): If post-read-conversion function changed
3483 the value of last-coding-sytem, keep the new value in
3484 coding->symbol so that it won't be overridden.
3485 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
3486 (coding_system_accept_latin_extra_p): New function.
3487 (find_safe_codings): Pay attention to characters registered in
3488 latin-extra-code-table.
2310d84c 3489
39c9a034
TTN
34902003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
3491
3492 * Makefile.in (md5.o): Add missing dependency info.
3493
eb67c5d6
RS
34942003-04-06 Richard M. Stallman <rms@gnu.org>
3495
3496 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
3497
3498 * marker.c (verify_bytepos): New function.
3499
3500 * intervals.c (set_intervals_multibyte_1): When becoming
3501 multibyte, adjust right and left child sizes to a whole set of
3502 characters. If an interval gets zero total-length, delete it.
3503 If an interval consists of just its children, delete one of them.
3504
3505 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
3506 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 3507
eb67c5d6
RS
3508 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
3509 All calls deleted.
3510 (lisp_malloc): Do the work here directly.
3511
b1f81fc5
JB
35122003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
3513
3514 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
3515 char tables.
3516
35172003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
3518
3519 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
3520 destructively change "%S" to "%s".
3521
774666fb
MB
35222003-04-03 Miles Bader <miles@gnu.org>
3523
3524 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
3525 always set.
3526
19c37f01
DL
35272003-04-01 Dave Love <fx@gnu.org>
3528
3529 * xfns.c (xpm_lookup_color): Grok "opaque".
3530
2f4b24c3
AC
35312003-03-31 Andrew Choi <akochoi@shaw.ca>
3532
3533 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
3534 parent window ID.
3535
3536 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
3537
3538 * macterm.h (struct mac_output): Define x_pixels_diff and
3539 y_pixels_diff.
b1f81fc5 3540
9443fcf6
JB
35412003-03-31 Juanma Barranquero <lektu@terra.es>
3542
3543 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
3544 blockinput.h and files included from it.
3545
e072891b
KS
35462003-03-31 Kim F. Storm <storm@cua.dk>
3547
3548 The following changes consolidates the common code related to
3549 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
3550 files into frame.c.
9443fcf6 3551
e072891b
KS
3552 * frame.c: Include blockinput.h.
3553 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
3554 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
3555 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
3556 related vars here.
3557 (struct frame_parm_table, frame_parms): New table for describing
3558 frame parameters and their associated Q-variable.
3559 The order of the parameters corresponds to the sequence of the
3560 frame_parm_handlers table in redisplay_interface.
3561 (x_fullscreen_move, x_set_frame_parameters)
3562 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
3563 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
3564 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3565 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
3566 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
3567 Generic functions for processing of frame parameters.
3568 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
3569 (display_x_get_resource, x_get_resource_string): Functions for
3570 generic access to X resources.
3571 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
3572 (x_default_parameter, Fx_parse_geometry): Functions for generic
3573 access to frame parameters.
6901b111
SM
3574 (x_figure_window_size): Generic calculation of frame size.
3575 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
3576 (syms_of_frame): Intern and staticpro frame parameter variables.
3577 Defvar_lisp Vx_resource_class and Vx_resource_name here.
3578 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 3579
e072891b
KS
3580 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
3581 parameter related vars defined in frame.c.
3582 (EMACS_CLASS): Define here.
3583 (enum FULLSCREEN_*): Define here.
3584 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
3585 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
3586 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
3587 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
3588 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
3589 (x_set_visibility, x_set_autoraise, x_set_autolower)
3590 (x_set_unsplittable, x_set_vertical_scroll_bars)
3591 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
3592 (x_figure_window_size): Add prototypes.
3593
3594 * dispextern.h (frame_parm_handler): New typedef.
3595 (struct redisplay_interface): New member frame_parm_handlers.
3596 (enum resource_types): Move declaration here.
3597 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
3598 (x_default_parameter): Add prototypes.
3599
3600 * window.c: Remove extern decl for frame parameter vars.
3601 (change_window_heights): New generic function;
3602 replaces x_change_window_heights. All users changed.
3603
3604 * window.h (change_window_heights): Add prototype.
3605
3606 * xfaces.c: Remove extern decl for frame parameter vars.
3607
3608 * xterm.h (EMACS_CLASS): Remove. Use generic define.
3609 (struct w32_display_info): Fix type of xrdb member.
3610 (enum FULLSCREEN_*): Remove.
3611 Remove prototypes for generic functions (in frame.h).
3612
3613 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3614 parameters now defined in frame.h and frame.c.
3615 (Vx_resource_name): Remove. Use generic var.
3616 (enum x_frame_parms): Remove (bogus, unused enum).
3617 (check_x_display_info): Make non-static (for frame.c).
3618 (struct x_frame_parm_table, x_frame_parms): Remove.
3619 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3620 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3621 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3622 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3623 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3624 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3625 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3626 Remove. Use generic functions instead.
3627 (enum resource_types): Remove.
3628 (x_set_scroll_bar_default_width): New global function (for frame.c).
3629 (Fx_create_frame): Depend on x_figure_window_size to add space for
3630 toolbar and setup size_hint_flags.
3631 (x_frame_parm_handlers): New table for redisplay_interface.
3632 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 3633
e072891b
KS
3634 * xterm.c: Remove unnecessary extern declarations.
3635 (x_fullscreen_adjust): Remove. Use generic instead.
3636 (x_redisplay_interface): Add x_frame_parm_handlers member.
3637
3638 * w32gui.h (XrmDatabase): New (dummy) typedef.
3639
3640 * w32term.h (EMACS_CLASS): Remove. Use generic define.
3641 (struct w32_display_info): Fix type of xrdb member.
3642 (enum FULLSCREEN_*): Remove.
3643 (x_fullscreen_adjust): Remove prototype.
3644
3645 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3646 parameters now defined in frame.h and frame.c.
3647 (Vx_resource_name): Remove. Use generic var.
3648 (enum x_frame_parms): Remove (bogus, unused enum).
3649 (check_x_display_info): Make non-static (for frame.c).
3650 (struct x_frame_parm_table, x_frame_parms): Remove.
3651 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3652 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3653 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3654 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3655 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3656 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3657 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3658 Remove. Use generic functions instead.
3659 (enum resource_types): Remove.
3660 (x_set_scroll_bar_default_width): New global function (for frame.c).
3661 (Fx_create_frame): Depend on x_figure_window_size to add space for
3662 toolbar and setup size_hint_flags.
3663 (w32_frame_parm_handlers): New table for redisplay_interface.
3664 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 3665
e072891b
KS
3666 * w32term.c: Remove unnecessary extern declarations.
3667 (x_fullscreen_adjust): Remove. Use generic instead.
3668 (x_redisplay_interface): Add w32_frame_parm_handlers member.
3669
3670 * w32reg.c (x_get_string_resource): Use XrmDatabase.
3671
3672 * macgui.h (XrmDatabase): New (dummy) typedef.
3673
3674 * macterm.h (EMACS_CLASS): Remove.
3675 (struct mac_display_info): Add xrdb member.
3676 (struct mac_output): Add want_fullscreen member.
3677
3678 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3679 parameters now defined in frame.h and frame.c.
3680 (Vx_resource_name): Remove. Use generic var.
3681 (check_x_display_info): Make non-static (for frame.c).
3682 (struct x_frame_parm_table, x_frame_parms): Remove.
3683 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3684 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3685 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3686 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3687 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3688 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3689 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3690 Remove. Use generic functions instead.
3691 (enum resource_types): Remove.
3692 (x_set_scroll_bar_default_width): New global function (for frame.c).
3693 (mac_frame_parm_handlers): New table for redisplay_interface.
3694 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 3695
e072891b
KS
3696 * macterm.c: Remove unnecessary extern declarations.
3697 (x_redisplay_interface): Add mac_frame_parm_handlers member.
3698
3e6a560b
KS
3699 * Makefile.in (frame.o): Add dependency on blockinput.h and files
3700 included from it (atimer.h and systime.h).
3701
7b7b454e
AS
37022003-03-30 Andreas Schwab <schwab@suse.de>
3703
3704 * xdisp.c (x_insert_glyphs): Fix swapped width and height
3705 parameters for shift_glyphs_for_insert.
3706
3707 * macterm.c (x_redisplay_interface): Add missing entry for
3708 draw_vertical_window_border.
3709
beb402de
KG
37102003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
3711
3712 * fileio.c (Fexpand_file_name): In the no-handler case, after
3713 expanding, look again for a handler and invoke it. This is needed
3714 for filenames like "/foo/../user@host:/bar/../baz" -- the first
3715 expansion produces "/user@host:/bar/../baz" which needs to be
3716 expanded again for the finame result "/user@host:/baz".
3717
b676f356
JD
37182003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3719
3720 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
3721 of area to be redrawn for better performance.
3722
3c671a56
SM
37232003-03-28 Stefan Monnier <monnier@cs.yale.edu>
3724
3725 * xterm.c (take_vertical_position_into_account): Remove.
3726 (xt_action_hook): Call set_vertical_scroll_bar if needed.
3727 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
3728 (xm_scroll_callback, x_create_toolkit_scroll_bar)
3729 (x_set_toolkit_scroll_bar_thumb): Simplify.
3730 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
3731 (XTread_socket): Remove unused var.
3732 (x_make_frame_invisible): Replace goto with else.
3733
3734 * xdisp.c (set_vertical_scroll_bar): New fun.
3735 (redisplay_window): Use it.
3736
84f2e615
RS
37372003-03-26 Richard M. Stallman <rms@gnu.org>
3738
3739 * xdisp.c (update_tool_bar): Recompute tool bar if
3740 update_mode_lines is set. Set w->update_mode_line
3741 only if the tool bar contents actually change.
3742 (update_menu_bar): Undo previous change.
3743
70b6104c
JD
37442003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3745
5fd6f727
JD
3746 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
3747 (xg_frame_set_char_size): Calculate scroll bar width before frame
3748 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
3749 (xg_separator_p): Check for all documented separator types.
3750 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
3751 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
3752
70b6104c
JD
3753 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
3754 so tool bar gets updated.
3755
d9b36d19
SM
37562003-03-26 Stefan Monnier <monnier@cs.yale.edu>
3757
3758 * data.c (store_symval_forwarding): Re-instate part of the code
3759 that was deleted with too much enthusiasm.
3760
37612003-03-25 Stefan Monnier <monnier@cs.yale.edu>
3762
3763 * data.c (store_symval_forwarding): Delete special read-only
3764 hack for type == -1, since we now use ->constant instead.
3765 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
3766
3767 * buffer.c (overlays_in): Declare static.
3768 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
3769 `constant' field rather than the variable's `type' field.
3770
365fa1b3
AC
37712003-03-24 Andrew Choi <akochoi@shaw.ca>
3772
3773 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
3774
3775 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
3776
3777 * fns.c [MAC_OSX]: Do not redefine vector.
3778
3779 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
3780
3781 * macgui.h: Remove definition of No_Cursor.
3782
d9b36d19 3783 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
3784
3785 * xdisp.c: Define No_Cursor.
3786 (x_write_glyphs, notice_overwritten_cursor)
3787 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
3788 (note_mouse_highlight): Remove Mac-specific code.
3789 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 3790
c0bcce6f
JPW
37912003-03-24 John Paul Wallington <jpw@gnu.org>
3792
3793 * xdisp.c (redisplay_window): If mini window's buffer is not
3794 empty, then redisplay it like other windows.
3795
a526b96c
KS
37962003-03-23 Kim F. Storm <storm@cua.dk>
3797
3798 * w32term.c (w32_draw_window_cursor): Fix last change.
3799
37ab321e
KH
38002003-03-23 Kenichi Handa <handa@m17n.org>
3801
a526b96c
KS
3802 * alloc.c (make_string_from_bytes, make_specified_string):
3803 Add `const' for the arg CONTENTS.
37ab321e
KH
3804
3805 * lisp.h (make_string_from_bytes, make_specified_string):
3806 Prototypes adjusted.
3807
7863d625
JD
38082003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3809
a526b96c 3810 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 3811
7863d625
JD
3812 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
3813 (XG_SB_RANGE): New define.
3814
3815 * gtkutil.c (xg_fixed_handle_expose): New function.
3816 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
3817 expose events.
3818 (xg_update_scrollbar_pos): Take two more arguments, left and width
3819 of scroll bar including borders.
3820 Clear left and right part outside scroll bar separately as some
3821 themes have bars that are not an even number of pixels.
d9b36d19 3822 Don't set reallocate_redraws, don't call
7863d625
JD
3823 gdk_window_process_all_updates.
3824 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
3825 so no need to change it. Calculate size and value with XG_SB_RANGE.
3826
d9b36d19
SM
3827 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
3828 Pass left and width of scroll bar including borders to
7863d625
JD
3829 xg_update_scrollbar_pos.
3830
af0ad939
TTN
38312003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
3832
3833 * Makefile.in: Make sure space precedes end-of-line backslashes.
3834
b22139fd
KS
38352003-03-22 Kim F. Storm <storm@cua.dk>
3836
3837 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
3838 Add generic versions here. Remove system specific versions
3839 defined elsewhere.
3840
3841 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
3842 Add prototypes.
3843
6e6410cf
KS
3844 * xterm.h (STORE_NATIVE_RECT): New macro.
3845
5c9cc435
KS
38462003-03-21 Kim F. Storm <storm@cua.dk>
3847
00c64fab
SM
3848 * xdisp.c (get_glyph_string_clip_rect):
3849 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
3850
3851 * dispextern.h (struct redisplay_interface): Add active_p
3852 argument to draw_window_cursor member. All uses changed.
3853
acd37560
KS
38542003-03-21 Kim F. Storm <storm@cua.dk>
3855
3856 The following changes consolidate code related to writing and
3857 inserting glyphs, exposing frame, the tool bar, the mouse face,
3858 the output cursor, and help echo from xterm.c, w32term.c and
3859 macterm.c into xdisp.c. It also generalizes the use of the
3860 window_part enum instead of using numeric values throughout.
af0ad939 3861
acd37560
KS
3862 * xdisp.c: Consolidate gui-independent code here.
3863 Include keymap.h.
3864 (Qhelp_echo): Import.
3865 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
3866 (help_echo_string, help_echo_window, help_echo_object)
3867 (previous_help_echo_string, help_echo_pos): Declare here.
3868 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
3869 (estimate_mode_line_height): Define here. Handle windowing
3870 systems directly (without using estimate_mode_line_height_hook).
3871 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
3872 (update_window_cursor, update_cursor_in_window_tree)
3873 (fast_find_position, fast_find_string_pos)
3874 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
3875 (expose_area, expose_line, expose_overlaps, expose_window)
3876 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
3877 declared static as they are only used locally in xdisp.c.
3878 (draw_glyphs): Rename from x_draw_glyphs and make static.
3879 (tool_bar_item_info, notice_overwritten_cursor): Make static.
3880 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
3881 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 3882 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
3883 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
3884 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
3885 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
3886 (note_mouse_highlight, x_clear_window_mouse_face)
3887 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
3888 (x_intersect_rectangles): New generic functions for use by xdisp.c
3889 and GUI front-ends.
3890 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
3891 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
3892
3893 * dispextern.h (Display_Info): Generic typedef for *_display_info.
3894 (NativeRectangle): Generic typedef for rectangle type.
3895 (enum window_part): Move here from window.c.
3896 (struct redisplay_interface): New members flush_display_optional,
3897 define_frame_cursor, clear_frame_area, draw_window_cursor,
3898 draw_vertical_window_border, shift_glyphs_for_insert.
3899 Rename member clear_mouse_face to clear_window_mouse_face.
3900 (estimate_mode_line_height_hook): Remove hook.
3901 (auto_raise_tool_bar_buttons_p): Don't declare extern.
3902 (tool_bar_item_info): Remove prototype.
3903 (help_echo_string, help_echo_window, help_echo_object)
3904 (previous_help_echo_string, help_echo_pos)
3905 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
3906 (x_stretch_cursor_p, output_cursor): Declare extern.
3907 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
3908 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
3909 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
3910 (display_and_set_cursor, set_output_cursor, x_cursor_to)
3911 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
3912 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
3913 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
3914 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
3915 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
3916 Add prototypes.
3917 (mode_line_string, marginal_area_string): Fix prototypes.
3918
3919 * window.c (enum window_part): Move to dispextern.h.
3920 (coordinates_in_window): Use enum window_part member names
3921 instead of numbers to describe return value.
3922 (struct check_window_data): Change part member to window_part.
3923 (check_window_containing): Return window_part unaltered.
3924 (window_from_coordinates): Change part arg from int to enum
3925 window_part. Allow part arg to be null. All users changed.
3926
3927 * window.h (window_from_coordinates): Fix prototype.
3928
3929 * term.c (estimate_mode_line_height): Move to xdisp.c.
3930
3931 * keyboard.c (make_lispy_event): Use enum window_part.
3932
3933 * dispnew.c (mode_line_string, marginal_area_string): Use enum
3934 window_part instead of int in arg list. Users changed.
3935
3936 * xterm.h (No_Cursor): Declare as None for X.
3937 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 3938
acd37560
KS
3939 * xterm.c: Remove consolidated defines and code.
3940 (BETWEEN): Remove unused macro.
3941 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
3942 (x_define_frame_cursor, x_clear_frame_area)
3943 (x_draw_window_cursor): New X-specific functions for RIF.
3944 (x_redisplay_interface): Add new members.
3945
3946 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
3947
3948 * w32term.h (struct w32_output): Remove cross_cursor member.
3949
3950 * w32term.c: Remove consolidated defines and code.
3951 (BETWEEN): Remove unused macro.
3952 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
3953 (w32_define_frame_cursor, w32_clear_frame_area)
3954 (w32_draw_window_cursor): New W32-specific functions for RIF.
3955 (w32_redisplay_interface): Add new members.
3956
3957 * w32gui.h (No_Cursor): Define as 0 for W32.
3958 (XRectangle): Add X compatible rectangle type.
3959 (NativeRectangle): Declare as RECT for W32.
3960 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
3961
3962 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
3963
3964 * w32console.c: Remove consolidated defines and code.
af0ad939 3965
acd37560
KS
3966 * msdos.h (Display_Info): Add generic typedef.
3967
3968 * msdos.c: Remove consolidated defines and code.
3969 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
3970
3971 * macterm.h (struct mac_output): Replace member cross_cursor by
3972 hand_cursor.
3973 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
3974
3975 * macterm.c: Remove consolidated defines and code.
3976 (BETWEEN): Remove unused macro.
3977 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
3978 (mac_define_frame_cursor, mac_clear_frame_area)
3979 (mac_draw_window_cursor): New Mac-specific functions for RIF.
3980 (x_redisplay_interface): Add new members.
3981
3982 * macgui.h (No_Cursor): Define as 0 for Mac.
3983 (XRectangle): Add X compatible rectangle type.
3984 (NativeRectangle): Declare as Rect for Mac.
3985 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
3986
204ccab1
KS
3987 * macfns.c (x_set_mouse_color): Setup hand_cursor.
3988 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 3989
9443fcf6 3990 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
3991 included from it. Add dependency on keymap.h.
3992
3993 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
3994
8ba01a70 39952003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
3996
3997 * fileio.c (Fexpand_file_name): Fix previous change.
3998
8ba01a70 39992003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
4000
4001 * fileio.c (Ffile_name_directory): Reconstruct file name by
4002 make_specified_string.
4003 (Ffile_name_nondirectory, Ffile_name_as_directory)
4004 (Fdirectory_file_name, Fexpand_file_name)
4005 (Fsubstitute_in_file_name): Likewise.
4006 (Fread_file_name): Compare decoded homedir with DIR and
4007 DEFAULT_FILENAME.
4008
4009 * alloc.c (make_specified_string): If NCHARS is negative, count
4010 the number of characters.
4011
19536747
JD
40122003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4013
de38ae5a
JD
4014 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
4015 all widgets.
4016
19536747
JD
4017 * gtkutil.h: Removed xg_ignore_next_thumb.
4018
37ab321e 40192003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
4020
4021 * coding.c (Vchar_coding_system_table): Remove this variable.
4022 (Vcoding_system_safe_chars): New variable.
4023 (intersection): Remove this function.
4024 (find_safe_codings): Don't use Vchar_coding_system_table, but try
4025 all codings in SAFE_CODINGS.
00c64fab 4026 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
4027 find_safe_codings. Get generic coding systems from
4028 Vcoding_system_safe_chars.
4029 (Fdefine_coding_system_internal): New function.
4030 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
4031 Initialize and staticpro Vcoding_system_safe_chars.
4032
17097258
JD
40332003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4034
2a2071c3
JD
4035 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
4036 equal old values before updating.
4037
17097258
JD
4038 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
4039
4040 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
4041
40422003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4043
4044 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
4045 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
4046 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
4047 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
4048 (xg_create_scroll_bar): Pass bar to button event callback.
4049 (xg_find_top_left_in_fixed): New function.
4050 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
4051 whole scroll bar area. Get old position with
4052 xg_find_top_left_in_fixed, calculate and only clear needed areas.
4053 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
4054 dragging is in progress. Calculate whole as for Motif.
4055 Remove code that saved last values. Call gtk_range functions to
4056 set scroll bar sizes.
4057
4058 * gtkutil.h: Removed xg_ignore_next_thumb.
4059
8cb9dfbf
JB
40602003-03-17 Juanma Barranquero <lektu@terra.es>
4061
4062 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
4063 and files included from it.
4064
00c64fab
SM
40652003-03-18 Stefan Monnier <monnier@cs.yale.edu>
4066
4067 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
4068 multiple occurrences of the same keymap under different prefixes.
4069 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
4070
c45bb3b2
JR
40712003-03-16 Jason Rumney <jasonr@gnu.org>
4072
4073 * w32gui.h: Use HDC for Display.
4074
4075 * w32term.c (w32_encode_char): Prevent double-byte chars from
4076 crashing Emacs.
4077
4078 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
4079 as binary.
4080
2a6d0874
JB
40812003-03-16 Juanma Barranquero <lektu@terra.es>
4082
4083 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
4084
03eb5fab
KS
40852003-03-16 Kim F. Storm <storm@cua.dk>
4086
4087 The following changes consolidate some of the gui-independent
4088 parts of the processing and drawing of "glyph strings" from
4089 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 4090
03eb5fab
KS
4091 * dispextern.h (struct glyph): Reduce face_id member from 22 to
4092 21 bits (this reduces number of faces from 4M to 2M).
4093 Replace W32 specific w32_font_type member (2 bits) by generic
4094 font_type member (3 bits) for portability.
4095 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
4096 (enum draw_glyphs_face): Define here.
4097 (struct glyph_string): Define here. Merge W32 and X versions.
4098 (struct redisplay_interface): New members per_char_metric,
4099 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
4100 (VCENTER_BASELINE_OFFSET): Define here.
4101 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
4102 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
4103
4104 * xdisp.c: Consolidate gui-independent "glyph string" code here.
4105 (dump_glyph_string): Moved here.
4106 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
4107 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
4108 (fill_composite_glyph_string, fill_glyph_string)
4109 (fill_image_glyph_string, fill_stretch_glyph_string)
4110 (left_overwritten, left_overwriting, right_overwritten)
4111 (right_overwriting, get_char_face_and_encoding)
4112 (set_glyph_string_background_width, compute_overhangs_and_x)
4113 (append_glyph, append_composite_glyph, produce_image_glyph)
4114 (take_vertical_position_into_account, append_stretch_glyph)
4115 (produce_stretch_glyph): New generic functions (based on X version).
4116 Call platform specific functions through rif.
4117 (INIT_GLYPH_STRING): New macro, hides W32 details.
4118 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
4119 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
4120 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
4121 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
4122 (notice_overwritten_cursor):
4123 Generic functions exported to platform modules. Users changed.
4124
4125 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
4126 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
4127 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 4128 New macros for consolidated code.
2a6d0874 4129
03eb5fab
KS
4130 * xterm.c: Remove consolidated defines and code.
4131 (x_per_char_metric, x_encode_char)
4132 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
4133 (x_redisplay_interface): Add new members.
4134
4135 * w32gui.h (Display): Add dummy typedef for consolidation.
4136 (XChar2b): Define alias for wchar_t for consolidation.
4137 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4138
4139 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 4140 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
4141 New macros for consolidation.
4142
fad49844 4143 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
4144 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
4145 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
4146 (w32_per_char_metric): Change font_type arg to int for RIF.
4147 (w32_encode_char): Return int according to RIF requirements.
4148 (w32_compute_glyph_string_overhangs): Adapt to RIF.
4149 (w32_get_glyph_overhangs): New function for RIF. Uses generic
4150 x_get_glyph_overhangs.
4151 (w32_redisplay_interface): Add new members.
4152
4153 * macgui.h (XChar2b): Move typedef here for consolidation.
4154 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4155
4156 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
4157 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
4158 consolidation.
4159
4160 * macterm.c: Remove consolidated defines and code.
4161 (mac_per_char_metric): New function for RIF.
00c64fab 4162 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
4163 (mac_compute_glyph_string_overhangs): Adapt for RIF.
4164 (x_redisplay_interface): Add new members.
4165
00c64fab
SM
41662003-03-15 Stefan Monnier <monnier@cs.yale.edu>
4167
4168 * keymap.c (Vmenu_events): New var.
4169 (syms_of_keymap): Initialize it.
4170 (where_is_internal): Check more carefully what is a menu event.
4171
225c7a07
RS
41722003-03-14 Richard M. Stallman <rms@gnu.org>
4173
4174 * lread.c (read1): After #!, exit loop on eof.
4175
cea9be54
JD
41762003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4177
9ea0e54d
JD
4178 * gtkutil.h: Add declaration for xg_frame_cleared.
4179
0cb35f4e
JD
4180 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
4181
cea9be54
JD
4182 * gtkutil.c (struct xg_last_sb_pos): New structure.
4183 (handle_fixed_child): New function.
4184 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
4185 and force a redraw on them.
4186 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
4187 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
4188 so we can avoid unneeded redraws.
4189 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
4190 and force a redraw on the scroll bar.
4191 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
4192 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 4193 (xg_frame_cleared): New function.
cea9be54 4194
20b853f3
KH
41952003-03-13 Kenichi Handa <handa@m17n.org>
4196
4197 * coding.c (Fdetect_coding_region): Fix docstring.
4198 (Fdetect_coding_string): Fix docstring.
4199
7a555aff
AS
42002003-03-13 Andreas Schwab <schwab@suse.de>
4201
25cc0080
AS
4202 * gtkutil.c: Add prototype for create_menus.
4203
30225431
AS
4204 * data.c (long_to_cons): Fix type of top.
4205
4206 * xselect.c (selection_data_to_lisp_data): Use int instead of
4207 long for an integer of size 4.
4208
7a555aff 4209 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 4210 (xg_tool_bar_help_callback): Likewise.
7a555aff 4211
a3e4741f
AS
42122003-03-12 Andreas Schwab <schwab@suse.de>
4213
4214 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
4215
9668be7c
KS
42162003-03-12 Kim F. Storm <storm@cua.dk>
4217
03eb5fab 4218 The following changes consolidate the fringe handling from
9668be7c 4219 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 4220
9668be7c
KS
4221 * xdisp.c: Consolidate fringe handling code here.
4222 (left_bits, right_bits, continued_bits, continuation_bits)
4223 (ov_bits, zv_bits): Define fringe bitmaps.
4224 (fringe_bitmaps): New array holding fringe bitmaps.
4225 (draw_fringe_bitmap): Draw a specific bitmap; call display
4226 specific drawing routine via rif->draw_fringe_bitmap.
4227 (draw_row_fringe_bitmaps): Generic replacement for
4228 x_draw_row_fringe_bitmaps; all callers changed.
4229 (compute_fringe_widths): Generic replacement for
4230 x_compute_fringe_widths; all callers changed.
4231
4232 * dispextern.h (enum fringe_bitmap_type): Define here.
4233 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
4234 (fringe_bitmaps): Declare extern.
4235 (struct redisplay_interface): New member draw_fringe_bitmap.
4236 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
4237
4238 * xterm.c: Remove generic fringe code.
4239 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
4240 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
4241
4242 * w32term.c: Remove generic fringe code.
4243 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
4244 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 4245
9668be7c
KS
4246 * macterm.c: Remove generic fringe code.
4247 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
4248 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
4249
00a88f32
SM
42502003-03-11 Stefan Monnier <monnier@cs.yale.edu>
4251
4252 * print.c (Fprin1_to_string): Return unibyte string if possible.
4253
1d1de695
DK
42542003-03-09 David Kastrup <dak@gnu.org>
4255
4256 * process.c (read_process_output): We have allocated enough space
4257 for readmax and carryover, so actually use the alloted space.
4258
257f40f2
JD
42592003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4260
4261 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
4262 toolkit scrollbar click.
4263
4264 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
4265 for USE_GTK.
4266 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
4267 also.
4268 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
4269 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 4270
257f40f2
JD
4271 * gtkutil.h: Declare xg_get_scroll_id_for_window.
4272
4273 * gtkutil.c (xg_get_scroll_id_for_window): New function.
4274 (xg_tool_bar_item_expose_callback): New function.
4275 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
4276 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
4277 on the tool bar widget.
4278 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
4279 to expose on the tool bar item widgets.
4280
15213141
JD
42812003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4282
26b74a0b 4283 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 4284 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
4285 deleted from the image cache).
4286
15213141
JD
4287 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
4288 the event isn't for a frame (i.e. for dialogs).
4289
20b853f3 42902003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
4291
4292 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
4293 composition components reaches the limit, terminate composing.
4294 (COMPOSITION_OK): New macro.
00a88f32 4295 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
4296 composition is found.
4297 (coding_restore_composition): Adjust the number of composition
4298 components if it is not sane.
4299
c9029fe5
JB
43002003-03-06 Juanma Barranquero <lektu@terra.es>
4301
4302 * w32term.h (struct w32_display_info): Add xrdb member to support
4303 passing resources via -xrm on Windows.
4304
4305 * w32term.c (w32_make_rdb): New function.
4306 (w32_term_init): Use it to initialize xrdb member of w32_display_info
4307 struct. Delete leftover code.
4308
4309 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
4310 for resources passed on the command line.
4311
4312 * w32reg.c (w32_get_rdb_resource): New function.
4313 (x_get_string_resource): Use it, so resources passed with -xrm
4314 supercede the ones in the registry.
4315
9d00001f
JD
43162003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4317
4318 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
4319 instead of x_top_window_to_frame.
4320
ca2417b9
JD
43212003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4322
4323 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
4324 when restarting Emacs.
4325
5b20caf0
RS
43262003-03-03 Richard M. Stallman <rms@gnu.org>
4327
4328 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
4329 to run kill-buffer-query-functions.
4330 (Qkill_buffer_query_functions): New var.
4331 (syms_of_buffer): Init and staticpro it.
4332
58e91b77
JD
43332003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4334
4335 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
4336
932357b4
KS
43372003-02-25 Kim F. Storm <storm@cua.dk>
4338
4339 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
4340 If centering point failed to make whole line visible and vscroll
4341 is non-zero, disable vscroll and try centering point again.
4342
4343 * lread.c (read1): Accept `single space' syntax like (? x).
4344
bb8db7e1
JD
43452003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4346
4347 * keyboard.c (cancel_hourglass_unwind): Surround with
4348 #ifdef HAVE_X_WINDOWS
4349
47d77aab
KH
43502003-02-25 Kenichi Handa <handa@m17n.org>
4351
4352 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
4353 process only when "subprocesses" is defined.
4354
6a097c0c
SM
43552003-02-24 Stefan Monnier <monnier@cs.yale.edu>
4356
4357 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
4358
0b063c27
JB
43592003-02-24 Juanma Barranquero <lektu@terra.es>
4360
d1135afc
JB
4361 * callint.c (fix_command): Declare as static void and move before
4362 Fcall_interactively.
4363
0b063c27
JB
4364 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
4365 (syms_of_xdisp): Don't initialize Qwhen.
4366
0af912f0
JD
43672003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4368
4369 * keyboard.c (cancel_hourglass_unwind): New function.
4370 (command_loop_1): Cancel hourglass with unwind-protect.
4371
120d0a23
RS
43722003-02-23 Richard M. Stallman <rms@gnu.org>
4373
4374 * callint.c (fix_command): New subroutine, from Fcall_interactively.
4375 Detect (when ... (region-beginning)) etc.
4376 (Fcall_interactively): Call fix_command.
4377 (Qif, Qwhen): New variables.
4378 (syms_of_callint): Init and staticpro them.
0b063c27 4379
120d0a23
RS
4380 * regex.c (print_partial_compiled_pattern): Output to stderr.
4381
4ece81a6
KG
43822003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
4383
4384 * dired.c (directory_files_internal): Don't expand directory.
4385 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
4386 instead. From Lars Hansen <larsh@math.ku.dk>.
4387
e52bd6b7
SM
43882003-02-22 Stefan Monnier <monnier@cs.yale.edu>
4389
4390 * fns.c (string_to_multibyte): Remove unused var i.
4391 (Flanginfo): Fix int/Lisp_Object mixup.
4392 (void_call2): New fun.
4393 (Fmap_char_table): Use it in place of call2.
4394
4395 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
4396
4397 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
4398
4399 * keymap.c (copy_keymap_1): Make it static.
4400
4401 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
4402
c33ef7c4
JB
44032003-02-22 David Ponce <david@dponce.com>
4404
4405 * lread.c (Fload): Don't check STRING_MULTIBYTE.
4406
16782258
JD
44072003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4408
4409 * process.h: Removed subtty field from struct Lisp_Process.
4410
4411 * process.c (create_process): Remove setting of subtty.
4412 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
4413 (Fprocess_running_child_p, process_send_signal):
4414 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
4415 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
4416
3abeca61
KG
44172003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
4418
4419 * keymap.c (Fdefine_key): Doc fix.
4420
92a8ce63
JB
44212003-02-21 Juanma Barranquero <lektu@terra.es>
4422
4423 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
4424
4425 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
4426 POLLING_PROBLEM_IN_SELECT.
4427
4428 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
4429 Delete #undef of POLLING_PROBLEM_IN_SELECT.
4430
4431 * s/hpux10-20.h: New file.
4432
e52bd6b7
SM
4433 * process.c (wait_reading_process_input):
4434 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 4435
20f1ef2e
KH
44362003-02-20 Kenichi Handa <handa@m17n.org>
4437
32d0a9dc
KH
4438 * fontset.c (check_fontset_name): If NAME is nil, return the
4439 default fontset.
4440 (override_font_info): New function.
e52bd6b7 4441 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
4442 (Ffontset_info): If FONTSET is not the default fontset, merge
4443 FONTSET onto the copy of the default fontset, and work on that
4444 copy. Document that NAME nil means the default fontset.
4445 (Ffontset_font): Document that NAME nil means the default fontset.
4446
20f1ef2e
KH
4447 * process.c (setup_process_coding_systems): If the process's
4448 in/out descriptor is -1, do nothing.
4449
77d1daf2
AS
44502003-02-19 Andreas Schwab <schwab@suse.de>
4451
e52bd6b7
SM
4452 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
4453 Add prototypes.
77d1daf2 4454
f9a45bb3
KH
44552003-02-19 Kenichi Handa <handa@m17n.org>
4456
4457 * xfaces.c (try_alternative_families): Try all scalable fonts if
4458 Vscalable_fonts_allowed is not Qt.
4459
72ecb43c
JD
44602003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4461
4462 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
4463
ee5be7c3
JD
44642003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4465
4466 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
4467 names.
4468
4469 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 4470 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
4471 x_face_list_fonts.
4472 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
4473 (Fx_list_fonts): Set maxnames to -1 to get all font names.
4474
4cd519a7
KS
44752003-02-18 Kim F. Storm <storm@cua.dk>
4476
068f9882
KS
4477 * lread.c (read1): Fix last change.
4478 "`" is not always special. Allow "?" after a character constant.
4cd519a7 4479
7290a344
AC
44802003-02-18 Andrew Choi <akochoi@shaw.ca>
4481
4482 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
4483
1f7fa69b
AS
44842003-02-18 Andreas Schwab <schwab@suse.de>
4485
4486 * window.c (window_scroll_pixel_based): Move outside a
4487 multi-glyph character before setting new window start.
4488
4489 * xdisp.c (in_display_vector_p): New function.
4490 * dispextern.h (in_display_vector_p): Declare.
4491
23e21195
KS
44922003-02-18 Kim F. Storm <storm@cua.dk>
4493
4494 * lread.c (read1): Fix and relax read syntax.
4495 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
4496 Only recognize "," after dotted-pair dot if inside backquote.
4497 Never include "`" or "," (inside backquote) in a symbol.
4498 Allow dotted-pair dot after a character constant.
4499 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 4500
f098b121
JD
45012003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4502
4503 * gtkutil.c (xg_tool_bar_expose_callback): New function.
4504 (xg_create_tool_bar): Force style of tool bar to be horizontal with
4505 icons. Set name of tool bar to emacs-toolbar.
4506 (update_frame_tool_bar): Connect expose event to
4507 xg_tool_bar_expose_callback.
4508
63020c46
RS
45092003-02-17 Richard M. Stallman <rms@gnu.org>
4510
4511 * keyboard.c (this_command_key_count_reset): New variable.
4512 Initiatize to 0 where this_command_key_count is set.
4513 (read_char): Save and restore this_command_key_count_reset
4514 around input method code.
4515 (read_char): If this_command_key_count_reset, echo reread commands.
4516 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
4517
fb4452cc
KH
45182003-02-17 Kenichi Handa <handa@m17n.org>
4519
4520 * fns.c (string_to_multibyte): Always return a multibyte string.
4521
bd11cc09
JR
45222003-02-16 Jason Rumney <jasonr@gnu.org>
4523
e52bd6b7
SM
4524 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
4525 Negative max_fonts parameter means list all.
bd11cc09 4526
4cdf4bde
DL
45272003-02-14 Dave Love <fx@gnu.org>
4528
4529 * fns.c (Flanginfo): Doc fix.
4530
023b93f6
KS
45312003-02-13 Kim F. Storm <storm@cua.dk>
4532
37cd4238
KS
4533 * lread.c (read_escape): Interpret \s as a SPACE character, except
4534 for \s-X in a character constant which still is the super modifier.
4535 (read1): Signal an `invalid read syntax' error if a character
4536 constant is immediately followed by a digit or symbol character.
4537
140a6b7e
KS
4538 * search.c (Fmatch_data): Doc fix. Explicitly state that
4539 match-data is undefined if last search failed.
4540
023b93f6
KS
4541 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
4542 All uses changed.
4543
7d5c86e5
JB
45442003-02-12 Juanma Barranquero <lektu@terra.es>
4545
4546 * eval.c (Fdefmacro): Fix typo.
4547
295fff2c
KS
45482003-02-12 Kim F. Storm <storm@cua.dk>
4549
4550 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
4551 macro is a string, convert meta modifiers in string when copying
4552 the string into a vector.
4553
60f3202d
KS
45542003-02-11 Kim F. Storm <storm@cua.dk>
4555
4556 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
4557
61cb0b53
KH
45582003-02-11 Kenichi Handa <handa@m17n.org>
4559
4560 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
4561
7392e23c
KS
45622003-02-10 Kim F. Storm <storm@cua.dk>
4563
4564 * process.c: Doc fixes.
4565 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
4566
ce4254bd
KH
45672003-02-10 Kenichi Handa <handa@m17n.org>
4568
9c7a329a
KH
4569 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
4570
ce4254bd
KH
4571 * process.c (QCfilter_multibyte): New variable.
4572 (setup_process_coding_systems): New function.
e52bd6b7
SM
4573 (Fset_process_buffer, Fset_process_filter):
4574 Call setup_process_coding_systems.
ce4254bd
KH
4575 (Fstart_process): Initialize the member `filter_multibyte' of
4576 struct Lisp_Process.
4577 (create_process): Call setup_process_coding_systems.
4578 (Fmake_network_process): New keyward `:filter-multibyte'.
4579 Initialize the member `filter_multibyte' of struct Lisp_Process.
4580 Call setup_process_coding_systems.
4581 (server_accept_connection): Call setup_process_coding_systems.
4582 (read_process_output): If the process has a filter, decide the
4583 multibyteness of a string to given to the filter by
4584 `filter_multibyte' member of the process. If the process doesn't
4585 have a filter and the result of conversion is unibyte, use
4586 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
4587 multibyte form.
4588 (Fset_process_coding_system): Call setup_process_coding_systems.
4589 (Fset_process_filter_multibyte): New function.
4590 (Fprocess_filter_multibyte_p): New function.
4591 (syms_of_process): Intern and staticpro QCfilter_multibyte.
4592 Defsubr Sset_process_filter_multibyte and
4593 Sprocess_filter_multibyte_p.
4594
4595 * process.h (struct Lisp_Process): New member filter_multibyte.
4596
4597 * lisp.h (setup_process_coding_systems): Add prototype.
4598
4599 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
4600 process, update coding systems for the process.
4601
b08d5f59
KH
46022003-02-09 Kenichi Handa <handa@m17n.org>
4603
4604 * fns.c (string_to_multibyte): New function.
4605 (Fstring_to_multibyte): New function.
4606 (syms_of_fns): Defsubr it.
4607
0dfd93c0
AS
46082003-02-08 Andreas Schwab <schwab@suse.de>
4609
4610 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
4611 instead of the substitution.
4612
7b76ca1c
JD
46132003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4614
4615 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
4616
4617 * xmenu.c (menu_position_func): Adjust menu popup position so that
4618 the menu is fully visible.
7b76ca1c 4619
2436a4e4
JD
46202003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4621
4622 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
4623 (x_make_frame_invisible, x_wm_set_icon_position):
4624 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
4625
4626 * xfns.c (x_set_name, x_set_title): Ditto.
4627
37d1e680
RS
46282003-02-04 Richard M. Stallman <rms@gnu.org>
4629
4630 * keyboard.c (echo_now): Update before_command_echo_length.
4631 (Freset_this_command_lengths): Reset this_command_key_count etc.
4632 immediately rather than arranging to do it later.
4633 (before_command_key_count_1, before_command_echo_length_1)
4634 (before_command_restore_flag): Vars deleted.
4635 (add_command_key): Don't handle before_command_restore_flag.
4636 (read_char, record_menu_key): Don't update before_command_key_count or
4637 before_command_echo_length.
4638 (read_char): Don't handle before_command_restore_flag.
4639
4640 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
4641 in direct-output clauses if it wouldn't be called in the ordinary case.
4642
578846a3
KS
46432003-02-04 Kim F. Storm <storm@cua.dk>
4644
4645 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
4646
49853a4d
JD
46472003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4648
4649 * gtkutil.c (remove_from_container): Copying list is not needed.
4650 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
4651 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
4652 on list returned from gtk_container_get_children to avoid memory leak.
4653
8b53dc06
JR
46542003-02-01 Jason Rumney <jasonr@gnu.org>
4655
5d54d177
JR
4656 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
4657 local malloc.
4658 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
4659 definitions in xpm.h.
4660 (init_xpm_functions): New function.
4661 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
4662 (init_external_image_libraries): Try to load libXpm.dll.
4663
8b53dc06
JR
4664 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
4665 timestamp.
4666
b222e415
DL
46672003-01-31 Dave Love <fx@gnu.org>
4668
4669 * syntax.c (Fskip_chars_forward)
4670 (open-paren-in-column-0-is-defun-start): Doc fix.
4671
c60ee5e7
JB
46722003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
4673
4674 * fileio.c: Support // at start of name for Cygwin (just added proper
4675 preprocessor tests).
4676
4677 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
4678
4679 * Makefile.in: Use @EXEEXT@ for Cygwin.
4680
4681 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
4682
4683 * s/cygwin.h: Added for Cygwin port.
4684
53b37591
JB
46852003-01-31 Juanma Barranquero <lektu@terra.es>
4686
4687 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
4688 when including gif_lib.h.
fe929957
JB
4689 (init_gif_functions, init_tiff_functions): New functions.
4690 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
4691 Windows. Disable color table lookups. Call library functions
53b37591 4692 through pointers determined at runtime.
fe929957
JB
4693 (init_external_image_libraries): Try to load libungif.dll and
4694 libtiff.dll.
53b37591 4695
45415a8f
KH
46962003-01-31 Kenichi Handa <handa@m17n.org>
4697
4698 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 4699 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 4700
a97e4138
JD
47012003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4702
e52bd6b7 4703 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 4704
6eed9bed
DL
47052003-01-30 Dave Love <fx@gnu.org>
4706
4707 * alloc.c (Vgc_elapsed, gcs_done): New variables.
4708 (Fgarbage_collect): Use them.
4709 (init_alloc, syms_of_alloc): Set them up.
4710
100dcd40
JB
47112003-01-30 Juanma Barranquero <lektu@terra.es>
4712
4713 * w32fns.c (init_external_image_libraries): Add missing operator.
4714
fbd852af
JR
47152003-01-29 Jason Rumney <jasonr@gnu.org>
4716
4717 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
4718 an alternative name for jpeg.dll.
4719
8a2d8020
KH
47202003-01-29 Kenichi Handa <handa@m17n.org>
4721
4722 * xdisp.c (set_cursor_from_row): Pay attention to string display
4723 properties.
4724
058c18c7
AC
47252003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
4726
4727 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
4728 <escape>.
4729 (keycode_to_xkeysym_table): Reformat and add more comments.
4730 (XTread_socket): Drop special case for backspace.
4731
385f11cf
AC
47322003-01-28 Andrew Choi <akochoi@shaw.ca>
4733
4734 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
4735 values in old-style RGB specs.
4736
c922a224
JB
47372003-01-27 Juanma Barranquero <lektu@terra.es>
4738
4739 * w32fns.c (init_external_image_libraries): Try alternate names for the
4740 jpeg dll.
4741
0a1d6de0
JD
47422003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4743
4744 * gtkutil.c (create_dialog, xg_separator_p)
4745 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
4746 before calling strcmp or strlen.
4747
a97e4138 47482003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
4749
4750 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
4751 and handle image load failure.
4752
28908312
JR
47532003-01-26 Jason Rumney <jasonr@gnu.org>
4754
4755 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
4756 New functions.
4757 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
4758 Disable color table lookups. Call jpeg library functions
4759 through pointers determined at runtime.
4760 (init_external_image_libraries): Try to load jpeg.dll.
4761
84e47416
RS
47622003-01-25 Richard M. Stallman <rms@gnu.org>
4763
4764 * lisp.h: Declare format2 instead of format1.
4765
4766 * fileio.c (barf_or_query_if_file_exists):
4767 Call format2 instead of format1.
4768
4769 * editfns.c (format2): New function, replaces format1
4770 but takes exactly two Lisp Objects as format args.
4771
4772 * buffer.c (Fkill_buffer): Call format2 instead of format1.
4773
a97e4138 47742003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
4775
4776 * xterm.h: Change to return value of x_dispatch_event to int.
4777
4778 * xterm.c (x_filter_event): New function.
4779 (event_handler_gdk, XTread_socket): Call x_filter_event.
4780 (x_dispatch_event): Change to return value of finish.
4781 (event_handler_gdk): Use return value from x_dispatch_event.
4782
4783 * xfns.c (x_window): Call create_frame_xic for GTK version to
4784 initialize input methods.
4785
4786 * gtkutil.h: Add (void) prototypes.
4787
4788 * gtkutil.c (create_menus): Remove code that puts the help menu to
4789 the right.
4790
54eefef1
JR
47912003-01-25 Jason Rumney <jasonr@gnu.org>
4792
4793 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
4794 [HAVE_PNG]: Sync with xfns.c version.
4795 (png_load): Adjust colors for Windows. Use Windows
4796 bitmaps. Disable color table lookups.
c262430d
JR
4797 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
4798 (init_png_functions): New function.
4799 (png_read_from_memory, png_load): Call png library functions
4800 through pointers determined at runtime.
4801 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
4802 (init_external_image_libraries): New function.
4803 (init_xfns): Call it.
54eefef1 4804
1a9e275b
AS
48052003-01-24 Andreas Schwab <schwab@suse.de>
4806
4807 * minibuf.c (Fminibuffer_message): Verify type of parameter.
4808
a97e4138 48092003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
4810
4811 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
4812 of static initializer.
4813
422eec7e
DL
48142003-01-24 Dave Love <fx@gnu.org>
4815
4816 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
4817 architectures.
4818
4819 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
4820 Use __alignof__.
4821
2a026b04
KH
48222003-01-24 Kenichi Handa <handa@m17n.org>
4823
4824 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 4825 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
4826 (command_loop_1): Call adjust_point_for_property with proper
4827 second arg.
4828
a18bb28d
JR
48292003-01-22 Jason Rumney <jasonr@gnu.org>
4830
4831 Sync changes with xterm.c and xfns.c.
4832
4833 * w32term.c (x_draw_glyph_string_foreground)
4834 (x_draw_composite_glyph_string_foreground): Implement overstriking.
4835
4836 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
4837 phys_cursor's hpos is overwritten. This is still not completely
4838 correct, as it doesn't really make sense to use hpos at all to
4839 get the cursor glyph (as that is relative to the width of the
4840 characters on the line, which may have changed during the update).
4841
4842 * w32term.c (notice_overwritten_cursor): Handle the special case
4843 of the cursor being in the first blank non-text line at the
4844 end of a window.
4845
4846 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
4847 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
4848 Compute from the x position returned by x_draw_glyphs.
4849
4850 (x_display_and_set_cursor): Don't set phys_cursor_width here,
4851 except for NO_CURSOR and system caret, to make phys_cursor_width
4852 contain what its name suggests.
4853 (notice_overwritten_cursor): Consider the cursor image erased if
4854 the output area intersects the cursor image in y-direction.
4855
6a097c0c
SM
4856 * w32term.c (note_mode_line_or_margin_highlight): Rename from
4857 note_mode_line_highlight and extend.
a18bb28d
JR
4858
4859 * w32term.c (last_window): New variable.
4860 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
4861 (note_mouse_movement): Remove reimplemented code in #if 0.
4862
4863 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
4864 not update_mode_lines, and always set it to 1.
4865
ac6e47ef
JR
48662003-01-21 Jason Rumney <jasonr@gnu.org>
4867
4868 * w32fns.c (IDC_HAND): Define it if system headers don't.
4869
48702003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
4871
4872 * w32term.h (struct w32_output): New member hand_cursor.
4873 (WM_EMACS_SETCURSOR): New message definition.
4874
4875 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
4876 function w32_define_cursor.
4877 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
4878 position, change member name output_data.x to output_data.w32 and
4879 add function w32_define_cursor.
4880 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
4881 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
4882 (w32_initialize_display_info):
4883 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
4884
4885 * w32fns.c (Vx_hand_shape): New variable.
4886 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
4887 WM_EMACS_SETCURSOR.
4888 (x-create-frame): Setup Cursor types.
4889
ceb39a17
JB
48902003-01-21 David Ponce <david@dponce.com>
4891
ac6e47ef
JR
4892 * w32term.c (w32_encode_char): For DIM=1 charset, set
4893 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
4894 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 4895 2002-09-30.)
ac6e47ef
JR
4896 (w32_draw_relief_rect): Declare all args.
4897 (w32_define_cursor): New.
4898
4899 * w32fns.c (w32_load_cursor): New function.
4900 (w32_init_class): Use it.
4901 (x_put_x_image): Declare all args.
4902
46cf0bed
JB
49032003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
4904
4905 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
4906
a97e4138 49072003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
4908
4909 * gtkutil.c: Must include stdio.h before termhooks.h
4910
83fc9c63
DL
49112003-01-21 Dave Love <fx@gnu.org>
4912
4913 * alloc.c (Fgc_status): Print zombie list.
4914 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
4915 Fix assignment of zombies.
4916 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
4917 Don't take car of non-cons.
4918
4919 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
4920
4921 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
4922
fe04b8c8
JR
49232003-01-20 David Ponce <david@dponce.com>
4924
4925 * w32menu.c (digest_single_submenu): Declare all args.
4926
4927 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
4928 changes in xmenu.c:
4929
4930 (parse_single_submenu): Use individual keymap's prompt
4931 string as pane name, if there is one.
4932 (set_frame_menubar): Save menu_items_n_panes from each call to
4933 parse_single_submenu and use it when calling digest_single_submenu.
4934
539e69a9
ST
49352003-01-20 Steven Tamm <steventamm@mac.com>
4936
4937 * macterm.c (XTread_socket): Checks for valid, visible window
4938 before sending a scroll-wheel event.
4939
675d000f
RS
49402003-01-20 Richard M. Stallman <rms@gnu.org>
4941
4942 * xdisp.c (redisplay_window): If mini window's buffer is not
4943 a minibuffer, then redisplay it like other windows.
4944
a97e4138 49452003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
4946
4947 * gtkutil.c (xg_create_frame_widgets): Check if there is an
4948 external tool bar before setting tool bar height.
4949
048addec
JD
49502003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4951
4952 * xterm.c (handle_one_xevent): Surround popup_activated
4953 with #ifdef:s for non-toolkit version.
4954
4955 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
4956 (gtkutil.o): New file.
4957 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
4958 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
4959
4960 * gtkutil.c: New file for GTK version.
4961
4962 * gtkutil.h: New file for GTK version.
4963
4964 * xterm.h: Add xt_or_gtk_widget.
4965 Include gtk files for USE_GTK.
4966 (struct x_output): Add toolbar_height.
4967 (struct x_output): Add GTK widgets and Gdk size_hints.
4968 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
4969 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
4970 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
4971
4972 * xterm.c: Include gtkutil.h for USE_GTK.
4973 Declare extern void free_frame_menubar for USE_GTK.
4974 (note_mouse_highlight): Check popup_activated for USE_GTK.
4975 (xt_action_hook): Don't compile if USE_GTK.
4976 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
4977 (xg_scroll_callback): New function.
4978 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
4979 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
4980 for USE_GTK.
4981 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
4982 xg_show_scroll_bar for USE_GTK.
4983 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
4984 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
4985 (event_handler_gdk): New function for USE_GTK.
4986 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
4987 (handle_one_xevent): Make sure widget is mapped before
4988 calling x_real_positions for USE_GTK.
4989 (XTread_socket): Add GTK event loop for USE_GTK.
4990 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
4991 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
4992 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
4993 (x_iconify_frame): Add code for USE_GTK.
4994 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
4995 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
4996 is in gtkutil.c.
4997 (x_term_init): Add initialization for GTK.
4998 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
4999
5000 * xmenu.c: Include gtkutil.h for USE_GTK.
5001 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
5002 (single_menu_item, single_menu_item, Fx_popup_dialog):
5003 Check for USE_GTK.
048addec
JD
5004 (popup_widget_loop): New function for USE_GTK.
5005 (x_activate_menubar): Add code for USE_GTK.
5006 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
5007 (menu_highlight_callback, menubar_selection_callback):
5008 Add USE_GTK versions.
048addec
JD
5009 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
5010 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
5011 (free_frame_menubar): Only compile if not USE_GTK. GTK version
5012 is in gtkutil.c.
5013 (popup_selection_callback): New version for USE_GTK.
5014 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 5015 one USE_X_TOOLKIT version.
048addec
JD
5016 (xmenu_show): Call create_and_show_popup_menu.
5017 (dialog_selection_callback): New version for USE_GTK.
5018 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 5019 one USE_X_TOOLKIT version.
048addec
JD
5020 (xdialog_show): Call create_and_show_dialog.
5021
5022 * xfns.c: Include gtkutil for USE_GTK.
5023 (x_window_to_frame, x_any_window_to_frame)
5024 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
5025 (x_top_window_to_frame): Add code for USE_GTK.
5026 (x_set_background_color): Call xg_set_background_color for GTK.
5027 (x_set_menu_bar_lines): Check for USE_GTK.
5028 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
5029 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
5030 (x_window): Call xg_create_frame_widgets for USE_GTK.
5031 (Fx_create_frame): Check for USE_GTK
5032 (Fx_file_dialog): New implementation for USE_GTK.
5033
5034 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
5035 (update_menu_bar): Add check for USE_GTK.
5036 (update_tool_bar): Add check for USE_GTK and external tool bar.
5037 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
5038 (redisplay_internal): Add check for USE_GTK and popup_activated.
5039 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
5040 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
5041 (display_menu_bar): Add check for USE_GTK
5042
5043 * lisp.h: Declare Vx_resource_name extern.
5044
5045 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
5046 for USE_GTK.
5047 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
5048
5049 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
5050 (FRAME_EXTERNAL_TOOL_BAR): New macro.
5051 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
5052
5053 * fileio.c (Fread_file_name): Add check for USE_GTK.
5054
6bdb309a
SM
5055 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
5056 Add check for USE_GTK.
048addec
JD
5057
5058 * config.in: Added HAVE_GTK
5059
5060 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
5061
50622003-01-18 Stefan Monnier <monnier@cs.yale.edu>
5063
5064 * charset.h (Funibyte_char_to_multibyte): Export.
5065
50662003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5067
5068 * xmenu.c (mouse_position_for_popup): New function.
5069 (Fx_popup_menu): Call mouse_position_for_popup for X and
5070 mouse_position_hook for others.
5071
50722003-01-17 Kim F. Storm <storm@cua.dk>
5073
5074 * editfns.c (Finsert): Mention `string-make-multibyte' and
5075 `string-as-multibyte' in doc string.
5076
50772003-01-17 Kenichi Handa <handa@m17n.org>
5078
5079 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 5080
048addec
JD
5081 * editfns.c (Fformat): Convert an unibyte char argument that is
5082 formatted by "%c" to multibyte if the total result must be a
5083 multibyte string.
cd7df9c0 5084
048addec 50852003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 5086
048addec
JD
5087 * process.c (set-process-filter): Document unibyte/multibyte-ness
5088 of string argument.
56210ecd 5089
048addec 50902003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 5091
048addec 5092 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 5093
048addec
JD
5094 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
5095 (re_search_2): Likewise.
6df8b9fe 5096
048addec 50972003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 5098
048addec
JD
5099 * xdisp.c (message_dolog): Fix bug of the case that *Message*
5100 buffer is unibyte.
292ddc31 5101
048addec 51022003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 5103
048addec 5104 * fns.c (Fsubstring): Clarify doc string.
292ddc31 5105
048addec
JD
5106 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
5107 (Fprevious_char_property_change)
5108 (Fnext_single_char_property_change)
5109 (Fprevious_single_char_property_change, Fnext_property_change)
5110 (Fnext_single_property_change, Fprevious_property_change)
5111 (Fprevious_single_property_change, Fadd_text_properties)
5112 (Fput_text_property, Fset_text_properties)
5113 (Fremove_text_properties, Fremove_list_of_text_properties)
5114 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 5115
048addec 51162003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 5117
048addec
JD
5118 * process.h (struct Lisp_Process): New member plist replaces old
5119 member private_vars. All uses changed.
63e4e4c6 5120
048addec 5121 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 5122 (QCplist): Rename from QCvars. Change all uses.
048addec 5123 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 5124 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 5125 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 5126 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 5127
048addec 51282003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 5129
6bdb309a 5130 * m/delta.h: Remove (obsolete).
e833850f 5131
048addec 51322003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 5133
048addec
JD
5134 * fileio.c (Fdelete_directory, Fdelete_file): Document the
5135 behaviour in front of symlinks.
5136 (Fdelete_file): Raise an error on directories.
817cb127 5137
048addec 51382003-01-13 Dave Love <fx@gnu.org>
817cb127 5139
048addec 5140 * fns.c (Freverse): Use QUIT.
3e8cf2ea 5141
048addec 51422003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 5143
048addec
JD
5144 * minibuf.c (minibuffer_completion_contents):
5145 Error if point is inside prompt.
3e8cf2ea 5146
048addec
JD
5147 * keyboard.c (command_loop_1): Don't redisplay directly
5148 if there's a post-command-hook.
3e8cf2ea 5149
048addec
JD
5150 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
5151 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 5152
048addec 51532003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 5154
048addec 5155 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 5156
048addec
JD
5157 * process.c (QCvars): New variable.
5158 (syms_of_process): Intern and staticpro it.
5159 (Fset_process_contact): Removed function.
5160 (Fprocess_variable, Fset_process_variable): New functions.
5161 (syms_of_process): Defsubr them.
5162 (Fstart_process): Initialize private_vars plist to nil.
5163 (Fmake_network_process): New arg :vars to setup the private
5164 variables for new network process.
5165 (server_accept_connection): Copy server's private variables to
5166 client process.
2c10f029 5167
048addec
JD
5168 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
5169 crashes). Code rewritten and simplified. Now directly aligns the
5170 pointer and recalculates pure_bytes_used, rather than aligning the
5171 size and adjusting the pointer.
b8a76c6c 5172
048addec 51732003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 5174
048addec
JD
5175 * process.c (Fset_process_contact): New function.
5176 (syms_of_process): defsubr it.
5177 (make-network-process): Update doc.
3a8d0899 5178
048addec 51792003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 5180
048addec
JD
5181 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
5182 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 5183
048addec 51842003-01-10 Dave Love <fx@gnu.org>
4abc7470 5185
048addec 5186 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 5187
048addec 51882003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 5189
048addec
JD
5190 * process.c (Fmake_network_process): Convert new port number
5191 to host byte order for `:service t' case. From Mario Lang.
bf338245 5192
048addec 51932003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 5194
048addec
JD
5195 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
5196 instead of XtAppProcessEvent.
bf338245 5197
048addec
JD
5198 * xterm.c (handle_one_xevent): New function.
5199 (x_dispatch_event): New function.
5200 (XTread_socket): Call handle_one_xevent.
bf338245 5201
048addec 5202 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 5203
048addec
JD
5204 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
5205 call XQueryPointer to get coordinates.
5206 (popup_get_selection): Do not set popup_activated_flag to zero,
5207 let popup_deactivate_callback do that. Needed for Motif.
5208 Call x_dispatch_event instead of XtDispatchEvent.
5209 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 5210
048addec 52112003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 5212
6bdb309a 5213 * process.c (server_accept_connection): Fix recording of new
048addec
JD
5214 connection's local address in :local property of contact info.
5215 (Fmake_network_process): Record local network address for new
5216 client processes in :local property of contact info.
6bdb309a 5217 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 5218
048addec 52192003-01-07 Dave Love <fx@gnu.org>
00e3ab56 5220
048addec 5221 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 5222
048addec 52232003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 5224
048addec 5225 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 5226
048addec
JD
5227 * eval.c (Fuser_variable_p): Doc change. For custom variables,
5228 use the same test as for custom-variable-p.
8c6d74c6 5229
048addec 52302003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 5231
048addec
JD
5232 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
5233 Count LAST_LINE_MISFIT in scroll margin for end of window.
5234 Move label too_near_end before setting SCROLL_MARGIN_POS.
5235 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 5236
048addec
JD
5237 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
5238 scroll_conservatively case. If scrolling that much doesn't change
5239 STARTP, move it down one line.
e833850f 5240
048addec
JD
5241 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
5242 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 5243
048addec
JD
5244 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
5245 selected frame.
8c6d74c6 5246
048addec
JD
5247 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
5248 (syms_of_keymap): staticpro them.
5249 (Fapropos_internal): Initialize them and clear them out.
5250 Don't GCPRO them.
8c6d74c6 5251
048addec
JD
5252 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
5253 Doc fixes.
8c6d74c6 5254
048addec
JD
5255 * lisp.h: New misc type Lisp_Save_Value.
5256 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
5257 (XSAVE_VALUE): New macro.
5258 (struct Lisp_Save_Value): New data type.
5259 (union Lisp_Misc): Add u_save_value alternative.
5260 (make_save_value): Declared.
8c6d74c6 5261
048addec 5262 * alloc.c (make_save_value): New function.
8c6d74c6 5263
048addec
JD
5264 * xterm.c (x_catch_errors): Save dpy using make_save_value.
5265 (x_catch_errors_unwind): Call XSync.
8c6d74c6 5266
048addec 52672003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 5268
048addec 5269 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 5270
048addec
JD
5271 * keyboard.c (command_loop_1): Call adjust_point_for_property
5272 in direct action cases for Qforward_char and Qbackward_char.
5273 Set already_adjusted so it won't be done twice.
8c6d74c6 5274
048addec 52752002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 5276
048addec
JD
5277 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
5278 type definition of size_t.
8c609cff 5279
048addec 52802003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 5281
048addec
JD
5282 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
5283 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 5284
048addec 52852002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 5286
048addec
JD
5287 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
5288 to default to t.
fa634a5e 5289
048addec 52902002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 5291
048addec 5292 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 5293
048addec 52942002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 5295
048addec
JD
5296 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
5297 allow building in a different directory than source. Uses some
5298 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 5299
048addec 53002002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 5301
048addec
JD
5302 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
5303 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
5304 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
5305 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 5306
048addec 53072002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 5308
048addec
JD
5309 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
5310 <scroll-down-aggressively>: Doc fix.
2155ecf3 5311
048addec
JD
5312 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
5313 string as pane name, if there is one.
5314 (set_frame_menubar): Save menu_items_n_panes from each call to
5315 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 5316
048addec
JD
5317 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
5318 Don't try to make last line fully visible if it is past end of window.
61f1d295 5319
048addec 53202002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 5321
048addec
JD
5322 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
5323 (mac_menu_show): Add support for hierarchical popup menus.
5324 (add_menu_item): Remove indentation support.
5325 (fill_submenu, fill_menu): Create hierarchical menus
5326 instead of using indentation.
0b17a217 5327
048addec 53282002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 5329
048addec
JD
5330 * xdisp.c (try_cursor_movement): Don't call try_window here.
5331 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 5332
048addec 5333 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 5334
048addec 53352002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 5336
048addec
JD
5337 * macterm.c (XTread_socket): Call KeyTranslate for control and
5338 meta to deal correctly shifted non-alpha characters, like C-S-5
5339 being treated like C-%. Does not look for shift key to deal
5340 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 5341
048addec 53422002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 5343
048addec
JD
5344 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
5345 If it is non-nil, run timers. Use an unwind-protect to requeue
5346 the events that were read ahead.
5347 (popup_get_selection_unwind): New subroutine.
5348 (popup_get_selection_queue): File-scope variable now holds that queue.
5349 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
5350 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
5351 Use an unwind-protect to pop down the dialog box.
5352 (xdialog_show_unwind): New subroutine implements that.
f02cac82 5353
048addec
JD
5354 * xdisp.c (row_containing_pos): Change exit test using last_y.
5355 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 5356
048addec
JD
5357 * lread.c (load_error_handler): New function.
5358 (Fload): Handle errors in Fsubstitute_in_file_name.
5359 Don't expect Fsignal to return.
f02cac82 5360
048addec
JD
5361 * eval.c: Errors and throws work right with interrupt blocking.
5362 (struct catchtag): New elt interrupt_input_blocked.
5363 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
5364 (internal_catch, Fcondition_case, internal_condition_case)
5365 (internal_condition_case_1, internal_condition_case_2): Save it.
5366 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 5367
048addec 5368 * editfns.c (Fformat): Add parens.
f02cac82 5369
048addec
JD
5370 * dired.c (file_name_completion): Fix that change.
5371 Delete special quit-handling code; just use QUIT.
f02cac82 5372
048addec 53732002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 5374
048addec
JD
5375 * dired.c (file_name_completion): Close directory on error
5376 just as in directory_files_internal.
1a590729 5377
048addec 53782002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 5379
048addec
JD
5380 * window.c (Fset_window_configuration): Set old_point to correct
5381 value when new_current_buffer == current_buffer.
f02cac82 5382
048addec 53832002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 5384
048addec
JD
5385 Revisited my earlier fix for the following entry in etc/PROBLEMS:
5386 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
5387 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 5388
048addec
JD
5389 These changes were in part based upon suggestions made by Peter
5390 'Luna' Runestig [peter@runestig.com].
9785d95b 5391
048addec
JD
5392 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
5393 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 5394 g_b_init_get_sid_identifier_authority ): Add several static
048addec 5395 global variables.
9785d95b 5396
048addec
JD
5397 * w32.c (globals_of_w32): New function. Used to initialize those
5398 global variables that must always be initialized on startup even
5399 when the global variable initialized is non zero. Its primary
5400 purpose at this time is to set the global variables
5401 g_b_init_is_windows_9x, g_b_init_open_process_token,
5402 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
5403 g_b_init_get_sid_identifier_authority to 0 on startup.
5404 Called from main.
9785d95b 5405
048addec
JD
5406 * w32.c (is_windows_9x): Perform initialization only if
5407 g_b_init_is_windows_9x is equal to 0. On initialization set
5408 g_b_init_is_windows_9x equal to 1.
2308af15 5409
048addec
JD
5410 * w32.c (open_process_token): Perform initialization only if
5411 g_b_init_open_process_token is equal to 0. On initialization set
5412 g_b_init_open_process_token equal to 1.
2308af15 5413
048addec
JD
5414 * w32.c (get_token_information): Perform initialization only if
5415 g_b_init_get_token_information is equal to 0. On initialization
5416 set g_b_init_get_token_information equal to 1.
9785d95b 5417
048addec
JD
5418 * w32.c (lookup_account_sid): Perform initialization only if
5419 g_b_init_lookup_account_sid is equal to 0. On initialization
5420 set g_b_init_lookup_account_sid equal to 1.
9785d95b 5421
048addec
JD
5422 * w32.c (get_sid_identifier_authority): Perform initialization
5423 only if g_b_init_get_sid_identifier_authority is equal to 0.
5424 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 5425
048addec
JD
5426 * w32fns.c (globals_of_w32fns): New function. Used to initialize
5427 those global variables that must always be initialized on startup
5428 even when the global variable initialized is non zero.
5429 Its primary purpose at this time is to initialize the global variable
5430 track_mouse_event_fn.
9785d95b 5431
048addec
JD
5432 * w32fns.c (w32_wnd_proc): Remove initialization of
5433 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 5434
048addec 5435 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 5436
048addec
JD
5437 * w32menu.c (globals_of_w32menu): New function. Used to
5438 initialize those global variables that must always be initialized
5439 on startup even when the global variable initialized is non zero.
5440 Its primary purpose at this time is to initialize the global
5441 variables get_menu_item_info and set_menu_item_info.
9785d95b 5442
048addec
JD
5443 * w32menu.c (initialize_frame_menubar): Remove initialization of
5444 get_menu_item_info and set_menu_item_info.
9785d95b 5445
048addec 5446 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 5447
048addec
JD
5448 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
5449 Declare them.
9785d95b 5450
048addec
JD
5451 * emacs.c (main): Call globals_of_w32 prior to calling
5452 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
5453 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
5454 is defined.
9785d95b 5455
048addec
JD
5456 * w32term.c (x_update_window_begin): Fix Windows API error
5457 detected by BoundsChecker. Test to determine if
5458 w32_system_caret_hwnd is NULL prior to attempting to use
5459 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 5460
048addec
JD
5461 * w32term.c (x_update_window_end): Fix Windows API error
5462 detected by BoundsChecker. Test to determine if
5463 w32_system_caret_hwnd is NULL prior to attempting to use
5464 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 5465
048addec 54662002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 5467
048addec
JD
5468 * coding.c (coding_system_require_warning): New variable.
5469 (syms_of_coding): DEFVAR it.
b6da19ef 5470
048addec 5471 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 5472
048addec
JD
5473 * fileio.c (choose_write_coding_system): Even if
5474 Vcoding_system_for_write is non-nil, if
5475 coding_system_require_warning is nonzero, call
5476 Vselect_safe_coding_system_function.
bfcf6dbe 5477
048addec 54782002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 5479
048addec
JD
5480 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
5481 (lisp): Add font-core.
2c568af5 5482
048addec 54832002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 5484
048addec
JD
5485 * textprop.c (text_read_only): New arg `propval'.
5486 (get_char_property_and_overlay): Remove unused var `next_overlay'.
5487 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 5488
048addec 54892002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 5490
048addec 5491 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 5492
048addec 54932002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 5494
048addec
JD
5495 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
5496 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
5497 Be more careful about when help_events are generated.
96720f09 5498
048addec 54992002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 5500
048addec
JD
5501 * macterm.c (mac_check_for_quit_char): Correctly set the
5502 modifiers of the event to 0.
5503 * mac.c (sys_select): Duplicate rfds before calling select to
5504 ensure that rfds survive the while loop.
e5ae1c49 5505
048addec 55062002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 5507
048addec
JD
5508 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
5509 row_containing_pos returned NULL.
2eb46b2d 5510
048addec 55112002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 5512
6bdb309a 5513 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 5514 non-blocking.
6bdb309a 5515 (sys_select): Fix sys_select to not use a timeout larger than
048addec 5516 the one given.
b11f1d8a 5517
048addec 55182002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 5519
048addec 5520 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 5521
048addec 55222002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 5523
048addec
JD
5524 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
5525 as the last thing.
a4ac5b17 5526
048addec 55272002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 5528
048addec 5529 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 5530
048addec 55312002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 5532
048addec
JD
5533 * editfns.c (Fformat): Handle precision in string conversion
5534 specifiers like libc functions do (ie, print at most that many
5535 characters).
85cce843 5536
048addec 55372002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 5538
048addec
JD
5539 * xdisp.c (row_containing_pos): Check more carefully
5540 whether charpos is really in the row before returning it.
0d4d26a7 5541
048addec 55422002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 5543
048addec 5544 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 5545
048addec
JD
5546 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
5547 each stack frame. This may change as it could be time consuming.
0d4d26a7 5548
048addec
JD
5549 * macterm.c (mac_check_for_quit_char, quit_char_comp)
5550 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 5551 (mac_initialize): Add code to check for pressing of quit_char
048addec 5552 in the OS event queue.
b11f1d8a 5553
048addec
JD
5554 * mac.c (sys_select): Call mac_check_for_quit_char every second
5555 while blocking on select.
0d4d26a7 5556
048addec
JD
5557 * mac.c (sys_read): Use sys_select to test for input first
5558 before calling read, to allow C-g to break.
9252f7bc 5559
048addec 55602002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 5561
048addec 5562 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 5563
048addec 5564 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 5565
048addec 5566 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 5567
048addec
JD
5568 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
5569 autoload.
9252f7bc 5570
048addec 5571 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 5572
048addec 5573 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 5574
048addec 55752002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 5576
048addec 5577 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 5578
048addec 55792002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 5580
048addec 5581 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 5582
048addec 5583 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 5584
048addec 5585 * alloca.c: Don't use #error.
02d588e2 5586
048addec 55872002-12-03 Dave Love <fx@gnu.org>
02d588e2 5588
048addec
JD
5589 * buffer.c (Qucs_set_table_for_input): New.
5590 (Fget_buffer_create): Use it.
5591 (Qset_buffer_major_mode_hook): Deleted.
5592 (Fset_buffer_major_mode): Revert previous change.
5593 (init_buffer_once): Intern ucs-set-table-for-input.
5594 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
5595 Add &Qucs_set_table_for_input.
451e2697 5596
048addec 55972002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 5598
048addec
JD
5599 * callint.c (Fcall_interactively): Use next_event only if less
5600 than key_count.
72742a99 5601
048addec 56022002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 5603
048addec
JD
5604 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
5605 names to 255 characters.
72742a99 5606
048addec
JD
5607 * macterm.c (XTread_socket): If all frames have been collapsed,
5608 expand the first one before handling drag-and-drop events.
72742a99 5609
048addec
JD
5610 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
5611 which is detected by autoconf.
40e6ff95 5612
048addec 56132002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 5614
048addec
JD
5615 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
5616 offset in two hints table to allow prebinding to be redone and
5617 allow the executable to be stripped.
c02138c6 5618
048addec 56192002-11-29 Dave Love <fx@gnu.org>
c02138c6 5620
048addec
JD
5621 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
5622 already provided.
0e47bbf7 5623
048addec 56242002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 5625
048addec
JD
5626 * xdisp.c (start_display): Check more intelligently for
5627 whether the line is continued.
5628 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 5629
048addec 56302002-11-28 Dave Love <fx@gnu.org>
44129dcb 5631
048addec
JD
5632 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
5633 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 5634
048addec 56352002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 5636
048addec
JD
5637 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
5638 more descriptive error output from lread.c:Fload upon most require
5639 cycles during boostrapping.
1637fd2c 5640
048addec 56412002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 5642
048addec
JD
5643 * fileio.c (Finsert_file_contents): Give a more appropriate error
5644 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 5645
048addec
JD
5646 * dired.c (Ffile_attributes): Don't return negative file sizes for
5647 files bigger than 2Gb when off_t is 32 bit.
540c2788 5648
048addec 56492002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 5650
048addec 5651 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 5652
048addec
JD
5653 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
5654 Test GETPGRP_VOID instead.
5655 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 5656
048addec
JD
5657 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
5658 Don't define.
5659 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 5660
048addec 5661 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 5662
048addec 56632002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 5664
048addec
JD
5665 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
5666 supported.
4042a81a 5667
048addec 56682002-11-25 Dave Love <fx@gnu.org>
4042a81a 5669
048addec 5670 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 5671
048addec 5672 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 5673
048addec 56742002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 5675
048addec 5676 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 5677
048addec 56782002-11-24 Steven Tamm <steventamm@mac.com>
82122254 5679
048addec
JD
5680 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
5681 determine the size of pointers alloced in unexed space instead
5682 of using possibly invalid emacs_zone pointers. This fixes the
5683 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 5684
048addec 56852002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 5686
048addec 5687 * search.c (Fstring_match): Doc fix.
c1ee53bc 5688
048addec
JD
5689 * callint.c (Fcall_interactively): If a command fails because
5690 `*' detects a read-only buffer, but RECORD_FLAG is set,
5691 record it anyway if the args don't actually do tty input.
5598c32e 5692
048addec 56932002-11-22 Dave Love <fx@gnu.org>
5598c32e 5694
048addec 5695 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 5696
048addec
JD
5697 * keyboard.c (interrupt_signal): Provide forward declaration.
5698 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 5699
048addec 5700 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 5701
048addec 57022002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 5703
048addec
JD
5704 * eval.c (interactive_p): Skip any number of bytecode
5705 and special form frames, in any order.
516eea8e 5706
048addec 57072002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 5708
048addec
JD
5709 * w32fns.c (convert_mono_to_color_image): New function.
5710 (xbm_load, xbm_load_image): Use it when foreground or background
5711 is explicitly set.
04dbfa08 5712
048addec 57132002-11-19 Dave Love <fx@gnu.org>
04dbfa08 5714
048addec 5715 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 5716
048addec 57172002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 5718
048addec
JD
5719 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
5720 (XPutPixel): Swap blue and red.
5721 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
5722 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
5723 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
5724 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 5725
048addec 57262002-11-18 Dave Love <fx@gnu.org>
d824beee 5727
048addec 5728 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 5729
048addec 5730 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 5731
048addec 5732 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 5733
048addec
JD
5734 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
5735 malloc, realloc, calloc.
d824beee 5736
048addec
JD
5737 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
5738 (bcmp): Don't define.
d824beee 5739
048addec 5740 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 5741
048addec 5742 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 5743
048addec 5744 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 5745
048addec 5746 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 5747
048addec
JD
5748 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
5749 Don't include alloca.h.
d824beee 5750
048addec 5751 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 5752
048addec 5753 * regex.c (_GNU_SOURCE): Don't define.
1998560a 5754
048addec 5755 * process.c (_GNU_SOURCE): Don't define.
1998560a 5756
048addec 5757 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 5758
048addec 57592002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 5760
048addec 5761 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 5762
048addec 57632002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 5764
048addec
JD
5765 * dispextern.h (struct face): Add `overstrike' field.
5766 * xterm.c (x_draw_glyph_string_foreground)
5767 (x_draw_composite_glyph_string_foreground): Implement overstriking.
5768 * xfaces.c (load_face_font): Set `face->overstrike' based on
5769 result from choose_face_font.
5770 (best_matching_font, choose_face_font): Add `needs_overstrike'
5771 argument, and use it to return whether overstriking is desirable
5772 for this face/font combo.
5773 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 5774
048addec 57752002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 5776
048addec
JD
5777 This change is my fix for the following entry in etc/PROBLEMS:
5778 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
5779 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 5780
048addec
JD
5781 * w32.c: Added wrapper functions around the win32 API functions
5782 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
5783 GetSidIdentifierAuthority. These wrapper functions serve two
5784 purposes:
5785 1. They ensure that the wrapped function can never be called
5786 when Emacs is running on an operating system on which they are
5787 not supported (Microsoft Windows 95 / 98 / ME).
5788 2. They call the wrapped functions via function pointers rather
5789 than calling them directly. This avoids taking advantage of the
5790 undocumented fact that although these functions are not supported
5791 in the 9x branch of Microsoft Windows, the functions do exist in
5792 the version of advapi32.dll that is found in the 9x branch of
5793 Microsoft Windows.
f60ae425 5794
6bdb309a 5795 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
5796 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
5797 and GetSidIdentifierAuthority with calls to the newly added
5798 wrapper functions.
f60ae425 5799
048addec
JD
5800 * w32.h: Added extern declarations for the following functions:
5801 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
5802 syms_of_w32menu, and void syms_of_fontset.
f60ae425 5803
6bdb309a 5804 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
5805 function pointer track_mouse_event_fn in the handler for the
5806 WM_SETFOCUS message.
3582b6a3 5807
6bdb309a 5808 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
5809 reinitialize the function pointers set_menu_item_info and
5810 get_menu_item_info.
f60ae425 5811
048addec 58122002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 5813
048addec
JD
5814 * sound.c: Added a partial implementation of play-sound-internal
5815 for Microsoft Windows. Added various #ifdef / #else / #endif
5816 code blocks to separate the code that will compile under
5817 Microsoft Windows from the code that is specific to Gnu/Linux.
5818 Moved several blocks of code around to make this separation of code
5819 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 5820
048addec 5821 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 5822
048addec
JD
5823 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
5824 added support for play-sound-internal under Windows would be
5825 included in the build of Emacs.
517f42a0 5826
048addec 58272002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 5828
048addec 5829 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 5830
048addec 5831 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 5832
048addec 58332002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 5834
048addec
JD
5835 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
5836 (adjust_point_for_property): Move out of display and invisible even if
5837 we were already inside before (in case a property was added while
5838 we weren't looking). Be more careful when handling invisible props.
5839 Skip invisible text as if it really wasn't there at all.
aab83f91 5840
048addec 58412002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 5842
048addec
JD
5843 * w32term.c (x_draw_image_foreground)
5844 (w32_draw_image_foreground_1): Use standard copy and invert
5845 operations to draw images.
aab83f91 5846
048addec
JD
5847 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
5848 depth of 1.
5849 (xbm_read_bitmap_data): Invert bits as xbm is read in.
5850 (XPutPixel): Don't invert bits here.
a4478a76 5851
048addec 58522002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 5853
048addec
JD
5854 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
5855 (w32_draw_image_foreground_1): Handle image masks.
5856 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 5857
048addec
JD
5858 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
5859 (x_from_xcolors): Adjust RGB values for W32.
5860 (image_background, image_background_transparent)
5861 (postprocess_image, x_to_xcolors, x_disable_image)
5862 (x_build_heuristic_mask): Adapt for W32 and enable.
5863 (x_create_x_image_and_pixmap): Mark images with palettes as such.
5864 (xbm_load): Remove unused variable.
03670a65 5865
048addec 58662002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 5867
048addec 5868 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 5869
048addec 58702002-11-14 Dave Love <fx@gnu.org>
59daa29a 5871
048addec 5872 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 5873
048addec
JD
5874 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
5875 * xmenu.c (unuse_menu_items, digest_single_submenu):
5876 * xfns.c (x_put_x_image):
5877 * xdisp.c (message2_nolog, set_message):
5878 * undo.c (record_point):
5879 * terminfo.c (tparam):
5880 * syntax.c (scan_sexps_forward):
5881 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
5882 * composite.c (update_compositions):
5883 * cm.c (calccost, cmgoto):
5884 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 5885
048addec 5886 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 5887
048addec
JD
5888 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
5889 Don't declare.
59daa29a 5890
048addec 5891 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 5892
048addec
JD
5893 * fns.c (Fcopy_sequence): Doc fix.
5894 (Fmap_char_table): Cast `call2'.
3947677c 5895
048addec
JD
58962002-11-14 Francesco Potorti` <pot@gnu.org>
5897
5898 * s/sol2-8.h: New file.
5899
59002002-11-14 Kim F. Storm <storm@cua.dk>
5901
5902 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
5903 dependency on `risky-local-variable' and the :propertize form.
5904
59052002-11-12 Stefan Monnier <monnier@cs.yale.edu>
5906
5907 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
5908
5909 * syntax.c (scan_sexps_forward): Undo last patch.
5910 Use a more obvious fix: check eob before updating the syntax table.
5911
59122002-11-09 Stefan Monnier <monnier@cs.yale.edu>
5913
5914 * syntax.c (scan_sexps_forward): Update syntax table before reading
5915 a char rather than after so we don't update the table past eob.
5916
59172002-11-09 Dave Love <fx@gnu.org>
5918
5919 * buffer.c (Fset_buffer_major_mode): Fix last change.
5920
5921 * regex.c (regexec): Fix pmatch declaration.
5922
5923 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
5924
5925 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
5926 to self-inserting characters.
5927 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
5928
5929 * coding.c (Vtranslation_table_for_input): New.
5930 (syms_of_coding): DEFVAR it.
5931
59322002-11-08 Juanma Barranquero <lektu@terra.es>
5933
5934 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
5935 window.
5936
59372002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5938
6bdb309a 5939 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
5940 cp, and i.
5941
59422002-11-06 Dave Love <fx@gnu.org>
5943
5944 * buffer.c (Qset_buffer_major_mode_hook): New.
5945 (Fset_buffer_major_mode): Use it.
5946
59472002-11-06 Richard M. Stallman <rms@gnu.org>
5948
5949 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
5950 and stop_polling.
5951
5952 * process.c (wait_reading_process_input):
5953 Test POLLING_PROBLEM_IN_SELECT, not hpux.
5954 Avoid initialization for auto Lisp_Object var.
5955
5956 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
5957
5958 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
5959
59602002-11-05 Richard M. Stallman <rms@gnu.org>
5961
5962 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
5963
5964 * callint.c (Fcall_interactively): New local filter_specs.
5965 (Fcall_interactively): Check for progn as well as let.
5966 Add a gcpro.
5967 (Qprogn): New variable.
5968 (syms_of_callint): Staticpro and init Qprogn.
5969
59702002-11-04 John Paul Wallington <jpw@shootybangbang.com>
5971
5972 * lread.c (Feval_buffer): Doc fix.
5973
59742002-11-04 Dave Love <fx@gnu.org>
5975
5976 * keyboard.c (read_char): Always translate iff
5977 Vkeyboard_translate_table is a char table and c is valid.
5978
5979 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
5980 and fix C types.
5981
59822002-11-03 Stefan Monnier <monnier@cs.yale.edu>
5983
5984 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
5985
5986 * editfns.c (get_pos_property): Don't hardcode Qfield.
5987
5988 * keyboard.c (adjust_point_for_property): Handle `display' prop on
5989 overlays. Also handle `invisible' prop.
5990
59912002-11-02 Stefan Monnier <monnier@cs.yale.edu>
5992
5993 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
5994 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
5995
59962002-11-01 Andreas Schwab <schwab@suse.de>
5997
5998 * editfns.c (Fmessage): Revert last change to properly handle %%.
5999
60002002-11-01 Stefan Monnier <monnier@cs.yale.edu>
6001
6002 * xmenu.c (unuse_menu_items): New fun.
6003 (menu_items_inuse): New var.
6004 (syms_of_xmenu): Initialize it.
6005 (init_menu_items): Use it to detect re-entrance.
6006 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
6007 (Fx_popup_menu): Remove spurious XSETFRAME.
6008
6009 * editfns.c (find_field): Make an exception for nil fields.
6010
60112002-11-01 Dave Love <fx@gnu.org>
6012
6013 * m/gec63.h: Deleted.
6014
60152002-10-31 Dave Love <fx@gnu.org>
6016
6017 * xterm.c (XTread_socket): Fix last change.
6018 (xaw_scroll_callback): Cast call_data to long to avoid warning.
6019
60202002-10-31 Stefan Monnier <monnier@cs.yale.edu>
6021
6022 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
6023
60242002-10-30 Stefan Monnier <monnier@cs.yale.edu>
6025
6026 * editfns.c (overlays_around, get_pos_property): New funs.
6027 (find_field): Use them.
6028 Also be careful not to modify POS before its last use.
6029 (Fmessage): Don't Fformat if there's nothing to format.
6030
60312002-10-30 Dave Love <fx@gnu.org>
6032
6033 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
6034 [HAVE_PTY_H]; Include pty.h.
6035
6036 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
6037
6038 * xterm.c (Qeql): Declare.
6039 (Vx_keysym_table): New.
6040 (syms_of_xterm): Initialize it.
6041 (XTread_socket): Use it. Deal with ASCII keysyms.
6042 (XSetIMValues) [HAVE_X11R6]: Prototype.
6043
6044 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
6045 (lispy_kana_keys): Comment out.
6046 (make_lispy_event) [XK_kana_A]: Comment out.
6047 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
6048 Fix sprintf call.
6049
6050 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
6051 regexp.h change).
6052 (TERMINFO, LIBS_TERMCAP): Define.
6053
6054 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
6055 (bcmp): Define conditional on HAVE_BCMP.
6056 (NO_SIOCTL_H): Don't define.
6057 (TIOCSIGSEND): Don't make conditional on IRIX6.
6058
6059 * s/sol2-5.h: Don't include strings.h.
6060 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
6061
6062 * s/irix6-0.h (IRIX6): Don't define.
6063 (bcopy, bcmp, bzero): Don't undef.
6064
6065 * s/irix6-5.h: Don't include strings.h.
6066 (IRIX6): Don't define.
6067 (bcopy, bcmp, bzero): Don't undef.
6068
6069 * syntax.c (Fforward_comment): Doc fix.
6070
60712002-10-29 Kim F. Storm <storm@cua.dk>
6072
6073 * process.c (Fsignal_process): Allow PROCESS to be specified by
6074 name in addition to pid (as integer or string).
6075
60762002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
6077
6078 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
6079 environments.
6080
60812002-10-27 Kim F. Storm <storm@cua.dk>
6082
6083 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6084
6085 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
6086
6087 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
6088
6089 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6090
60912002-10-26 Richard M. Stallman <rms@gnu.org>
6092
6093 * editfns.c (Fformat): Detect invalid format letters for floats.
6094
60952002-10-25 Kenichi Handa <handa@m17n.org>
6096
6097 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
6098 (x_set_title): Likewise.
6099
61002002-10-25 Juanma Barranquero <lektu@terra.es>
6101
6102 * macgui.h:
6103 * w32gui.h: Remove definition of XColor.
6104
6105 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
6106
61072002-10-24 Kim F. Storm <storm@cua.dk>
6108
6109 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
6110 Callers changed (supply dummy arg).
6111
6112 * lisp.h (get_window_cursor_type): Update prototype.
6113
6114 * w32term.c (x_display_and_set_cursor): Get active_cursor from
6115 get_window_cursor_type to track system caret.
6116
61172002-10-24 Kim F. Storm <storm@cua.dk>
6118
6119 * process.c (Fformat_network_address): New function.
6120 (syms_of_process): Defsubr it.
6121 (list_processes_1): Use it to format :local/:remote address if
6122 service/host is not set; before emacs would crash in that case.
6123 (Fmake_network_process): Don't use Ffind_operation_coding_system
6124 to setup coding system if host or service is not set.
6125
61262002-10-23 Juanma Barranquero <lektu@terra.es>
6127
6128 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
6129
6130 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
6131 COLORREF.
6132
6133 * macgui.h:
6134 * w32gui.h: Add definition of XColor.
6135
6136 * macfns.c:
6137 * w32fns.c:
6138 * xfaces.c: Remove definition of XColor.
6139
61402002-10-22 Stefan Monnier <monnier@cs.yale.edu>
6141
6142 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
6143
6144 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
6145 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
6146 window if it is dedicated.
6147 (Fshrink_window): Add preserve_before as was done for enlarge_window.
6148 (Vspecial_display_function): Update docstring.
6149
6150 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
6151 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
6152 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
6153
61542002-10-21 Stefan Monnier <monnier@cs.yale.edu>
6155
6156 * casefiddle.c (casify_region): Don't treat a prefix char as part
6157 of a word when at the beginning.
6158
61592002-10-17 Juanma Barranquero <lektu@terra.es>
6160
6161 * lread.c (syms_of_lread): Fix typos.
6162
61632002-10-17 Dave Love <fx@gnu.org>
6164
6165 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
6166
61672002-10-16 Richard M. Stallman <rms@gnu.org>
6168
6169 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
6170
61712002-10-14 Juanma Barranquero <lektu@terra.es>
6172
6173 * w16select.c (syms_of_win16select): Fix docstring for
6174 `selection-coding-system'.
6175
6176 * w32select.c (syms_of_w32select): Likewise.
6177
61782002-10-14 Stefan Monnier <monnier@cs.yale.edu>
6179
6180 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
6181 a backslash-quoted char.
6182 (scan_lists, scan_sexps_forward): Pacify the compiler.
6183
61842002-10-13 Richard M. Stallman <rms@gnu.org>
6185
6186 * window.c (window_scroll): Set immediate_quit.
6187
6188 * print.c (print): When backquote form is the car of a list,
6189 output in old style. Use old_backquote_output to output all
6190 comma forms inside it in old style too.
6191
6192 * buffer.h (struct buffer): Move `undo_list' down below `name'.
6193
61942002-10-11 Markus Rost <rost@math.ohio-state.edu>
6195
6196 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
6197 batch mode).
6198
6199 * lread.c (Fload): Doc fix (load-suffixes).
6200
62012002-10-10 Steven Tamm <steventamm@mac.com>
6202
6203 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
6204 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
6205 Also switch the default to Qnil from Qt.
6206
62072002-10-08 Kenichi Handa <handa@m17n.org>
6208
6209 * coding.c (code_convert_region): When we need more GAP for
6210 conversion, pay attention to the case that coding->produced is not
6211 greater than coding->consumed.
6212
62132002-10-07 Richard M. Stallman <rms@gnu.org>
6214
6215 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
6216
62172002-10-06 Andrew Choi <akochoi@shaw.ca>
6218
6219 * macmenu.c (mac_menu_show): Add j to count menu items; match
6220 menu_item_selection to it to find selected item.
6221
62222002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6223
6224 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
6225 cases. The correct fix is to pass ReparentNotify to Xt.
6226 The shell widget interprets ConfigureNotify differently depending
6227 on if it has been reparented or not.
6228
62292002-10-05 Markus Rost <rost@math.ohio-state.edu>
6230
6231 * editfns.c (Fformat_time_string): Doc fix.
6232
62332002-10-05 John Paul Wallington <jpw@shootybangbang.com>
6234
6235 * fns.c (Flength): Doc fix.
6236
62372002-10-04 Stefan Monnier <monnier@cs.yale.edu>
6238
6239 * keyboard.c (keyremap): New struct.
6240 (read_key_sequence): Use it: globally replace keytran_foo with
6241 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
6242 keytran_next and fkey_next to just `next'.
6243
62442002-10-04 Steven Tamm <steventamm@mac.com>
6245
6246 * macterm.c (keycode_to_xkeysym_table): Change return to be
6247 treated like an X keysym.
6248
62492002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6250
6251 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
6252 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
6253 This is to also handle x/y changes that occur because of a resize.
6254
62552002-10-02 John Paul Wallington <jpw@shootybangbang.com>
6256
6257 * frame.c (Vdelete_frame_functions): New variable.
6258 (syms_of_frame): Initialize and defvar it.
6259 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
6260 it when frame's `tooltip' parameter is non-nil.
6261
6262 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
6263
6264 * w32fns.c (x_create_tip_frame): Likewise.
6265
6266 * macfns.c (x_create_tip_frame): Likewise.
6267
62682002-09-30 Kenichi Handa <handa@m17n.org>
6269
6270 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
6271 -1 before calling ccl_driver.
6272
6273 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
6274 Only when it is non-nil, handle composition sequence.
6275 (setup_coding_system) <0>: Don't force composition handling.
6276
6277 * Makefile.in (lisp, shortlisp): Add utf-16.elc
6278
62792002-09-29 Richard M. Stallman <rms@gnu.org>
6280
6281 * search.c (Freplace_match): Adjust match data for the substitution
6282 just made in the buffer.
6283
6284 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
6285 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
6286
62872002-09-27 Richard M. Stallman <rms@gnu.org>
6288
6289 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
6290 (read_char): Use them. Do all exits thru the end of the function.
6291
62922002-09-27 Kenichi Handa <handa@etl.go.jp>
6293
6294 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
6295 is nil.
6296
62972002-09-26 Richard M. Stallman <rms@gnu.org>
6298
6299 * regex.h (__restrict_arr): Don't define if already defined.
6300
6301 * coding.c (run_pre_post_conversion_on_str):
6302 Save and restore Vdeactivate_mark.
6303
63042002-09-26 John Paul Wallington <jpw@shootybangbang.com>
6305
6306 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
6307
63082002-09-26 Kenichi Handa <handa@etl.go.jp>
6309
6310 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
6311 nonzero, try face's family at first. Otherwise try FAMILY at first.
6312 (choose_face_font): If C is a single byte char or latin-1, call
6313 try_font_list with PREFER_FACE_FAMILY 1.
6314
63152002-09-21 Richard M. Stallman <rms@gnu.org>
6316
6317 * window.c (select_window_1): Don't select frame.
6318 Set frame's selected window only when frame itself is selected.
6319 (Fselect_window): Doc fix.
6320
63212002-09-18 Kim F. Storm <storm@cua.dk>
6322
6323 * process.c (make-network-process): Doc fix (there is no
6324 network-server-log-function hook).
6325
63262002-09-18 Richard M. Stallman <rms@gnu.org>
6327
6328 * print.c (print): Clear out the unused parts of Vprint_number_table.
6329 (syms_of_print): Doc fix for `print-number-table'.
6330
6331 * unexelf.c (unexec): Undo previous change.
6332
63332002-09-17 Andreas Schwab <schwab@suse.de>
6334
6335 * m/alpha.h [LINUX]: Don't define DATA_START.
6336
63372002-09-16 Dave Love <fx@gnu.org>
6338
6339 * unexelf.c (unexec): Deal with .got, reinstating change from
6340 25-08-1999.
6341
63422002-09-13 Richard M. Stallman <rms@gnu.org>
6343
6344 * s/sol2-6.h (UNEXEC): Comment out definition.
6345
6346 * unexsol.c (unexec): Don't downcase first letter of error msg.
6347
6348 * xfaces.c (Fcolor_supported_p): Just one arg is required.
6349
63502002-09-12 Markus Rost <rost@math.ohio-state.edu>
6351
6352 * unexsol.c: Include buffer.h, charset.h, coding.h.
6353
63542002-09-11 Richard M. Stallman <rms@gnu.org>
6355
6356 * unexsol.c: Don't use report_file_error; do it by hand
6357 using dlerror.
6358
6359 * process.c (wait_reading_process_input, both versions):
6360 Before calling turn_on_atimers, call stop_polling.
6361
6362 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
6363
6364 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
6365 we go to too_near_end, call clear_glyph_matrix.
6366 (redisplay_window): After make_cursor_line_fully_visible,
6367 call clear_glyph_matrix and bypass `goto done'.
6368
6369 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
6370 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
6371
63722002-09-10 Richard M. Stallman <rms@gnu.org>
6373
6374 * fileio.c (Fdo_auto_save): Catch error making directory.
6375 Only call push_message if we need to.
6376 At the same time, make an unwind-protect to pop it.
6377 Rename local message_p to old_message_p.
6378 (do_auto_save_make_dir, do_auto_save_eh): New functions.
6379 (do_auto_save_unwind): Don't call pop_message.
6380
6381 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
6382
6383 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
6384
6385 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
6386
6387 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
6388
63892002-09-10 Stefan Monnier <monnier@cs.yale.edu>
6390
6391 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
6392 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
6393 (re_match_2_internal): Be more careful with infinite loops.
6394
63952002-09-10 Kim F. Storm <storm@cua.dk>
6396
6397 * macros.c (end_kbd_macro): New function.
6398 (Fend_kbd_macro): Use it.
6399
6400 * macros.h (end_kbd_macro): Declare extern.
6401
6402 * keyboard.c (Fdiscard_input): If defining keyboard macro,
6403 end and save it instead of discarding it.
6404
64052002-09-09 Markus Rost <rost@math.ohio-state.edu>
6406
6407 * s/sol2-6.h: Fix typo. Add comment.
6408
64092002-09-09 Richard M. Stallman <rms@gnu.org>
6410
6411 * regex.c (regnum_t): Use signed int, not unsigned int.
6412
6413 * s/sol2-6.h: New file.
6414
6415 * s/sol2-5.h (UNEXEC): Definition deleted.
6416
64172002-09-08 Kim F. Storm <storm@cua.dk>
6418
6419 * macros.c (executing_macro_index): Change type to EMACS_INT.
6420 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
6421
6422 * macros.h (executing_macro_index): Change type to EMACS_INT.
6423
64242002-09-06 Richard M. Stallman <rms@gnu.org>
6425
6426 * casetab.c (set_case_table): Make canon table point to eqv table.
6427
64282002-09-06 Juanma Barranquero <lektu@terra.es>
6429
6430 * coding.c (syms_of_coding): Fix spacing.
6431
6432 * composite.c (Fcompose_region_internal)
6433 (Fcompose_string_internal): Likewise.
6434
6435 * data.c (Flsh): Likewise.
6436
6437 * fontset.c (Fset_fontset_font): Likewise.
6438
6439 * macfns.c (Fx_server_max_request_size): Likewise.
6440
6441 * w16select.c (syms_of_win16select): Likewise.
6442
6443 * w32select.c (syms_of_w32select): Likewise.
6444
6445 * xselect.c (syms_of_xselect): Likewise.
6446
64472002-09-05 Richard M. Stallman <rms@gnu.org>
6448
6449 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
6450 call EXTEND_RANGE_TABLE and return a proper value.
6451 (set_image_of_range): Don't call set_image_of_range_1
6452 if no TRANSLATE or if range includes all of Latin-1.
6453 Only call it for the Latin-1 part of the range.
6454 For other cases, make two separate ranges,
6455 one for the original specified characters and one for
6456 their case-conversions.
6457
64582002-09-04 Richard M. Stallman <rms@gnu.org>
6459
6460 * s/sol2-5.h (UNEXEC): Use unexsol.o.
6461
6462 * window.c (displayed_window_lines): Correct for one-off bug
6463 in HEIGHT on non-window displays.
6464
6465 * regex.c (set_image_of_range_1): New function.
6466 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
6467 Return a value to indicate running out of memory.
6468 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
6469 (extend_range_table_work_area): New subroutine.
6470 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
6471 Different calling conventions, and used from set_image_of_range{,_1}.
6472 (IMMEDIATE_QUIT_CHECK): Definitions moved.
6473
64742002-09-04 Juanma Barranquero <lektu@terra.es>
6475
6476 * makefile.w32-in: All dependencies updated.
6477
64782002-09-01 Richard M. Stallman <rms@gnu.org>
6479
6480 * unexsol.c: New file.
6481
6482 * xfns.c (Qbox): Declare external, don't define.
6483
6484 * xdisp.c (redisplay_window) <force-start case>:
6485 If point is on semi-visible last line, reposition
6486 it at previous line.
6487
6488 * alloc.c (display_malloc_warning): Use display-warning.
6489 (malloc_warning_1): Function deleted.
6490
6491 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
6492
6493 * lread.c (read1): Handle #! by skipping the line.
6494
64952002-08-31 Richard M. Stallman <rms@gnu.org>
6496
6497 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
6498 Don't include LDFLAGS.
6499 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
6500
65012002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
6502
6503 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
6504 member of x_display_info unless we compile for some window system.
6505
65062002-08-31 Kim F. Storm <storm@cua.dk>
6507
6508 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
6509 (get_window_cursor_type): Don't use them.
6510 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
6511
65122002-08-30 Kenichi Handa <handa@etl.go.jp>
6513
6514 * xdisp.c (get_next_display_element): Fix previous change.
6515
65162002-08-30 Andrew Choi <akochoi@shaw.ca>
6517
6518 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
6519 (expose_window): Use it to fix the display of overlapping
6520 rows (merge code from xterm.c).
6521
6522 * macfns.c (Qbox): Add extern declaration.
6523
65242002-08-30 Juanma Barranquero <lektu@terra.es>
6525
6526 * w32fns.c (Qbox): Make extern.
6527 (syms_of_w32fns): Remove initialization of Qbox.
6528
65292002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
6530
6531 * xfns.c (Fx_open_connection): Fix error message.
6532
65332002-08-30 Kim F. Storm <storm@cua.dk>
6534
6535 The following changes consolidates the handling of the cursor
6536 type in xdisp.c, moving duplicate code and functionality from
6537 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
6538
6539 * frame.h (enum text_cursor_kinds): Consolidated here.
6540 Added DEFAULT_CURSOR value.
6541 (struct frame) <desired_cursor, cursor_width>
6542 <blink_off_cursor, blink_off_cursor_width>: New fields.
6543 Consolidated from output_x, output_w32 and output_mac structs.
6544 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6545 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
6546
6547 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
6548 Variables consolidated here.
6549 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
6550 (Vcursor_in_non_selected_windows): Renamed from
6551 cursor_in_non_selected_windows and changed to Lisp_Object.
6552 (syms_of_xdisp): Define and staticpro new and moved variables.
6553 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
6554 consolidated here. Recognize Qhollow setting.
6555 (set_frame_cursor_types): New function to set frame cursor types
6556 based on the frame parameters.
6557 (get_window_cursor_type): New function to calculate new cursor
6558 type and width for the specified window. Based on duplicated
6559 code consolidated here.
6560 Enhancements: cursor-in-non-selected-windows may be a cursor type,
6561 check buffer-local alternate-cursor-type and blink-cursor-alist
6562 before using built-in blink off methods.
6563
6564 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
6565
6566 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
6567 (get_specified_cursor_type, get_window_cursor_type)
6568 (set_frame_cursor_types): Added prototypes.
6569
6570 * macfns.c (x_specified_cursor_type): Removed.
6571 (x_set_cursor_type): Use set_frame_cursor_types.
6572 (Qbar, Qbox): Removed.
6573 (syms_of_macfns): Don't intern or staticpro them.
6574
6575 * macterm.c (x_specified_cursor_type): Remove prototype.
6576 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6577 (x_display_and_set_cursor): Use get_window_cursor_type.
6578 Remove unused local variables cursor_non_selected, active_cursor.
6579 Redraw cursor if hbar cursor width changes.
6580 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
6581
6582 * macterm.h (enum text_cursor_kinds): Removed.
6583 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
6584 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6585 (FRAME_DESIRED_CURSOR): Macro removed.
6586
6587 * w32fns.c (Vblink_cursor_alist): Removed.
6588 (Qbar, Qhbar, Qbox, Qhollow): Removed.
6589 (syms_of_w32fns): Don't intern, staticpro, or define them.
6590 (x_specified_cursor_type): Removed.
6591 (x_set_cursor_type): Use set_frame_cursor_types.
6592
6593 * w32term.c (x_specified_cursor_type): Remove prototype.
6594 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6595 (x_display_and_set_cursor): Use get_window_cursor_type.
6596 Remove unused local variables cursor_off_state.
6597 Redraw cursor if hbar cursor width changes.
6598 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
6599
6600 * w32term.h (enum text_cursor_kinds): Removed.
6601 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
6602 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6603 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6604 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
6605 (struct w32_display_info) <x_highlight_frame>: Renamed member from
6606 w32_highlight_frame.
6607
6608 * xfns.c (Vblink_cursor_alist): Removed.
6609 (Qbar, Qhbar, Qbox, Qhollow): Removed.
6610 (syms_of_xfns): Don't intern, staticpro, or define them.
6611 (x_specified_cursor_type): Removed.
6612 (x_set_cursor_type): Use set_frame_cursor_types.
6613
6614 * xterm.c (x_specified_cursor_type): Remove prototype.
6615 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6616 (x_display_and_set_cursor): Use get_window_cursor_type.
6617 Remove unused local variables cursor_off_state.
6618 Redraw cursor if hbar cursor width changes.
6619
6620 * xterm.h (enum text_cursor_kinds): Removed.
6621 (struct output_x) <current_cursor, desired_cursor, cursor_width>
6622 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6623 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6624 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
6625 (x_specified_cursor_type): Remove prototype.
6626
66272002-08-28 Richard M. Stallman <rms@gnu.org>
6628
6629 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
6630 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
6631 (Vblink_cursor_alist): New variable.
6632 (syms_of_w32fns): Initialize and defvar it.
6633 (x_specified_cursor_type): Recognize Qbox for filled box.
6634 Exceptions are hollow boxes.
6635 (Qbox, Qhollow): New variables.
6636 (syms_of_w32fns): Initialize and staticpro them.
6637
6638 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
6639 New macros.
6640 (struct w32_output): New fields blink_off_cursor,
6641 blink_off_cursor_width.
6642 (FRAME_CURSOR_WIDTH): New macro.
6643
6644 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
6645 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
6646
6647 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
6648 for bar cursor.
6649
6650 * w32term.c (expose_overlaps): New function.
6651 (expose_window): Use it to fix the display of overlapping rows.
6652
66532002-08-28 Simon Josefsson <jas@extundo.com>
6654
6655 * xfns.c (Fx_open_connection): Improve help when X connection
6656 fails, xhost is insecure and xauth is better.
6657
66582002-08-28 Juanma Barranquero <lektu@terra.es>
6659
6660 * makefile.w32-in: Add missing dependencies on w32term.h and
6661 composite.h.
6662
6663 * emacs.c (USAGE1): Add missing newline.
6664
66652002-08-27 Andrew Choi <akochoi@shaw.ca>
6666
6667 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
6668
66692002-08-27 Richard M. Stallman <rms@gnu.org>
6670
6671 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
6672 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
6673 (Vblink_cursor_alist): New variable.
6674 (syms_of_xfns): Initialize and defvar it.
6675 (x_specified_cursor_type): Recognize Qbox for filled box.
6676 Exceptions are hollow boxes.
6677 (Qbox, Qhollow): New variables.
6678 (syms_of_xfns): Initialize and staticpro them.
6679
6680 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
6681 New macros.
6682 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
6683
6684 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
6685 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
6686
6687 * emacs.c (main): Handle --script.
6688 (USAGE1): Mention --script.
6689 (standard_args): Define sort order for --script.
6690
66912002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
6692
6693 * xdisp.c (redisplay_updating_p): Variable removed.
6694 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
6695 New variables.
6696 (init_iterator): Don't free realized faces if
6697 inhibit_free_realized_faces is set.
6698 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
6699 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
6700 initialize Qinhibit_free_realized_faces.
6701
6702 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
6703 when iterator is adding glyphs to a glyph matrix.
6704
67052002-08-27 Kenichi Handa <handa@etl.go.jp>
6706
6707 * xdisp.c (get_next_display_element): In unibyte case, don't use
6708 octal form for such eight-bit characters that can be converted to
6709 multibyte char.
6710
67112002-08-26 Kim F. Storm <storm@cua.dk>
6712
6713 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
6714 and background colors. From Joe Buehler (tiny change).
6715
67162002-08-26 Miles Bader <miles@gnu.org>
6717
6718 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
6719
67202002-08-25 Andrew Choi <akochoi@shaw.ca>
6721
6722 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
6723 defined instead of MAC_OSX.
6724
6725 * s/darwin.h (select): Define select to sys_select only if
6726 HAVE_CARBON is defined.
6727 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
6728 (DONT_REOPEN_PTY): #def it.
6729
6730 * macterm.c (XTread_socket): Remove code to call
6731 SendEventToEventTarget for keys with command modifiers when
6732 mac_command_key_is_meta is nil.
6733
67342002-08-24 Andreas Schwab <schwab@suse.de>
6735
6736 * eval.c (Fdefvar): Fix last change.
6737
67382002-08-23 Richard M. Stallman <rms@gnu.org>
6739
6740 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
6741 Record variables in load history as (defvar . VAR).
6742 (Fdefvar): Don't record in load history if no initial value.
6743 (Qdefvar): New variable.
6744 (syms_of_eval): Init and staticpro it.
6745
6746 * lread.c (syms_of_lread): Doc fix.
6747 (build_load_history): Use Fmember to see if a definition
6748 is already in the Vload_history element.
6749
6750 * process.c (Fstart_process): Remove /: from program name.
6751
6752 * emacs.c (decode_env_path): Don't add /: if file name handler
6753 has a `safe-magic' property.
6754
6755 * callproc.c (Fcall_process): Remove /: from program name.
6756
67572002-08-23 Stefan Monnier <monnier@cs.yale.edu>
6758
6759 * regex.c (PATFETCH): Remove the translating fetch.
6760 (PATFETCH_RAW): Rename to PATFETCH.
6761 (set_image_of_range): New fun.
6762 (SET_RANGE_TABLE_WORK_AREA): Use it.
6763 (regex_compile): Don't translate the pattern chars so eagerly.
6764 Only do it when inserting an `exactn' bytecode or when handling
6765 a char-range.
6766 (mutually_exclusive_p): Avoid empty statement.
6767
67682002-08-22 Kim F. Storm <storm@cua.dk>
6769
6770 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
6771 end up on a partially visible line; this reverts a specific part
6772 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
6773 display error which has been reported several times now.
6774 However it introduces the problem that changes was supposed to fix.
6775 See my comments in the source if you want to debug this further.
6776
67772002-08-20 Kenichi Handa <handa@etl.go.jp>
6778
6779 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
6780
67812002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
6782
6783 * msdos.c (croak): Add `void' to definition.
6784
6785 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
6786 Don't define them, they are defined in msdos.c.
6787
6788 * mem-limits.h [MSDOS]: Declare etext.
6789
6790 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
6791 `const' since CORRECT_DIR_SEPS modifies its target.
6792
67932002-08-19 Kim F. Storm <storm@cua.dk>
6794
6795 * keyboard.c (Fclear_this_command_keys): Added optional arg
6796 KEEP-RECORD to avoid clearing lossage when we just want to clear
6797 the current key sequence (kmacro needs this).
6798
67992002-08-19 Kenichi Handa <handa@localhost>
6800
6801 * composite.c (run_composition_function): Call FUNC if it is fboundp.
6802
6803 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
6804 cons, return Qnil.
6805
68062002-08-17 Richard M. Stallman <rms@gnu.org>
6807
6808 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
6809
6810 * sysdep.c [!VMS]: Include sys/files.h.
6811
6812 * editfns.c (save_restriction_restore): Defend from unchained marker.
6813
6814 * buffer.c (overlays_at): Handle extending vec uniformly.
6815 (overlays_in): Handle extending vec from length 0 as in overlays_at.
6816
68172002-08-15 Andrew Choi <akochoi@shaw.ca>
6818
6819 * mac.c (init_mac_osx_environment): New function.
6820
6821 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
6822
68232002-08-14 Kim F. Storm <storm@cua.dk>
6824
6825 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
6826 executing macro before appending to it (when used from Lisp).
6827 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
6828 which is called prior to each iteration of macro (for kmacro.el).
6829 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
6830
6831 * lisp.h (Fexecute_kbd_macro): Update prototype.
6832
6833 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
6834
68352002-08-14 Kenichi Handa <handa@etl.go.jp>
6836
6837 * xselect.c (QUTF8_STRING): New variable.
6838 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
6839 (x_atom_to_symbol): Likewise.
6840 (x_get_local_selection): New argument local_request. If it is
6841 nonzero, call handler_fn with the second arg nil.
6842 (x_handle_selection_request): Call x_get_local_selection with
6843 local_request 0.
6844 (lisp_data_to_selection_data): Don't encode the string here.
6845 (Fx_get_selection_internal): Call x_get_local_selection with
6846 local_request 1.
6847 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
6848
6849 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
6850
6851 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
6852
68532002-08-13 Richard M. Stallman <rms@gnu.org>
6854
6855 * minibuf.c (Fminibufferp): New function.
6856 (syms_of_minibuf): Defsubr it.
6857 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
6858
68592002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
6860
6861 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
6862
68632002-08-12 Richard M. Stallman <rms@gnu.org>
6864
6865 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
6866 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
6867 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
6868 already.
6869
6870 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
6871
68722002-08-11 Andrew Choi <akochoi@shaw.ca>
6873
6874 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
6875 (Vmac_pass_command_to_system): New variable.
6876 (Vmac_pass_control_to_system): New variable.
6877 (do_mouse_moved): Check wp with is_emacs_window.
6878 (XTread_socket): Check window_ptr with is_emacs_window.
6879 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
6880 events back to Mac Toolbox for processing, depending on values of
6881 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
6882 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
6883 Vmac_pass_control_to_system.
6884
68852002-08-10 Kenichi Handa <handa@etl.go.jp>
6886
6887 * coding.c (unencodable_char_position): New function.
6888 (Funencodable_char_position): New function.
6889 (syms_of_coding): Defsubr Funencodable_char_position.
6890
68912002-08-10 Andrew Choi <akochoi@shaw.ca>
6892
6893 * mac.c (sys_select) [MAC_OSX]: New function.
6894
6895 * macterm.c (MakeMeTheFrontProcess): New function.
6896 (mac_initialize): Call MakeMeTheFrontProcess.
6897
6898 * s/darwin.h: Define select to sys_select.
6899
69002002-08-09 Richard M. Stallman <rms@gnu.org>
6901
6902 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
6903
69042002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
6905
6906 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
6907 end of the buffer.
6908
69092002-08-08 Ken Raeburn <raeburn@mit.edu>
6910
6911 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
6912
6913 * puresize.h (BASE_PURESIZE): Increase to 910000.
6914
69152002-08-08 Kenichi Handa <handa@etl.go.jp>
6916
6917 * coding.c (Ffind_operation_coding_system): For write-region, if
6918 VISIT is a filename, make it the target.
6919
69202002-08-07 Richard M. Stallman <rms@gnu.org>
6921
6922 * alloc.c (mark_object): Detect long lists for debugging.
6923 (mark_object_loop_halt): New variable.
6924
6925 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
6926
6927 * data.c (Fmake_variable_frame_local): Doc fix.
6928
69292002-08-01 David Ponce <david@dponce.com>
6930
6931 * w32menu.c (local_heap, local_alloc, local_free): New macros.
6932 (malloc_widget_value, free_widget_value)
6933 (w32_free_submenu_strings): Use them.
6934
6935 (push_submenu_start, push_submenu_end, push_left_right_boundary)
6936 (push_menu_pane, push_menu_item, single_keymap_panes)
6937 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
6938 (single_submenu, set_frame_menubar)
6939 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
6940
6941 (Fx_popup_menu): Don't show pop up menu until preceding one is
6942 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
6943
6944 * w32menu.c: Changes adapted from xmenu.c
6945 (set_frame_menubar): First parse all submenus,
6946 then make widget_value trees from them.
6947 Don't allocate any widget_value objects
6948 until we are done with the parsing.
6949 (parse_single_submenu): New function.
6950 (digest_single_submenu): New function.
6951 (single_submenu): Function deleted, replaced by those two.
6952
69532002-08-04 Andrew Choi <akochoi@shaw.ca>
6954
6955 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
6956 returns a valid window pointer before proceeding for keyDown and
6957 autoKey events.
6958
69592002-08-03 Andrew Choi <akochoi@shaw.ca>
6960
6961 * macterm.c (USE_CARBON_EVENTS): New macro.
6962 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
6963 (x_iconify_frame): Call CollapseWindow.
6964 (Vmac_reverse_ctrl_meta): New variable.
6965 (Vmac_wheel_button_is_mouse_2): New variable.
6966 (init_mac_drag_n_drop): New function.
6967 (mac_do_receive_drag): New function.
6968 (mac_handle_service_event): New function.
6969 (init_service_handler): New function.
6970 (mac_to_emacs_modifiers): New function.
6971 (mac_event_to_emacs_modifiers): New function.
6972 (mac_get_mouse_btn): New function.
6973 (mac_convert_event_ref): New function.
6974 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
6975 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
6976 mac_get_mouse_btn.
6977 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
6978
6979 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
6980 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
6981 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
6982 TOOL_BAR_EVENT for MAC_OS as well.
6983 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
6984 as for WINDOWS_NT.
6985 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
6986
6987 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
6988
69892002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
6990
6991 * xdisp.c (forward_to_next_line_start): Fix a condition that
6992 lead to a newline being skipped.
6993
69942002-08-02 Andrew Choi <akochoi@shaw.ca>
6995
6996 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
6997
69982002-08-01 Richard M. Stallman <rms@gnu.org>
6999
7000 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
7001
70022002-07-31 Andrew Choi <akochoi@shaw.ca>
7003
7004 * macfns.c: #undef init_process before #define-ing it.
7005
7006 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
7007 HAVE_CARBON is defined.
7008
70092002-07-31 Richard M. Stallman <rms@gnu.org>
7010
7011 * xmenu.c (set_frame_menubar): First parse all submenus,
7012 then make widget_value trees from them.
7013 Don't allocate any widget_value objects
7014 until we are done with the parsing.
7015 (parse_single_submenu): New function.
7016 (digest_single_submenu): New function.
7017 (single_submenu): Function deleted, replaced by those two.
7018
70192002-07-30 Juanma Barranquero <lektu@terra.es>
7020
7021 * w32proc.c (syms_of_ntproc): Fix docstring of
7022 `w32-get-true-file-attributes'.
7023
70242002-07-28 Richard M. Stallman <rms@gnu.org>
7025
7026 * s/hpux8.h (HPUX8): Define this before including hpux.h.
7027 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
7028
7029 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
7030
7031 * keyboard.c (make_lispy_event):
7032 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
7033 Explicitly clear up_modifier in event->modifiers.
7034
70352002-07-27 Richard M. Stallman <rms@gnu.org>
7036
7037 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
7038
7039 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7040 for bar cursor.
7041
70422002-07-26 Kenichi Handa <handa@etl.go.jp>
7043
7044 * coding.c (detect_coding_iso2022): While checking a byte sequence
7045 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
7046 it in the normal loop.
7047
70482002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
7049
7050 * xterm.c (expose_overlaps): New function.
7051 (expose_window): Use it to fix the display of overlapping rows.
7052
7053 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
7054
70552002-07-23 Ken Raeburn <raeburn@gnu.org>
7056
7057 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
7058 since it only depends on XUINT.
7059
7060 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
7061 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
7062 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
7063 Macros deleted.
3947677c 7064
77d1daf2
AS
7065 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
7066 its value over other approaches.
7067 * sysdep.c (start_of_data): Don't define the function if a macro
7068 form has been defined.
8a8e19a3 7069
048addec
JD
70702002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
7071
7072 * xdisp.c (redisplay_updating_p): New variable.
7073 (init_iterator): Don't free realized faces when
7074 redisplay_updating_p is set.
7075 (redisplay_internal): Set redisplay_updating_p while updating
7076 the display.
7077
70782002-07-23 Richard M. Stallman <rms@gnu.org>
7079
7080 * editfns.c (Fmessage): Treat "" like nil.
7081
70822002-07-23 Kenichi Handa <handa@etl.go.jp>
7083
7084 * xdisp.c (face_before_or_after_it_pos):
7085 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
7086
70872002-07-22 Juanma Barranquero <lektu@terra.es>
7088
7089 * callproc.c (init_callproc) [DOS_NT]:
7090 Initialize Vshared_game_score_directory to nil.
7091 (syms_of_callproc) [DOS_NT]: Likewise.
7092
70932002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
7094
7095 * xdisp.c (display_line): Replace an abort with xassert.
7096
70972002-07-21 Richard M. Stallman <rms@gnu.org>
7098
7099 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
7100 and END_UNCHANGED when setting buffer_unchanged_p.
7101 Use current_matrix_up_to_date_p to decide whether to use
7102 try_cursor_movement.
7103
7104 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
7105
7106 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
7107
7108 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
7109 Set to nil if dir does not exist.
7110 (syms_of_callproc): Init unconditionally and simply.
7111
7112 * buffer.c (Fbuffer_list): Doc fix.
7113
71142002-07-21 Ken Raeburn <raeburn@gnu.org>
7115
7116 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
7117
7118 * buffer.c (mmap_realloc): When shrinking, make sure number of
7119 pages to unmap is rounded towards zero.
7120
7121 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
7122 (XSETINT): Deleted.
7123
7124 * m/att3b.h (XINT): Don't define.
7125 (VALBITS, VALMASK, XTYPE): Deleted.
7126 (DATA_SEG_BITS): Define.
7127 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
7128 ARRAY_MARK_FLAG): Deleted.
7129 (DATA_SEG_BITS): Define.
7130 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
7131 (DATA_SEG_BITS): Define.
7132
71332002-07-20 Richard M. Stallman <rms@gnu.org>
7134
7135 * print.c (print_error_message): New args CONTEXT and CALLER.
7136 Calls changed.
7137
7138 * lisp.h (print_error_message): Declare new args.
7139
7140 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
7141 and CONTEXT to print_error_message, don't print them here.
7142 For a Quit, don't use Vsignaling_function.
7143 Call message_log_maybe_newline.
7144
7145 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
7146
71472002-07-20 Kim F. Storm <storm@cua.dk>
7148
7149 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
7150
71512002-07-19 Ken Raeburn <raeburn@gnu.org>
7152
7153 * bytecode.c (struct byte_stack): Pointers into byte string now
7154 point to const.
7155 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
7156 const.
7157 * charset.h (BCOPY_SHORT): Source pointer now points to const.
7158 * coding.c (encode_eol, detect_coding, detect_eol):
7159 (decode_coding, encode_coding, detect_coding_system):
7160 Source strings now treated as const.
7161 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
7162 modify Lisp string contents.
7163 * coding.h (decode_coding, encode_coding, detect_coding,
7164 detect_eol): Declarations updated.
7165 * composite.c (compose_chars_in_text): Treat Lisp string contents
7166 as const.
7167 * dispnew.c (safe_bcopy): Source pointer now points to const.
7168 * lisp.h (STRING_COPYIN): New macro.
7169 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
7170 (internal_with_output_to_temp_buffer): Declarations updated.
7171 * print.c (temp_output_buffer_setup):
7172 (internal_with_output_to_temp_buffer): Buffer name argument is now
7173 pointer to const.
7174 * sound.c (struct sound_device): Function pointer field "write"
7175 buffer argument now points to const.
7176 (vox_write): Buffer argument points to const.
7177 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
7178 contents as const.
7179 * sysdep.c (emacs_write): Buffer pointer now const.
7180 * term.c (encode_terminal_code): Buffer pointer now const.
7181 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
7182 (x_face_list_fonts, x_update_menu_appearance):
7183 (hash_string_case_insensitive): Treat Lisp string contents as const.
7184
71852002-07-19 Juanma Barranquero <lektu@terra.es>
7186
7187 * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
7188 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
7189
7190 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
7191
7192 * fileio.c (syms_of_fileio): Likewise.
7193
71942002-07-18 Richard M. Stallman <rms@gnu.org>
7195
7196 * data.c (Fdefalias): Doc fix.
7197
71982002-07-17 Dave Love <fx@gnu.org>
7199
7200 * intervals.h (text_property_stickiness): Use P_.
7201
7202 * ccl.c: Remove `emacs' conditionals.
7203 (ccl_backtrace_table): Fix size spec.
7204 (ccl_driver): Fix type errors.
7205
72062002-07-16 Ken Raeburn <raeburn@gnu.org>
7207
7208 * alloc.c (xstrdup, make_string, make_unibyte_string)
7209 (make_multibyte_string, build_string): String pointer args now
7210 point to const.
7211 * charset.c (find_charset_in_text, c_string_width):
7212 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
7213 * fileio.c (report_file_error):
7214 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
7215 (count_combining_before, count_combining_after, insert_1_both):
7216 (insert, insert_and_inherit, insert_string):
7217 (insert_before_markers, insert_before_markers_and_inherit):
7218 * lread.c (intern, oblookup, hash_string):
7219 * minibuf.c (temp_echo_area_glyphs):
7220 * search.c (fast_c_string_match_ignore_case):
7221 * sysdep.c (emacs_open, set_file_times):
7222 * xfaces.c (xstricmp):
7223 * xdisp.c (store_frame_title, string_char_and_length):
7224 (message_dolog, message2, message2_nolog, set_message): Likewise.
7225 (set_message_1): Cast message string argument to const pointer.
7226 * editfns.c (general_insert_function): Insertion function now
7227 takes pointer to const for input data.
7228 * charset.h (find_charset_in_text, c_string_width):
7229 (parse_str_as_multibyte): Declarations updated.
7230 * dispextern.h (xstricmp): Declaration updated.
7231 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
7232 (count_size_as_multibyte, count_combining_before):
7233 (count_combining_after, insert_1, insert_1_both, message_dolog):
7234 (insert, insert_and_inherit, insert_before_markers)
7235 (insert_before_markers_and_inherit, set_message, message2):
7236 (message2_dolog, build_string, make_string, make_unibyte_string):
7237 (make_multibyte_string, intern, oblookup, report_file_error):
7238 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
7239 (emacs_open, xstrdup): Declarations updated.
7240 * systime.h (set_file_times): Declaration updated.
7241
7242 * charset.c (find_charset_in_text, lisp_string_width): Use const
7243 for pointer to lisp string data.
7244 * charset.h (FETCH_STRING_CHAR_ADVANCE):
7245 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
7246 * coding.c (Ffind_coding_systems_region_interval):
7247 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
7248 (Fmake_directory_internal, Fdelete_directory):
7249 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
7250 * fontset.c (font_family_registry, fs_query_fontset):
7251 (list_fontsets):
7252 * frame.c (Fframe_parameter):
7253 * keyboard.c (cmd_error_internal):
7254 * keymap.c (Fdescribe_buffer_bindings):
7255 * lread.c (complete_filename_p, openp):
7256 * minibuf.c (Fminibuffer_complete_word):
7257 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
7258 (face_before_or_after_it_pos, next_element_from_string):
7259 (get_overlay_arrow_glyph_row, display_mode_element):
7260 (decode_mode_spec_coding):
7261 * xterm.c (same_x_server): Likewise.
7262
7263 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
7264 settings of non-existent fields.
7265
7266 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
7267 copy a lisp value.
7268
7269 * lread.c (Fintern_soft): Use string macros instead of
7270 Lisp_String fields.
7271 * keyboard.c (echo_char, parse_modifiers_uncached):
7272 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
7273 * textprop.c (validate_interval_range, interval_of): Likewise.
7274
7275 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
7276
7277 * charset.h (FETCH_STRING_CHAR_ADVANCE)
7278 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
7279 XSTRING()->size_byte.
7280
7281 * lisp.h (SDATA, SREF): Produce rvalue.
7282 (SSET): New macro.
7283 * alloc.c (make_event_array): Use SSET for storing into a string.
7284 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
7285 a string.
7286 * casefiddle.c (casify_object): Use SSET.
7287 * charset.h (FETCH_STRING_CHAR_ADVANCE)
7288 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
7289 address of string contents.
7290 * data.c (Faref): Use SDATA.
7291 (Faset): Use SDATA, SSET.
7292 * dired.c (directory_files_internal): Use SSET.
7293 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
7294 (Fread_file_name): Use SREF, SSET.
7295 * fns.c (concat): Use SSET.
7296 (concat, Fdelete): Use SDATA.
7297 * insdel.c (insert_from_string_1): Use SDATA.
7298 * keyboard.c (Fevent_convert_list): Use SREF.
7299 * lread.c (Fload): Use SDATA, SSET.
7300 * macfns.c (validate_x_resource_name): Use SSET.
7301 * process.c (status_message): Use SSET.
7302 * search.c (wordify): Use SDATA.
7303 (Freplace_match): Use SREF.
7304 * w32fns.c (validate_x_resource_name): Use SSET.
7305 * xfns.c (validate_x_resource_name): Use SSET.
7306 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
7307
73082002-07-16 Richard M. Stallman <rms@gnu.org>
7309
7310 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
7311
7312 * xdisp.c (reconsider_clip_changes):
7313 Don't test prevent_redisplay_optimizations_p.
7314 (redisplay_internal): Test prevent_redisplay_optimizations_p
7315 along with clip_changed in some cases.
7316 (try_window_id): Likewise.
7317 (redisplay_window): New local var buffer_unchanged_p.
7318
7319 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
7320
7321 * process.c (create_process): Test USG_SUBTTY_WORKS.
7322 (process_send_signal): Clean up handling of GID.
7323 Detect errors in ioctls meant to set GID.
7324
7325 * window.c (temp_output_buffer_show):
7326 Don't set prevent_redisplay_optimizations_p.
7327
73282002-07-15 Juanma Barranquero <lektu@terra.es>
7329
7330 * eval.c (Fdefvaralias): Add docstring argument.
7331
73322002-07-15 Ken Raeburn <raeburn@gnu.org>
7333
7334 * lisp.h (STRING_INTERVALS): Produce rvalue.
7335 (STRING_SET_INTERVALS): New macro.
7336 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
7337 * fns.c (Fstring_as_multibyte): Likewise.
7338 * intervals.c (balance_possible_root_interval, delete_interval)
7339 (create_root_interval, copy_intervals_to_string): Likewise.
7340 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
7341 instead of 0.
7342
73432002-07-14 Ken Raeburn <raeburn@gnu.org>
7344
7345 * lisp.h (STRING_SET_CHARS): New macro.
7346 (SCHARS, SBYTES): Produce rvalues.
7347 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
7348 * fns.c (concat): Likewise.
7349 * lread.c (read_vector): Likewise.
7350
7351 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
7352 (STRING_SET_UNIBYTE): New macro.
7353 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
7354 length of -1) changed to use STRING_SET_UNIBYTE.
7355 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
7356 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
7357 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
7358 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
7359 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
7360 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
7361 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
7362 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
7363 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
7364 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
7365 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
7366 STRING_BYTES or indirection changed to SCHARS, SBYTES,
7367 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
7368 unchanged for now.
7369
73702002-07-13 Kim F. Storm <storm@cua.dk>
7371
7372 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
7373
73742002-07-12 Richard M. Stallman <rms@gnu.org>
7375
7376 * fileio.c (Fwrite_region): Doc fix.
7377
7378 * print.c (print_error_message): Don't handle Vsignaling_function here.
7379
7380 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
7381 (command_loop_1): Avoid certain actions after memory-full error.
7382
7383 * eval.c (Fsignal): Don't call cancel_hourglass.
7384 For a memory-full error, don't call Vsignal_hook_function
7385 and don't set Vsignaling_function.
7386
7387 * process.c (process_send_signal): Add abort call.
7388
73892002-07-11 Markus Rost <rost@math.ohio-state.edu>
7390
7391 * keymap.c (Fkey_binding): Fix typo.
7392
73932002-07-11 Richard M. Stallman <rms@gnu.org>
7394
7395 * alloc.c (Vmemory_full): New variable.
7396 (Vmemory_signal_data): Renamed from memory_signal_data.
7397 Uses changed.
7398 (syms_of_alloc): Defvar them.
7399 (memory_full, buffer_memory_full): Set Vmemory_full.
7400
7401 * lisp.h (Vmemory_full): Add declaration.
7402 (current_column, indented_beyond_p): Change declaration.
7403
7404 * indent.c (last_known_column): Declare as double, not float.
7405 (current_column, current_column_1, string_display_width)
7406 (position_indentation): Return `double'.
7407 (indented_beyond_p): Arg `column' is `double'. Callers changed.
7408
7409 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
7410 (back_to_previous_visible_line_start)
7411 (reseat_at_next_visible_line_start, next_element_from_buffer):
7412 Use `double', not `float', when calling indented_beyond_p.
7413
7414 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
7415
7416 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
7417
74182002-07-11 Juanma Barranquero <lektu@terra.es>
7419
7420 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
7421 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
7422 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
7423 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
7424 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
7425 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
7426
74272002-07-10 Juanma Barranquero <lektu@terra.es>
7428
7429 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
7430 changed.
7431
74322002-07-09 Stefan Monnier <monnier@cs.yale.edu>
7433
7434 * data.c (Fdefalias): Add an optional `docstring' argument.
7435 (set_internal, Fsetq_default): Use XCAR/XCDR.
7436
7437 * composite.c (HASH_VALUE, HASH_KEY):
7438 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
7439
74402002-07-09 Kenichi Handa <handa@etl.go.jp>
7441
7442 * callproc.c (Fcall_process): Fix previous change.
7443
74442002-07-07 Stefan Monnier <monnier@cs.yale.edu>
7445
7446 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
7447 Add support for hash-tables.
7448 (Ftry_completion): Return t even if the string appears multiple times.
7449
7450 * fns.c (Fnconc): Use XCDR.
7451 (Fprovide): Use CONSP and XCDR.
7452 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
7453 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
7454 (Fmake_hash_table): Accept `:size nil'.
7455 (Fmakehash): Delete: moved to subr.el.
7456 (syms_of_fns): Don't defsubr makehash.
7457
7458 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
7459 (HASH_TABLE_SIZE): Move from fns.c.
7460
74612002-07-07 Richard M. Stallman <rms@gnu.org>
7462
7463 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
7464 Instead just return 0 when there is something to be done.
7465 (try_scrolling): If make_cursor_line_fully_visible returns 0,
7466 retry scrolling as if cursor were off the bottom.
7467 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
7468 return CURSOR_MOVEMENT_MUST_SCROLL.
7469 (redisplay_window): If make_cursor_line_fully_visible returns 0,
7470 go to try_to_scroll.
7471
7472 * buffer.c (Fbuffer_local_value): Store current value into its binding
7473 so we get the up-to-date value for the binding that is loaded.
7474
7475 * eval.c (Fdefmacro): Doc fix.
7476
74772002-07-05 Dave Love <fx@gnu.org>
7478
7479 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
7480 correctly.
7481
7482 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
7483 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
7484 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
7485 CCL_LookupCharConstTbl.
7486 (syms_of_ccl): Defvar translation-hash-table-vector.
7487
74882002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7489
7490 * xdisp.c: Remove unused variable `face'.
7491
74922002-07-04 Juanma Barranquero <lektu@terra.es>
7493
7494 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
7495 obsolescence information.
7496
74972002-07-03 Andrew Choi <akochoi@shaw.ca>
7498
7499 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
7500 pattern. Search cache first.
7501 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
7502 for Japanese font.
7503 (XLoadQueryFont): Use it.
7504
75052002-07-02 Richard M. Stallman <rms@gnu.org>
7506
7507 * keymap.c (Fdefine_key): Doc fix.
7508
7509 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
7510
75112002-07-02 Juanma Barranquero <lektu@terra.es>
7512
7513 * keymap.c (syms_of_keymap): Fix typo.
7514
75152002-07-01 Andrew Choi <akochoi@shaw.ca>
7516
7517 * s/darwin.h: Define POSIX_SIGNALS.
7518
7519 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
7520 and FSRefMakePath to convert FSSpec returned with Apple Event to
7521 Posix pathname.
7522 (mac_initialize) [TARGET_API_MAC_CARBON]:
7523 Call init_required_apple_events and disable the `Quit' menu item
7524 provided automatically by the Carbon Toolbox.
7525
75262002-07-01 Dave Love <fx@gnu.org>
7527
7528 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
7529 for K&R.
7530
7531 * xterm.c: Fix prototype for K&R.
7532
7533 * term.c (costs_set): Declare static, non-initialized for pcc.
7534
75352002-07-01 Richard M. Stallman <rms@gnu.org>
7536
7537 * keyboard.c (timer_last_idleness_start_time): New variable.
7538 (timer_start_idle): Set that.
7539 (read_key_sequence): Use that to reset timer_idleness_start_time
7540 to previous value.
7541
7542 * window.c (Frecenter): With arg, set optional_new_start.
7543
7544 * xdisp.c (redisplay_internal): Make optional_new_start really work.
7545
7546 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
7547 buffer for completion.
7548
75492002-06-29 Ken Raeburn <raeburn@gnu.org>
7550
7551 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
7552
75532002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7554
7555 * keyboard.c (readable_filtered_events): New function that filters
7556 FOCUS_IN_EVENT depending on parameter.
7557 (readable_events): Calls readable_filtered_events, not filtering
7558 FOCUS_IN_EVENT.
7559 (get_filtered_input_pending): New function, filtering parameter passed
7560 to readable_filtered_events.
7561 (get_input_pending): Calls get_filtered_input_pending, not filtering
7562 FOCUS_IN_EVENT.
7563 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
7564 FOCUS_IN_EVENT.
7565
7566 * xterm.h (struct x_output): Add focus_state.
7567
7568 * xterm.c (x_focus_changed): New function.
7569 (x_detect_focus_change): New function.
7570 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
7571 EnterNotify and LeaveNotify to track X focus changes.
7572
75732002-06-28 Andreas Schwab <schwab@suse.de>
7574
7575 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
7576
75772002-06-27 Kim F. Storm <storm@cua.dk>
7578
7579 * xdisp.c: (mode_line_string_list, mode_line_string_face)
7580 (mode_line_string_face_prop): New variables.
7581 (store_mode_line_string): New function.
7582 (display_mode_element): Use store_mode_line_string to
7583 add mode-line string elements to mode_line_string_list
7584 when mode_line_string_list is non-nil.
7585 (Fformat_mode_line): Now returns propertized string by
7586 default. New arg NO-PROPS to ignore properties.
7587 (decode_mode_spec): Only add two dashes for %- in propertized
7588 mode-line string.
7589 (syms_of_xdisp): Init and staticpro mode_line_string_list.
7590
75912002-06-27 Stefan Monnier <monnier@cs.yale.edu>
7592
7593 * minibuf.c (minibuffer_completion_contents): Add return type.
7594
75952002-06-27 Juanma Barranquero <lektu@terra.es>
7596
7597 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
7598
75992002-06-26 Juanma Barranquero <lektu@terra.es>
7600
7601 * fileio.c (read_file_name_cleanup): Add missing return.
7602
76032002-06-26 Richard M. Stallman <rms@gnu.org>
7604
7605 * window.c (Frecenter): Don't set force_start flag.
7606
7607 * minibuf.c (do_completion, Fminibuffer_complete_word)
7608 (Fminibuffer_completion_help): Complete just the text before point.
7609 (minibuffer_completion_contents): New function.
7610
7611 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
7612
7613 * frame.c (frames_bury_buffer): Function deleted.
7614
76152002-06-25 Miles Bader <miles@gnu.org>
7616
7617 * callint.c (Fcall_interactively): When checking to see if doprnt hit
7618 the end of callint_message, allow for a terminating '\0'.
7619
76202002-06-24 Juanma Barranquero <lektu@terra.es>
7621
7622 * w32select.c: Include composite.h
7623
7624 * w16select.c: Likewise.
7625
76262002-06-24 Kenichi Handa <handa@etl.go.jp>
7627
7628 * callproc.c (Fcall_process): If code detection is necessary,
7629 call detect_coding directly here.
7630
7631 * coding.c (detect_eol): Preserve coding->cmp_data.
7632
7633 * w16select.c (Fw16_get_clipboard_data):
7634 * w32fns.c (w32_to_x_font):
7635 * w32select.c (Fw32_get_clipboard_data):
7636 * xselect.c (selection_data_to_lisp_data):
7637 * xterm.c (XTread_socket): Disable composition handling.
7638
76392002-06-24 Stefan Monnier <monnier@cs.yale.edu>
7640
7641 * print.c (temp_output_buffer_setup): Kill all local variables.
7642
76432002-06-22 Stefan Monnier <monnier@cs.yale.edu>
7644
7645 * lread.c (Fread): Remove redundant and imprecise declaration.
7646
7647 * xfns.c (check_x_display_info): Use check_x_frame.
7648
7649 * .gdbinit (xprintsym): Use the new `xname' field.
7650 (xsymbol): Use it.
7651
76522002-06-22 Jason Rumney <jasonr@gnu.org>
7653
7654 * w32fns.c (file_dialog_callback): New function.
7655 (Fx_file_dialog): Allow selecting directories as well as files.
7656
76572002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7658
7659 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
7660 OpenBSD. Add support for mipseb-*-netbsd* machines.
7661
76622002-06-17 Andrew Choi <akochoi@shaw.ca>
7663
7664 * macterm.c (mac_scroll_area): Set foreground and backcolor to
7665 black and white before scrolling. Restore frame background and
7666 foreground color after scrolling.
7667 (do_window_update): Call XClearWindow before calling expose_frame.
7668 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
7669 FRAME_FOREGROUND_PIXEL of frame.
7670
7671 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
7672 test Mac command key as <ALT> key.
7673
76742002-06-17 Stefan Monnier <monnier@cs.yale.edu>
7675
7676 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
7677
7678 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
7679 Lookup keys in function-key-map immediately so that key-translation-map
7680 can be applied earlier.
7681 Remove function_key_possible and key_translation_possible, replaced
7682 by checking `keytran_start < t'.
7683
7684 * .gdbinit (xsymbol): Use the new `xname' field.
7685
76862002-06-17 Andrew Choi <akochoi@shaw.ca>
7687
7688 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
7689 test Mac command key as <ALT> key.
7690
7691 * mac.c (do_applescript): Call initialize_applescript if necessary
7692 when first called. Dispose of result_desc only when there is no error.
7693 (Fdo_applescript): Use %d format specifier instead of %ld.
7694
76952002-06-16 Andrew Choi <akochoi@shaw.ca>
7696
7697 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
7698 of FrontWindow for cases keyDown and autoKey.
7699
7700 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
7701 Vdefault_fontset to Monaco with mac-roman coding.
7702
7703 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
7704 init_process before and after inclusion of Carbon/Carbon.h, resp.
7705
7706 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
7707 cursor_gc.
7708 (add_font_name_table_entry): New function.
7709 (init_font_name_table): Use add_font_name_table_entry; add italic,
7710 bold, and bold-italic entries for truetype fonts.
7711
7712 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
7713 for Mac too.
7714 (try_font_list) [MAC_OS]: If no font matches given registry, try
7715 fonts with any registry matching face_family.
7716 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
7717
7718 * s/darwin.h: If autoconf detects the Ncurses library, define
7719 LIBS_TERMCAP to -lncurses to use it.
7720
77212002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
7722
7723 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
7724
77252002-06-15 Richard M. Stallman <rms@gnu.org>
7726
7727 * window.c (Fset_window_configuration): Explicitly preserve
7728 the point value that new_current_buffer had at the start.
7729
77302002-06-14 Juanma Barranquero <lektu@terra.es>
7731
7732 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
7733 Fix typos.
7734
77352002-06-14 Kim F. Storm <storm@cua.dk>
7736
7737 * insdel.c (insert_1_both, insert_from_string_1)
7738 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
7739 insert happened in the end_unchanged region. Otherwise, the
7740 redisplay may be confused and duplicate the last line in the
7741 buffer [seen after save-buffer when require-final-newline==t].
7742
77432002-06-13 Jason Rumney <jasonr@gnu.org>
7744
7745 * w32.c (init_environment): Remove EMACSLOCKDIR.
7746 (stat): Swap _S_IFDIR and _S_IFREG.
7747
77482002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7749
7750 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
7751 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
7752 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
7753 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
7754 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
7755 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
7756 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
7757 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
7758 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
7759 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
7760 SELECTION_REQUEST_EVENT, selection_clear_event to
7761 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
7762 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
7763 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
7764 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
7765 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
7766 no_event to NO_EVENT.
7767
77682002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7769
7770 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
7771
77722002-06-12 Stefan Monnier <monnier@cs.yale.edu>
7773
7774 * intervals.c (textget): Don't forget to `return'.
7775 (lookup_char_property): Use XCAR/XCDR.
7776
77772002-06-12 Juanma Barranquero <lektu@terra.es>
7778
7779 * xdisp.c (Fformat_mode_line): Fix typo.
7780
77812002-06-12 Kim F. Storm <storm@cua.dk>
7782
7783 * xdisp.c (Fformat_mode_line): New function.
7784 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
7785 (store_frame_title_char, store_frame_title): Use unconditionally.
7786 (init_xdisp): Defsubr Fformat_mode_line.
7787 Initialize frame_title_buf etc. unconditionally.
7788
77892002-06-11 Stefan Monnier <monnier@cs.yale.edu>
7790
7791 * keyboard.c (read_key_sequence):
7792 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
7793 things through those maps after downcasing events.
7794 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
7795 applies after function-key-map.
7796 Make sure that keytran can be done in the middle in the sequence.
7797 Be careful not to throw away events past the one we downcase.
7798
7799 * lread.c (read_integer): Remove unused var `tem'.
7800 (read1): Fix int/Lisp_Object mixup.
7801
7802 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
7803
78042002-06-11 Richard M. Stallman <rms@gnu.org>
7805
7806 * keyboard.c (readable_events): Ignore any number of
7807 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
7808
78092002-06-09 Miles Bader <miles@gnu.org>
7810
7811 * xfaces.c (Ftty_supports_face_attributes_p): New function.
7812 (parse_rgb_list, tty_lookup_color): New functions.
7813 (tty_defined_color): Use `tty_lookup_color' to do all the work.
7814 (color_distance, Fcolor_distance): New functions.
7815 (TTY_SAME_COLOR_THRESHOLD): New macro.
7816 (Qtty_color_standard_values): New variable.
7817 (syms_of_xfaces): Initialize new vars & functions.
7818
78192002-06-08 Colin Walters <walters@verbum.org>
7820
7821 * textprop.c (Vchar_property_alias_alist): New variable.
7822 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
7823
7824 * intervals.c (lookup_char_property): New function for looking up
7825 overlay and text properties, created from textget.
7826 (textget): Use it.
7827
7828 * intervals.h (lookup_char_property): Declare.
7829 (Vchar_property_alias_alist): Declare.
7830
7831 * buffer.c (Foverlay_get): Use lookup_char_property.
7832
78332002-06-07 Sam Steingold <sds@gnu.org>
7834
7835 * xselect.c (lisp_data_to_selection_data): Fix last change:
7836 *data_ret is not a Lisp string, while unibyte_string is.
7837
78382002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
7839
7840 * xselect.c (lisp_data_to_selection_data): Fix last change:
7841 set size_ret.
7842
78432002-06-07 Andreas Schwab <schwab@suse.de>
7844
7845 * m/amdx86-64.h: New file.
7846
78472002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
7848
7849 * fns.c (Fstring_make_unibyte): Doc fix.
7850
7851 * xselect.c (lisp_data_to_selection_data): If the requested type
7852 is STRING, call string_make_unibyte to encode the selected text
7853 as a string.
7854
7855 * window.c (Fset_window_hscroll): Doc fix.
7856
78572002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7858
7859 * fileio.c (choose_write_coding_system):
7860 Call select-safe-coding-system properly.
7861
78622002-06-03 Richard M. Stallman <rms@gnu.org>
7863
7864 * xdisp.c (message_with_string): Error if STRING is not a string.
7865
7866 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
7867
7868 * fileio.c (choose_write_coding_system): Pass FILE arg to
7869 Vselect_safe_coding_system_function.
7870
78712002-06-03 Ken Raeburn <raeburn@gnu.org>
7872
7873 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
7874
78752002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
7876
7877 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
7878 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
7879 * keymap.c (describe_command): Likewise.
7880 * minibuf.c (read_minibuf): Likewise.
7881
7882 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
7883 Cast `current_column' return value to int.
7884 (back_to_previous_visible_line_start)
7885 (reseat_at_next_visible_line_start, next_element_from_buffer):
7886 Cast `indented_beyond_p' 3rd arg to float.
7887
7888 * indent.c (last_known_column): Now a float.
7889 (current_column_1, position_indentation, current_column)
7890 (string_display_width): Return float.
7891 (Fcurrent_column): Cast `current_column' return value to int.
7892 (Fcurrent_indentation): Cast `position_indentation' retval to int.
7893 (indented_beyond_p): Third arg now a float.
7894 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
7895
7896 * lisp.h (current_column): Now returns float.
7897 (indented_beyond_p): 3rd arg now a float.
7898
78992002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
7900
7901 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
7902 is Qcompound_text_with_extensions.
7903
7904 * xselect.c (lisp_data_to_selection_data): Always set selection
7905 type as string if x_encode_text returns streingp non-NULL.
7906
7907 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
7908
79092002-05-30 Richard M. Stallman <rms@gnu.org>
7910
7911 * window.c (Fset_window_configuration): Correct the handling
7912 of point in current buffer, to work with multiple windows.
7913
79142002-05-29 Colin Walters <walters@verbum.org>
7915
7916 * lread.c (Fread_from_string): Don't depend on order of evaluation
7917 for C function parameters.
7918
79192002-05-28 Richard M. Stallman <rms@gnu.org>
7920
7921 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
7922 way for blinked-off state and for a nonselected window.
7923
7924 * window.c (window_scroll_pixel_based): Don't call Fbolp;
7925 instead, see if the new start pos is at beginning of line.
7926
7927 * fileio.c (Fwrite_region): If START is a string, don't
7928 make any annotations.
7929
7930 * eval.c (syms_of_eval): Doc fix.
7931
79322002-05-28 Colin Walters <walters@debian.org>
7933
7934 * emacs.c (USAGE1): Add --no-splash.
7935 (standard_args): Ditto.
7936
79372002-05-28 Colin Walters <walters@gnu.org>
7938
7939 * lread.c (readchar_count): New variable.
7940 (readchar): Increment it.
7941 (unreadchar): Decrement it.
7942 (read_multibyte): Decrement it.
7943 (Vread_with_symbol_positions): New variable.
7944 (Vread_symbol_positions_list): New variable.
7945 (read_internal_start): New function, created from Fread and
7946 Fread_from_string. Handle Vread_symbol_positions_list and
7947 Vread_with_symbol_positions.
7948 (readevalloop, Fread, Fread_from_string): Use it.
7949 (read1): Use readchar_count to add symbol positions to
7950 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
7951 (syms_of_lread): DEFVAR_LISP and initialize them.
7952
7953 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
7954 (substitute_object_recurse, substitute_object_in_subtree)
7955 (substitute_in_interval): Prototype.
7956 (read_multibyte): Return c if it's less than zero.
7957
79582002-05-28 Kim F. Storm <storm@cua.dk>
7959
7960 * fileio.c (Fread_file_name_internal): Added brute-force
7961 speed up for using predicate file-directory-p.
7962
79632002-05-28 Kim F. Storm <storm@cua.dk>
7964
7965 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
7966 New variables.
7967 (syms_of_fileio): DEFVAR_LISP them.
7968 (read_file_name_cleanup): New unwind function.
7969 (Fread_file_name_internal): Only return completions satifying
7970 Vread_file_name_predicate. Temporarily unwind protect and rebind
7971 default-directory while checking completions against the predicate.
7972 (Fread_file_name): Added PREDICATE argument. Specbind it to
7973 Vread_file_name_predicate during completion.
7974 Call Vread_file_name_function to read the file name if non-nil.
7975
7976 * lisp.h (Fread_file_name): Now has 6 args.
7977
7978 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
7979 predicate for Fread_file_name when reading directory name.
7980 Supply Qnil for predicate in other calls to Fread_file_name.
7981
79822002-05-26 Miles Bader <miles@gnu.org>
7983
7984 * term.c (tty_capable_p): New function.
7985 * dispextern.h (tty_capable_p): New function declaration.
7986 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
7987 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
7988
79892002-05-23 Stefan Monnier <monnier@cs.yale.edu>
7990
7991 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
7992 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
7993 (Vwrite_region_annotate_functions): Docstring fix.
7994
79952002-05-23 Kim F. Storm <storm@cua.dk>
7996
7997 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
7998 phys_cursor's hpos is overwritten. This is still not completely
7999 correct, as it doesn't really make sense to use hpos at all to
8000 get the cursor glyph (as that is relative to the width of the
8001 characters on the line, which may have changed during the update).
8002
80032002-05-22 Jason Rumney <jasonr@gnu.org>
8004
8005 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
8006 Lisp_Object.
8007 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
8008 Use modified enumfont_t struct.
8009
8010 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
8011
8012 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
8013 Handle the `hbar' cursor type.
8014 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
8015
8016 * w32fns.c (Qhbar): New variable.
8017 (x_specified_cursor_type): Use it.
8018
80192002-05-21 Ken Raeburn <raeburn@gnu.org>
8020
8021 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
8022 now, when the address is needed.
8023
80242002-05-21 Colin Walters <walters@gnu.org>
8025
8026 * Makefile.in (shortlisp): Add font-core.el.
8027
80282002-05-20 Richard M. Stallman <rms@gnu.org>
8029
8030 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
8031
8032 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
8033 equivalent key bindings here.
8034
80352002-05-20 Ken Raeburn <raeburn@gnu.org>
8036
8037 Change symbol structure to contain a lisp object for the symbol
8038 name:
8039 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
8040 object field named "xname".
8041 (SYMBOL_NAME): New macro.
8042 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
8043 name field.
8044 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
8045 (mark_object, gc_sweep): Use symbol xname field and XSTRING
8046 instead of name field.
8047 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
8048 SYMBOL_NAME instead of XSYMBOL and name field.
8049 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
8050 instead of XSYMBOL and name field.
8051 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
8052 and SYMBOL_NAME instead of XSYMBOL and name field.
8053 * coding.c (Fread_coding_system, code_convert_region1)
8054 (code_convert_string1, code_convert_string_norecord)
8055 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
8056 XSYMBOL and name field.
8057 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
8058 (Fmake_variable_buffer_local, Fmake_local_variable)
8059 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
8060 of XSYMBOL and name field.
8061 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
8062 XSYMBOL and name field.
8063 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
8064 instead of XSYMBOL and name field.
8065 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
8066 XSYMBOL and name field.
8067 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
8068 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8069 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
8070 instead of XSYMBOL and name field.
8071 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
8072 (parse_modifiers, apply_modifiers, Fevent_convert_list)
8073 (parse_solitary_modifier, Fexecute_extended_command):
8074 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8075 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
8076 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
8077 of XSYMBOL and name field.
8078 (describe_command, describe_translation): Use SYMBOL_NAME and
8079 assignment instead of XSYMBOL and name field and XSETSTRING.
8080 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
8081 instead of XSYMBOL and name field.
8082 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
8083 name field and XSETSTRING.
8084 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8085 of XSYMBOL and name field.
8086 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
8087 assignment instead of XSYMBOL and name field and XSETSTRING.
8088 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
8089 XSTRING instead of XSYMBOL and name field.
8090 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
8091 and XSTRING instead of XSYMBOL and name field.
8092 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
8093 and XSTRING instead of XSYMBOL and name field.
8094 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
8095 XSTRING instead of XSYMBOL and name field.
8096 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8097 of XSYMBOL and name field.
8098 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
8099 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8100
81012002-05-19 Ken Raeburn <raeburn@gnu.org>
8102
8103 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
8104 and XCDR real rvalues in most configurations.
8105
8106 * buffer.c (fix_overlays_in_range, fix_overlays_before):
8107 Don't take the address of the cdr part of a cons cell; instead, track
8108 the parent cell and call XSETCDR, or set the variable for the head
8109 of the list if we haven't started down the list yet.
8110
81112002-05-19 Richard M. Stallman <rms@gnu.org>
8112
8113 * doc.c (reread_doc_file): Don't ask for confirmation.
8114
81152002-05-18 Jason Rumney <jasonr@gnu.org>
8116
8117 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
8118 (xbm_load_image): Use it.
8119 (xbm_load): Ditto.
8120 (xbm_read_bitmap_data): Reverted to xfns.c version.
8121 From David Ponce <david@dponce.com>.
8122
81232002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
8124
8125 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
8126 2.02 and later.
8127
81282002-05-16 Juanma Barranquero <lektu@terra.es>
8129
8130 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
8131
81322002-05-15 Stefan Monnier <monnier@cs.yale.edu>
8133
8134 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
8135 meaningful test.
8136 (read_char_minibuf_menu_prompt): Fix typo.
8137
81382002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
8139
8140 * eval.c (Fcommandp): Doc fix.
8141
81422002-05-13 Stefan Monnier <monnier@cs.yale.edu>
8143
8144 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
8145 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
8146 (Fset_keymap_parent): Gcpro a bit more.
8147 (access_keymap): Gcpro around meta_map call and around the main loop.
8148 (get_keyelt): Gcpro when following indirect references.
8149 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
8150 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
8151 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
8152 Remove useless ad-hoc remap code.
8153
81542002-05-13 Richard M. Stallman <rms@gnu.org>
8155
8156 * search.c (search_buffer): Give up boyer moore search if inverse
8157 translation change charset_base.
8158
81592002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
8160
8161 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
8162 characters is carried over from the previous block of text, adjust
8163 coding->produced to account for the extra character.
8164
81652002-05-11 Andreas Schwab <schwab@suse.de>
8166
8167 * coding.c (intersection): Keep the elements of the returned list
8168 in the same order as in the first list.
8169
81702002-05-11 Kim F. Storm <storm@cua.dk>
8171
8172 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
8173 only update cmm_size if realloc actually succeeds.
8174 Testing with initial size of 2 elements revealed that using
8175 realloc on GNU/Linux would cause a random trap in xmalloc
8176 later on, so I rewrote the code to use malloc/bcopy/free instead
8177 of realloc.
8178
81792002-05-10 Jason Rumney <jasonr@gnu.org>
8180
8181 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
8182
81832002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
8184
8185 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
8186 parens, to ensure correct evaluation order.
8187
81882002-05-10 Kim F. Storm <storm@cua.dk>
8189
8190 * keymap.c (Vemulation_mode_map_alists): New variable.
8191 (syms_of_keymap): DEFVAR_LISP it.
8192 (current_minor_maps): Process keymap alists in that list before
8193 minor-mode-overriding-map-alist and minor-mode-map-alist.
8194
81952002-05-09 Richard M. Stallman <rms@gnu.org>
8196
8197 * search.c (Freplace_match): Doc fix.
8198
81992002-05-09 Kim F. Storm <storm@cua.dk>
8200
8201 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
8202 Enlarge cursor rectangle drawn around image with non-zero relief.
8203
8204 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
8205 Enlarge cursor rectangle drawn around image with non-zero relief.
8206
8207 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
8208 Enlarge cursor rectangle drawn around image with non-zero relief.
8209
82102002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
8211
8212 * xselect.c (lisp_data_to_selection_data): Don't set selection
8213 type if comes from the Lisp object's car. If the selection
8214 contains a pure ASCII text, always return QSTRING as its type.
8215
82162002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8217
8218 * mac.c (mac-cut-function): Doc fix.
8219
82202002-05-05 Richard M. Stallman <rms@gnu.org>
8221
8222 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
8223
82242002-05-04 Jason Rumney <jasonr@gnu.org>
8225
8226 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
8227 for event-click-count.
8228
8229 * process.c (init_process): Only add server subfeature if we can
8230 use non-blocking I/O.
8231
82322002-05-04 Andrew Choi <akochoi@shaw.ca>
8233
8234 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
8235 repeatedly.
8236
82372002-05-03 Jason Rumney <jasonr@gnu.org>
8238
8239 * process.c (Fmake_network_process): Only support server sockets
8240 when we can make them non-blocking.
8241
8242 * s/ms-w32.h (HAVE_SELECT): Define.
8243
8244 * w32.h (FILE_NDELAY): New flag.
8245
8246 * w32.c (sys_getpeername, fcntl): New functions.
8247 (_sys_read_ahead): Temporarily block on non-blocking sockets.
8248
8249 * w32proc.c: include sys/file.h.
8250
82512002-05-03 Colin Walters <walters@verbum.org>
8252
8253 * callproc.c (Vgame_score_directory): Renamed to
8254 Vshared_game_score_directory.
8255
82562002-04-30 Richard M. Stallman <rms@gnu.org>
8257
8258 * s/gnu.h [emacs]: Include stdio.h.
8259 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
8260
8261 * eval.c (do_autoload): Error if called while preparing to dump.
8262
8263 * fns.c (Frequire): Error if need to load while preparing to dump.
8264
82652002-04-28 Colin Walters <walters@verbum.org>
8266
8267 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
8268 Default to "~/.emacs.d/games".
8269
82702002-04-29 Stefan Monnier <monnier@cs.yale.edu>
8271
8272 * lread.c (openp): Change arg exec_only to predicate.
8273 (build_load_history): Use XCAR/XCDR.
8274 (Flocate_file_internal): New fun.
8275 (syms_of_lread): Defsubr it.
8276 (Fload): Update call to openp.
8277
8278 * lisp.h (openp): Update prototype.
8279
8280 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
8281 * w32proc.c (sys_spawnve):
8282 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
8283 * w32.c (check_windows_init_file):
8284 * sound.c (Fplay_sound_internal):
8285 * process.c (Fstart_process):
8286 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
8287 * mac.c (run_mac_command):
8288 * emacs.c (init_cmdargs):
8289 * callproc.c (Fcall_process): Update call to openp.
8290
8291 * textprop.c (remove_properties): Don't use XCAR without CONSP.
8292
8293 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
8294
82952002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8296
8297 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
8298 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
8299
83002002-04-28 Richard M. Stallman <rms@gnu.org>
8301
8302 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
8303
8304 * eval.c (Fcommandp): New arg for_call_interactively.
8305 * lisp.h (Fcommandp): Declare new arg.
8306
83072002-04-28 Jason Rumney <jasonr@gnu.org>
8308
8309 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
8310
8311 * w32.c (stat, fstat): Use file index information to generate
8312 inodes for directories where available.
8313
83142002-04-26 Andrew Choi <akochoi@shaw.ca>
8315
8316 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
8317 [HAVE_CARBON]: Include Mac object files.
8318
8319 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
8320 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
8321 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
8322 MAC_OSX, and MAC_OS instead of macintosh.
8323
8324 * editfns.c [MAC_OS8]: Include stdio.h.
8325
8326 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
8327
8328 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
8329 Apple Monaco.
8330
8331 * process.c: Declare QCfamily and QCfilter as extern.
8332 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
8333 calling select.
8334
8335 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
8336
8337 * tparam.c [MAC_OSX]: Don't define BC and UP.
8338
8339 * config.in [HAVE_CARBON]: Add.
8340
8341 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
8342 Move here from mac/src and mac/inc.
8343
8344 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
8345
83462002-04-26 Gerd Moellmann <gerd@gnu.org>
8347
8348 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
8349 Compute phys_cursor_width from the x position returned
8350 by x_draw_glyhs, which is cheaper.
8351 (x_display_and_set_cursor): Compute the buffer-local value
8352 of `cursor-in-non-selected-windows' only when needed.
8353
83542002-04-25 Gerd Moellmann <gerd@gnu.org>
8355
8356 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
8357 cursor on a stretch glyph has a width that depends on
8358 x_stretch_cursor_p.
8359
83602002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8361
8362 * abbrev.c (abbrev-start-location): Doc fix.
8363
8364 * indent.c (Fvertical_motion): Fix last change.
8365
83662002-04-25 Gerd Moellmann <gerd@gnu.org>
8367
8368 * indent.c (Fvertical_motion): Move to the start of the line
8369 containing PT before moving up or down.
8370
83712002-04-24 Gerd Moellmann <gerd@gnu.org>
8372
8373 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
8374 case of writing a whole row, more or less analogous to the case of
8375 writing only parts of a row.
8376
8377 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
8378 0 for NO_CURSOR.
8379
8380 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
8381
83822002-04-23 Colin Walters <walters@verbum.org>
8383
8384 * buffer.c (syms_of_buffer): Doc fix.
8385
83862002-04-23 Gerd Moellmann <gerd@gnu.org>
8387
8388 * xterm.c (notice_overwritten_cursor): Handle the special case
8389 of the cursor being in the first blank non-text line at the
8390 end of a window.
8391
8392 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8393 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8394 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
8395 bar cursors only, to make phys_cursor_width contain what its name
8396 suggests.
8397 (notice_overwritten_cursor): Consider the cursor image erased if
8398 the output area intersects the cursor image in y-direction.
8399
84002002-04-23 Simon Marshall <simon@gnu.org>
8401
8402 * xfns.c (x_set_mouse_color): Change default for cross_cursor
8403 to XC_hand2.
8404
84052002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8406
8407 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
8408
84092002-04-22 Kim F. Storm <storm@cua.dk>
8410
8411 * textprop.c (remove_properties): Fixed trap for malformed plist.
8412
84132002-04-22 Richard M. Stallman <rms@gnu.org>
8414
8415 * cmds.c (Fend_of_line): Handle intangible text in mid line.
8416
8417 * window.c (make_window): Initialize height_fixed_p,
8418 last_cursor_off_p, and p->cursor_off_p slots.
8419
84202002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8421
8422 * fns.c (use-dialog-box): Doc fix.
8423
84242002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8425
8426 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
8427 variables `row', `i' and `area'.
8428 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
8429 toolkit library.
8430
84312002-04-19 Stefan Monnier <monnier@cs.yale.edu>
8432
8433 * xfaces.c (clear_font_table): Don't free the default font of
8434 a frame even if it's on another display.
8435 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
8436 that could be Qt.
8437
84382002-04-19 Juanma Barranquero <lektu@terra.es>
8439
8440 * indent.c (Fmove_to_column): Remove unused local variable
8441 `next_boundary_byte'.
8442 (current_column_1): Likewise.
8443
84442002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
8445
8446 * msdos.c (Qhbar): New variable.
8447 (syms_of_msdos): Intern and staticpro it.
8448 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
8449 cursor type.
8450
84512002-04-19 Dave Lambert <dlambert@acm.org>
8452
8453 Theses change implement an underscore-like (`hbar') cursor.
8454
8455 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
8456
8457 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
8458 Handle the `hbar' cursor type.
8459 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
8460
8461 * xfns.c (Qhbar): New variable.
8462 (syms_of_xfns): Intern and staticpro it.
8463 (x_specified_cursor_type): Handle `hbar' cursor.
8464
8465 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
8466 not defined.
8467
84682002-04-18 Richard M. Stallman <rms@gnu.org>
8469
8470 * textprop.c (remove_properties): New arg LIST allows scanning
8471 either a list or a plist.
8472 (interval_has_some_properties_list): New function, like
8473 interval_has_some_properties using list instead of plist.
8474 All callers changed.
8475 (Fremove_list_of_text_properties): New function.
8476 (syms_of_textprop): Defsubr it.
8477
84782002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
8479
8480 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
8481
84822002-04-17 Juanma Barranquero <lektu@terra.es>
8483
8484 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
8485
84862002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
8487
8488 * window.c (coordinates_in_window): Don't report on margin area
8489 if its width is zero.
8490
84912002-04-16 Jason Rumney <jasonr@gnu.org>
8492
8493 * w32fns.c (Fx_file_dialog): Decode file name before using.
8494
8495 * w32term.c (construct_drag_n_drop): Likewise.
8496
84972002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
8498
8499 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
8500 store load-history in pure space.
8501
8502 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
8503
85042002-04-16 Stefan Monnier <monnier@cs.yale.edu>
8505
8506 * xterm.c (Qlatin_1, Qutf_8): New vars.
8507 (syms_of_xterm): Initialize them.
8508 (XTread_socket): Eliminate incorrect optimization that tried to avoid
8509 decoding the output of X*LookupString.
8510 Always use latin-1 to decode the output of XLookupString.
8511 Try Xutf8LookupString if XmbLookupString failed.
8512
8513 * region-cache.c (new_region_cache): Use BEG.
8514
85152002-04-16 Gerd Moellmann <gerd@gnu.org>
8516
8517 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
8518 configuration files.
8519 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
8520 returns 0.
8521
85222002-04-15 Andreas Schwab <schwab@suse.de>
8523
8524 * config.in: Regenerated using autoheader.
8525
8526 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
8527 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
8528 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
8529 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
8530 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
8531 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
8532 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
8533 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
8534 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
8535 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
8536 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
8537 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
8538 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
8539 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
8540 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
8541 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
8542 STACK_DIRECTION, now set by autoconf.
8543
85442002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8545
8546 * dispnew.c (marginal_area_string): Sort arguments.
8547
8548 * dispextern.h (marginal_area_string): Add prototype.
8549
85502002-04-13 Richard M. Stallman <rms@gnu.org>
8551
8552 * fileio.c (Finsert_file_contents):
8553 Don't call temp_output_buffer_setup--do just part, by hand.
8554
8555 * coding.c (run_pre_post_conversion_on_str):
8556 Don't call temp_output_buffer_setup--do just part, by hand.
8557
8558 * keyboard.c (command_loop_1): Don't call start_hourglass
8559 or cancel_hourglass when executing a macro.
8560
8561 * marker.c (count_markers): New function.
8562
8563 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
8564 grow without limit. Move recently used elements to the front.
8565
85662002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
8567
8568 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
8569
85702002-04-12 Gerd Moellmann <gerd@gnu.org>
8571
8572 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
8573 rows marginal areas.
8574 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
8575 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
8576
8577 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
8578
85792002-04-12 Dave Love <fx@gnu.org>
8580
8581 * dispnew.c (marginal_area_string): New.
8582
8583 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
8584 (Qleft_margin, Qright_margin): Declare.
8585 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
8586
8587 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
8588 note_mode_line_highlight and extended.
8589
8590 * keyboard.c (Qleft_margin, Qright_margin): Declare.
8591 (make_lispy_event): Deal with mouse events in margins.
8592
85932002-04-12 Stefan Monnier <monnier@cs.yale.edu>
8594
8595 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
8596
8597 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
8598 than deactivating the mark if tmm is set to `lambda'.
8599 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
8600 Use a single event for HELP_EVENT.
8601 (Fexecute_extended_command): Save last_point_position.
8602
86032002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8604
8605 * lisp.h (Fpropertize): Add prototype.
8606
8607 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
8608
86092002-04-10 Colin Walters <walters@verbum.org>
8610
8611 * config.in: Add HAVE_SHARED_GAME_DIR.
8612
8613 * callproc.c: (Vgame_score_directory): New variable.
8614 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
8615
86162002-04-10 Richard M. Stallman <rms@gnu.org>
8617
8618 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
8619
86202002-04-09 Stefan Monnier <monnier@cs.yale.edu>
8621
8622 * minibuf.c (read_minibuf): Use empty_string.
8623 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
8624 Short-circuit the search as soon as it "failed".
8625 (Fall_completions): Allow lambda forms and lists of strings for alist.
8626 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
8627 when require_match is nil.
8628 (Ftest_completion): Rename from `test_completion' and export to elisp.
8629 Call the predicate also when alist is a list.
8630 Obey Vcompletion_regexp_list.
8631 (do_completion, Fminibuffer_complete_and_exit): Use it.
8632 (Fassoc_string): Rename from `assoc_for_completion'.
8633 Allow list of strings as well and export to elisp.
8634
86352002-04-08 Stefan Monnier <monnier@cs.yale.edu>
8636
8637 * puresize.h (BASE_PURESIZE): Increase to 900KB.
8638
86392002-04-08 Juanma Barranquero <lektu@terra.es>
8640
8641 * w32.c (sys_accept): Don't hide variable `s'.
8642
86432002-04-05 Gerd Moellmann <gerd@gnu.org>
8644
8645 * callint.c (Fcall_interactively): Use INTEGERP instead of
8646 NUMBERP for checking Vhistory_length.
8647
86482002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8649
8650 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
8651 Doc fix to reflect it.
8652
86532002-04-04 Richard M. Stallman <rms@gnu.org>
8654
8655 * xdisp.c (display_mode_element): New arg RISKY.
8656 Disregard text props found or specified within a variable
8657 that isn't marked risky-local-variable.
8658 (Qrisky_local_variable): New variable.
8659 (syms_of_xdisp): Init and staticpro it.
8660
86612002-04-04 Stefan Monnier <monnier@cs.yale.edu>
8662
8663 * undo.c (record_point): New fun.
8664 (record_delete, record_insert): Use it.
8665
86662002-04-03 Juanma Barranquero <lektu@terra.es>
8667
8668 * doc.c (Fdocumentation): Add missing parentheses.
8669 (Fdocumentation_property): Likewise.
8670
86712002-04-03 Stefan Monnier <monnier@cs.yale.edu>
8672
8673 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
8674 data is 0, just return nil.
8675
86762002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
8677
8678 * msdos.c (syms_of_msdos): Fix last change with
8679 mouse_autoselect_window.
8680
86812002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8682
8683 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
8684 mouse_autoselect_window.
8685
86862002-04-02 Stefan Monnier <monnier@cs.yale.edu>
8687
8688 * keyboard.c (make_lispy_event): Handle unknown keysyms together
8689 with system-specific keysyms. Use it also for unknown function keys.
8690
8691 * doc.c (reread_doc_file): Return whether reload was attempted.
8692 (Fdocumentation, Fdocumentation_property): Don't try to reload
8693 if the doc is 0 and only ask once.
8694
8695 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
8696
86972002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
8698
8699 * keyboard.c (read_char): If the event was Qselect_window,
8700 restore timer_idleness_start_time to its previous value.
8701
8702 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
8703
87042002-04-01 Stefan Monnier <monnier@cs.yale.edu>
8705
8706 * region-cache.c (new_region_cache): Use BEG.
8707
8708 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
8709 Use BEG and BEG_BYTE.
8710
8711 * doc.c (get_doc_string): Return nil if the location is wrong.
8712 (reread_doc_file): New fun.
8713 (Fdocumentation, Fdocumentation_property):
8714 Call it if get_doc_string fails.
8715 (Fsnarf_documentation): Make it work for a dumped Emacs.
8716
8717 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
8718 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
8719
8720 * charset.c (Fstring): Allow 0 arguments.
8721
8722 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
8723
8724 * process.c (DATAGRAM_CONN_P, list_processes_1)
8725 (Fprocess_datagram_address, Fset_process_datagram_address)
8726 (Fset_network_process_options, server_accept_connection):
8727 Fix some int/Lisp_Object confusions (thank you union types).
8728
87292002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8730
8731 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
8732
8733 * w32term.c: Likewise.
8734 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
8735
8736 * keyboard.c (Qselect_window): New symbol.
8737 (head_table): Use it.
8738 (keys_of_keyboard): Bound select-window event to handle-select-window.
8739 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
8740
8741 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
8742 (last_window): New variable.
8743 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
8744 (note_mouse_movement): Remove reimplemented code in #if 0.
8745 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
8746 Emacs windows.
8747
8748 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
8749
87502002-03-31 Gerd Moellmann <gerd@gnu.org>
8751
8752 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
8753 Callers changed.
8754
87552002-03-30 Richard M. Stallman <rms@gnu.org>
8756
8757 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
8758 loop whenever it stops making progress.
8759
8760 * widget.c (set_frame_size): Don't call change_frame_size.
8761
87622002-03-30 Gerd Moellmann <gerd@gnu.org>
8763
8764 * dispnew.c (direct_output_for_insert):
8765 Call mark_window_display_accurate.
8766
87672002-03-29 Jason Rumney <jasonr@gnu.org>
8768
8769 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
8770
87712002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
8772
8773 * Makefile.in (lread.o): Depend on coding.h.
8774
8775 * lread.c (openp, Fload): Encode the file name before passing it
8776 to `stat', `access', and `emacs_open'.
8777 (openp): GCPRO the encoded file name. Don't recompute Lisp
8778 strings unnecessarily.
8779
87802002-03-29 Kim F. Storm <storm@cua.dk>
8781
8782 * fns.c (Flax_plist_put): Doc fix.
8783
87842002-03-28 Miles Bader <miles@gnu.org>
8785
8786 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
8787
87882002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8789
8790 * process.c (set-network-process-options): Add usage.
8791 (make-network-process): Doc fix.
8792
87932002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
8794
8795 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
8796
87972002-03-26 Richard M. Stallman <rms@gnu.org>
8798
8799 * fns.c (Fsubstring_no_properties): New function.
8800 (Flax_plist_get, Flax_plist_put): New functions.
8801 (syms_of_fns): defsubr them.
8802
8803 * xdisp.c (update_menu_bar): Test only update_mode_lines;
8804 don't test or alter w->update_mode_line.
8805
8806 * window.c (Fdisplay_buffer): Doc fix.
8807
88082002-03-24 Richard M. Stallman <rms@gnu.org>
8809
8810 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
8811
88122002-03-24 Gerd Moellmann <gerd@gnu.org>
8813
8814 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
8815 (Fdefmacro): Handle `(declare ...)'.
8816 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
8817 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
8818
88192002-03-24 Jason Rumney <jasonr@gnu.org>
8820
8821 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
8822 (xbm_file_p): Add prototypes.
8823 (xbm_format, xbm_image_p): Sync with xfns.c.
8824 (reflect_byte): New function.
8825 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
8826 (xbm_load_image): Create bitmaps with a depth of 1.
8827 (init_xfns): Enable XBM images.
8828
88292002-03-23 Jason Rumney <jasonr@gnu.org>
8830
8831 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
8832 correctly. Do not pass up_modifier to keyboard buffer.
8833
8834 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
8835
88362002-03-22 Stefan Monnier <monnier@cs.yale.edu>
8837
8838 * Makefile.in (bootstrapclean): New target.
8839 (bootstrap-temacs, bootstrap-doc): Remove.
8840 (bootstrap-emacs): Use a bog-standard `temacs'.
8841 Don't bother to build a DOC file.
8842
8843 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
8844
8845 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
8846 in temacs even if !CANNOT_DUMP.
8847 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
8848
8849 * alloc.c (check_pure_size): Only output a warning.
8850
88512002-03-22 Jason Rumney <jasonr@gnu.org>
8852
8853 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
8854 supported.
8855
8856 * w32term.c (zv_bits): Declare as short, for word alignment.
8857 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
8858 (syms_of_w32term): Define x-use-underline-position-properties.
8859
8860 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
8861 (clear_image_cache): Block input, fix logic, clear matrices in
8862 all frames that share this cache.
8863
88642002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
8865
8866 * emacs.c (main): Update the Copyright year in the blurb printed
8867 by "emacs --version".
8868
8869 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
8870
8871 * xterm.c (XTread_socket): If XK_ISO_Lock and
8872 XK_ISO_Last_Group_Lock are defined, handle keysyms between
8873 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
8874
88752002-03-21 Kim F. Storm <storm@cua.dk>
8876
8877 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
8878 menu-bar bindings in keymap and local-map properties _are_ used.
8879 But try keymap property first in accordance with 2002-01-03 patch.
8880 Added comment describing why this is not always reliable.
8881 (tool_bar_items): Ditto for tool-bar.
8882
88832002-03-21 Jason Rumney <jasonr@gnu.org>
8884
8885 * w32fns.c (x_clear_image_1): Disable color table code.
8886
88872002-03-21 Kim F. Storm <storm@cua.dk>
8888
8889 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
8890 removed the wrong version of the DEFUN macro; fixed it.
8891
8892 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
8893 Fmember rather than Fmemq).
8894 (Fprovide): Check that subfeatures is a list.
8895
8896 * process.c (QCfeature, QCdatagram): Removed variables.
8897 (QCtype, Qdatagram): New variables.
8898 (network_process_featurep): Removed function.
8899 (Fmake_network_process): Removed :feature check.
8900 Use :type 'datagram instead of :datagram t to create a datagram
8901 socket. This allows us to add other connection types (e.g. raw
8902 sockets) later in a consistent manner.
8903 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
8904 supported subfeatures for feature make-network-process.
8905 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
8906 Intern and staticpro QCtype and Qdatagram.
8907 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
8908
8909 * xfns.c: (QCtype): Remove duplicate declaration and
8910 initialization (is now declared in process.c).
8911
8912 * w32fns.c: (QCtype): Remove duplicate declaration and
8913 initialization (is now declared in process.c).
8914
89152002-03-21 Richard M. Stallman <rms@gnu.org>
8916
8917 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
8918 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
8919 when jumping to `fail' to avoid undoing reg changes in the
8920 last iteration of the loop.
8921 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
8922
8923 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
8924 Depend on process.h.
8925
89262002-03-20 Jason Rumney <jasonr@gnu.org>
8927
8928 Most of the following changes are still conditional on HAVE_IMAGES
8929 which is not set by default on Windows.
8930
8931 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
8932
8933 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
8934 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
8935 (four_corners_best, x_clear_image_1, x_clear_image)
8936 (x_alloc_image_color, postprocess_image)
8937 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
8938 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
8939 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
8940
8941 * w32gui.h (struct XImage): Define.
8942
8943 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
8944 extract mouse co-ordinates.
8945
89462002-03-20 Jason Rumney <jasonr@gnu.org>
8947
8948 * w32.c (init_winsock): Dynamically load new server and UDP
8949 socket functions.
8950 (socket_to_fd): New function.
8951 (sys_socket): Use it.
8952 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
8953 (sys_recvfrom, sys_sendto): New wrapper functions.
8954
8955 * process.c (QCfamily, QCfilter): Remove duplicate declaration
8956 and initialization.
8957
8958 * makefile.w32-in (LIBS): Remove $(WSOCK32).
8959
89602002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
8961
8962 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
8963 Don't use "sun" as a variable, it's a predefined constant on Sun
8964 machines.
8965
89662002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8967
8968 * bytecode.c (Fbyte_code): Revert last change.
8969
89702002-03-19 Kim F. Storm <storm@cua.dk>
8971
8972 * makefile.w32-in (LIBS): Add $(WSOCK32).
8973 From David Ponce <dponce@voila.fr>.
8974
89752002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8976
8977 * process.c (wait_reading_process_input): Move variables `pname'
8978 and `pnamelen' down where they are used.
8979
8980 * bytecode.c (Fbyte_code): Discard unused computed value to
8981 prevent gcc warning.
8982
8983 * lisp.h (Fplist_member): Add prototype.
8984
89852002-03-18 Kim F. Storm <storm@cua.dk>
8986
8987 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
8988 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
8989
8990 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
8991 Remove explicit GNU_LINUX settings for datagram support.
8992
89932002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8994
8995 * process.c (Fmake_network_process): Remove unused variable `sa'.
8996 Doc fix. Add usage:.
8997 (set_socket_options): Remove unused variables `optnum' and `opttype'.
8998
89992002-03-17 Richard M. Stallman <rms@gnu.org>
9000
9001 * xdisp.c (cursor_type_changed): New variable.
9002 (redisplay_internal): Redisplay all windows if cursor_type_changed.
9003 Clear it when clearing windows_or_buffers_changed.
9004 (try_cursor_movement, redisplay_window, try_window_id)
9005 (try_window_reusing_current_matrix): Test cursor_type_changed
9006 along with windows_or_buffers_changed.
9007
9008 * window.h (cursor_type_changed): New variable.
9009
9010 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
9011 not update_mode_lines, and always set it to 1.
9012
9013 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
9014 if no frames needed redrawing.
9015
90162002-03-17 Kim F. Storm <storm@cua.dk>
9017
9018 The following changes add support for network server processes,
9019 datagram connections, and local (unix) sockets.
9020
9021 * process.h (struct Lisp_Process): New member log.
9022 Doc fix: Member command used to indicate stopped network process.
9023 Doc fix: Member childp contains plist for network process.
9024 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
9025
9026 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
9027 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
9028 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
9029 New variables.
9030 (NETCONN1_P): New macro.
9031 (DATAGRAM_SOCKETS): New conditional symbol.
9032 (datagram_address): New array.
9033 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
9034 (status_message): Use concat3.
9035 (Fprocess_status): Add `listen' status to doc string. Return `stop'
9036 for a stopped network process.
9037 (Fset_process_buffer): Update contact plist for network process.
9038 (Fset_process_filter): Ditto. Don't enable input for stopped
9039 network processes. Server must listen, even if filter is t.
9040 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
9041 New functions.
9042 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
9043 (Fprocess_contact): Added KEY argument. Handle datagrams.
9044 (list_processes_1): Optionally show only processes with the query
9045 on exit flag set. Dynamically adjust column widths. Omit tty
9046 column if not needed. Report stopped network processes.
9047 Identify server and datagram network processes.
9048 (Flist_processes): New optional arg `query-only'.
9049 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
9050 (conv_lisp_to_sockaddr, set_socket_options)
9051 (network_process_featurep, unwind_request_sigio): New helper functions.
9052 (Fprocess_datagram_address, Fset_process_datagram_address):
9053 (Fset_network_process_options): New lisp functions.
9054 (Fopen_network_stream): Removed. Now defined in simple.el.
9055 (Fmake_network_process): New lisp function. Code is based on previous
9056 Fopen_network_stream, but heavily reworked with new property list based
9057 argument list, support for datagrams, server processes, and local
9058 sockets in addition to old client-only functionality.
9059 (server_accept_connection): New function.
9060 (wait_reading_process_input): Use it to handle incoming connects.
9061 Do not enable input on a new connection if process is stopped.
9062 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
9063 (send_process): Handle datagram sockets.
9064 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
9065 network process is indicated by setting command field to t .
9066 (Fprocess_send_eof): No-op if datagram connection.
9067 (Fstatus_notify): Don't read input for a stream server socket or a
9068 stopped network process.
9069 (init_process): Initialize datagram_address array.
9070 (syms_of_process): Intern and staticpro new variables, defsubr new
9071 functions.
9072
90732002-03-16 Jason Rumney <jasonr@gnu.org>
9074
9075 * w32fns.c (w32_to_all_x_charsets): Return correct type in
9076 startup case.
9077
90782002-03-16 Richard M. Stallman <rms@gnu.org>
9079
9080 * xdisp.c (redisplay_internal, redisplay_windows):
9081 Use list_of_error to call internal_condition_case_1.
9082 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
9083 so as to catch all errors with no possibility of debugger redisplay.
9084 (list_of_error): New variable.
9085 (syms_of_xdisp): Init and staticpro it.
9086
9087 * print.c (print_object): Delete `\ ' from printed rep of frame.
9088
90892002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
9090
9091 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
9092 until its implementation is fixed.
9093
90942002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9095
9096 * xfns.c (png_load): Remove unused variable `gamma_str'.
9097
90982002-03-14 Richard M. Stallman <rms@gnu.org>
9099
9100 * xfns.c (x_real_positions): Handle failure in XQueryTree.
9101
91022002-03-14 Miles Bader <miles@gnu.org>
9103
9104 * intervals.c (adjust_for_invis_intang): New function.
9105 (set_point_both): Use `adjust_for_invis_intang' to do most of the
9106 work for dealing with invisible+intangible regions. Do so before
9107 and after both forward and backward movements, to handle both
9108 front-sticky and rear-sticky cases.
9109 * textprop.c (text_property_stickiness): Function moved here from
9110 `editfns.c'.
9111 * intervals.h (text_property_stickiness): New declaration.
9112 * editfns.c (char_property_eq): Function removed.
9113 (text_property_stickiness): Function moved to `textprop.c'.
9114
91152002-03-13 Jason Rumney <jasonr@gnu.org>
9116
9117 * config.in: Add STRFTIME_NO_POSIX2.
9118
9119 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
9120 and %OX when underlying strftime does not.
9121
91222002-03-13 Stefan Monnier <monnier@cs.yale.edu>
9123
9124 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
9125 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
9126 line) to avoid annoying flicker.
9127 (xm_scroll_callback): Get rid of the now unnecessary kludge.
9128 (XTread_socket): Mark it static.
9129
9130 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
9131
91322002-03-13 Kim F. Storm <storm@cua.dk>
9133
9134 * puresize.h (BASE_PURESIZE): Increase to 775000.
9135
91362002-03-12 Juanma Barranquero <lektu@terra.es>
9137
9138 * editfns.c (syms_of_editfns): Fix typo.
9139
91402002-03-12 Gerd Moellmann <gerd@gnu.org>
9141
9142 * xsmfns.c: Include stdio.h because termhooks.h needs it.
9143 Include termopt.h for interrupt_input.
9144
91452002-03-11 Andreas Schwab <schwab@suse.de>
9146
9147 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
9148
91492002-03-11 Gerd Moellmann <gerd@gnu.org>
9150
9151 * xterm.c (note_mouse_movement): Put code for
9152 x_autoselect_window_p in #if 0.
9153
9154 * lread.c (Fload): Don't assume that message_with_string uses the
9155 string it is given like a C string.
9156
91572002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9158
9159 * xterm.h (x_session_check_input, x_session_initialize): Declared.
9160
9161 * xterm.c: (XTread_socket): Add call to x_session_check_input and
9162 x_session_have_connection.
9163 (x_initialize): Add call to x_session_initialize.
9164
9165 * termhooks.h (enum event_kind): Add save_session_event.
9166
9167 * keyboard.c: Add Emacs event save_session_event.
9168
9169 * emacs.c (main): Add call to syms_of_xsmfns.
9170
9171 * lisp.h: Declare syms_of_xsmfns as extern.
9172
9173 * config.in: Add HAVE_X_SM.
9174
9175 * Makefile.in (LIBXT): Add -lSM -lICE
9176 if HAVE_X_SM and not USE_X_TOOLKIT.
9177 (XOBJ): New file xsmfns.c added.
9178
9179 * xsmfns.c: New file for X session management.
9180
91812002-03-09 Jason Rumney <jasonr@gnu.org>
9182
9183 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
9184 read-only when setting modified time.
9185
91862002-03-08 Gerd Moellmann <gerd@gnu.org>
9187
9188 * xdisp.c (move_it_vertically_backward): At the end of the function,
9189 when moving forward by lines, treat terminal frames specially.
9190
9191 * keyboard.c (echo_char): Make sure to add a separator between
9192 keys even if echo_dash hasn't been called.
9193
9194 * xdisp.c: Use new string macros.
9195 (update_echo_area): Pass number of bytes to message3 instead of
9196 number of chars.
9197 (set_message_1): Don't access a string's size_byte directly.
9198 (decode_mode_spec_coding): Use number of bytes of eoltype string
9199 instead number of chars.
9200
9201 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
9202
92032002-03-08 Juanma Barranquero <lektu@terra.es>
9204
9205 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
9206 24-bit.
9207
92082002-03-06 Jason Rumney <jasonr@gnu.org>
9209
9210 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
9211
92122002-03-06 Gerd Moellmann <gerd@gnu.org>
9213
9214 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
9215 (cancel_echoing, echo_length, echo_truncate): Changed to
9216 work with new kboard definition.
9217 (echo_now): Use message3_nolog instead of message2_nolog.
9218
9219 * alloc.c (mark_kboards): Mark echo_string.
9220
9221 * keyboard.h (ECHOBUFSIZE): Removed.
9222 (struct kboard): Member echoptr removed, member echobuf renamed
9223 to echo_string.
9224
9225 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
9226 message3 instead of message2 to display the message using STRING's
9227 text properties.
9228
92292002-03-05 Andreas Schwab <schwab@suse.de>
9230
9231 * xdisp.c (hscroll_margin): Change to EMACS_INT.
9232
92332002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
9234
9235 * frame.c (default-frame-alist): Explain that setting it doesn't
9236 affect existing frames.
9237
92382002-03-05 Stefan Monnier <monnier@cs.yale.edu>
9239
9240 * indent.c (skip_invisible): Fix my brain fart.
9241
9242 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
9243
92442002-03-04 Stefan Monnier <monnier@cs.yale.edu>
9245
9246 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
9247 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
9248 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
9249 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
9250 and variables to use EMACS_INT instead of just int.
9251
9252 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
9253
92542002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
9255
9256 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
9257 environment, pass it down with corrected value.
9258
92592002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9260
9261 * lread.c (read_filtered_event): Do not call start_hourglass
9262 before returning.
9263
92642002-03-04 Juanma Barranquero <lektu@terra.es>
9265
9266 * w32term.c (x_display_and_set_cursor): Fix typo.
9267
92682002-03-03 Richard M. Stallman <rms@gnu.org>
9269
9270 * fileio.c (Fmake_temp_name): Doc fix.
9271
92722002-03-03 Gary Wong <gtw@gnu.org>
9273
9274 * termcap.c [!emacs]: Replace ospeed for building standalone
9275 libtermcap, for binary compatibility.
9276
9277 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
9278
92792002-03-03 Richard M. Stallman <rms@gnu.org>
9280
9281 * xrdb.c (file_p): Rename arg `path' to `filename'.
9282
9283 * abbrev.c (Fexpand_abbrev): Increment plist as use count
9284 only if it is an integer.
9285
9286 * xfns.c (png_load): Set screen_gamma based on f->gamma.
9287 If png_get_sRGB gives an answer, call png_set_gamma
9288 using the default image gamma value.
9289
9290 * lread.c (read1): When reading from a file, default string to
9291 multibyte only if it has some multibyte characters.
9292
9293 * print.c (print_object): Output multibyte chars 128...255
9294 using \x even if ! print_escape_multibyte.
9295
9296 * xdisp.c (display_mode_element): Move the places where
9297 bytepos, charpos, this, and lisp_string are set.
9298 Use lisp_string to set bytepos.
9299
9300 * xdisp.c (redisplay_internal):
9301 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
9302
9303 * xdisp.c (display_mode_element): Merge properties specified with
9304 :propertize onto those that come with the string.
9305
93062002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
9307
9308 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
9309 automatic-hscrolling. Users changed.
9310 <hscroll-margin>: Renamed from automatic-hscroll-margin.
9311 Users changed.
9312 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
9313
93142002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
9315
9316 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
9317
93182002-03-02 Kim F. Storm <storm@cua.dk>
9319
9320 * window.c (Fminibuffer_selected_window): New function.
9321 (syms_of_window): Defsubr it.
9322
93232002-03-01 Kim F. Storm <storm@cua.dk>
9324
9325 * window.h (struct window): New member phys_cursor_width.
9326
9327 * window.c (make_window, replace_window): Init phys_cursor_width.
9328
9329 * xterm.c (x_display_and_set_cursor): Blink box cursor using
9330 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
9331
9332 * w32term.c (x_display_and_set_cursor): Blink box cursor using
9333 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
9334
9335 * lisp.h (GCPRO6): New macro.
9336
9337 * process.c (Fopen_network_stream): Use GCPRO6.
9338
93392002-03-01 Kim F. Storm <storm@cua.dk>
9340
9341 * process.c (Qconnect, Qfailed): New variables.
9342 (syms_of_process): Intern and staticpro them.
9343 (Fprocess_status): Document connect and failed return values.
9344 [NON_BLOCKING_CONNECT]: New conditional.
9345 (connect_wait_mask, num_pending_connects): New variables.
9346 (status_message): Convert Qfailed status.
9347 (Fopen_network_stream): Added support for non-blocking connect.
9348 New optional args: filter, sentinel, non_blocking. Doc updated.
9349 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
9350 (deactivate_process): Handle pending non-blocking connect.
9351 (wait_reading_process_input): Poll for status of non-blocking
9352 connects. Exec sentinel directly when connect succeeds.
9353 (status_notify): Don't read process output if not yet connected.
9354
93552002-02-28 Kim F. Storm <storm@cua.dk>
9356
9357 * window.c: (minibuf_selected_window): Renamed from
9358 Vminibuf_selected_window. Users changed.
9359 (syms_of_window): Staticpro it.
9360
93612002-02-26 Kim F. Storm <storm@cua.dk>
9362
9363 The following changes add a new Vminibuf_selected_window variable
9364 which is similar to Vminibuf_scroll_window, but which is only set
9365 on entry to the minibuffer (from a non-minibuffer window):
9366
9367 * window.c: (Vminibuf_selected_window): New variable.
9368 (struct save_window_data): New member minibuf_selected_window.
9369 (Fset_window_configuration): Restore Vminibuf_selected_window.
9370 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
9371 Set minibuf_scroll_window member to nil if minibuf_level is 0.
9372 (compare_window_configurations): Compare minibuf_selected_window.
9373
9374 * window.h: (Vminibuf_selected_window): Declare extern.
9375
9376 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
9377 entry to minibuffer or on entry from a non-minibuffer window.
9378
9379 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
9380 Vminibuf_selected_window instead of Vminibuf_scroll_window.
9381
9382 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
9383 instead of Vminibuf_scroll_window when deciding in which window
9384 the region should be highlighted. Consequently, the region remains
9385 highlighteded even when a completion buffer is also displayed.
9386
93872002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
9388
9389 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
9390
9391 * xselect.c (Qcompound_text_with_extensions): Renamed from
9392 Qcompound_text_no_extensions.
9393 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
9394
93952002-02-26 Juanma Barranquero <lektu@terra.es>
9396
9397 * w32proc.c (syms_of_ntproc): Doc fix.
9398
93992002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9400
9401 * intervals.h: Include "dispextern.h" unconditionally.
9402
94032002-02-24 Jason Rumney <jasonr@gnu.org>
9404
9405 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
9406 and disp-table.elc.
9407 (lisp): Add emacs-lisp/backquote.elc.
9408
94092002-02-24 Kim F. Storm <storm@cua.dk>
9410
9411 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
9412 The validation of the event type was too strict as it didn't
9413 allow string events; buffer names are used in bindings for
9414 menu-bar-select-buffer (see `menu-bar-update-buffers').
9415
94162002-02-23 Kim F. Storm <storm@cua.dk>
9417
9418 The following changes rework my patch of 2002-02-06 which
9419 added command remapping by entering the commands directly into
9420 the keymaps. Now, command remapping uses an explicit `remap'
9421 prefix in the keymaps, i.e. [remap COMMAND].
9422
9423 * keymap.c (Qremap, remap_command_vector): New variables.
9424 (is_command_symbol): Removed function.
9425 (Fdefine_key): No longer accept a symbol for KEY.
9426 Added validation of [remap COMMAND] argument for KEY.
9427 The DEF is no longer required to be a symbol when remapping a command.
9428 (Fremap_command): New function to remap command through keymaps.
9429 (Flookup_key): Perform command remapping initiated by
9430 Fremap_command directly for speed.
9431 (Fkey_binding): Use Fremap_command for command remapping.
9432 (where_is_internal): Handle new command remapping representation.
9433 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
9434 staticpro them. Defsubr Fremap_command.
9435
9436 * keymap.h (Fremap_command): Declare extern.
9437 (is_command_symbol): Remove extern.
9438
9439 * keyboard.c (command_loop_1): Use Fremap_command for command
9440 remapping; now try command remapping for all symbols.
9441
94422002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
9443
9444 * coding.h (run_pre_post_conversion_on_str): Add prototype.
9445
94462002-02-23 Jason Rumney <jasonr@gnu.org>
9447
9448 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
9449 on the string before encoding it.
9450 (Fw32_get_clipboard_data): Run post-read-conversion on the string
9451 after decoding it.
9452
9453 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
9454
94552002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9456
9457 * w32term.c (enter_timestamp): Remove unused static variable to
9458 prevent warning.
9459
9460 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
9461
94622002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
9463
9464 * w16select.c (Fw16_get_clipboard_data): Fix last change.
9465
9466 * xselect.c (selection_data_to_lisp_data): Fix last change.
9467
94682002-02-22 Jason Rumney <jasonr@gnu.org>
9469
9470 * w32term.h (struct w32_output): New member menu_command_in_progress.
9471
9472 * w32menu.c (menubar_selection_callback): Free the menu and
9473 clear the menu_command_in_progress flag.
9474
9475 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
9476 (menu_free_timer): New variable.
9477 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
9478 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
9479 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
9480 menu command is in progress.
9481 <WM_COMMAND>: Set the menu_command_in_progress flag.
9482 Kill any menu_free_timer that is running.
9483
9484 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
9485 Call ExtTextOutA rather than ExtTextOut.
9486
94872002-02-22 Eli Zaretskii <eliz@gnu.org>
9488
9489 * puresize.h (BASE_PURESIZE): Increase to 755000.
9490
94912002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
9492
9493 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
9494 on the string before encoding it.
9495 (Fw16_get_clipboard_data): Run post-read-conversion on the string
9496 after decoding it.
9497
94982002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
9499
9500 Support for ICCCM Extended Segments in X selections:
9501
9502 * xselect.c <Qcompound_text_no_extensions>: New variable.
9503 (syms_of_xselect): Intern and staticpro it.
9504 (selection_data_to_lisp_data): Run post-read-conversion on decoded
9505 selection text.
9506 (lisp_data_to_selection_data): If next-selection-coding-system is
9507 compound-text-no-extensions, set the type of selection to be
9508 compound-text.
9509
9510 * xterm.h (x_encode_text): Update prototype.
9511
9512 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
9513 callers changed. If SELECTIONP is non-zero, run the
9514 pre-write-conversion function before encoding the selection text.
9515
95162002-02-21 Kim F. Storm <storm@cua.dk>
9517
9518 * frame.c (syms_of_frame): Change mouse-highlight default to t.
9519
9520 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
9521 Correct composing of language-change event.
9522
95232002-02-20 Kim F. Storm <storm@cua.dk>
9524
9525 * keyboard.c (menu_bar_items): Don't include keymap or local-map
9526 bindings at PT when building menu (the menu is not updated often
9527 enough for this to work reliable).
9528 (tool_bar_items): Likewise.
9529 (current_active_maps): Removed unused (and buggy) function.
9530
95312002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9532
9533 * xfns.c (gif_load): Use correct width and height for GIF images.
9534
95352002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
9536
9537 * floatfns.c (Fatan): Accept an optional second arg and call
9538 atan2 if passed 2 args.
9539
95402002-02-18 Jason Rumney <jasonr@gnu.org>
9541
9542 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
9543
95442002-02-17 Jason Rumney <jasonr@gnu.org>
9545
9546 * w32term.c (x_autoselect_window_p): New variable.
9547 (syms_of_w32term): DEFVAR_BOOL and initialize it.
9548 (note_mouse_movement): Use it.
9549
9550 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
9551
9552 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
9553
9554 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
9555 New variables.
9556 (syms_of_w32fns): Intern and staticpro them.
9557 (x_frame_parms) <"fullscreen">: New parameter.
9558 (x_fullscreen_move, x_set_fullscreen): New functions.
9559 (x_set_frame_parameters): Support Qfullscreen.
9560 (x_real_positions): Save x/y_pixels_diff frame params.
9561 (x_figure_window_size): Support full-screen frames.
9562 (Fx_create_frame): Default the fullscreen parameter.
9563
9564 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
9565 (x_fullscreen_adjust): New functions.
9566 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
9567 fullscreen. Call x_check_fullscreen_move, and set the
9568 want_fullscreen member of output_data.w32
9569 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
9570
9571 * w32term.h: New enum for FULLSCREEN_* constants.
9572 (struct w32_output): New members want_fullscreen, x_pixels_diff,
9573 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
9574 (x-fullscreen-adjust): New prototype.
9575
95762002-02-17 Kim F. Storm <storm@cua.dk>
9577
9578 * frame.c: (Vmouse_highlight): New variable.
9579 (syms_of_frame): DEFVAR_LISP it.
9580
9581 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 9582
048addec 9583 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 9584
048addec
JD
9585 * xterm.c (disable_mouse_highlight): Removed variable.
9586 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
9587 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9588 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
9589 and on after keyboard input.
9590 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 9591
048addec 9592 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 9593
048addec
JD
9594 * msdos.c (disable_mouse_highlight): Removed variable.
9595 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9596 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
9597 (internal_terminal_init): Initialize mouse_face_hidden.
9598 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
9599 and on after keyboard input.
4f1b1854 9600
048addec 9601 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 9602
048addec
JD
9603 * w32term.c (disable_mouse_highlight): Removed variable.
9604 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
9605 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9606 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
9607 and on after keyboard input.
9608 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 9609
048addec 96102002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 9611
048addec
JD
9612 * msdos.c (last_mouse_window): New variable.
9613 (dos_rawgetc): Fix last change--if the mouse is in the same window
9614 as recorded in last_mouse_window, don't select this window.
5cb6905d 9615
048addec 9616 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 9617
048addec
JD
9618 * msdos.c (x_autoselect_window_p): New variable.
9619 (syms_of_msdos): Defvar it.
9620 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
9621 which the last mouse movement occured, unless it is already selected.
437dfb9f 9622
048addec
JD
9623 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
9624 New variables.
9625 (syms_of_xdisp): DEVFAR them.
9626 (hscroll_window_tree): Use automatic_hscroll_margin and
9627 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 9628
048addec 96292002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 9630
048addec
JD
9631 * xterm.c (x-autoselect-window): New variable.
9632 (note_mouse_movement): Use it.
9f696a00 9633
048addec 9634 * keyboard.c: Do not include "systime.h" twice.
d57966d7 9635
048addec 96362002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 9637
048addec 9638 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 9639
048addec 9640 * alloc.c (NSTATICS): Increase to 1280.
74779f52 9641
048addec 96422002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 9643
048addec 9644 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 9645
048addec
JD
9646 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
9647 (Vx_super_keysym): New variables.
9648 (syms_of_xterm): DEFVAR_LISP them.
9649 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
9650 variables to determine which keys to use for the various modifiers.
a474d59c 9651
048addec 96522002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 9653
048addec
JD
9654 * window.c: (Vmode_line_in_non_selected_windows): Removed.
9655 (mode_line_in_non_selected_windows): New variable.
9656 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 9657
048addec
JD
9658 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
9659 Use mode_line_in_non_selected_windows.
9660 (mode_line_in_non_selected_windows): Declare extern.
9661 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 9662
048addec 96632002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 9664
048addec
JD
9665 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
9666 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
9667 (Fclear_this_command_keys): Doc fixes.
2d10309f 9668
048addec
JD
9669 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
9670 (update_face_from_frame_parameter): Increment face_change_count
9671 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 9672
048addec
JD
9673 * xdisp.c (QCpropertize): New variable.
9674 (mode_line_proptrans_alist): New variable.
9675 (display_mode_element): New arg PROPS; all calls changed.
9676 Implement this, for strings.
9677 Handle literal output of strings by sharing the
9678 main-line code for strings, using local var `literal'.
9679 Handle :propertize feature.
9680 (syms_of_xdisp): Initialze and staticpro QCpropertize and
9681 mode_line_proptrans_alist.
0b1e6b54 9682
048addec 96832002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 9684
048addec
JD
9685 * window.c: (Vmode_line_in_non_selected_windows): New variable.
9686 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 9687
048addec
JD
9688 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
9689 (CURRENT_MODE_LINE_FACE_ID): Use it.
9690 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 9691
048addec
JD
9692 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
9693 to get mode line face.
e17144de 9694
048addec 96952002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 9696
048addec
JD
9697 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
9698 variables; cus-start.el doesn't need them anymore.
44368f8f 9699
048addec 97002002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 9701
048addec
JD
9702 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
9703 reduction. This fixes a display problem where stray newlines were
9704 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 9705
048addec 97062002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 9707
048addec 9708 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 9709
048addec 9710 * xdisp.c (display_mode_lines): Fix last change.
453c5510 9711
048addec 97122002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 9713
048addec
JD
9714 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
9715 match each other.
9716 (w32_load_system_font): Prevent Cleartype fonts from loading.
9717 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 9718
048addec 97192002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 9720
048addec
JD
9721 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
9722 (CURRENT_MODE_LINE_HEIGHT): Use it.
9723 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 9724
048addec
JD
9725 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
9726 (pos_visible_p, handle_face_prop): Likewise.
9727 (display_mode_lines): Likewise, but for the real selected window.
9728 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 9729
048addec
JD
9730 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
9731 in non-selected windows.
9732 (realize_basic_faces): Realize it.
9733 (syms_of_term): Intern and staticpro it.
308dd672 9734
048addec 97352002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 9736
048addec
JD
9737 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
9738 Changed mail addresses to emacs-devel@gnu.org.
308dd672 9739
048addec 97402002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 9741
048addec
JD
9742 * fileio.c (Fsubstitute_in_file_name): If the file name includes
9743 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 9744
048addec 9745 * floatfns.c (Fround): Doc fix.
3c1e6b46 9746
048addec 97472002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 9748
048addec 9749 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 9750
048addec 97512002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 9752
048addec 9753 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 9754
048addec 97552002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 9756
048addec
JD
9757 * keymap.c (where_is_internal): Only check whether definition is
9758 remapped if it fulfills is_command_symbol.
0065bb74 9759
048addec 97602002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 9761
048addec 9762 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 9763
048addec 9764 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 9765
048addec 97662002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 9767
048addec
JD
9768 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
9769 defining command remapping. Doc updated.
9770 (Flookup_key): Remap command through keymap if KEY is a symbol.
9771 (is_command_symbol): New function.
9772 (Fkey_binding): Use it. New optional argument NO-REMAP.
9773 Doc updated. Callers changed. Perform command remapping via
9774 recursive call unless that arg is non-nil.
9775 (where_is_internal): New argument no_remap. Callers changed.
9776 Call recursively to find original key bindings for a remapped
9777 comand unless that arg is non-nil.
9778 (Fwhere_is_internal): New optional argument NO-REMAP.
9779 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 9780
048addec
JD
9781 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
9782 (is_command_symbol): Added prototype.
0d8466cc 9783
048addec
JD
9784 * keyboard.c (Vthis_original_command): New variable.
9785 (syms_of_keyboard): DEFVAR_LISP it.
9786 (command_loop_1): Set it, and perform command remapping.
15fff01d 9787
048addec 97882002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 9789
048addec 9790 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 9791
048addec 97922002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 9793
048addec 9794 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 9795
048addec 97962002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 9797
048addec 9798 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 9799
048addec 98002002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 9801
048addec 9802 * filelock.c (S_ISLNK): Define if not defined.
3a232704 9803
048addec 98042002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 9805
048addec 9806 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 9807
048addec
JD
9808 * lread.c (read1): Redesign strategy for force_multibyte and
9809 force_singlebyte. Now is_multibyte records whether read_buffer
9810 is multibyte. Encountering any multibyte character makes it so.
4e02881b 9811
048addec 98122002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 9813
048addec
JD
9814 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
9815 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 9816
048addec 98172002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 9818
048addec
JD
9819 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
9820 latter never being defined on GNU/Linux.
749f499f 9821
048addec 98222002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 9823
048addec
JD
9824 * xfaces.c (realize_default_face): Don't set the weight and slant of
9825 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 9826
048addec 98272002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 9828
048addec
JD
9829 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
9830 Call cancel_hourglass unconditionally.
d0fd26dd 9831
048addec
JD
9832 * eval.c (Fsignal): Remove duplicated declaration of
9833 the variable `display_hourglass_p'.
b4c45162 9834
048addec 98352002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 9836
048addec 9837 * editfns.c (region_limit): Nicer error message.
c95eaa61 9838
048addec
JD
9839 * coding.c (decode_composition_emacs_mule):
9840 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 9841
048addec
JD
9842 * callint.c (check_mark): New arg to specify clearer error message.
9843 Callers changed.
c95eaa61 9844
048addec 98452002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 9846
048addec 9847 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 9848
048addec 98492002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 9850
048addec
JD
9851 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
9852 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
9853 Fix doc-strings.
c95eaa61 9854
048addec 98552002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 9856
048addec 9857 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 9858
048addec
JD
9859 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
9860 and scroll_up_aggressively.
c95eaa61 9861
048addec 98622002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 9863
048addec 9864 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 9865
048addec 98662002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 9867
048addec
JD
9868 * textprop.c (Fnext_property_change, Fnext_single_property_change)
9869 (Fprevious_property_change, Fprevious_single_property_change):
9870 Stay within the narrowed-buffer boundaries.
e2c3786a 9871
048addec 98722002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 9873
048addec
JD
9874 * term.c (Ftty_display_color_cells): New function.
9875 (syms_of_term): Defsubr it.
9876 (Ftty_display_color_cells, Ftty_display_color_p): Change the
9877 argument name to DISPLAY. Doc fix.
bf794306 9878
048addec
JD
9879 * dispextern.h: Add prototype for set_tty_color_mode and
9880 tty_setup_colors.
bf794306 9881
048addec 98822002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 9883
048addec
JD
9884 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
9885 If region left to draw is not what was expected, mark the frame as
9886 garbaged.
62582985 9887
048addec
JD
9888 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
9889 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 9890
048addec 98912002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 9892
048addec
JD
9893 * w32term.c (x_update_window_begin): Only hide caret if
9894 w32_use_visible_system_caret is set.
9895 (x_update_window_end): Only show caret if
9896 w32_use_visible_system_caret is set.
9897 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 9898
048addec 9899 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 9900
048addec 99012002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 9902
048addec
JD
9903 * unexelf.c (unexec): Define n so as to cause compilation error
9904 for the code where people have often written n instead of nn.
1e9a6186 9905
048addec 9906 * .gdbinit (hookpost-run): Defined.
1e9a6186 9907
048addec 99082002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 9909
048addec 9910 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 9911
048addec 99122002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 9913
048addec
JD
9914 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
9915 if fullscreen is being set.
7c75be36 9916
048addec 99172002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 9918
048addec
JD
9919 * minibuf.c (Fminibuffer_contents)
9920 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
9921 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 9922
048addec 99232002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 9924
048addec 9925 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 9926
048addec 99272002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 9928
048addec
JD
9929 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
9930 height before comparison.
9931 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 9932
048addec 99332002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 9934
048addec
JD
9935 * w32term.c (w32_system_caret_width): Remove.
9936 (w32_use_visible_system_caret): New user flag.
9937 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
9938 Windows reports a screen reader running.
9939 (x_update_window_begin): Hide the system caret.
9940 (x_update_window_end): Show the system caret.
9941 (x_display_and_set_cursor): Don't draw a cursor when
9942 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 9943
048addec
JD
9944 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
9945 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
9946 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
9947 the user requests it. Use system default width when creating.
9948 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 9949
048addec
JD
9950 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
9951 New window messages.
905cc05a 9952
048addec 99532002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 9954
048addec 9955 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 9956
048addec 99572002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 9958
048addec 9959 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 9960
048addec 99612002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 9962
048addec 9963 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 9964
048addec 99652002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 9966
048addec
JD
9967 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
9968 that Windows returns. If a double check fails, try to guess how
9969 ExtTextOut is going to act.
4d0fa4f3 9970
048addec
JD
9971 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
9972 in place of stricmp.
9973 (w32_list_synthesized_fonts): Removed.
9974 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
9975 (struct enumfont_t): New element; list.
9976 (enum_font_cb2): List all style and charset variations of a font.
9977 (Fw32_select_font): New optional argument; include_proportional.
9978 Exclude vertical fonts. Exclude proportional fonts unless
9979 include_proportional is non-nil.
9980 (w32_enable_synthesized_fonts): Change to a boolean.
9981 (Fw32_send_sys_command): Doc fix.
493faf20 9982
048addec 99832002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 9984
048addec
JD
9985 * dispnew.c (update_frame): Move the variable `tem' to the block
9986 where it is used.
4971e491 9987
048addec 99882002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 9989
048addec
JD
9990 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
9991 call to face-set-after-frame-default.
4971e491 9992
048addec 99932002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 9994
048addec
JD
9995 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
9996 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 9997
048addec 99982002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 9999
048addec
JD
10000 * window.c (enlarge_window): When exceeding size of parent,
10001 directly delete all the siblings instead of trying to resize it.
201c831a 10002
048addec 100032002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 10004
048addec 10005 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 10006
048addec 100072002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 10008
048addec 10009 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 10010
048addec 100112002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 10012
048addec
JD
10013 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
10014 is invisible. This can happen if cursor is on top line of a
10015 window, and we switch to a buffer with a header line.
d77fbc16 10016
048addec 10017 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 10018
048addec 100192002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 10020
048addec
JD
10021 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
10022 `dont_resize' only when used.
61e3b944 10023
048addec 10024 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 10025
048addec 100262002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 10027
048addec
JD
10028 * xdisp.c (display_mode_element): When computing charpos, depend
10029 on multibyteness of elt, not the text in field.
8af01033 10030
048addec 100312002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 10032
048addec
JD
10033 * buffer.c (Fkill_all_local_variables):
10034 Increment `update_mode_lines' only once.
7363986a 10035
048addec 100362002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 10037
048addec
JD
10038 * lisp.h (adjust_after_replace_noundo)
10039 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 10040
048addec 10041 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 10042
048addec 100432002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 10044
048addec
JD
10045 Support for the --color command-line argument and tty-color-mode
10046 frame parameter:
f1a85b89 10047
048addec
JD
10048 * term.c (tty_default_color_capabilities, tty_setup_colors)
10049 (set_tty_color_mode): New functions.
10050 (term_init): Call tty_default_color_capabilities.
10051 (Qtty_color_mode_alist): New variable.
10052 (syms_of_term): Intern and staticpro it.
f1a85b89 10053
048addec
JD
10054 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
10055 frames.
10056 (do_switch_frame): For termcap frames, switch the tty
10057 color mode as specified by the frame's parameters.
10058 (Qtty_color_mode): New variable.
10059 (syms_of_frame): Intern and staticpro it.
3a62677f 10060
048addec
JD
10061 * emacs.c (USAGE2): Add the --color option.
10062 (standard_args): Ditto.
72244db2 10063
048addec
JD
100642002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10065
10066 * xterm.h (struct x_output): New members want_fullscreen,
10067 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
10068 y_pixels_outer_diff.
10069 New enum for FULLSCREEN_* constants.
10070 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
10071 is NULL.
10072 (x_fullscreen_adjust): Add prototype.
3a62677f 10073
048addec
JD
10074 * emacs.c (USAGE2): Add the new full-screen arguments.
10075 (standard_args): Ditto.
3a62677f 10076
048addec
JD
10077 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10078 New variables.
10079 (syms_of_xfns): Intern and staticpro them.
10080 (x_frame_parms) <"fullscreen">: New parameter.
10081 (x_fullscreen_move, x_set_fullscreen): New functions.
10082 (x_set_frame_parameters): Support for Qfullscreen.
10083 (x_real_positions): More accurate computation of the frame position.
10084 (x_figure_window_size): Support full-screen frames.
10085 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 10086
048addec
JD
10087 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
10088 (XTread_socket) <Expose>: Call x_check_fullscreen.
10089 <ConfigureNotify>: Don't resize to fullscreen.
10090 Call x_check_fullscreen_move, and set the want_fullscreen member of
10091 output_data.x.
3a62677f 10092
048addec 100932002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 10094
048addec
JD
10095 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
10096 for mice with more than 3 buttons.
b8523839 10097
048addec
JD
10098 * w32term.c (parse_button): New parameter xbutton. Callers changed.
10099 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 10100
048addec
JD
10101 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
10102 (syms_of_w32fns): DEFVAR_BOOL it.
10103 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 10104
048addec 101052002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 10106
048addec 10107 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 10108
048addec 101092002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 10110
048addec 10111 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 10112
048addec 101132002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 10114
048addec
JD
10115 * .gdbinit (xbuffer): Remove address operator since data is now a
10116 pointer.
c93674bb 10117
048addec 101182002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 10119
048addec 10120 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 10121
048addec 10122 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 10123
048addec 101242002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 10125
048addec
JD
10126 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
10127 when checking for multiple frames.
91175673 10128
048addec 101292002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 10130
048addec
JD
10131 * window.c (delete_window): Rewrite the code for changing the
10132 selected window to handle the case where WINDOW is not a leaf.
91175673 10133
048addec 101342002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 10135
048addec
JD
10136 * process.c (send_process): Set src_multibyte to 1 after the call
10137 top setup_coding_system, not before the call.
e0fead5d 10138
048addec 101392002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 10140
048addec
JD
10141 * xmenu.c (set_frame_menubar, xmenu_show):
10142 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 10143
048addec
JD
10144 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
10145 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 10146
048addec 101472002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 10148
048addec 10149 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 10150
048addec 10151 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 10152
048addec 10153 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 10154
048addec 101552002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 10156
048addec
JD
10157 * insdel.c (make_gap_larger): Make sure buffer size does not
10158 overflow range of int.
62854fe2 10159
048addec 101602002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 10161
048addec
JD
10162 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
10163 OVERLAPS_P.
656f46bb 10164
048addec 10165 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 10166
048addec
JD
10167 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
10168 to the left or to the right of the pointer, put it against
10169 the left screen edge.
10170 (x_frame_parms): Add missing braces around initializer.
036e218d 10171
048addec
JD
10172 * w32term.c (x_setup_relief_colors): Don't compute an image's
10173 background color if it doesn't have a Pixmap.
10174 (notice_overwritten_cursor): Don't depend on
10175 output_cursor and updated_area. Compare pixel coordinates with
10176 window's cursor pixel coordinates.
10177 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
10178 Call notice_overwritten_cursor with new arg list.
10179 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
10180 unconditionally.
10181 (x_draw_image_relief): Use predefined macro instead of
10182 constant when the value of `tool_bar_button_relief' is negative.
036e218d 10183
048addec 10184 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 10185
048addec 101862002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 10187
048addec 10188 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 10189
048addec 101902002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 10191
048addec
JD
10192 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
10193 (Fkey_binding): Try the `keymap' property map first.
10194 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
10195 minor mode bindings.
90647b07 10196
048addec 101972002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 10198
048addec 10199 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 10200
048addec 102012002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 10202
048addec
JD
10203 * keyboard.c (read_key_sequence): Handle the keymap property
10204 before minor mode maps.
9fbc32aa 10205
048addec
JD
10206 * editfns.c (Fformat): Update thissize from field_width
10207 based on the actual width, in the string case.
036e218d 10208
048addec 102092002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 10210
048addec
JD
10211 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
10212 when used as truth value to prevent gcc warnings.
9fbc32aa 10213
048addec
JD
10214 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
10215 * w32proc.c: Include <config.h>.
9fbc32aa 10216
048addec 102172002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 10218
048addec
JD
10219 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
10220 not EMACS_INT, to make them compatible with DEFVAR_INT.
10221 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 10222
048addec 102232002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 10224
048addec
JD
10225 * print.c (print_object): Test print_escape_nonascii only for
10226 unibyte strings.
10227 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
10228 when outputting to a multibyte buffer.
9fbc32aa 10229
048addec 102302001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 10231
048addec
JD
10232 * print.c (print_object): In multibyte string, use hex escapes.
10233 Use octal only for unibyte strings.
10234 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 10235
048addec
JD
10236 * lread.c (read_escape): New arg BYTEREP for reporting whether
10237 escape forces unibyte or multibyte.
10238 (read1): When reading a string, take note of that info.
0142178a 10239
048addec 102402001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 10241
048addec
JD
10242 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
10243 comparison to test lisp value returned by Fget.
d4824a5d 10244
048addec 102452001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 10246
048addec 10247 * lisp.h (max_specpdl_size): Add declaration.
b1356234 10248
048addec 10249 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 10250
048addec
JD
10251 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
10252 Handle modifier bits. Correct typo in error message.
99e380ee 10253
048addec 102542001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 10255
048addec
JD
10256 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
10257 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
10258 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
10259 Update calls to Fdefine_abbrev.
10260 (write_abbrev): Update for changed data format.
10261 Don't list "system" abbrevs.
10262 (Fexpand_abbrev): Update use count with new data format.
10263 (describe_abbrev): Update for changed data format.
10264 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 10265
048addec 10266 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 10267
048addec 10268 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 10269
048addec
JD
10270 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
10271 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 10272
048addec
JD
10273 * keymap.c (Flookup_key): Error message if key has wrong data type.
10274 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
10275 (exclude_key): New variable.
59a86c99 10276
048addec 102772001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 10278
048addec
JD
10279 * xterm.c (x_setup_relief_colors): Don't compute an image's
10280 background color if it doesn't have a Pixmap.
eb77a5f4 10281
048addec
JD
10282 * xterm.c (notice_overwritten_cursor): Don't depend on
10283 output_cursor and updated_area. Compare pixel coordinates with
10284 window's cursor pixel coordinates.
10285 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
10286 Call notice_overwritten_cursor with new arg list.
10287 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
10288 unconditionally.
eb77a5f4 10289
048addec
JD
10290 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
10291 height of the cursor line to the amount to scroll.
eb77a5f4 10292
048addec 102932001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 10294
048addec
JD
10295 * intervals.c (set_point_both): The position after an invisible,
10296 intangible character is not an acceptable stopping point.
bb313871 10297
048addec 102982001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 10299
048addec
JD
10300 * window.c (enlarge_window): In new preserve_before code, convert
10301 CURBEG from lisp object to integer before doing arithmetic.
6052529b 10302
048addec 103032001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 10304
048addec 10305 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 10306
048addec 103072001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 10308
048addec
JD
10309 * keyboard.c (record_char): Ignore duplicate help-echo events only
10310 separated by mouse-movement. When tracking mouse, only record
10311 first and last mouse-movement event in same window.
10312 Don't record mouse-movement events in keyboard macros.
3ce081f5 10313
048addec 103142001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 10315
048addec
JD
10316 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
10317 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 10318
048addec
JD
10319 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
10320 instead of Fstring_as_unibyte.
9fabb2f5 10321
048addec 103222001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 10323
048addec 10324 The following changes remove mocklisp support:
9fabb2f5 10325
048addec 10326 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 10327
048addec
JD
10328 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
10329 `Qmocklisp' and `Qmocklisp_arguments'.
10330 Remove prototype of syms_of_mocklisp.
2fa0eedf 10331
048addec 10332 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 10333
048addec
JD
10334 * callint.c: Do not include mocklisp.h.
10335 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 10336
048addec
JD
10337 * eval.c: Remove variables `Qmocklisp_arguments',
10338 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
10339 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
10340 Do not test for mocklisp case.
10341 (Fwhile): Remove unused variable `tem'.
10342 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 10343
048addec 10344 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 10345
048addec 10346 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 10347
048addec 10348 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 10349
048addec 103502001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 10351
048addec
JD
10352 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
10353 to the left or to the right of the pointer, put it against
10354 the left screen edge.
6108b49c 10355
048addec 103562001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 10357
048addec
JD
10358 * Makefile.in (distclean): Remove .gdbinit if we are building
10359 outside the source tree.
5eea19a4 10360
048addec 103612001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 10362
048addec 10363 * w32.c (emacs_root_dir): New function.
5eea19a4 10364
048addec 10365 * msdos.c (emacs_root_dir): New function.
5eea19a4 10366
048addec
JD
10367 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
10368 of the current drive as the fallback for default_directory.
438e57dd 10369
048addec
JD
10370 * dired.c (file_name_completion): Run the elements of
10371 completion-ignored-extensions through ENCODE_FILE.
438e57dd 10372
048addec
JD
10373 * lisp.h (scmp): Remove prototype, since it's now a static
10374 function private to dired.c.
c88e5347 10375
048addec 103762001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 10377
048addec
JD
10378 * dired.c (scmp): Function moved from minibuf.c.
10379 Delete multibyte handling--used only on encoded strings.
59ce1461 10380
048addec 10381 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 10382
048addec 10383 * fns.c (merge): Add QUIT call.
59ce1461 10384
048addec 103852001-12-18 Dave Love <fx@gnu.org>
8727d588 10386
048addec
JD
10387 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
10388 language/georgian.el.
8727d588 10389
048addec 103902001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 10391
048addec
JD
10392 * Makefile.in (lisp, shortlisp): Synchronize with changes to
10393 lisp/Makefile.in:DONTCOMPILE.
cc63037e 10394
048addec 103952001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 10396
048addec
JD
10397 * xdisp.c (window_box_height): Do not return negative values.
10398 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 10399
048addec 10400 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 10401
048addec 10402 * term.c (keys): Likewise.
deece6f5 10403
048addec 10404 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 10405
048addec 104062001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 10407
048addec
JD
10408 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
10409 patch (COMPOSING_P, not COMPOSING).
28ff4293 10410
048addec 104112001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 10412
048addec 10413 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 10414
048addec
JD
10415 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
10416 before calling decode_coding.
9b46de40 10417
048addec 10418 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 10419
048addec
JD
10420 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
10421 instead of only for COMPOSITION_DISABLED.
9b46de40 10422
048addec 104232001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 10424
048addec 10425 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 10426
048addec 10427 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 10428
048addec
JD
10429 * buffer.h (struct buffer): New field `display_error_modiff'.
10430 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 10431
048addec 10432 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 10433
048addec
JD
10434 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
10435 Call redisplay_window, but not if display_error_modiff field says no.
10436 (redisplay_window_error): New function.
10437 (displayed_buffer): New variable.
10438 (redisplay_internal, redisplay_windows): Call the new functions
10439 instead of redisplay_window directly.
2cd23960 10440
048addec 104412001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 10442
048addec 10443 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 10444
048addec 104452001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 10446
048addec
JD
10447 * makefile.w32-in (EMACSLOADPATH): Define.
10448 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
10449 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 10450
048addec 104512001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 10452
048addec
JD
10453 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
10454 parameter have a numeric value all the time.
f6fa0866 10455
048addec 10456 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 10457
048addec 104582001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 10459
048addec 10460 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 10461
048addec
JD
10462 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
10463 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 10464
048addec 104652001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 10466
048addec
JD
10467 * xdisp.c (move_it_vertically_backward): Change heuristic
10468 for the case that we didn't move far enough initially.
91c153e2 10469
048addec
JD
10470 * window.c (Frecenter): Simplify computation in the case of window
10471 system frames and ARG < 0; use window_box_height.
65b7d3e7 10472
048addec 104732001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 10474
048addec
JD
10475 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
10476 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 10477
048addec 104782001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 10479
048addec
JD
10480 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
10481 arg is negative.
be676094 10482
048addec 104832001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 10484
048addec
JD
10485 * m/hp800.h: Split the __hpux conditional into the parts
10486 that are right for GNU/Linux too and the parts that are not.
10487 Use the former if GNU_LINUX.
10488 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 10489
048addec 10490 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 10491
048addec 104922001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 10493
048addec
JD
10494 * macros.c, msdos.c, w16select.c: Change doc-string comments to
10495 `new style' [w/`doc:' keyword].
032a857d 10496
048addec 104972001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 10498
048addec
JD
10499 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
10500 before using.
b6270150 10501
048addec 105022001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 10503
048addec
JD
10504 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
10505 keyword].
98cbb9fa 10506
048addec 105072001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 10508
048addec 10509 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 10510
048addec 10511 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 10512
048addec 105132001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 10514
048addec
JD
10515 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
10516 Add comment to explain where the struct came from.
10517 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
10518 (add_menu_item): Process pop-up menus first to avoid memory leak.
10519 (add_menu_item, w32_menu_display_help): Use `help' field as
10520 Lisp_Object.
10521 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 10522
048addec 105232001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 10524
048addec 10525 * COPYING: Moved back.
fa336b91 10526
048addec
JD
10527 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
10528 Add parentheses around && within ||.
077907d4 10529
048addec 10530 * indent.c (compute_motion): Likewise.
aa2af83a 10531
048addec 10532 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 10533
048addec
JD
10534 * coding.c (setup_coding_system, shrink_encoding_region)
10535 (Fdecode_sjis_char): Likewise.
60a653f1 10536
048addec 105372001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 10538
048addec
JD
10539 * xdisp.c (display_mode_element): Don't read past end of string if
10540 it ends with '%'.
60a653f1 10541
048addec
JD
10542 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
10543 can hold.
60a653f1 10544
048addec
JD
10545 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
10546 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
10547 type changed to Lisp_Object.
10548 (syms_of_data): DEFVAR_LISP them.
60a653f1 10549
048addec 105502001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 10551
048addec
JD
10552 * callproc.c (init_callproc): Set Vdata_directory based on the source
10553 location whenever Emacs was run uninstalled.
60a653f1 10554
048addec 105552001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 10556
048addec
JD
10557 * config.in (HAVE_WORKING_VFORK): New #undefs.
10558 * process.c (create_process):
10559 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
10560 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
10561 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
10562 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
10563 * m/intel386.h (HAVE_VFORK): Likewise.
10564 * m/mips-siemens.h (HAVE_VFORK): Likewise.
10565 * m/mips.h (HAVE_VFORK): Likewise.
10566 * s/freebsd.h (vfork): Remove #define.
10567 * s/lynxos.h (HAVE_VFORK): Remove #undef.
10568 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 10569
048addec 105702001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 10571
048addec
JD
10572 * s/hpux10.h (random): Add undef.
10573 (HAVE_RANDOM): Define it just once.
60a653f1 10574
048addec 105752001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10576
048addec 10577 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 10578
048addec 105792001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10580
048addec
JD
10581 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
10582 scroll bars of the frame before deleting the frame itself. If the
10583 frame has a widget, delete the frame with XtDestroyWidget, and do
10584 not call XDestroyWindow before that.
60a653f1 10585
048addec 105862001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 10587
048addec 10588 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 10589
048addec 10590 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 10591
048addec 105922001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 10593
048addec
JD
10594 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
10595 excessively large.
60a653f1 10596
048addec
JD
10597 * insdel.c (make_gap_larger): New function.
10598 (make_gap_smaller): New function.
10599 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
10600 Call make_gap_smaller if arg is negative.
60a653f1 10601
048addec 106022001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10603
048addec
JD
10604 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
10605 Pass a dummy argument when calling interrupt_signal.
10606 (parse_menu_item): Mark disabled items before checking for empty def.
10607 (read_char_minibuf_menu_prompt): Make safety more visible.
10608 (read_key_sequence): Add a `first_unbound' variable.
10609 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
10610 unbound prefix as soon as we can detect it.
60a653f1 10611
048addec
JD
10612 * doc.c (Fsnarf_documentation): Add prototype.
10613 (get_doc_string): Handle negative arguments.
10614 (Fdocumentation): Use AREF and ASIZE.
10615 Move the calls to get_doc_string to a single place.
10616 Don't confuse an interactive-spec for a docstring reference.
10617 (Fdocumentation_property): Take advantage of the fact that
10618 get_doc_string now ignores the sign of the docstring position.
60a653f1 10619
048addec 10620 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 10621
048addec 106222001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10623
048addec 10624 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief` an option.
60a653f1 10625
048addec 106262001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10627
048addec
JD
10628 * xterm.c (x_draw_image_relief): Use predefined macro instead of
10629 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 10630
048addec 106312001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 10632
048addec
JD
10633 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
10634 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 10635
048addec 10636 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 10637
048addec 106382001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10639
048addec 10640 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 10641
048addec 106422001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 10643
048addec 10644 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 10645
048addec 106462001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 10647
048addec 10648 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 10649
048addec
JD
10650 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
10651 [!WM_MOUSELEAVE]: Define.
60a653f1 10652
048addec
JD
10653 * w32menu.c (current_popup_menu, get_menu_item_info):
10654 (set_menu_item_info): New vars.
10655 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
10656 (w32_menu_show): Set current_popup_menu.
10657 (add_menu_item): Allocate new strings for owner-drawn menu items
10658 and help strings.
10659 Use owner-draw for disabled menu items again.
10660 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
10661 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 10662
048addec
JD
10663 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
10664 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
10665 <WM_EXITMENULOOP>: Free menu strings.
10666 <WM_MOUSELEAVE>: Stop tracking mouse.
10667 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 10668
048addec
JD
10669 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
10670 and mouse face.
60a653f1 10671
048addec 106722001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 10673
048addec
JD
10674 The following changes add left-fringe and right-fringe
10675 frame parameters to adjust fringe widths, or remove one or
10676 both fringes.
60a653f1 10677
048addec
JD
10678 * frame.h (struct frame): Remove trunc_area_pixel_width and
10679 trunc_area_cols fields.
10680 (Qleft_fringe, Qright_fringe): Declare.
10681 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 10682
048addec
JD
10683 * frame.c (Qleft_fringe, Qright_fringe): New vars.
10684 (syms_of_frame): Initialize them.
60a653f1 10685
048addec
JD
10686 * window.c (coordinates_in_window): Handle separate left and right
10687 fringe widths.
60a653f1 10688
048addec
JD
10689 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
10690 and fringe_cols fields.
10691 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
10692 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
10693 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
10694 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
10695 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
10696 (x_compute_fringe_widths): Add prototype.
60a653f1 10697
048addec
JD
10698 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
10699 fill fringe evenly with small dashes.
10700 (x_draw_fringe_bitmap): Clear background if necessary. Align and
10701 clip the new ZV bitmap to avoid jitter between rows.
10702 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
10703 background. Don't draw fringe bitmaps if fringe width is zero.
10704 (x_compute_fringe_widths): New function.
10705 (x_new_font, x_set_window_size_1): Use it.
60a653f1 10706
048addec
JD
10707 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
10708 (x_set_frame_parameters): Process `font' parameter before other
10709 parameters as fringe widths depend on it.
10710 (x_set_fringe_width): New function.
10711 (x_figure_window_size): Use x_compute_fringe_widths.
10712 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
10713 parameters.
60a653f1 10714
048addec
JD
10715 * widget.c (set_frame_size): Use x_compute_fringe_widths.
10716 (EmacsFrameSetCharSize): Ditto.
60a653f1 10717
048addec
JD
10718 * w32term.h: Merged changes from xterm.h.
10719 * w32term.c: Merged changes from xterm.c.
10720 * w32fns.c: Merged changes from xfns.c.
60a653f1 10721
048addec 107222001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10723
048addec 10724 * COPYING: Removed.
60a653f1 10725
048addec 107262001-11-29 Dave Love <fx@gnu.org>
60a653f1 10727
048addec
JD
10728 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
10729 extra extra slot.
10730 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 10731
048addec 107322001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10733
048addec
JD
10734 * fileio.c (file-name-coding-system)
10735 (default-file-name-coding-system): Doc fix (links to referenced
10736 variables added).
60a653f1 10737
048addec 107382001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10739
048addec
JD
10740 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
10741 Add dummy uses of gcproN variables.
60a653f1 10742
048addec
JD
10743 * category.c (describe_category, describe_category_1)
10744 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
10745 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 10746
048addec 107472001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 10748
048addec 10749 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 10750
048addec
JD
10751 * Makefile.in (lispdir): New variable, referring to build dir.
10752 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 10753
048addec 107542001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 10755
048addec
JD
10756 * w32menu.c (w32_menu_display_help): Actually add the new argument
10757 OWNER.
60a653f1 10758
048addec 107592001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 10760
048addec
JD
10761 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
10762 menu items. From David Ponce <dponce@wanadoo.fr>.
10763 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
10764 conditionally.
10765 (w32_menu_display_help): New argument OWNER. Rewritten to store a
10766 help event in the owner frame's keyboard buffer.
60a653f1 10767
048addec
JD
10768 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
10769 (Fx_show_tip): Don't subtract last width from row width.
10770
10771 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
10772 (w32_read_socket): Use EQ to compare frames.
60a653f1 10773
048addec 107742001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 10775
048addec
JD
10776 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
10777 OVERLAPS_P.
60a653f1 10778
048addec 107792001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10780
048addec
JD
10781 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
10782 `gcpro3' and `gcpro4'.
60a653f1 10783
048addec 10784 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 10785
048addec 107862001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10787
048addec 10788 * ccl.c: Use AREF and ASIZE.
60a653f1 10789
048addec 107902001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10791
048addec
JD
10792 * lisp.h (run_hook_list_with_args): Remove.
10793 (LIST_END_P): Fix call to wrong_type_argument.
10794 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 10795
048addec 107962001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10797
048addec
JD
10798 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
10799 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 10800
048addec
JD
10801 * eval.c: Use AREF and ASIZE.
10802 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 10803
048addec
JD
10804 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
10805 which match the end of the file-name.
10806 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
10807 is not a valid env var, but leave it as is instead.
60a653f1 10808
048addec
JD
10809 * keymap.c (access_keymap): Handle t bindings like nil bindings.
10810 Make nil bindings in char-tables transparent.
10811 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 10812
048addec 108132001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 10814
048addec
JD
10815 * textprop.c (set_text_properties_1): Allow START, END in either order.
10816 Do nothing if range is empty.
60a653f1 10817
048addec 10818 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 10819
048addec
JD
10820 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
10821 (clean): Not here.
60a653f1 10822
048addec 108232001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10824
048addec
JD
10825 * textprop.c (set_text_properties_1): Clearly mark that the
10826 interval should not be empty.
60a653f1 10827
048addec
JD
10828 * intervals.c (graft_intervals_into_buffer):
10829 Don't call set_text_properties_1 on an empty interval.
60a653f1 10830
048addec 108312001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 10832
048addec 10833 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 10834
048addec
JD
10835 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
10836 don't lose the data in it.
60a653f1 10837
048addec 108382001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 10839
048addec 10840 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 10841
048addec 10842 * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
60a653f1 10843
048addec 10844 * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
60a653f1 10845
048addec 108462001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10847
048addec 10848 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 10849
048addec 108502001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10851
048addec
JD
10852 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
10853 Niemitalo <kon@iki.fi>.
60a653f1 10854
048addec 108552001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 10856
048addec 10857 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 10858
048addec
JD
10859 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
10860 (Fx_show_tip): Block input during frame creation.
10861 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 10862
048addec 108632001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 10864
048addec
JD
10865 * lread.c (Fload): Detect recursive load error for more than 3
10866 nestings of the same file.
10867 (Vrecursive_load_depth_limit): Variable deleted.
10868 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 10869
048addec 108702001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 10871
048addec
JD
10872 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
10873 mouse position if either left or top is not specified.
60a653f1 10874
048addec
JD
10875 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
10876 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
10877 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
10878 (my_create_tip_window): Assign tip_window.
10879 (x_create_tip_frame): Use same defaults as X.
10880 (compute_tip_xy): Remove unused variable. Use full screen width.
10881 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 10882
048addec
JD
10883 * w32term.c (x_after_update_window_line): Doc fix.
10884 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
10885 frames.
10886 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 10887
048addec
JD
10888 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
10889 for all Windowed systems.
60a653f1 10890
048addec 108912001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10892
048addec
JD
10893 * msdos.c (IT_clear_screen): If the frame's faces are not yet
10894 realized, use the initial screen colors to clear the screen.
60a653f1 10895
048addec 108962001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10897
048addec
JD
10898 * textprop.c (Fset_text_properties): Remove unused variables
10899 `unchanged', `prev_changed', `s' and `len'.
60a653f1 10900
048addec
JD
10901 * search.c (Freplace_match): Remove unused variable `inslen'.
10902
10903 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
10904
109052001-11-22 Jason Rumney <jasonr@gnu.org>
10906
10907 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
10908 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
10909 (my_create_tip_window): New function.
10910 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
10911 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
10912
109132001-11-20 Jason Rumney <jasonr@gnu.org>
10914
10915 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
10916 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
10917
10918 * w32fns.c (Vw32_system_coding_system): Remove.
10919 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
10920
109212001-11-19 Stefan Monnier <monnier@cs.yale.edu>
10922
10923 * fileio.c (Fwrite_region): Move choose_write_coding_system to
10924 after build_annotations.
10925
10926 * syntax.c (describe_syntax): Add dummy arg.
10927 (describe_syntax_1): Update call to describe_vector.
10928
10929 * category.c (describe_category): Add dummy arg.
10930 (describe_category_1): Update call to describe_vector.
10931
10932 * keymap.c (Fdescribe_vector): Add `describer' parameter.
10933 (describe_command, describe_translation): Add dummy second param.
10934 (describe_map): Call elt_describer with two arguments.
10935 (describe_vector_princ): Add `fun' parameter.
10936 Call it instead of the hardcoded `princ'.
10937 (describe_vector): Add arg `args'.
10938 Pass it as a new second argument to elt_describer.
60a653f1 10939
048addec 10940 * keymap.h (describe_vector): Update prototype.
60a653f1 10941
048addec
JD
10942 * frame.c: Don't include keymap.h any more.
10943 (keys_of_frame): Remove.
60a653f1 10944
048addec 10945 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 10946
048addec 10947 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 10948
048addec 109492001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 10950
048addec
JD
10951 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
10952 if defined, 0 otherwise.
10953 (MAP_FAILED): Define if not defined and use it to test mmap failure.
10954 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 10955
048addec 109562001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 10957
048addec 10958 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 10959
048addec 109602001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 10961
048addec
JD
10962 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
10963 (x_draw_bar_cursor): If the background color of the glyph under
10964 the cursor equals the frame's cursor color, use the glyph's
10965 foreground color for drawing the bar cursor.
10966 (x_after_update_window_line): Clear internal border in different
10967 circumstances.
10968 (w32_set_vertical_scroll_bar): Check for width and height > 0.
10969 (w32_draw_relief_rect): Correct relief by 1 pixel.
10970 (x_set_glyph_string_background_width):
10971 Set extends_to_end_of_line_p if the row's fill_line_p is set and
10972 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
10973 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
10974 if cursor_in_non_selected_windows is false.
10975 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
10976 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
10977 Notice if cursor gets overwritten.
10978 (notice_overwritten_cursor): Renamed from
10979 note_overwritten_text_cursor. Rewritten to take glyph widths
10980 into account, and to take X positions as parameters.
10981 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
10982 around call to x_draw_glyphs.
10983 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
10984 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
10985 color to use for image glyph reliefs.
10986 (x_draw_image_relief): Accept zero tool_bar_button_relief.
10987 (glyph_rect): Remove unused variable `area'.
60a653f1 10988
048addec
JD
10989 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
10990 some items.
10991 (x_set_internal_border_width): Set frame garbaged when window
10992 doesn't exist yet.
10993 (Fx_create_frame): Accept zero tool_bar_button_relief.
10994 (x_clear_image_1, four_corners_best, image_background)
10995 (image_background_transparent): New functions.
10996 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
10997 (gs_format): Add `:background' entry.
10998 (lookup_image): Set IMG's background color if specified.
10999 (pbm_load, xbm_load_image, png_load): Set IMG's background field
11000 when appropriate.
11001 (x_clear_image_1): Reset `background_valid' and
11002 `background_transparent_valid' fields.
11003 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
11004 calculating it here. Set IMG's background_transparent field.
11005 (enum xpm_keyword_index): Add XPM_BACKGROUND.
11006 (enum png_keyword_index): Add PNG_BACKGROUND.
11007 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
11008 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
11009 (enum gif_keyword_index): Add GIF_BACKGROUND.
11010 (enum gs_keyword_index): Add GS_BACKGROUND.
11011 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
11012 Pre-calculate image background color where necessary.
11013 (x_create_x_image_and_pixmap, xbm_load, gs_load):
11014 Use display info's n_cbits entry for screen depth.
11015 (Fx_show_tip): Remove unused variables `buffer', `top',
11016 `left', `max_width' and `max_height'.
60a653f1 11017
048addec 11018 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 11019
048addec 110202001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 11021
048addec 11022 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 11023
048addec 110242001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11025
048addec 11026 * frame.c (Fframe_live_p): Doc fix.
60a653f1 11027
048addec 110282001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 11029
048addec
JD
11030 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
11031 (message_dolog_marker3): New static variables hold three markers.
11032 (syms_of_xdisp): Initialize and staticpro them.
11033 (message_dolog): Use message_dolog_marker1..3 instead of
11034 allocating markers each time. Unchain them when done.
60a653f1 11035
048addec 110362001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11037
048addec 11038 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 11039
048addec 110402001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 11041
048addec 11042 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 11043
048addec 110442001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11045
048addec 11046 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 11047
048addec 110482001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 11049
048addec 11050 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 11051
048addec 110522001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 11053
048addec
JD
11054 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
11055 with invalid position.
60a653f1 11056
048addec 110572001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 11058
048addec 11059 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 11060
048addec
JD
11061 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
11062 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
11063 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 11064
048addec 11065 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 11066
048addec 110672001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11068
048addec
JD
11069 * fileio.c (build_annotations): Split off the tail.
11070 (build_annotations_2): New fun. Extracted from build_annotations.
11071 (Fwrite_region): Split the call to build_annotations into two
11072 calls to build_annotations and build_annotations_2.
077907d4 11073
048addec 110742001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 11075
048addec
JD
11076 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
11077 clear_waiting_for_input with argument.
1756e2fb 11078
048addec 11079 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 11080
048addec 11081 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 11082
048addec 11083 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 11084
048addec 11085 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 11086
048addec 110872001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 11088
048addec
JD
11089 * fileio.c (choose_write_coding_system): New fun, extracted
11090 from Fwrite_region.
11091 (Fwrite_region): Use it.
fa336b91 11092
048addec
JD
11093 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
11094 (funcall_lambda, run_hook_with_args): Make static and add prototype.
11095 (ml_apply, find_handler_clause): Add prototype.
fa336b91 11096
048addec 110972001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 11098
048addec 11099 * config.in: Add #undef HAVE_COFF_H.
fa336b91 11100
048addec
JD
11101 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
11102 Required for ISC 4.1.
fa336b91 11103
048addec 111042001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 11105
048addec
JD
11106 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
11107 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 11108
048addec 111092001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 11110
048addec
JD
11111 The following changes are made to clean up the various internal
11112 references to the fringes to actually use the term `fringe' for
11113 them. Previously, they were called `flags areas', `bitmap areas',
11114 `left/right side of windows', or implicitly as `flags' or
11115 `bitmaps':
fa336b91 11116
048addec
JD
11117 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
11118 Comments fixed. Use renamed symbols.
06e8f738 11119
048addec 11120 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 11121
048addec
JD
11122 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
11123 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
11124 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 11125
048addec 11126 * msdos.c: Comment fix.
9ce647f4 11127
048addec 11128 * w32fns.c: Use renamed symbols.
9b784ab8 11129
048addec
JD
11130 * w32term.c: Comment fixes. Use renamed symbols.
11131 (fringe_bitmap_type): Renamed from bitmap_type.
11132 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11133 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
11134 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 11135
048addec
JD
11136 * w32term.h: Comment fixes. Use renamed symbols.
11137 (fringes_extra): Renamed from flags_areas_extra.
11138 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11139 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11140 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11141 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11142 (FRAME_X_LEFT_FRINGE_WIDTH):
11143 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11144 (FRAME_X_RIGHT_FRINGE_WIDTH):
11145 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 11146
048addec 11147 * widget.c: Use renamed symbols.
9f7e52b4 11148
048addec
JD
11149 * window.c: Comment fixes. Use renamed symbols.
11150 (coordinates-in-window-p): Doc fix.
fa336b91 11151
048addec 11152 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 11153
048addec 11154 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 11155
048addec 11156 * xfns.c: Use renamed symbols.
89512fcd 11157
048addec
JD
11158 * xterm.c: Comment fixes. Use renamed symbols.
11159 (fringe_bitmap_type): Renamed from bitmap_type.
11160 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11161 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
11162 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 11163
048addec
JD
11164 * xterm.h: Comment fixes. Use renamed symbols.
11165 (fringes_extra): Renamed from flags_areas_extra.
11166 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11167 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11168 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11169 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11170 (FRAME_X_LEFT_FRINGE_WIDTH):
11171 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11172 (FRAME_X_RIGHT_FRINGE_WIDTH):
11173 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
11174
111752001-11-15 Jason Rumney <jasonr@gnu.org>
11176
11177 * w32menu.c (add-menu-item): Make help_echo and radio buttons
11178 work for most menu items. From David Ponce
11179 <david.ponce@wanadoo.fr>.
11180
111812001-11-15 Gerd Moellmann <gerd@gnu.org>
11182
11183 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
11184 Some x_set_* function expect to be called even if old and new
11185 value are equal.
11186
11187 * xdisp.c (build_desired_tool_bar_string): Accept zero
11188 tool_bar_button_relief.
11189
11190 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
11191
11192 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
11193
11194 * xterm.c (x_draw_bar_cursor): If the background color of the
11195 glyph under the cursor equals the frame's cursor color, use
11196 the glyph's foreground color for drawing the bar cursor.
11197
11198 * dispnew.c (direct_output_forward_char): Fix character/byte
11199 position comparison.
7d18891d 11200
048addec 112012001-11-15 Miles Bader <miles@gnu.org>
d2936d21 11202
048addec
JD
11203 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
11204 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
11205 Update arguments to find_field.
11206 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
11207 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
11208 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
11209 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 11210
048addec 112112001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 11212
048addec 11213 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 11214
048addec
JD
11215 * dispextern.h (image_background, image_background_transparent):
11216 Conditionalize on HAVE_X_WINDOWS.
7d18891d 11217
048addec 112182001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 11219
048addec 11220 * print.c (Fprin1_to_string): Doc fix.
7d18891d 11221
048addec 11222 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 11223
048addec 11224 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 11225
048addec 11226 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 11227
048addec 11228 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 11229
048addec 11230 * eval.c (syms_of_eval): Doc fix.
7d18891d 11231
048addec 11232 * coding.c (syms_of_coding): Doc fix.
7d18891d 11233
048addec 11234 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 11235
048addec 11236 * dispnew.c (syms_of_display): Doc fix.
9474c847 11237
048addec 11238 * category.c (Fget_unused_category): Doc fix.
9474c847 11239
048addec 11240 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 11241
048addec 112422001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 11243
048addec 11244 * print.c (prin1, print): Doc fix.
e3059a5d 11245
048addec 112462001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 11247
048addec
JD
11248 * fontset.h: Remove declarations of variables
11249 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 11250
048addec
JD
11251 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
11252 `Vclip_large_size_font'.
eae936e2 11253
048addec 112542001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 11255
048addec 11256 * w32fns.c: Doc fix.
ddb67bdc 11257
048addec 112582001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 11259
048addec 11260 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 11261
048addec 11262 * fns.c: Doc fix.
6e1b91d7 11263
048addec 11264 * emacs.c: Doc fix.
1c1d3d69 11265
048addec 11266 * coding.c: Doc fix.
1c1d3d69 11267
048addec
JD
11268 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
11269 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
11270 `new style' [w/`doc:' keyword].
b6f4c7ba 11271
048addec 112722001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 11273
048addec
JD
11274 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
11275 LeaveNotify events. Only FocusIn and FocusOut do that now.
11276 (x_display_and_set_cursor): Do display hollow cursors in active
11277 minibuffer windows when they are not selected.
b6f4c7ba 11278
048addec 112792001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 11280
048addec
JD
11281 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
11282 * w32term.c: Change doc-string comments to `new style'.
11283 [w/`doc:' keyword]. Doc fixes.
a89f435d 11284
048addec
JD
11285 * w32fns.c: Don't define max.
11286 (Fx_open_connection): Only execute once.
a4cd0cd7 11287
048addec 112882001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 11289
048addec
JD
11290 * ccl.c: Change macros to use do-while block instead of if-else.
11291 Use braces to follow GNU Coding Standards.
eafb659a 11292
048addec 112932001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 11294
048addec 11295 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 11296
048addec 11297 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 11298
048addec
JD
11299 * insdel.c (replace_range): Use adjust_markers_for_replace
11300 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 11301
048addec 11302 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 11303
048addec
JD
11304 * textprop.c (set_text_properties_1): New subroutine
11305 broken out of set_text_properties.
11306 (set_text_properties): Use set_text_properties_1.
91823618 11307
048addec
JD
11308 * intervals.c (graft_intervals_into_buffer):
11309 Use set_text_properties_1 to clear out properties.
91823618 11310
048addec
JD
11311 * search.c (Freplace_match): Use replace_range to insert
11312 and delete. Don't request property inheritance from
11313 surrounding text.
86928dfb 11314
048addec 113152001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 11316
048addec
JD
11317 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
11318 vertical fonts. Allow them if face name is explicitly specified.
11319 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 11320
048addec 113212001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 11322
048addec
JD
11323 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
11324 instead of malloc/free.
a78e0303 11325
048addec 113262001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 11327
048addec
JD
11328 * xfaces.c (merge_face_vectors): Use braces to follow GNU
11329 Coding Standards.
11330 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 11331
048addec 11332 * buffer.c (Fbury_buffer): Likewise.
0c99b139 11333
048addec 11334 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 11335
048addec
JD
11336 * coding.c (encode_coding): Use precomputed value of `src'.
11337 (encode_coding): Remove unused variable `src_end'.
11338 (code_convert_region): Remove unused variables `count'.
830ddd77 11339
048addec 113402001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 11341
048addec
JD
11342 * w32term.c (x_display_and_set_cursor): Do not move system caret
11343 if cursor_glyph is NULL.
55c6d645 11344
048addec 113452001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 11346
048addec 11347 * keymap.c (access_keymap): Fix compilation error.
5de38842 11348
048addec 113492001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 11350
048addec 11351 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 11352
048addec 113532001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 11354
048addec
JD
11355 * intervals.c (graft_intervals_into_buffer):
11356 Remove #ifdef'd-out code.
11357 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 11358
048addec
JD
11359 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
11360 code (eval-current-buffer).
11361 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 11362
048addec 113632001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 11364
048addec 11365 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 11366
048addec 113672001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 11368
048addec 11369 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 11370
048addec
JD
11371 * keyboard.c (make_lispy_event): Check integerness and fix
11372 Lisp_Object/int mixup.
17893c65 11373
048addec 113742001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 11375
048addec 11376 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 11377
048addec
JD
11378 * fontset.c (fontset_font_pattern): Remove unused variable
11379 `family_registry'.
d5360cc7 11380
048addec 11381 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 11382
048addec 113832001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 11384
048addec 11385 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 11386
048addec
JD
11387 * buffer.c (Fkill_buffer): Don't delete auto save file
11388 if buffer is modified.
d9d54213 11389
048addec 113902001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 11391
048addec
JD
11392 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
11393 CHECK_NUMBER_CDR.
b116830b 11394
048addec 113952001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 11396
048addec 11397 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 11398
048addec 113992001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 11400
048addec 11401 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 11402
048addec 114032001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 11404
048addec 11405 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 11406
048addec 114072001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 11408
048addec
JD
11409 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
11410 the program image directly.
982f6c7e 11411
048addec 114122001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 11413
048addec 11414 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 11415
048addec 114162001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 11417
048addec
JD
11418 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
11419 and CHECK_BUFFER.
d31053f9 11420
048addec
JD
11421 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
11422 (record_char): Likewise.
d31053f9 11423
048addec
JD
11424 * keyboard.c (make_lispy_event): Don't insist a drag event must
11425 move to a different buffer position. Instead, check for moving at
11426 least double_click_fuzz.
982f6c7e 11427
048addec 11428 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 11429
048addec 11430 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 11431
048addec
JD
11432 * indent.c (current_column_1, Fmove_to_column): Separate the code
11433 for display-table glyphs from the code for buffer text, to fix
11434 bugs in the former.
830047fd 11435
048addec 114362001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 11437
048addec
JD
11438 * buffer.c (Fbuffer_local_value): New function.
11439 (syms_of_buffer): Defsubr it.
2df5238c 11440
048addec
JD
11441 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
11442 value of `cursor-in-non-selected-windows'.
4e397688 11443
048addec
JD
11444 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
11445 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
11446 (syms_of_xdisp): Initialize it.
48b0f3ae 11447
048addec 114482001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 11449
048addec 11450 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 11451
048addec
JD
11452 * coding.c: Change doc-string comments to `new style' [w/`doc:'
11453 keyword].
3ecaf7e5 11454
048addec
JD
11455 * eval.c (top_level_value, top_level_set): Remove commented and
11456 #ifdef'd-out code.
11457 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 11458
048addec 114592001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 11460
048addec 11461 * xfns.c: Include unistd.h, if it exists.
8db2e33b 11462
048addec 11463 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 11464
048addec 11465 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 11466
048addec 114672001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 11468
048addec
JD
11469 * lisp.h (CHECK_STRING_CAR): New macro.
11470 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
11471 treating XCAR and XCDR as lvalues.
11472 (openp): Use CHECK_STRING_CAR.
11473 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 11474
048addec 114752001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 11476
048addec
JD
11477 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
11478 (SIGMASKTYPE): Define.
1b1acc13 11479
048addec 11480 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 11481
048addec 114822001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 11483
048addec
JD
11484 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
11485 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
11486 Fix typos in comments.
6cb16f95 11487
048addec
JD
11488 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
11489 and #ifdef'd-out code.
11490 Fix and reindent comments.
6cb16f95 11491
048addec 11492 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 11493
048addec
JD
11494 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
11495 argument `i' in macros.
6cb16f95 11496
048addec
JD
11497 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
11498 `i' in macros.
7e9d3c2f 11499
048addec
JD
11500 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
11501 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
11502 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
11503 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
11504 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
11505 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
11506 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
11507 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
11508 in macros.
7e9d3c2f 11509
048addec
JD
11510 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
11511 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
11512 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
11513 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
11514 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
11515 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
11516 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
11517 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
11518 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
11519 (remove unused second argument).
7e9d3c2f 11520
048addec 115212001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 11522
048addec
JD
11523 * syntax.c (describe_syntax): New wrapper.
11524 (Finternal_describe_syntax_value): Rename from describe_syntax.
11525 Don't insert space at front and \n at the end.
11526 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 11527
048addec
JD
11528 * regex.c (re_wctype): Try to fix some warnings.
11529 (regcomp, regexec): Don't forget the __restrict.
9ba48103 11530
048addec 115312001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 11532
048addec 11533 * textprop.c (Fget_char_property): Doc fix.
9ba48103 11534
048addec 115352001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 11536
048addec 11537 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 11538
048addec 11539 * data.c (Fsetq_default): Ditto.
c22e59e1 11540
048addec 11541 * callint.c (Finteractive): Ditto.
9271ed2c 11542
048addec 115432001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 11544
048addec
JD
11545 * macros.c: Don't include keymap.h any more.
11546
115472001-11-01 Richard M. Stallman <rms@gnu.org>
11548
11549 * data.c (Fmake_local_variable): Doc fix.
11550
11551 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
11552 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 11553
048addec 11554 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
11555 bindings along with or instead of the buffer local map.
11556 Make the overriding maps override what they should.
11557
f00691a3 115582001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
11559
11560 * window.c (grow_mini_window): Fix typo in comment.
11561
27188d11
GM
115622001-11-01 Gerd Moellmann <gerd@gnu.org>
11563
7b49b9d2
GM
11564 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
11565 (XTset_vertical_scroll_bar): Likewise.
11566
43f7c3ea
GM
11567 * xfns.c (x_build_heuristic_mask): Use four_corners_best
11568 instead of IMAGE_BACKGROUND.
c22e59e1 11569
b350c2e5
GM
11570 * xfns.c (four_corners_best): Reindent.
11571
c22e59e1 11572 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
11573 Handle :box so that it is possible to specify sexprs.
11574
bf00d461
EZ
115752001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
11576
11577 * s/hpux11.h: New file.
11578
f00691a3 115792001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 11580
2b209b97
PJ
11581 * emacs.c (USAGE1): Show command line option --no-window-system
11582 instead of --no-windows in usage.
11583 (standard_args): Rename --no-windows to --no-window-system.
11584 (bug_reporting_address): Follow Emacs coding conventions.
11585
9dbc9081
PJ
11586 * eval.c (Fcommandp): Doc fix.
11587 Change doc-string comments to `new style' [w/`doc:' keyword].
11588
4e10df59
PJ
11589 * frame.c (Fframe_live_p): Doc fix.
11590
11591 * buffer.c (selective-display-ellipses): Doc fix.
11592
dd387b25
GM
115932001-10-31 Gerd Moellmann <gerd@gnu.org>
11594
fe957e65
GM
11595 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
11596
dd387b25
GM
11597 * xfaces.c (realize_x_face): If C is not a single-byte character,
11598 set the face's colors_copied_bitwise_p instead of the defaulted_p
11599 members which have a different meaning.
11600 (free_face_colors): Do nothing for a face whose colors have been
11601 copied bitwise.
11602
c22e59e1 11603 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 11604
f00691a3 116052001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 11606
687784e8
PJ
11607 * marker.c, mocklisp.c: Change doc-string comments to `new style'
11608 [w/`doc:' keyword].
2e1280f8 11609
b9d9a9b9
GM
116102001-10-31 Gerd Moellmann <gerd@gnu.org>
11611
11612 * fns.c (require_unwind): Return Lisp_Object.
11613
f00691a3 116142001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 11615
fa1361cb
PJ
11616 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
11617 (last-input-char): Revert doc-string to be the same as the
11618 doc-string of `last-input-event'.
11619
6c465a15 11620 * xdisp.c: Fix typos in comments.
48400103 11621
eafa3196
GM
116222001-10-31 Gerd Moellmann <gerd@gnu.org>
11623
11624 * window.c (grow_mini_window): Handle case that the root
11625 window is already smaller than the nominal mininum height.
11626
747d3f2a
SM
116272001-10-30 Stefan Monnier <monnier@cs.yale.edu>
11628
bf9bb76f
SM
11629 * emacs.c (main): Don't call keys_of_macros any more.
11630
11631 * lisp.h (keys_of_macros): Remove.
11632
11633 * macros.c (keys_of_macros): Remove.
11634
747d3f2a
SM
11635 * xfaces.c (Fface_attribute_relative_p): Declare args.
11636
5e905a57
JR
116372001-10-30 Jason Rumney <jasonr@gnu.org>
11638
11639 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
11640 (enum_font_cb2): Ignore fonts with vertical orientation.
11641
3a426197
RS
116422001-10-30 Richard M. Stallman <rms@gnu.org>
11643
11644 * keyboard.c (Finput_pending_p): Doc fix.
11645
a742d646
GM
116462001-10-30 Gerd Moellmann <gerd@gnu.org>
11647
259cf6bc
GM
11648 * xterm.c (x_after_update_window_line): Don't run the code
11649 clearing in borders for rows whose visible height is 0.
11650
3f99f948
GM
11651 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
11652 resized_p flag is set. If not set, use the much less flickering
11653 method previously used.
11654
11655 * dispnew.c (change_frame_size_1): Set frame's resized_p.
11656
11657 * frame.h (struct frame) <resized_p>: New member.
11658
b4a3be43
GM
11659 * lread.c (to_multibyte): Ensure read_buffer is at least twice
11660 as large as the number of bytes to convert.
747d3f2a 11661
a742d646
GM
11662 * lread.c (to_multibyte): New function.
11663 (read1): Use it.
11664
cacbb9e9
EZ
116652001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
11666
11667 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
11668
99cb6b2f
GM
116692001-10-30 Gerd Moellmann <gerd@gnu.org>
11670
327f42ee 11671 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
11672 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
11673 if the row's fill_line_p is set and drawing the last glyph with
11674 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 11675
99cb6b2f
GM
11676 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
11677
8e8223e2
SM
116782001-10-29 Stefan Monnier <monnier@cs.yale.edu>
11679
11680 * xmenu.c: Include coding.h and charset.h.
11681 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
11682 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
11683 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
11684 Explicitly set wv->help. Use `TRUE' rather than `True'.
11685 (menu_help_callback): Use empty_string.
11686
11687 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
11688 (Fx_popup_dialog): Explicitly init f.
11689 (w32_menu_display_help): Use empty_string.
11690
4d083a8f
RS
116912001-10-29 Richard M. Stallman <rms@gnu.org>
11692
b2304472
RS
11693 * fns.c (Frequire): Detect recursive try to require the same
11694 feature 3 or more levels deep, and get error.
11695 (require_unwind): New subroutine.
11696 (require_nesting_list): New variable.
11697 (syms_of_fns): Init and staticpro it.
11698
4d083a8f
RS
11699 * print.c (print_object): Clarify indication of insertion type.
11700
2fe41216
EZ
117012001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
11702
90480000
EZ
11703 * coding.c (syms_of_coding): Document that locale-coding-system is
11704 used for decoding input on X.
11705
2fe41216
EZ
11706 * window.c (Fscroll_left, Fscroll_right): Doc fix.
11707
f00691a3 117082001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
11709
11710 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
11711 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
11712
60ebcfe8
GM
117132001-10-29 Gerd Moellmann <gerd@gnu.org>
11714
9a7bdceb
GM
11715 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
11716 use NO_CURSOR if cursor_in_non_selected_windows is false.
11717
3f08fcd2
GM
11718 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
11719 the slant attribute if FRAME is t.
11720
0ccfdad2
GM
11721 * xfns.c (x_set_internal_border_width): Set frame garbaged
11722 when X window doesn't exist yet.
11723
ef253080
GM
11724 * xterm.c (x_after_update_window_line): Clear internal border
11725 in different circumstances.
b116830b 11726
60ebcfe8
GM
11727 * xterm.c (XTread_socket) <KeyPress>: Don't use
11728 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
11729 <handa@etl.go.jp>.
11730
73d25f9c
EZ
117312001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
11732
11733 * m/ibms390.h: New file. From Adam Thornton
11734 <athornton@sinenomine.net>.
11735
cac1daf0
GM
117362001-10-28 Gerd Moellmann <gerd@gnu.org>
11737
053b3256 11738 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 11739
cac1daf0
GM
11740 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
11741 a loop counter.
11742
f00691a3 117432001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 11744
186486eb
PJ
11745 * emacs.c: Use argv[0] instead of emacs when -t was specified.
11746
4707d2d0
PJ
11747 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
11748 keyword].
11749 Fix typos in comments.
b116830b 11750
d883731c
PJ
11751 * emacs.c (bug_reporting_address): New function.
11752 Use it when displaying usage message.
11753
04012254
PJ
11754 * minibuf.c (read_minibuf): Remove unused external declaration of
11755 variable `Qread_only'.
11756
13b1a09c
PJ
11757 * keymap.c (access_keymap): Remove unused variable `charset'.
11758
5bbf4378
MB
117592001-10-28 Miles Bader <miles@gnu.org>
11760
11761 * xfaces.c (merge_face_heights): Handle TO being relative as well.
11762 Remove #ifdef'd-out code.
11763 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
11764 (syms_of_xfaces): Initialize them.
11765
1ce1e4ee
JR
117662001-10-27 Jason Rumney <jasonr@gnu.org>
11767
11768 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
11769 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
11770 position using the system caret.
11771
11772 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
11773 (w32_system_caret_height, w32_system_caret_x)
11774 (w32_system_caret_y): New variables for tracking system caret.
11775 (w32_initialize): Initialize them.
c2d53558 11776 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 11777
c2d53558
SM
11778 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
11779 New messages types.
1ce1e4ee
JR
11780
11781 * w32term.c (note_mouse_highlight): Clear old help_echo.
11782
f00691a3 117832001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 11784
bb4600a4
PJ
11785 * xterm.c: Fix typo in a comment.
11786
7db35a48
PJ
11787 * emacs.c: Fix typos in comments.
11788 Remove unnecessary spaces.
11789 Change doc-string comments to `new style' [w/`doc:' keyword].
11790 (USAGE2): Fix typos in usage string.
11791
a7248e4f
PJ
11792 * xterm.c: Fix typo in a comment.
11793
4e30ce42
PJ
11794 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
11795 emacs.c.
11796
62725a92
GM
117972001-10-27 Gerd Moellmann <gerd@gnu.org>
11798
798dbe1f 11799 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 11800 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
11801 farther backward when target_y was not reached.
11802
62725a92
GM
11803 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
11804 Display errno only if non-zero.
11805 (sound_warning): New function.
11806 (vox_configure): Don't treat failing to set sample rate as error.
11807 (various places): Improve error messages.
11808
d4e34d24
EZ
118092001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
11810
944e6f60
EZ
11811 * fileio.c (Faccess_file): Run the argument filename through
11812 Fexpand_file_name, before using it.
11813
d4e34d24
EZ
11814 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
11815 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
11816
38d2af0c
GM
118172001-10-26 Gerd Moellmann <gerd@gnu.org>
11818
da80a8d5
GM
11819 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
11820
38d2af0c
GM
11821 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
11822 Fix clearing in the case of scroll bars on the right.
c2d53558 11823
45de4a6f 118242001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
11825
11826 * w32gui.h (XImage): Add a dummy typedef.
11827
fbd5ceb2
GM
118282001-10-26 Gerd Moellmann <gerd@gnu.org>
11829
c2d53558 11830 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 11831
b23236fb
EZ
118322001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
11833
11834 * frame.c (Fframe_parameter): Fix last change.
11835
5d991fc4
EZ
11836 * fileio.c: Revert last change (which removed old commented-out
11837 version of expand-file-name). Add a comment that explains why
11838 this old version should not be removed.
11839
879eadc3
GM
118402001-10-25 Gerd Moellmann <gerd@gnu.org>
11841
75700ff2
GM
11842 * frame.c (Fframe_parameter): Fix a bug whereby some
11843 ``artificial'' frame parameters, like `minibuffer' were not
11844 obtained by calling Fframe_parameters.
11845
dfe92a6a
GM
11846 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
11847 cursor differently.
11848
879eadc3
GM
11849 * xdisp.c (move_it_vertically_backward): Compute line height
11850 differently. Add heuristic to try to be more compatible to 20.x.
11851
e1010ebe
SM
118522001-10-25 Stefan Monnier <monnier@cs.yale.edu>
11853
d73a471b
SM
11854 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
11855
d6da5a06
GM
11856 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
11857 boolean.
e1010ebe 11858
f66bd220
MB
118592001-10-25 Miles Bader <miles@gnu.org>
11860
11861 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
11862 BG is a pointer to a structure, not a structure.
11863 (gif_format, png_format): Add missing commas.
11864
d436d538
RS
118652001-10-24 Richard M. Stallman <rms@gnu.org>
11866
11867 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 11868 (syms_of_xfaces): Defsubr it.
d436d538 11869
f00691a3 118702001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
11871
11872 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
11873 variable `area'.
11874
f00691a3 118752001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 11876
c2d53558 11877 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 11878
e2a57b34
MB
118792001-10-25 Miles Bader <miles@gnu.org>
11880
11881 * dispextern.h (struct image): Add `background',
11882 `background_valid', and `background_transparent' fields.
11883 (image_background, image_background_transparent): New declarations.
11884 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
11885 * xfns.c (image_background, image_background_transparent)
11886 (four_corners_best): New functions.
c2d53558 11887 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
11888 (gs_format): Add `:background' entry.
11889 (lookup_image): Set IMG's background color if specified.
11890 (pbm_load, xbm_load_image, png_load): Set IMG's background field
11891 when appropriate.
11892 (x_clear_image_1): Reset `background_valid' and
11893 `background_transparent_valid' fields.
11894 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
11895 calculating it here. Set IMG's background_transparent field.
11896 (enum xpm_keyword_index): Add XPM_BACKGROUND.
11897 (enum png_keyword_index): Add PNG_BACKGROUND.
11898 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
11899 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
11900 (enum gif_keyword_index): Add GIF_BACKGROUND.
11901 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 11902 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
11903 Pre-calculate image background color where necessary.
11904 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
11905 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
11906 color to use for image glyph reliefs.
11907
b547b6e8
GM
119082001-10-24 Gerd Moellmann <gerd@gnu.org>
11909
d9e3b8c6
GM
11910 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
11911 in full-width rows.
c2d53558 11912
b547b6e8
GM
11913 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
11914 Fix clearing of area not covered by scroll bar.
11915
f00691a3 119162001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
11917
11918 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
11919 and `real_start'.
c2d53558 11920 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
11921 (glyph_rect): Remove unused variable `area'.
11922
76cb5e06
GM
119232001-10-24 Gerd Moellmann <gerd@gnu.org>
11924
bdbdebff 11925 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
11926
11927 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
11928 (row_containing_pos): Take additional argument DY.
11929 Treat rows ending in middle of char differently.
62e33982
GM
11930 (display_line): Handle tabs on window systems differently.
11931
11932 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
11933 with additional argument.
11934
11935 * dispextern.h (row_containing_pos): Adjust prototype.
11936
76cb5e06
GM
11937 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
11938 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
11939 (try_window_id, try_window_reusing_current_matrix)
11940 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 11941 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 11942
f00691a3 119432001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 11944
c9e60620
PJ
11945 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
11946 gnuemacs).
11947 (HAVE_BOXES): Fix typo in comment.
11948 (push_menu_pane): Fix typo in comment.
11949
3b552d56
PJ
11950 * xdisp.c: (display_prop_string_p): Remove unused local declaration
11951 of `Qwhen'.
11952 (single_display_prop_string_p): Remove unused local declarations
11953 of `Qwhen' and `Qmargin'.
11954 (string_buffer_position): Remove unused variable `around'.
11955 (store_frame_title): Remove unused variable `width'.
11956
15c565ac
PJ
11957 * window.c: Don't define max.
11958 (coordinates_in_window): Remove unused variable `uy'.
11959
a8818eb9
PJ
11960 * widget.c: Don't define max.
11961
996fee11
PJ
11962 * process.c: Don't define max.
11963 (create_process): Remove unused variable `buffer'.
11964
496e1a5b
GM
119652001-10-23 Gerd Moellmann <gerd@gnu.org>
11966
c2d53558 11967 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 11968
5905ae8b
EZ
119692001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
11970
11971 * xfaces.c (Finternal_set_lisp_face_attribute)
11972 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
11973 frame is on a windowed display.
11974
24db49fb
GM
119752001-10-23 Gerd Moellmann <gerd@gnu.org>
11976
c2d53558
SM
11977 * dispnew.c (sync_window_with_frame_matrix_rows):
11978 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
11979 of marginal areas.
11980
c2d53558 11981 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 11982
f0487f05
EZ
119832001-10-23 Andreas Schwab <schwab@suse.de>
11984
11985 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
11986 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
11987
f0a48a01
GM
119882001-10-23 Gerd Moellmann <gerd@gnu.org>
11989
c2d53558 11990 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
11991 REAL_END. Notice if cursor gets overwritten.
11992 (notice_overwritten_cursor): Take X positions as parameters.
11993 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
11994 around call to x_draw_glyphs.
11995
f00691a3 119962001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 11997
fc11dff0
PJ
11998 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
11999 instead of C) and usage.
a50a10a0 12000
fc11dff0
PJ
12001 * editfns.c (char-to-string): Fix argument names (use CHAR instead
12002 of C) and usage.
a50a10a0
PJ
12003
12004 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
12005 `left', `max_width' and `max_height'.
12006
8738febd
GM
120072001-10-23 Gerd Moellmann <gerd@gnu.org>
12008
12009 * xdisp.c (display_line): For a tab continued to the next line,
12010 set row's ends_in_middle_of_char_p.
12011
653c329b
GM
120122001-10-22 Gerd Moellmann <gerd@gnu.org>
12013
12014 * xdisp.c (display_line): Fix computation of continuation lines
12015 width for TABs.
12016
f00691a3 120172001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 12018
7ba51063
PJ
12019 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
12020 `Qlaplace'.
12021
f958c5ac
PJ
12022 * fileio.c: Remove unused code.
12023
eb360291
MB
120242001-10-22 Miles Bader <miles@gnu.org>
12025
12026 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
12027 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
12028 Remove `DOC_STRINGS_IN_COMMENTS' cases.
12029
98515cf0
JR
120302001-10-21 Jason Rumney <jasonr@gnu.org>
12031
12032 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
12033
93026d88
EZ
120342001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
12035
12036 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
12037 (Finsert_string): Avoid the multi-line string literals warning.
12038
c9a95b79
MB
120392001-10-22 Miles Bader <miles@gnu.org>
12040
12041 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
12042 (Fdocumentation): Don't use it.
12043 (syms_of_doc): Don't initialize it.
12044
12045 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
12046 * print.c (Fwith_output_to_temp_buffer): Likewise.
12047 * window.c (Fsave_window_excursion): Likewise.
c2d53558 12048 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 12049 (Fsave_restriction): Likewise.
c2d53558
SM
12050 * eval.c (Frun_hooks, Frun_hook_with_args)
12051 (Frun_hook_with_args_until_failure)
12052 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
12053 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
12054 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
12055 (Funwind_protect, Fcondition_case): Likewise.
12056 * coding.c (Ffind_operation_coding_system): Likewise.
12057 * keyboard.c (Ftrack_mouse): Likewise.
12058
a3b10252
MB
120592001-10-21 Miles Bader <miles@gnu.org>
12060
c2d53558 12061 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
12062 (Fmake_hash_table): Add usage: string to doc string.
12063 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 12064 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
12065 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
12066 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
12067 (Fml_prefix_argument_loop): Likewise.
12068
f00691a3 120692001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 12070
c2d53558 12071 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 12072
c6f73eec
PJ
12073 * sysdep.c (init_sys_modes): Change doc-string comments to `new
12074 style' [w/`doc:' keyword].
12075
12076 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
12077 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
12078 comments to `new style' [w/`doc:' keyword].
12079
3cf3436e
JR
120802001-10-21 Jason Rumney <jasonr@gnu.org>
12081
12082 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
12083
c169b8f1
JR
12084 * w32term.c (remember_mouse_glyph): New function.
12085 (w32_mouse_position): Use it.
12086 (note_mouse_movement): If the mouse moved off the glyph, remember
12087 its new position.
c2d53558 12088
4fdd691b
JR
12089 * w32term.h (struct w32_output): Correct spelling of x_compatible.
12090 (w32_display_info): Add mouse_face_overlay.
12091
c169b8f1
JR
12092 * w32term.c (notice_overwritten_cursor): Renamed from
12093 note_overwritten_text_cursor. Rewritten to take glyph widths into
12094 account.
12095 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
12096 (fast_find_string_pos): New function.
12097 (fast_find_position): Return the correct vpos. Add parameter
12098 STOP. In the final row, stop before glyphs having STOP as object.
12099 Don't consider glyphs that are not from a buffer.
12100 (fast_find_position) [0]: Add a presumably more correct version
12101 for after 21.1.
12102 (expose_window_tree, expose_frame): Don't compute intersections here.
12103 (expose_window): Do it here instead.
12104 (expose_window_tree, expose_window, expose_line): Return 1 when
12105 overwriting mouse-face.
12106 (expose_window): If W is the window currently being updated, mark
12107 the frame garbaged.
12108 (expose_frame): If mouse-face was overwritten, redo it.
12109 (x_use_underline_position_properties): New variable.
12110 (syms_of_xterm): DEFVAR_BOOL it.
12111 (x_draw_glyph_string): Add comment to use it in future.
12112 (x_draw_glyph_string): Restore clipping after drawing box.
12113 Fix a computation of the underline position.
12114 (w32_get_glyph_string_clip_rect): Minor cleanup.
12115 (x_fill_stretch_glyph_string): Remove an assertion.
12116 (x_produce_glyphs): Don't convert multibyte characters
12117 to unibyte characters in unibyte buffers.
12118 (cursor_in_mouse_face_p): New function.
12119 (x_draw_stretch_glyph_string): Use it to choose a different GC
12120 when drawing a cursor within highlighted text. Don't draw
12121 background again if it has already been drawn.
12122 (x_draw_glyph_string_box): Don't draw a full-width
12123 box just because the glyph row's full_width_p flag is set.
12124 (x_draw_glyphs): Fix computation of rightmost x for
12125 full-width rows.
12126 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
12127 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
12128 change bottom shadow accordingly. Some cleanup.
12129 (x_update_window_end): Handle overwritten mouse face
12130 also for tool bar windows.
12131 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
12132 DRAW is DRAW_IMAGE_RAISED.
12133 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
12134 actually redrawn. Make the function static.
12135 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
12136 optimize away highlighting if we pass over that same overlay again.
12137 (note_mouse_highlight): Call mouse_face_overlay_overlaps
12138 to detect a case where we have to highlight a different region
12139 despite not having left the currently highlighted region.
12140 Set mouse_face_overlay in the x_display_info. Avoid changing the
12141 mouse pointer shape when show_mouse_face has already done it, or
12142 there is no need. Handle mouse-face and help-echo in strings.
12143 (glyph_rect): New function.
12144 (w32_mouse_position): Use it to raise the threshold for mouse
12145 movement event generation.
12146 (w32_initialize_display_info): Initialize the x_display_info's
12147 mouse_face_overlay.
12148 (w32_set_vertical_scroll_bar): Don't clear a zero height
12149 or width area.
12150 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
12151 a widget to zero height.
12152
3cf3436e 12153 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 12154 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
12155 equivalents in menu_items.
12156 (w32_menu_show): Don't overwrite an item's name with its key
12157 description in case the description is a multibyte string.
12158 (single_submenu): Some cleanup.
12159
12160 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
12161 (postprocess_image): New function.
12162 (lookup_image): Call it for all image types except PostScript.
12163 (x_kill_gs_process): Call postprocess_image.
12164 (tiff_error_handler, tiff_warning_handler): New functions.
12165 (tiff_load): Install them as handlers.
12166 (x_kill_gs_process): Recognize if someone has cleared the image
12167 cache under us.
12168 (valid_image_p): Protect better against invalid image
12169 specifications. Previous code could signal an error.
12170 (Fx_hide_tip, Fshow_tip): Doc fix.
12171 (Fv_max_tooltip_size): New variable.
12172 (syns_of_xfns): DEFVAR_LISP it.
12173 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
12174 window buffer to *tip* right after creating the frame. Set frame's
12175 window_width. Use a maximum tooltip size specified by
12176 Vx_max_tooltip_size, if that has valid contents.
12177 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
12178 Make sure the tooltip is completely visible.
12179 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
12180 (Fx_create_frame): Adjust the frame's height for presence
12181 of the tool bar before calling x_figure_window_size.
12182 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
12183 when the window gets smaller.
12184 (x_set_foreground_color): Set frame's cursor_pixel.
12185 (x_set_foreground_color, x_set_background_color): Cleaned up.
12186 (x_set_font): Handle case of x_new_fontset returning the same name
12187 as before, although there was a change in fontsets.
12188
386ca361
MB
121892001-10-21 Miles Bader <miles@gnu.org>
12190
c2d53558 12191 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
12192 (Flogxor): Add usage: string to doc string.
12193 * charset.c (Fstring): Likewise.
12194 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
12195 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
12196
f00691a3 121972001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 12198
03be2694
PJ
12199 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
12200
12201 * alloc.c: Reindent DEFUNs with doc: keywords.
12202
12203 * abbrev.c (Finsert_abbrev_table_description): Reindent.
12204
14ff1ee0
PJ
12205 * frame.c: Change doc-string comments to `new style' [w/`doc:'
12206 keyword].
12207
2f147815 12208See ChangeLog.9 for earlier changes.
6922b018
KH
12209
12210;; Local Variables:
49b3bd82 12211;; coding: iso-2022-7bit
6922b018 12212;; End:
2a34a036 12213
2f147815 12214 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
12215 Copying and distribution of this file, with or without modification,
12216 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
12217
12218;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4