(struct interval_block, struct string_block)
[bpt/emacs.git] / src / ChangeLog
CommitLineData
66070bd1
JD
12004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2
3 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
4 if a key press should pop down. Only pop down if a key is pressed
5 outside the menu/dialog.
6 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
7 popup_get_selection.
8 (create_and_show_dialog): Pass 1 for down_on_keypress to
9 popup_get_selection.
10
de7515d6
JD
112004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12
13 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
14 BLOCK/UNBLOCK_INPUT.
15
160b1b50
JD
162004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17
18 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
19 specified.
20
3a9f36e6
KH
212004-01-08 Kenichi Handa <handa@m17n.org>
22
23 * editfns.c (Fformat): Fix '&' to '&&'.
24
3803eb32
AS
252004-01-08 Andreas Schwab <schwab@suse.de>
26
27 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
28 size if PSEUDOVECTOR_FLAG is set.
29
9da88f37
KH
302004-01-07 Kenichi Handa <handa@m17n.org>
31
74ac5074
KH
32 * charset.c (Fdeclare_equiv_charset): Fix docstring.
33
9da88f37
KH
34 * fontset.c (fontset_ref_via_base): Fix previous change.
35
05faee07
KS
362004-01-07 Kim F. Storm <storm@cua.dk>
37
38 * process.c (read_process_output): Only activate adaptive
39 buffering if we read less than 256 bytes at a time.
40
634910c8
KS
412004-01-06 Kim F. Storm <storm@cua.dk>
42
43 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
44 object and image object. Return glyph width and height.
45 (mode_line_string, marginal_area_string): Ditto.
46
47 * dispextern.h (buffer_posn_from_coords, mode_line_string)
48 (marginal_area_string): Fix prototypes.
49
50 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
51 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
52 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
53
54 * keyboard.c (make_lispy_position): Use modified mode_line_string,
55 buffer_posn_from_coords, and marginal_area_string functions to
56 include both string object and image object in the lispy position.
57 Also add actual glyph width and height to position.
58 (read_key_sequence): Use real buffer position from mouse
59 event to find keymap property even when click is in marginal area.
60
61 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
62 mode_line_string and marginal_area_string functions to handle
63 both string object and image object properties.
64
57951c2e
AS
652004-01-06 Andreas Schwab <schwab@suse.de>
66
67 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
68 character.
69
181e6a61
AS
702004-01-02 Andreas Schwab <schwab@suse.de>
71
72 * macterm.c (emacs_options, x_initialized, same_x_server): Remove
73 unused (and duplicated) definitions.
74
31e0fbdd
KS
752004-01-02 Kim F. Storm <storm@cua.dk>
76
77 * process.h (struct Lisp_Process): New members for adaptive read
78 buffering: adaptive_read_buffering, read_output_delay, and
79 read_output_skip.
80
81 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
82 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
83 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
84 (process_output_delay_count, process_output_skip): New vars.
85 (Vprocess_adaptive_read_buffering): New variable.
86 (make_process): Initialize adaptive read buffering members.
87 (Fstart_process): Set adaptive_read_buffering member.
88 (deactivate_process): Cleanup adaptive read buffering.
89 (wait_reading_process_input): Temporarily omit delayed
90 subprocesses from the set of file descriptors to read from;
91 adjust the select timeout if we skipped any subprocesses.
92 (read_process_output): Increase adaptive read buffering delay if
93 we read less than a full buffer; reduce delay when we read a
94 full buffer.
95 (send_process): Simplify using local Lisp_Process var.
96 Reset adaptive read buffering delay after write.
97 (init_process): Initialize process_output_delay_count and
98 process_output_skip.
99 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
100
68c6a789
JR
1012004-01-01 Jason Rumney <jasonr@gnu.org>
102
103 * w32term.c (w32_text_out): Use s->font, for consistency with
104 callers.
105
3f70fe82
LT
1062003-12-30 Luc Teirlinck <teirllm@auburn.edu>
107
108 * print.c (Ferror_message_string): Add hyperlink in the docstring
109 to the definition of `signal' in the Elisp manual.
110 * eval.c (Fsignal): Ditto.
111
c2be49ed
EZ
1122003-12-29 James Clark <jjc@jclark.com> (tiny change)
113
114 * fns.c (internal_equal): Return t for two NaN arguments.
115
7abd90ea
RS
1162003-12-29 Richard M. Stallman <rms@gnu.org>
117
118 * data.c (store_symval_forwarding): Handle setting
119 default-fill-column, etc., by changing the value in
120 buffers that use the default.
121
122 * minibuf.c (Fset_minibuffer_window): Doc fix.
123
124 * fileio.c (choose_write_coding_system): Ignore auto_saving
125 if using the visited file for auto saves.
126 (Fwrite_region): Don't update SAVE_MODIFF
127 if auto-saving in visited file.
128
3e7cfcdc
KH
1292003-12-29 Kenichi Handa <handa@m17n.org>
130
131 * dispextern.h (face_font_available_p): Extern it.
132
133 * fontset.c (Voverriding_fontspec_alist): New variable.
134 (lookup_overriding_fontspec): New function.
135 (fontset_ref_via_base): Call lookup_overriding_fontspec if
136 necessary.
137 (fontset_font_pattern): Likewise.
138 (regulalize_fontname): New function.
139 (Fset_fontset_font): Call regulalize_fontname.
140 (Fset_overriding_fontspec_internal): New function.
141 (syms_of_fontset): Initialize and staticprop
142 Voverriding_fontspec_alist. Defsubr
143 Sset_overriding_fontspec_internal.
144
145 * xfaces.c (face_font_available_p): New function.
146
7abd90ea
RS
1472003-12-28 Richard M. Stallman <rms@gnu.org>
148
149 * buffer.c (Fother_buffer): Don't crash if BUF is nil
150 or if its name is nil.
151
152 * buffer.c (Fkill_buffer): Don't delete auto-save file
153 if it's the same as the visited file.
154
de1d1a40
LT
1552003-12-28 Luc Teirlinck <teirllm@auburn.edu>
156
157 * coding.c (Fcheck_coding_system): Doc fix.
158
204fb75e
KS
1592003-12-28 Kim F. Storm <storm@cua.dk>
160
161 * Makefile.in (eval.o): Depend on dispextern.h.
162
163 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
164 image glyph using image's ascent.
165 (mode_line_string): Return image glyph as object clicked on.
166 Adjust y0 for image glyph using image's ascent.
167
168 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
169 (struct glyph): New members, ascent and descent. Used to save
170 this glyph's ascent and descent, instead of having.
171 (struct glyph): Declare member face_id using FACE_ID_BITS.
172 (find_hot_spot): Add prototype.
173
174 * keyboard.c (Qimage): Remove extern (now in lisp.h).
175 (QCmap): Declare extern.
176 (make_lispy_position): When position is inside image hot-spot,
177 use hot-spot element's id as posn element.
178
179 * lisp.h (IMAGEP): New macro to test for image object type.
180 (Qimage): Declare extern.
181
182 * macfns.c (Qimage): Remove extern (now in lisp.h).
183 (valid_image_p, parse_image_spec): Use IMAGEP macro.
184
185 * macterm.c (Qface, Qmouse_face): Remove unused externs.
186
187 * w32fns.c (Qimage): Remove extern (now in lisp.h).
188 (valid_image_p, parse_image_spec): Use IMAGEP macro.
189
190 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
191
192 * w32term.c (Qface, Qmouse_face): Remove unused externs.
193
194 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
195 pointer types.
196 (Qrelative_width, Qalign_to): Remove unused variables.
197 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
198 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
199 image maps.
200 (x_y_to_hpos_vpos): Return glyph relative coordinates through
201 new dx and dy args.
202 Remove buffer_only_p arg (always 0). Simplify code accordingly.
203 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
204 than row's ascent and height, to get sensible height on tall rows.
205 (build_desired_tool_bar_string): Remove Qimage extern.
206 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
207 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
208 image glyph is alone on the last line.
209 (append_glyph, append_composite_glyph, produce_image_glyph)
210 (append_stretch_glyph): Set glyph's ascent and descent.
211 (on_hot_spot_p): New function to check if position is inside an
212 rectangular, circular, or polygon-shaped image hot-spot,
213 (find_hot_spot): New function to search for image hot-spot.
214 (Flookup_image_map): New defun to search for image hot-spot.
215 (define_frame_cursor1): New aux function to determine frame pointer.
216 (note_mode_line_or_margin_highlight, note_mouse_highlight):
217 Handle `pointer' text property and :pointer image property to
218 control frame pointer shape. Detect image hot-spots for pointer
219 and help_echo properties. Use define_frame_cursor1.
220 (note_mouse_highlight): Use Vvoid_text_area_pointer.
221 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
222 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
223
224 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
225
226 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
227 (Qimage): Remove extern (now in lisp.h).
228 (valid_image_p, parse_image_spec): Use IMAGEP macro.
229
230 * xmenu.c (show_help_event): Remove unused code.
231
232 * xterm.c (Qface, Qmouse_face): Remove unused externs.
233 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
234 row's ascent and descent, to get a sensible height on tall rows.
235
fc052137
LT
2362003-12-25 Luc Teirlinck <teirllm@auburn.edu>
237
238 * minibuf.c (Fcompleting_read): Undo previous change.
239
b9148500
LH
2402003-12-25 Lars Hansen <larsh@math.ku.dk>
241
242 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
243 Arguments GCPRO'ed in call to file name handler.
244
56ffd194
TTN
2452003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
246
247 * termcap.c (tgetst1): Scan for "%pN"; if all
248 N are continuous in [1,9], remove all "%pN".
249
5202d23d
JD
2502003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
251
f26fab36
JD
252 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
253
5202d23d
JD
254 * xfaces.c (lface_fully_specified_p): Take into account that
255 MAC OS always have unspecified stipple.
256
8babaa59
TTN
2572003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
258
259 * tparam.c (tparam1): Add handling for `%pN', which
260 means use param N for the next substitution.
261
2d176448
TTN
2622003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
263
264 * xfaces.c (Fcolor_gray_p): Fix omission bug:
265 In case `frame' is nil, consult the selected frame.
266 (Fcolor_supported_p): Likewise.
267
adb0708c
LT
2682003-12-23 Luc Teirlinck <teirllm@auburn.edu>
269
000eeb15
LT
270 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
271 Doc fixes.
0dc72b11
LT
272
273 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
274 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
275 (Fread_from_minibuffer): Delete code moved into read_minibuf.
276 Doc fix.
277 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
278 read_minibuf.
279 (Fcompleting_read): Delete code moved into read_minibuf.
280 (Ftest_completion): Make it handle obarrays and hash tables
281 correctly.
282
2e4d132b
KH
2832003-12-03 Kenichi Handa <handa@m17n.org>
284
285 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
286 encoding sequence.
287
3999c705
KH
2882003-12-01 Kenichi Handa <handa@m17n.org>
289
290 * composite.c (syms_of_composite): Don't make the compostion hash
291 table week.
292
d344ecbb
LT
2932003-11-30 Luc Teirlinck <teirllm@auburn.edu>
294
295 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
296 * textprop.c (Fget_char_property_and_overlay): New function.
297 (syms_of_textprop): Defsubr it.
298
03d6484e
JD
2992003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
300
019b1f0e
JD
301 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
302 to compile on terminal configuration.
303
03d6484e
JD
304 * fileio.c (Fread_file_name): Check use_file_dialog also before
305 calling Fx_file_dialog.
306
307 * fns.c: use_file_dialog: New variable.
308 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
309
442d3fd0
KS
3102003-11-29 Kim F. Storm <storm@cua.dk>
311
312 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
313 (syms_of_msdos): Don't intern and staticpro them.
314
0f6a07a8
KS
3152003-11-27 Kim F. Storm <storm@cua.dk>
316
317 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
318 coordinates relative to glyph at posn. If glyph is an image,
319 return that as object at posn. Callers changed.
320 (mode_line_string, marginal_area_string): Calculate and return
321 pixel coordinates relative to glyph. Callers changed.
322
323 * dispextern.h (buffer_posn_from_coords, mode_line_string)
324 (marginal_area_string): Fix prototypes.
325 (window_box_left_offset, window_box_right_offset): Add prototypes.
326
327 * frame.h (get_specified_cursor_type, get_window_cursor_type):
328 Remove prototypes.
329
330 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
331
332 * keyboard.c (make_lispy_position): Add x and y coordinates
333 relative to the current glyph as 7th element of position.
334 If glyph is an image, return it in the object element.
335 (read_key_sequence): Skip checks for keymap property in cases
336 where POSN_STRING is not a string (e.g. an image).
337
338 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
339 (Vshow_text_cursor_in_void): New variable.
340 (glyph_to_pixel_coords): Don't use negative hpos.
341 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
342 (append_stretch_glyph): Change ascent arg to be actual value
343 in pixels rather than ratio to height. Callers changed.
344 (calc_pixel_width_or_height): New aux function, implementing
345 pixel based artihmetic for glyph widths and heights.
346 (produce_stretch_glyph): Use calc_pixel_width_or_height for
347 :width, :height, :align-to, and :ascent, thus allowing these to
348 be specified in pixels as well as multiples of characters.
349 Don't produce stretch glyphs with zero width or height.
350 (get_specified_cursor_type): Declare static.
351 (get_window_cursor_type): Declare static. Add glyph arg to be
352 able to know when cursor is on an image; always substitute
353 hollow-box cursor for filled-box cursor on images, to avoid
354 negative images and flicker when blinking the cursor.
355 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
356 (note_mode_line_or_margin_highlight): Use non-text cursor rather
357 than vertical scroll-bar cursor in display margins.
358 (note_mouse_highlight): Use non-text cursor rather than text
359 cursor in fringes and over images in the text area.
360 Use non-text cursor when mouse pointer is outside editable text,
361 i.e. in the void after end-of-line or end-of-buffer; this was
362 already done for W32, but is now standard for all systems --
363 user can toggle show-text-cursor-in-void to get old behaviour.
364 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
365 Vdisplay_pixels_per_inch.
366
00498bfc
AS
3672003-11-25 Andreas Schwab <schwab@suse.de>
368
369 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
370 EMACS_INT to not lose bits.
371 (Ffillarray): Don't set bits beyond the size of a bool vector.
372
edaa824d
KS
3732003-11-25 Kim F. Storm <storm@cua.dk>
374
375 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
376 define this defun on systems that cannot use stderr as lvalue.
377
74d6f539
GM
3782003-11-24 Gerd Moellmann <gerd@gnu.org>
379
380 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
381 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
382 ld's default is incompatible with unexec.
383
6a1ff3ba
KS
3842003-11-23 Kim F. Storm <storm@cua.dk>
385
63dc7c6b
KS
386 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
387 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
388 (Fforce_window_update): New defun.
389 (syms_of_window): Defsubr it.
390 (Fset_window_margins, Fset_window_fringes): Doc fix.
391
6a1ff3ba
KS
392 * print.c (Fredirect_debugging_output): New defun.
393 (syms_of_print): Defsubr it.
394
aef109b7
LT
3952003-11-22 Luc Teirlinck <teirllm@auburn.edu>
396
397 * fns.c (Fset_char_table_parent): Doc fix.
398
6a1ff3ba 3992003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
400
401 * dispnew.c (buffer_posn_from_coords): Return actual row/column
402 for glyph clicked on, rather than (unused) pixel positions.
403 (mode_line_string, marginal_area_string): Change X and Y args to
404 pointers for returning actual row/column for glyph clicked on.
405 Simplify and optimize loops.
406
aef109b7
LT
407 * dispextern.h (mode_line_string, marginal_area_string):
408 Update prototypes.
63ccbe21
KS
409
410 * keyboard.c (make_lispy_position): New function for generating
411 mouse click positions from frame and pixel coordinates.
412 Enhanced to return buffer position and actual row/column for
413 events outside the text area using updated mode_line_string and
414 marginal_area_string functions.
415 Return left-fringe and right-fringe clicks as such, rather than
416 clicks in text area.
417 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
418 pixel_to_glyph_coords, as we never use the results.
419 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
420 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
421 Eliminate unused code in WHEEL_EVENT handling.
422 (make_lispy_movement): Use make_lispy_position.
423
424 * window.c (coordinates_in_window): Remove redundant tests.
425 Fix returned X pixel value for left-margin.
426
427 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
428 mode_line_string and marginal_area_string parameters.
429
930a9995
LH
4302003-11-22 Lars Hansen <larsh@math.ku.dk>
431
432 * w32.c (struct the_group): Added.
433 (getgrgid): Added.
434 * mac.c (struct my_group): Added.
435 (getgrgid): Added.
aef109b7 436
3dbf3426
LT
4372003-11-21 Luc Teirlinck <teirllm@auburn.edu>
438
439 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
440
cae8ddbb 4412003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 442
cae8ddbb
LH
443 * dired.c (Ffile_attributes): Parameter ID-FORMAT added and
444 included in call to file name handler. Numeric UID and GID
445 optionally translated to strings. Docstring updated.
446 (directory_files_internal): Parameter ID-FORMAT added.
447 (Fdirectory_files_and_attributes): Parameter ID-FORMAT added and
448 included in call to file name handler and call to
449 directory_files_internal. Docstring updated. (Fdirectory_files):
450 Dummy parameter added in call to directory_files_internal.
451 * lisp.h (Qinteger): Added. (Qinteger_or_floatp,
452 Qinteger_or_float_or_marker_p): Removed. (Ffile_attributes):
453 Parameter added.
454 * data.c (Qinteger): Exported.
455
2550b848
LT
4562003-11-21 Luc Teirlinck <teirllm@auburn.edu>
457
3dbf3426 458 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 459
88380018
KS
4602003-11-19 Kim F. Storm <storm@cua.dk>
461
462 * xdisp.c (init_iterator): Initialize it->start to position
463 before reseating (in case start position is invisible).
464 (init_to_row_start): Set it->start to row-start.
465 (redisplay_window): Accept optional_new_start if start position
466 is invisible (in which case IT_CHARPOS overshoots PT).
467 (display_line): Setup row->start from it->start (rather than
468 it->current which is wrong if first char on line is invisible).
469 When done, reseat it->start to it->current (= start of next row).
470 (expose_area): Fix exposure of text area when first char (e.g. TAB)
471 is only partially visible.
472
473 * dispextern.h (struct it): New member start.
474
854c1a59
SM
4752003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
476
477 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
478 of VALMASK.
479
480 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
481 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
482 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
483
484 * lisp.h (VALMASK): Only define for non-union type.
485 (MARKBIT): Remove.
486 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
487 (XTYPE): Define unconditionally.
488 (XSETTYPE): Remove one more remnant.
489 (EQ): Define differently for the union and non-union cases.
490 (INTMASK): New bit mask.
491 (struct Lisp_Marker): Move down to prepare for upcoming patch.
492 (GC_EQ): Delegate to EQ.
493
494 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
495
a0c6ef2d
JD
4962003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
497
498 * xterm.c (x_window_to_scroll_bar): Move check of display to
499 where window_id is compared.
500
859492c4
KS
5012003-11-17 Kim F. Storm <storm@cua.dk>
502
503 * dispextern.h (struct it): New member first_vpos.
504
505 * xdisp.c (start_display): Set it->first_vpos.
506 (try_window_id): Use first_vpos to start display in first _text_
507 line if no reusable lines at start of window with header line.
508
810f2256
JD
5092003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
510
7c402969 511 * w32fns.c (XPutPixel):
854c1a59
SM
512 * w32bdf.c (w32_init_bdf_font):
513 * sunfns.c (sel_read):
514 * process.c (Fmake_network_process):
515 * frame.c (store_frame_param):
516 * fontset.c (Fset_fontset_font):
517 * emacs.c (shut_down_emacs):
7c402969
JD
518 * ccl.c (ccl_driver): Remove period at end of error message.
519
a32e9bfd
JD
520 * config.in: Regenerate.
521
810f2256
JD
522 * xfns.c (x_window_to_frame, x_any_window_to_frame)
523 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
524 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
525 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
526 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
527
528 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
529
530 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
531 (XTmouse_position, handle_one_xevent): Pass Display* to
532 x_window_to_scroll_bar.
533 (x_window_to_scroll_bar): Take a Display* argument.
534 Check that display for frame is equal to Display* argument.
854c1a59 535 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
536 x_display_info_for_display instead. Use Display in xev instead
537 of GDK_DISPLAY.
538 (x_dispatch_event): Call x_display_info_for_display.
539 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
540 (x_connection_closed): Call xg_display_close for GTK.
541 (x_term_init): Call xg_display_open for additional displays.
542 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
543 for GTK.
544
545 * xmenu.c (single_menu_item, mouse_position_for_popup)
546 (x_activate_menubar): Formatting adjustments.
547
548 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
549 adjustments.
550
551 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
552 (xg_display_close, xg_create_default_cursor)
553 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
554 handling.
854c1a59
SM
555 (xg_left_ptr_cursor): Remove.
556 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
557 cursor here.
558 (xg_win_to_widget): Take Display* argument, call
559 gdk_xid_table_lookup_for_display.
560 (xg_create_frame_widgets, xg_get_file_name, create_menus)
561 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
562 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
563 in FRAME_X_DISPLAY_INFO.
564 (xg_get_scroll_id_for_window): Take Display* argument.
565 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 566 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
567
568 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
569 Display* argument also. Declare xg_display_open,
570 xg_display_close, xg_create_default_cursor.
571
0b03cc78
JD
5722003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
573
574 * xterm.c (x_detect_focus_change): Do not change focus frame for
575 Enter/LeaveNotify if the current focus frame has explicit focus.
576
77e688fa
KS
5772003-11-14 Kim F. Storm <storm@cua.dk>
578
579 * dispnew.c (update_text_area): Fix redisplay error when hscroll
580 is active and first glyph is only partially visible.
854c1a59 581
dd429b03
KH
5822003-11-13 Kenichi Handa <handa@m17n.org>
583
584 * xdisp.c (select_frame_for_redisplay): New function.
585 (redisplay_internal): Record also selected_frame for
586 unwind_redisplay. Call select_frame_for_redisplay before
587 redrawing each frame.
588 (unwind_redisplay): Argument changed to a cons.
589
6d9266f4
LT
5902003-11-12 Luc Teirlinck <teirllm@auburn.edu>
591
592 * fns.c (Fstring_to_multibyte): Doc fix.
593
80060eb3
KH
5942003-11-11 Kenichi Handa <handa@m17n.org>
595
596 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
597
74305183
JD
5982003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
599
600 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
601 program specified positions.
602
cfda993e
JD
6032003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
604
605 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
606
df211069
KH
6072003-11-08 Kenichi Handa <handa@m17n.org>
608
609 * Makefile.in (lisp): Add kannada.el.
610 (shortlisp): Likewise.
611
4307d534
KH
6122003-11-07 Kenichi Handa <handa@m17n.org>
613
854c1a59
SM
614 * coding.c (coding_allocate_composition_data):
615 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
616 (coding_restore_composition): Detect invalid composition data.
617 Give Fstring and Fvector a Lispy integer, not C int.
618
854c1a59
SM
6192003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
620
621 * floatfns.c (Flogb): Don't use VALMASK.
622
623 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
624 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
625
626 * lisp.h (XINT): Move the cast to clarify what is going on.
627 (GCTYPEMASK, XSETTYPE): Remove.
628 (XGCTYPE): Make it an alias of XTYPE.
629
d04103a1
JD
6302003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
631
632 * xterm.c (x_term_init): Fix formatting.
633
da18b5ac
JD
6342003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
635
636 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
637 and xg_did_tearoff.
638
639 * gtkutil.c: Remove variable xg_did_tearoff.
640 (xg_have_tear_offs): New function.
641 (tearoff_remove): Just decrease xg_detached_menus.
642 (tearoff_activate): Increase xg_detached_menus and call
643 tearoff_remove when tearoff is removed.
854c1a59 644 (xg_keep_popup): Remove function.
da18b5ac
JD
645 (create_menus): Give add_tearoff_p as argument to recursive
646 call to create_menus.
647 (xg_create_widget): Use variables instead of multiple
648 strcmp. Tell create_menus to create tear off only for
649 menu bar menus.
650 (xg_update_menubar): Change title for a detached menu also.
651 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
652 of deep_p.
653 (xg_initialize): Initialize xg_detached_menus, remove
654 initialization of xg_did_tearoff.
655
656 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
657 xg_have_tear_offs returns non-zero.
658 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
659 call to xg_keep_popup.
660
64d4923e
AC
6612003-11-01 Andrew Choi <akochoi@shaw.ca>
662
663 * macterm.c (XTread_socket): Handle menubar selection and grow
664 window only for mouseDown events.
854c1a59 665
6cc8bc07
JD
6662003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
667
668 * xterm.c (x_term_init): For GTK part, increase x_initialized
669 to check for more than one display. Use error instead of return 0.
670
043131c4
AC
6712003-10-31 Andrew Choi <akochoi@shaw.ca>
672
854c1a59 673 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
674 (copy_dysymtab): Call it.
675
bdda99a1
LT
6762003-10-31 Luc Teirlinck <teirllm@auburn.edu>
677
678 * eval.c (Fdefvaralias): Doc fix.
679
800f42ff 6802003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
681
682 * data.c (Fsetplist): Doc fix.
683
ef35b389
LK
6842003-10-14 Lute Kamstra <lute@gnu.org>
685
686 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 687
ef35b389 6882003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 689
07107abc
KS
690 * window.c (Fset_window_margins): Simplify arg checking.
691
f7005886
RS
6922003-10-13 Richard M. Stallman <rms@gnu.org>
693
694 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
695 (print_partial_compiled_pattern): Replace assert with a printout.
696 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
697
698 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
699
700 * window.c (Fset_window_margins): Allow only integers as args.
701 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
702 Doc fixes.
703
9c0c2af5
LK
7042003-10-13 Lute Kamstra <lute@gnu.org>
705
706 * window.c (Fset_window_fringes): Elaborate docstring.
707
3f080e4e
AC
7082003-10-12 Andrew Choi <akochoi@shaw.ca>
709
854c1a59 710 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 711
3f080e4e
AC
712 * s/darwin.h (GC_MARK_STACK): Define.
713
0aa513ed
JD
7142003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
715
716 * window.c (shrink_windows): New function.
717 (size_window): Call shrink_windows to calculate window sizes when
718 shrinking frame with more than one window.
719
6aa8858a
KS
7202003-10-12 Kim F. Storm <storm@cua.dk>
721
722 * xdisp.c (compute_fringe_widths): Doc fix.
723
c2164d91
KH
7242003-10-08 Kenichi Handa <handa@m17n.org>
725
854c1a59 726 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 727
f82ac129
KH
7282003-10-07 Kenichi Handa <handa@m17n.org>
729
730 * coding.c (Qcoding_system_define_form): New variable.
731 (syms_of_coding): Intern and staticpro it.
732 (Fcheck_coding_system): Try to autoload the definition of
733 CODING-SYSTEM.
734
9296c947
LT
7352003-10-05 Luc Teirlinck <teirllm@auburn.edu>
736
737 * fns.c (Frequire): Doc fix.
738
c1f0671a
JD
7392003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
740
3d8c3826
JD
741 * xfns.c (Fx_send_client_event): New function as a base for
742 manipulating extended window manager hints.
6dc15d98 743 (Fx_send_client_event): Remove unused variable s.
3d8c3826 744
068ae0fd
JD
745 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
746 that function is removed.
747
748 * xterm.c (x_set_offset): Use move_offset_left/top instead of
749 x/y_pixels_outer_diff.
750 (x_check_expected_move): Calculate move_offset_left/top.
751
752 * xterm.h (struct x_output): New members: move_offset_top/left.
753
854c1a59 754 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
755 call x_set_offset directly.
756
757 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
758
96f09305
JD
759 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
760
761 * xterm.c (x_delete_display): Free font names and font_encoder
762 in dpyinfo->font_table.
763
854c1a59
SM
764 * xfns.c (Fx_close_connection): Only call XFreeFont here.
765 Move xfree of font names to x_delete_display.
96f09305 766
c1f0671a
JD
767 * xterm.h (struct x_display_info): New member, wm_type.
768 (struct x_output): New members, expected_top/left and
769 check_expected_move.
770
771 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
772 is received.
854c1a59
SM
773 (handle_one_xevent): Rename x_check_expected_move from
774 x_check_fullscreen_move.
c1f0671a
JD
775 (x_set_offset): Only add WM decoration sizes to modified_top/left
776 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 777 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
778 Removed fullscreen specific code. Use check_expected_move,
779 expected_left/top instead. Also, set wm_type.
780 (x_term_init): Initialize wm_type to unknown.
781
782 * frame.c (x_fullscreen_move): Remove addition of WM decoration
783 sizes to move_x/y.
784
be2fdba9
KH
7852003-10-03 Kenichi Handa <handa@m17n.org>
786
787 * macterm.c (x_load_font): Clear all members of FONTP before start
788 filling them.
789
7902003-10-02 Kenichi Handa <handa@m17n.org>
791
792 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
793 before calling find_ccl_program_func. Call find_ccl_program_func
794 only when fontp->font_encoder is not NULL.
795
796 * xterm.c (x_load_font): Clear all members of FONTP before start
797 filling them.
798
26a6e439
JPW
7992003-10-03 John Paul Wallington <jpw@gnu.org>
800
801 * keymap.c (map_keymap): Don't abort when binding is a vector.
802
0d4c2dc2
JR
8032003-10-02 Jason Rumney <jasonr@gnu.org>
804
854c1a59
SM
805 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
806 Sync dependencies with Makefile.in.
a63cf46f
JR
807 (alloca.o): Remove.
808
0d4c2dc2
JR
809 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
810 filling them.
811
812 * w32bdf.c (w32_load_bdf_font): Likewise.
813
ab8f7d5c
RS
8142003-09-30 Richard M. Stallman <rms@gnu.org>
815
816 * term.c (set_tty_color_mode): Calculate current_mode_spec
817 regardless of value of VAL.
818
854c1a59 819 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
820 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
821 Handle over_used when splitting UNDER.
822
8232003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
824
825 * regex.c (regex_compile): Free the stack when returning from function.
826
3413f972
KH
8272003-09-28 Kenichi Handa <handa@m17n.org>
828
829 * fontset.c (Finternal_char_font): Change return value to
830 cons (FONT-NAME . GLYPH-CODE).
831
40409f05
EZ
8322003-09-28 Eli Zaretskii <eliz@elta.co.il>
833
834 * term.c (tty_setup_colors): Treat any negative argument as -1.
835
f98ddc99
KH
8362003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
837
838 * process.c (send_process): Delete unused temp_buf.
839
66c8f1a8
DL
8402003-09-26 Dave Love <fx@gnu.org>
841
842 * xterm.c (x_bitmap_mask): Declare.
843
ca716c26
DL
8442003-09-25 Dave Love <fx@gnu.org>
845
846 * Makefile.in (fns.o): Depend on md5.h.
847
fbe57420
KS
8482003-09-25 Kim F. Storm <storm@cua.dk>
849
850 * window.c (set_window_buffer): Fix redisplay problems when
851 switching between buffers with different display margin widths.
852
ef6ae4ff
KS
8532003-09-23 Kim F. Storm <storm@cua.dk>
854
855 * process.c (set_socket_option): Fix :bindtodevice option.
856 (Fset_network_process_option): Update process contact list when
857 setting option succeeds.
858 (Fmake_network_process): Doc fix.
859
68e03c1c
DL
8602003-09-23 Dave Love <fx@gnu.org>
861
7146d1c1 862 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 863
2f809aae
EZ
8642003-09-22 Eli Zaretskii <eliz@elta.co.il>
865
866 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
867 color mode is an integer number (it could be -1).
868
8fe7d8c8
RS
8692003-09-22 Richard M. Stallman <rms@gnu.org>
870
871 * intervals.c (graft_intervals_into_buffer): Correct the main loop
872 in the case where OVER is longer than UNDER.
873
2f71b5ea
MY
8742003-09-22 Masatake YAMATO <jet@gyve.org>
875
7146d1c1 876 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 877 `vertical_type'.
7146d1c1 878
0c4da023
KS
8792003-09-21 Kim F. Storm <storm@cua.dk>
880
881 * frame.c (Vdefault_frame_scroll_bars): New variable.
882 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
883 (syms_of_frame): DEFVAR_LISP it, and initialize according to
884 window-system default scroll bar position.
885
b648413b
KS
886 * window.c (Fwindow_scroll_bars): Doc fix.
887
8f5b9e34
JD
8882003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
889
854c1a59 890 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 891
b0f23edf
RS
8922003-09-19 Richard M. Stallman <rms@gnu.org>
893
894 * atimer.h: Don't include lisp.h.
895 (P_): Define it here (as well as elsewhere).
896
897 * print.c (Fprin1_to_string): Move the PRINTPREPARE
898 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
899
900 * data.c (Fvariable_binding_locus): New function.
901 (syms_of_data): defsubr it.
902 (Flocal_variable_p): Delete duplicate call to indirect_variable.
903
e1283999
DL
9042003-09-18 Dave Love <fx@gnu.org>
905
ad5f3636
DL
906 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
907
e1283999
DL
908 * process.c (Fnetwork_interface_info): Fix type error.
909 (Fnetwork_interface_list): Doc fix.
910 (read_process_output, read_process_output): Delete unused var.
911
b8c7fd71
KS
9122003-09-17 Kim F. Storm <storm@cua.dk>
913
914 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
915 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
916 (Fnetwork_interface_info): Check that ifreq struct has required
917 fields before accessing them; this requires that those fields are
918 defined as macros, which may be too restrictive on some platforms,
919 but it is better than failing on other platforms.
920 (syms_of_process): Only defsubr above fns when included.
921
11e0a411
DL
9222003-09-17 Dave Love <fx@gnu.org>
923
924 * unexalpha.c: Don't include varargs.h.
925
e9c50801
KS
9262003-09-17 Kim F. Storm <storm@cua.dk>
927
928 * process.c (Fset_process_sentinel): Add sentinel to childp plist
929 for network process.
930 (socket_options): Add `:' prefix to option names. Add optbit field.
931 (set_socket_option): Remove no_error arg and special handling of s < 0.
932 Return 1<<optbit for known option, 0 for unknown.
933 Do not interpret 0 as false for boolean option (only nil).
934 Pass failed option and value to report_file_error.
7146d1c1 935 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
936 (Fset_network_process_option): New function to set just one option.
937 (Fmake_network_process): Allow :coding arg to be a cons.
938 Allow :server arg to be an integer specifying backlog size.
939 Remove :options arg, and allow options to be specified directly
940 as :KEY, VALUE pairs. Parse these options before binding socket.
941 As before, :reuseaddr t is default for a server process, but this
942 can now be disabled by specifying :reuseaddr nil.
943 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
944 (init_process): Availability of network options is now checked with
945 simpler syntax (featurep 'make-network-process :OPTION); use loop to
946 setup features.
947 (syms_of_process): Fix defsubr's for the replaced functions.
948
a0fc3644
DL
9492003-09-16 Dave Love <fx@gnu.org>
950
951 * Makefile.in: Depend on coding.h.
952
6df2a645
KS
9532003-09-14 Kim F. Storm <storm@cua.dk>
954
955 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
956 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
957 (syms_of_process): Defsubr them.
958
959 * config.in: Regenerate.
7146d1c1
SM
960
9612003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
962
963 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
964 * m/news-r6.h (XUNMARK): Remove.
965 * m/mips.h (XUNMARK): Remove.
966 * m/mips-siemens.h (XUNMARK): Remove.
967 * m/iris4d.h (XUNMARK): Remove.
968 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
969
0930c1a1
SM
9702003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
971
31003b9e
SM
972 * lisp.h (VALBITS): Don't remove 1 for the markbit.
973 (union Lisp_Object): Use unsigned int for types. Remove markbit.
974 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
975 (XTYPE): Use unsigned right-shift.
976 (XMARKBIT, XMARK, XUNMARK): Remove.
977
0930c1a1
SM
978 * alloc.c (init_intervals, init_symbol, init_marker):
979 Don't preallocate anything.
980 (Fgarbage_collect, mark_object): Ignore the markbit.
981
982 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
983
19bb0fcd 9842003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
985
986 * xdisp.c (pint2hrstr): New function.
987 (decode_mode_spec): Add `%i' and `%I' specs.
988 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
989 for `mode-line-format'.
990
03bb6a06
AS
9912003-09-07 Andreas Schwab <schwab@suse.de>
992
993 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
994 avoid warning.
995
2063d89c
EZ
9962003-09-07 Eli Zaretskii <eliz@elta.co.il>
997
0930c1a1 998 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 999
ed159bbf
KS
10002003-09-03 Kim F. Storm <storm@cua.dk>
1001
1002 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
1003 change (superseded by 2002-08-30 change); the default blink-off
1004 cursor is now again "no cursor".
1005
fe64a394
JR
10062003-09-01 Jason Rumney <jasonr@gnu.org>
1007
1008 * makefile.w32-in (alloca.o): Remove.
1009 (coding.o): Depend on intervals.h
1010 (emacs.o, bytecode.o): Depend on window.h
1011
c0175e24
DL
10122003-09-01 Dave Love <fx@gnu.org>
1013
1014 * Makefile.in (alloca.o): Remove commands.
1015 (coding.o): Depend on intervals.h composite.h window.h.
1016 (emacs.o): Depend on window.h keyboard.h keymap.h.
1017 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
1018 (bytecode.o): Depend on window.h.
1019
a24d4cb2
JR
10202003-08-31 Jason Rumney <jasonr@gnu.org>
1021
4bc2315e
JR
1022 * w32term.c (w32_per_char_metric): Allow cached metrics to be
1023 returned even when font_type is unknown.
1024
a24d4cb2
JR
1025 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
1026
9d35adc7
JD
10272003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1028
1029 * xterm.c (x_term_init): Initialize new fields in x_display_info.
1030
1031 * xterm.h (struct x_display_info): Add red/green/blue_bits and
1032 *_offset.
1033
1034 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
1035 calculate pixel value.
1036
6f68b035
GM
10372003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
1038
0930c1a1
SM
1039 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
1040 Don't tell redisplay display is accurate when it's actually been
1041 paused for pending input.
6f68b035 1042
4828b4d7
RS
10432003-08-29 Richard M. Stallman <rms@gnu.org>
1044
1045 * dispnew.c (adjust_glyph_matrix): Call window_box
1046 whenever W is nonzero.
1047
1048 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
1049 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 1050 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
1051 Use indirect_variable to trace thru variable aliases.
1052
1053 * config.in: Updated.
1054
1055 * callint.c (Fcall_interactively): Save and restore
1056 Vthis_command, Vthis_original_command, real_this_command,
1057 and current_kboard->Vlast_command.
1058
1059 * abbrev.c (Fexpand_abbrev): Insert before deleting.
1060
e019878d
GM
10612003-08-29 Gerd Moellmann <gerd@gnu.org>
1062
1063 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
1064
85478bc6
KH
10652003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
1066
0930c1a1 1067 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
1068 (decode_coding_sjis_big5): Likewise.
1069
07ce82d3
JR
10702003-08-27 Jason Rumney <jasonr@gnu.org>
1071
d3703de3
JR
1072 * w32.c (sys_pipe): Protect against file descriptor overflow.
1073
ee4a01d1
JR
1074 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
1075
07ce82d3
JR
1076 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
1077
72d19c66
LK
10782003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
1079
1080 * xfns.c (Vgtk_version_string): New variable.
1081 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
1082
5459e42a
EZ
10832003-08-24 Eli Zaretskii <eliz@elta.co.il>
1084
0930c1a1 1085 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 1086
5459e42a
EZ
1087 * Makefile.in (msdos.o): Depend on intervals.h.
1088
0930c1a1 1089 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 1090
231d6cfb
JD
10912003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1092
1093 * xterm.h (struct x_display_info): New fields: client_leader_window
1094 and Xatom_wm_client_leader.
1095
1096 * xterm.c (x_initialize): Move call to x_session_initialize to ...
1097 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
1098
1099 * xsmfns.c (create_client_leader_window): New function.
1100 (x_session_initialize): Call create_client_leader_window, take
1101 dpyinfo as argument.
1102
1103 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
1104
1105 * Makefile.in (xsmfns.o): Add more depenedencies.
1106
afa88464
DL
11072003-08-21 Dave Love <fx@gnu.org>
1108
1109 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
1110
f730033e
KH
11112003-08-21 Kenichi Handa <handa@m17n.org>
1112
1113 * term.c (term_init): Fix previous change; don't rely on the
1114 length of `buffer' if TERMINFO is defined.
1115
6dca786c
DL
11162003-08-20 Dave Love <fx@gnu.org>
1117
1118 * atimer.h: Include lisp.h.
1119
1120 * lisp.h (EMACS_LISP_H): New.
1121 (popup_activated_flag): Don't declare.
1122
1123 * alloca.c: Some merging with gnulib. Change logic and doc
1124 concerning (x)malloc/(x)free -- no longer Emacs-specific.
1125 [DO_BLOCK_INPUT]: Don't include lisp.h.
1126 (xmalloc, xfree): Declare.
1127 (malloc): Don't declare.
1128
0930c1a1 1129 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
1130 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
1131 atimer.h, blockinput.h.
1132
1133 * alloc.c (lisp_align_malloc): Change type of `aligned'.
1134
1135 * alloca.s: Removed.
1136
3a06a6d9
RS
11372003-08-19 Gerd Moellmann <gerd@gnu.org>
1138
1139 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
1140 use -lncurses.
1141
1142 * term.c (term_init): Use a buffer of size 4096 for tgetent since
1143 FreeBSD returns something longer than 2044. Abort if the end of
1144 the buffer is overwritten.
1145
27eeee55
MB
11462003-08-19 Miles Bader <miles@gnu.org>
1147
1148 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
1149
2f297815
GM
11502003-08-19 Gerd Moellmann <gerd@gnu.org>
1151
f4446bbf
GM
1152 * alloc.c (lisp_align_malloc): Check for memory full when
1153 allocating ablocks, which also avoids freeing a pointer into an
1154 ablocks structure.
1155
1156 * puresize.h (BASE_PURESIZE): Increase to 1100000.
1157
0930c1a1 1158 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 1159
0e7d7aae
RS
11602003-08-16 Richard M. Stallman <rms@gnu.org>
1161
1162 * editfns.c (Fencode_time): Doc fix.
1163
11642003-08-16 David Ponce <david@dponce.com>
1165
1166 * fileio.c (Fwrite_region): Fix conditional expression to issue
1167 the right message.
1168
11692003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
1170
1171 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 1172 Set default value to 1.
0e7d7aae 1173
5d551295
KH
11742003-08-15 Kenichi Handa <handa@m17n.org>
1175
1176 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
1177 what autoscaled.
1178 (best_matching_font): Once we find a better scalable font, set
1179 non_scalable_has_exact_height_p to 1.
1180 (try_font_list): Call try_alternative_families to try any family
1181 with the given registry.
1182
1661e56b
AS
11832003-08-09 Andreas Schwab <schwab@suse.de>
1184
f29181dc
AS
1185 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
1186
1661e56b
AS
1187 * print.c (print_string): Fix printing of multibyte string with
1188 nontrivial printcharfun.
1189
465aa50a
JD
11902003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1191
1192 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
1193
1194 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
1195
e430e5ba
KH
11962003-07-31 Kenichi Handa <handa@m17n.org>
1197
1198 * process.c (read_process_output): Return the actually read bytes
1199 instead of the result of decoding.
1200
97e7188e
KH
12012003-07-31 Kenichi Handa <handa@m17n.org>
1202
1203 * xterm.h (struct x_bitmap_record): New member have_mask.
1204
1205 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
1206 to 0.
1207 (x_create_bitmap_from_file): Likewise.
1208 (x_destroy_bitmap): Check have_mask member before freeing a mask.
1209 (x_destroy_all_bitmaps): Likewise.
1210 (x_create_bitmap_mask): Set have_mask member to 1.
1211
b53094d6
RS
12122003-07-30 Richard M. Stallman <rms@gnu.org>
1213
1214 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
1215
631f2082
JD
12162003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1217
1218 * gtkutil.c (xg_mark_data): Update calls to mark_object.
1219
c855f2ca
RS
12202003-07-29 Richard M. Stallman <rms@gnu.org>
1221
1222 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
1223 Conditionalize XIM code on HAVE_XIM.
1224
1225 * fns.c (Fclear_string): New function.
1226 (syms_of_fns): defsubr it.
1227
17e6d491
KH
12282003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
1229
0930c1a1 1230 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 1231
29ea8ae9
SM
12322003-07-22 Stefan Monnier <monnier@cs.yale.edu>
1233
1234 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
1235
1236 * buffer.c (delete_all_overlays): New function.
1237 * buffer.h (delete_all_overlays): Declare.
1238 * coding.c (run_pre_post_conversion_on_str):
1239 * print.c (temp_output_buffer_setup):
1240 * fileio.c (Finsert_file_contents):
1241 * minibuf.c (get_minibuffer): Use it.
1242
1dd7ccf2
AC
12432003-07-22 Andrew Choi <akochoi@shaw.ca>
1244
1245 * unexmacosx.c (unexec_regions_sort_compare):
1246 (unexec_regions_merge): New functions. Sort and merge unexec
1247 regions before dumping them.
1248
f57bd967
DL
12492003-07-22 Dave Love <fx@gnu.org>
1250
1251 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
1252
7cdee936
SM
12532003-07-21 Stefan Monnier <monnier@cs.yale.edu>
1254
1255 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
1256 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
1257 MARKBIT as the gcmarkbit for strings.
1258
e50886d3
RS
12592003-07-21 Richard M. Stallman <rms@gnu.org>
1260
1261 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
1262
29ea8ae9 1263 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
1264 (syms_of_fns): Corresponding change.
1265
1266 * alloc.c (syms_of_alloc): Doc fixes.
1267
12682003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
1269
1270 * s/netbsd.h: Use -Wl syntax.
1271
fdc39b59
RS
12722003-07-17 Richard M. Stallman <rms@gnu.org>
1273
1274 * xterm.c (xim_initialize): Redo 6/24 change.
1275
9c53385f
SM
12762003-07-15 Stefan Monnier <monnier@cs.yale.edu>
1277
1278 * buffer.c (copy_overlays): Use EMACS_INT for positions.
1279 (Fswitch_to_buffer): Don't signal an error when switching to the same
1280 buffer in a dedicated window.
1281
1282 * alloc.c: Use bitmaps for cons, as was done for floats.
1283 (init_float, init_cons): Let the normal code allocate the first block.
1284 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
1285 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
1286 New macros.
1287 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
1288 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
1289 (live_cons_p): Check the pointer is not past the `conses' array.
1290 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
1291 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
1292 (survives_gc_p): Use CONS_MARKED_P and simplify.
1293 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
1294
dde13196
PE
12952003-07-13 Paul Eggert <eggert@twinsun.com>
1296
1297 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
1298 puts it into BSS instead, at least on Solaris 8 and 9.
1299 This is a valid optimization, and it may occur on other platforms,
1300 so Emacs should not assume that initializing a static variable to
1301 zero puts it into data.
1302 * alloc.c (pure, staticvec):
1303 Initialize these arrays to nonzero, so that they're not
1304 put into BSS by that optimization.
1305
a801bc34
SM
13062003-07-13 Stefan Monnier <monnier@cs.yale.edu>
1307
1308 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
1309 (lisp_align_malloc): Use posix_memalign is available.
1310 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
1311 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
1312 for consistency. Update users.
1313
0c8b2afa
RS
13142003-07-13 Richard M. Stallman <rms@gnu.org>
1315
1316 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
1317
668c2ab0
JB
13182003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
1319
1320 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
1321 and use the Gtk+ function gtk_window_icon_from_file if available.
1322
1323 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
1324 handle mask of bitmaps.
1325 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
1326 mask property.
1327 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
1328
1329 * xterm.h (xg_set_icon): New function.
1330
800bebe3
RS
13312003-07-12 Paul Eggert <eggert@twinsun.com>
1332
1333 * unexelf.c (unexec): Consider a section to precede the .bss
1334 section if its addresses overlap that of .bss.
1335
69e38995
RS
13362003-07-12 Richard M. Stallman <rms@gnu.org>
1337
1338 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
1339
1340 * config.in (HAVE_CRTIN): Add #undef.
1341 (INLINE): Really inline only if OPTIMIZE is defined.
1342
1343 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
1344 END_FILES_1.
1345 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 1346 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
1347
1348 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
1349 (TERMINFO): Define.
1350 (LIBS_TERMCAP): Define.
1351 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
1352
1353 * xfns.c: Include libpng/png.h instead of png.h.
1354
f1d0c238
AS
13552003-07-11 Andreas Schwab <schwab@suse.de>
1356
1357 * buffer.c (modify_overlay): Update prototype.
1358 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
1359 Likewise.
1360
5f6bf5fe
SM
13612003-07-09 Stefan Monnier <monnier@cs.yale.edu>
1362
1363 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
1364 (struct interval): Move to intervals.h.
1365 (struct Lisp_Marker): Use EMACS_INT for position info.
1366 (forward_point): Remove prototype of defunct function.
1367 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
1368 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
1369 (syms_of_textprop, set_text_properties): Remove prototypes that are
1370 already in intervals.h.
1371
1372 * intervals.h (struct interval): Move from lisp.h.
1373 Use EMACS_INT for position and size info.
1374
1375 * coding.c: Include intervals.h for Fset_text_properties.
1376
1377 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
1378 position and length information.
1379
2765b457
SM
13802003-07-09 Stefan Monnier <monnier@cs.yale.edu>
1381
1382 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
1383 position and length information.
1384
2410d73a
SM
13852003-07-09 Stefan Monnier <monnier@cs.yale.edu>
1386
1387 Change overlays_after and overlays_before so the overlays themselves
1388 are linked into lists, rather than using cons cells. After all each
1389 Lisp_Misc already occupies 5 words, so we can add a `next' field to
1390 Lisp_Overlay for free and save up one cons cell per overlay (not
1391 to mention one indirection when traversing the list of overlay).
1392
1393 * lisp.h (struct Lisp_Overlay): New field `next'.
1394
1395 * buffer.h (struct buffer): Change overlays_before and overlays_after
1396 from Lisp lists of overlays to pointers to overlays.
1397
1398 * buffer.c (overlay_strings, recenter_overlay_lists):
1399 Fix typo in eassert in last commit.
1400 (unchain_overlay): New function.
1401 (add_overlay_mod_hooklist): Use AREF.
1402 (copy_overlays, reset_buffer, overlays_at, overlays_in)
1403 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
1404 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
1405 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
1406 (report_overlay_modification, evaporate_overlays, init_buffer_once):
1407 Adjust to new type of overlays_(before|after).
1408
1409 * alloc.c (mark_object): Mark the new `next' field of overlays.
1410 (mark_buffer): Manually mark the overlays_(after|before) fields.
1411
1412 * coding.c (run_pre_post_conversion_on_str):
1413 * editfns.c (overlays_around):
1414 * xdisp.c (load_overlay_strings):
1415 * fileio.c (Finsert_file_contents):
1416 * indent.c (current_column):
1417 * insdel.c (signal_before_change, signal_after_change):
1418 * intervals.c (set_point_both):
1419 * print.c (temp_output_buffer_setup): Use new type for
1420 overlays_(before|after).
1421
04812929
SM
14222003-07-08 Stefan Monnier <monnier@cs.yale.edu>
1423
1424 * buffer.c (report_overlay_modification): Don't run hooks while
1425 traversing the list of overlays.
1426
1427 * buffer.h (struct buffer): Use an int for overlay_center.
1428 (overlays_at, evaporate_overlays, recenter_overlay_lists)
1429 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
1430
1431 * buffer.c (reset_buffer, recenter_overlay_lists)
1432 (adjust_overlays_for_insert, adjust_overlays_for_delete)
1433 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
1434 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
1435 (overlays_at, evaporate_overlays, recenter_overlay_lists)
1436 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
1437
1438 * xdisp.c (fast_find_position): Remove unused var.
1439
1440 * cmds.c (Qexpand_abbrev): New sym.
1441 (syms_of_cmds): Initialize it.
1442 (internal_self_insert): Use it to call expand-abbrev.
1443
2e7ecf15
KS
14442003-07-09 Kim F. Storm <storm@cua.dk>
1445
1446 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
1447 was configured with --without-xim.
42f81f64 1448 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 1449
c6de56a0
RS
14502003-07-07 Richard M. Stallman <rms@gnu.org>
1451
1452 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
1453
1454 * alloc.c (Fgarbage_collect): Doc fix.
1455
b93fb365
KH
14562003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
1457
1458 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
1459
bfe1a3f7
SM
14602003-07-06 Stefan Monnier <monnier@cs.yale.edu>
1461
04812929
SM
1462 * minibuf.c (read_minibuf): UNGCPRO before returning.
1463 (Ftry_completion, Fall_completions): Doc fix.
1464
bfe1a3f7
SM
1465 * alloc.c (live_float_p): Check that p is not past the `floats' array,
1466 now that `floats' is not the last element of the struct any more.
1467
ee79d1aa
JR
14682003-07-06 Jason Rumney <jasonr@gnu.org>
1469
1470 * w32term.h (ClipboardSequence_Proc): New type.
1471
1472 * w32fns.c (clipboard_sequence_fn): New variable.
1473 (globals_of_w32fns): Initialize it.
1474
1475 * w32select.c (last_clipboard_sequence_number): New variable.
1476 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
1477 number if possible.
1478
49723c04
SM
14792003-07-06 Stefan Monnier <monnier@cs.yale.edu>
1480
4698665f
SM
1481 * m/amdx86-64.h (MARKBIT):
1482 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
1483 MARKBIT and ARRAY_MARK_FLAG any more.
1484
1485 * m/hp800.h (XSETMARKBIT):
1486 * m/sr2k.h (XSETMARKBIT):
1487 * lisp.h (XSETMARKBIT): Remove unused macro.
1488
49723c04
SM
1489 * lisp.h (mark_object): Change prototype.
1490
1491 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
1492 (last_marked): Change accordingly.
1493 (mark_interval, mark_maybe_object, mark_maybe_pointer)
1494 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
1495 (mark_buffer): Update calls to mark_object.
1496
1497 * bytecode.c (mark_byte_stack):
1498 * fns.c (sweep_weak_table):
1499 * keyboard.c (mark_kboards): Update calls to mark_object.
1500
1d660eca
JR
15012003-07-06 Jason Rumney <jasonr@gnu.org>
1502
1503 * alloc.c (struct ablock): Only include padding when there is some.
1504
618b5ae4
SM
15052003-07-04 Stefan Monnier <monnier@cs.yale.edu>
1506
1507 * alloc.c (ALIGN): Add casts to simplify usage.
1508 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
1509 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
1510 (struct ablock, struct ablocks): New types.
1511 (free_ablock): New global var.
1512 (lisp_align_malloc, lisp_align_free): New functions.
1513 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
1514 (struct float_block): Reorder and add gcmarkbits.
1515 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
1516 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
1517 (init_float, make_float): Use lisp_align_malloc.
1518 (free_float, live_float_p): Don't use `type' any more.
1519 (make_float): Use FLOAT_UNMARK to access to mark bit.
1520 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
1521 Use FLOAT_MARKED_P to access the mark bit.
1522 (pure_alloc): Simplify use of ALIGN.
1523 (mark_object): Use FLOAT_MARK to access the mark bit.
1524 (gc_sweep): Use new macros to access the float's mark bit.
1525 (init_alloc_once): Init free_ablock.
1526
1527 * lisp.h (struct Lisp_Float): Remove unused field `type'.
1528
3ef06d12
SM
15292003-06-27 Stefan Monnier <monnier@cs.yale.edu>
1530
1531 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
1532 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
1533 (allocate_buffer): Move.
1534 (string_bytes): Don't mask markbit of `size_byte'.
1535 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
1536 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
1537 Use the `size' field of buffers (rather than the `name' field) for
1538 the mark bit, as is done for all other vectorlike objects.
1539 Use the new macros to access the mark bit of vectorlike objects.
1540
e81043aa
RS
15412003-06-26 Richard M. Stallman <rms@gnu.org>
1542
1543 * puresize.h (BASE_PURESIZE): Increment base size.
1544
1545 * xdisp.c (fast_find_position): Enable Gerd's new definition.
1546
1547 * xterm.c (xim_initialize): Undo previous change.
1548
2d0834cc
SM
15492003-06-26 Stefan Monnier <monnier@cs.yale.edu>
1550
1551 * alloc.c (survives_gc_p): Simplify.
1552
1553 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
1554
1555 * window.c (Fset_window_dedicated_p): Simplify.
1556 (display_buffer_1): Don't raise the win from which minibuf was entered.
1557 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
1558 (Fminibuffer_selected_window): Simplify.
1559
1560 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
1561
1562 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
1563 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
1564
1565 * insdel.c (check_markers, adjust_markers_for_delete)
1566 (adjust_markers_for_insert, adjust_markers_for_replace)
1567 (prepare_to_modify_buffer, RESTORE_VALUE):
1568 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
1569 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
1570 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
1571 * alloc.c (Fmake_marker, free_marker, gc_sweep):
1572 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
1573 * editfns.c (save_excursion_restore, transpose_markers):
1574 * window.c (delete_window):
1575 * xdisp.c (message_dolog): Update for new types.
1576
d54ae3d8
JD
15772003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1578
a5f696ac
JD
1579 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
1580 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 1581 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
1582
1583 * frame.c (make_frame): Initialize default_face_done_p.
1584
1585 * frame.h (struct frame): Add default_face_done_p.
1586
d54ae3d8
JD
1587 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
1588 will be defined.
1589
2336fe58
SM
15902003-06-25 Stefan Monnier <monnier@cs.yale.edu>
1591
1592 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
1593 Initialize the new field `gcmarkbit'.
1594 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
1595 (mark_interval_tree): Don't mark the tree separately from the nodes.
1596 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
1597 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
1598 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
1599
1600 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
1601 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
1602 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
1603 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
1604 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
1605
bcea31c2
DL
16062003-06-24 Dave Love <fx@gnu.org>
1607
1608 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
1609
1610 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
1611 from gnulib.
1612
2601f59e
RS
16132003-06-21 Richard M. Stallman <rms@gnu.org>
1614
1615 * fileio.c (Fwrite_region): Alternate messages
1616 for append and partial write.
1617
1618 * keyboard.c (read_key_sequence): When converting upcase fn key to
1619 downcase, update fkey and keytran so `backspace' gets translated.
1620
1621 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
1622
1623 * process.c (wait_reading_process_input): Don't signal SIGIO
1624 in batch mode.
1625
b5d2c621
KH
16262003-06-17 Kenichi Handa <handa@m17n.org>
1627
1628 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
1629 composite.h.
1630
1631 * xselect.c: Don't include charset.h, coding.h, composite.h.
1632 (Qforeign_selection): New variable.
1633 (syms_of_xselect): Intern and static it.
1634 (selection_data_to_lisp_data): Return a unibyte string made from
1635 data with `foreign-selection' text property.
1636
6793bc63
SM
16372003-06-15 Stefan Monnier <monnier@cs.yale.edu>
1638
1639 * termhooks.h (EVENT_INIT): New macro.
1640
1641 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
1642
1643 * alloc.c (mark_kboards): Move to keyboard.c.
1644
1645 * keyboard.c (record_asynch_buffer_change, read_avail_input):
1646 * xterm.c (x_dispatch_event):
1647 * xmenu.c (find_and_call_menu_selection):
1648 * xdisp.c (handle_tool_bar_click):
1649 * w32menu.c (menubar_selection_callback):
1650 * sysdep.c (kbd_input_ast, read_input_waiting):
1651 * msdos.c (dos_rawgetc):
1652 * macterm.c (mac_check_for_quit_char):
1653 * macmenu.c (menubar_selection_callback):
1654 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
1655 data to kbd_buffer_store_event.
1656
b3ea810c
KS
16572003-06-15 Kim F. Storm <storm@cua.dk>
1658
1659 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 1660 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 1661
b8f75eda
KG
16622003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
1663
1664 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
1665
ba92ce48
KH
16662003-06-12 Kenichi Handa <handa@m17n.org>
1667
1668 * fileio.c (Fwrite_region): Save and restore restriction.
1669
b80263be
DL
16702003-06-12 Dave Love <fx@gnu.org>
1671
1672 * alloca.c (alloca): Declare arg as size_t.
1673
6793bc63
SM
1674 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
1675 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 1676
b23c0a83
DL
16772003-06-11 Dave Love <fx@gnu.org>
1678
1679 * search.c (shrink_regexp_cache): Use xrealloc.
1680 (syms_of_search): Use xmalloc.
1681
700e47c2
KS
16822003-06-10 Kim F. Storm <storm@cua.dk>
1683
1684 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
1685 Adjust phys_cursor.x to be relative to window box, rather than
1686 text area before checking -- to ensure cursor is redrawn when
1687 exposing window.
1688 Note: This also fixes a similar (older) bug if display margins
1689 are present.
1690
f11aa0b2
KH
16912003-06-06 Kenichi Handa <handa@m17n.org>
1692
1693 * coding.c (encoding_buffer_size): If coding->type is
1694 coding_type_ccl, double magnification on CRLF encoding.
1695
3d143690
JR
16962003-06-06 Jason Rumney <jasonr@gnu.org>
1697
1698 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
1699 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
1700
1701 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
1702 Mac too.
1703
f16205ca
DL
17042003-06-05 Dave Love <fx@gnu.org>
1705
b23c0a83
DL
1706 * strftime.c: Merge changes from gnulib.
1707
f16205ca
DL
1708 * mktime.c (__mktime_internal): Merge changes from gnulib
1709 involving year 69 and dst2.
1710
1711 Changes to merge with gnulib version and be consistent with the
1712 autoconf test:
1713
6793bc63
SM
1714 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
1715 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
1716 [HAVE_LOCALE_H]: Include locale.h.
1717 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
1718
9b87a0bc
KS
17192003-06-05 Kim F. Storm <storm@cua.dk>
1720
1721 * window.c (coordinates_in_window): Convert X and Y to window
1722 relative coordinates inside mode-line and header-line parts.
1723 Convert X and Y to margin area relative coordinates inside left
1724 and right display margin parts.
1725
5a8a15ec
JR
17262003-06-05 Jason Rumney <jasonr@gnu.org>
1727
1728 * w32fns.c (add_system_logical_colors_to_map): New function.
1729 (Fx_open_connection): Use it.
1730
01ed8ff1
SM
17312003-06-04 Stefan Monnier <monnier@cs.yale.edu>
1732
1733 * process.c (allocate_pty): Revert part of the previous patch.
1734 (Faccept_process_output): Simplify.
1735
b427b65d
JR
17362003-06-04 Jason Rumney <jasonr@gnu.org>
1737
1738 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
1739
1740 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
1741 (lispy_mouse_wheel_names): Remove.
1742 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
1743 Always define drag_and_drop_syms.
1744
1745 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
1746 WHEEL_EVENT events.
1747
914a8c47
SM
17482003-06-03 Stefan Monnier <monnier@cs.yale.edu>
1749
01ed8ff1
SM
1750 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
1751
914a8c47
SM
1752 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
1753
adcb132c
JD
17542003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1755
1756 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
1757 menu item label.
1758
be781fa7
RS
17592003-06-03 Richard M. Stallman <rms@gnu.org>
1760
1761 * window.c (Fwindow_edges): Doc fix.
1762 (Fwindow_pixel_edges, Fwindow_inside_edges)
1763 (Fwindow_inside_pixel_edges): New functions.
1764 (syms_of_window): defsubr them.
1765
1766 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
1767 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
1768
914a8c47
SM
17692003-06-02 Stefan Monnier <monnier@cs.yale.edu>
1770
1771 * dispnew.c (Fsit_for): Don't lie about the number of args.
1772
5b07197a
DL
17732003-06-02 Dave Love <fx@gnu.org>
1774
1775 * callproc.c: Use HAVE_FCNTL_H, not USG5.
1776 (syms_of_callproc) <process-environment>: Doc fix.
1777
1778 * doc.c: Use HAVE_FCNTL_H, not USG5.
1779
1780 * xfaces.c (font_rescale_ratio): Fix for K&R.
1781
1782 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
1783
1784 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
1785
1786 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
1787
1788 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
1789 (xg_create_frame_widgets): Use ENCODE_UTF_8.
1790
1791 * xterm.c (Qutf_8): Moved to coding.c
1792
1793 * xmenu.c (ENCODE_MENU_STRING): New.
1794 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
1795 Use it.
1796
1797 * coding.h (ENCODE_UTF_8): New.
1798 (Qutf_8): Declare.
1799
1800 * coding.c (Qutf_8): New.
1801 (syms_of_coding): Intern it.
1802
1803 * fns.c: Doc fixes.
1804
7335b336
KH
18052003-06-02 Kenichi Handa <handa@m17n.org>
1806
1807 * buffer.c (Fset_buffer_multibyte): Fix previous change.
1808
914a8c47
SM
18092003-06-01 Stefan Monnier <monnier@cs.yale.edu>
1810
1811 * lread.c (openp): Make sure STR is a string.
1812
9862c135
JR
18132003-06-01 David Ponce <david@dponce.com>
1814
1815 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
1816 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
1817
1818 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
1819 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
1820 (discard_mouse_events): Discard WHEEL_EVENT events too.
1821 (lispy_wheel_names, wheel_syms): New.
1822 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
1823 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
1824 defined.
914a8c47 1825 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
1826
1827 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
1828 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
1829 WHEEL_EVENT events.
1830
f984e73e
JPW
18312003-05-31 John Paul Wallington <jpw@gnu.org>
1832
1833 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
1834 timer are in lisp/emacs-lisp.
1835
1efcd78f
KH
18362003-05-31 Kenichi Handa <handa@m17n.org>
1837
458c8af4
KH
1838 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
1839 region when a buffer is changed to unibyte.
1840
1efcd78f
KH
1841 * charset.h (VALID_LEADING_CODE_P): New macro.
1842 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
1843
778e2804
KH
1844 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
1845 is nonzero, accept multibyte form of eight-bit-control chars.
1846 (decode_composition_emacs_mule): Likewise.
1847 (decode_coding_emacs_mule): Likewise.
1848 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
1849 multibyte form of eight-bit-control chars.
1850
1851 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
1852 (Finsert_file_contents): If coding-system-for-read is bound to
1853 Qauto_save_coding, use the coding system emacs-mule with special
1854 setting for recovering a file.
1855 (choose_write_coding_system): On auto saving, use the coding
1856 system emacs-mule with special setting for auto saving.
1857 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
1858
034060e4
KH
18592003-05-30 Kenichi Handa <handa@m17n.org>
1860
1861 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
1862 properly before calling ccl_driver.
1863
778e2804 1864 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
1865
1866 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
1867 nonzero.
1868 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
1869 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
1870
595f5aa5
GM
18712003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
1872
1873 * xfaces.c (realize_default_face): Do not abort if lface is
1874 non-existent - reverts change from 2003-05-19.
1875
103e0180
KH
18762003-05-29 Kenichi Handa <handa@m17n.org>
1877
1878 * coding.c (decode_coding_iso2022): Pay attention to the byte
1879 sequence of CTEXT extended segment, and retain those bytes as is.
1880
18812003-05-28 Kenichi Handa <handa@m17n.org>
1882
1883 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
1884 of CODING_REPLACEMENT_CHARACTER.
1885 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
1886 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
1887 check this flag on encoding.
1888 (encode_coding_sjis_big5): Check
1889 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
1890 (Fset_terminal_coding_system_internal): Set
1891 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
1892 instead of setting CODING_FLAG_ISO_SAFE flag in
1893 terminal_coding.flags.
1894
1895 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
1896 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
1897 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
1898
ff6a3bfb 18992003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 1900
ff6a3bfb
RS
1901 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
1902
1903 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 1904
1963c428
KS
19052003-05-28 Kim F. Storm <storm@cua.dk>
1906
1907 * xdisp.c (expose_window): Fix error in calculation of
1908 window relative coordinates of area to redisplay.
1909
2b5d4601
JR
19102003-05-27 Jason Rumney <jasonr@gnu.org>
1911
1912 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
1913
1c64a4a2
JB
19142003-05-27 David Ponce <david@dponce.com>
1915
1916 Handle W32 mouse wheel events as mouse click events, like in X.
1917
1918 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
1919 MOUSE_WHEEL_EVENT anymore.
1920
1921 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
1922 Scrolling down/up the mouse wheel is respectively mapped to mouse
1923 button 4 and 5.
1924 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
1925 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
1926 WM_MOUSEWHEEL events.
1927
2d031b89
AS
19282003-05-27 Andreas Schwab <schwab@suse.de>
1929
20464fdf
AS
1930 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
1931
2d031b89
AS
1932 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
1933 partially visible line.
1934
1935 * alloc.c (Fgarbage_collect): Fix last change.
1936
97bc76d4
JPW
19372003-05-26 John Paul Wallington <jpw@gnu.org>
1938
1939 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
1940
56613f06
SM
19412003-05-25 Stefan Monnier <monnier@cs.yale.edu>
1942
1943 * window.c (Fset_window_buffer): Add type of `keep_margins'.
1944 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
1945
1946 * window.h (window_box_text_cols): Declare.
1947
1948 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
1949 (x_draw_vertical_border): Remove unused var `f'.
1950
1951 * xfaces.c (build_scalable_font_name): Remove `unused var
1952 pixel_size' warning.
1953
1954 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
1955
1956 * unexelf.c (unexec): Remove `unused var n' warning.
1957
1958 * strftime.c (my_strftime_localtime_r): Remove `defined but
1959 unused' warning.
1960
1961 * process.c (allocate_pty): Remove `unused var stb' and
1962 `cp might be used uninitialized' warnings.
1963
1964 * dispnew.c (mode_line_string): Remove unused var `f'.
1965
1966 * coding.c (find_safe_codings): Remove unused var `i'.
1967
1968 * bytecode.c (Fbyte_code): Remove `unused val' warning.
1969
1970 * buffer.c (Fkill_buffer): Remove unused var `list'.
1971
1972 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
1973
93421a1f
JD
19742003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1975
1976 * frame.c (make_frame): Condition want_fullscreen with
1977 HAVE_WINDOW_SYSTEM.
1978
c4b8aebc
JB
19792003-05-25 Juanma Barranquero <lektu@terra.es>
1980
1981 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
1982 (Fwindow_scroll_bars): Fix typo in docstring.
1983
0416870b
KS
19842003-05-24 Kim F. Storm <storm@cua.dk>
1985
1986 The following changes serve several purposes:
1987
1988 1) Swap the position of fringes and display margins in windows, i.e.
1989 the fringes are now displayed between the margins and the text area
1990 (by default).
1991
1992 2) Allow fringe and scroll bar parameters to be set per-buffer and
1993 per-window (like display margins). Such settings are now stored
1994 in window configurations, preserved when frames are resized, and
9018a88e 1995 copied when windows are split vertically or horizontally.
0416870b
KS
1996 Several bugs related to display margins have been fixed.
1997
1998 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 1999
0416870b
KS
2000 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
2001 rather than FRAME_WIDTH (FRAME_FONT (f)).
2002
2003 5) Introduce a consistent naming of variables, members and macros
2004 depending on whether their value is measured in pixels or in
2005 canonical columns/lines. Pixel dimensions are named *_width and
2006 *_height, while canonical columns/lines are named *_cols and
2007 *_lines. Pixel positions are named *_x and *_y, while column/line
2008 positions are named *_col and *_line.
2009
2010 6) Consolidate more of the X, W32, and MAC gui code by moving
2011 common data into struct frame, and generalize it for the non-gui
2012 case by using suitable defaults.
2013
2014 7) Cleanup and consolidate the macros controlling frame and window
2015 layout into frame.h and window.h, and generalize the use of the
2016 various window_box_* functions (enhanced to handle the new fringe
2017 position and the per-window fringe and scroll bar settings).
2018
2019 * frame.h (struct frame): Rename members height to text_lines,
2020 width to text_cols, window_height to total_lines, window_width to
2021 total_cols, new_height to new_text_lines, new_width to
2022 new_text_cols. All uses changed.
2023 (struct frame): New members which consolidate common members of
2024 x_output, w32_output, and mac_output structures: left_pos,
2025 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
2026 win_gravity, size_hint_flags, border_width, internal_border_width,
2027 line_height, fringe_cols, left_fringe_width, right_fringe_width,
2028 want_fullscreen. All uses changed.
2029 (struct frame): New member column_width contaning the canonical
2030 column width, analogue to line_height. All uses changed.
2031 (struct frame): Rename members scroll_bar_pixel_width to
2032 config_scroll_bar_width, and scroll_bar_cols to
2033 config_scroll_bar_cols. All uses changed.
2034 (struct frame): New member scroll_bar_actual_width which
2035 consolidates and renames the vertical_scroll_bar_extra member of
2036 x_output, w32_output, and mac_output structures. All uses changed.
2037 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
2038 from x/w32/macterm.h files. All uses changed. Also change code
2039 which referred to f->output_data...->pixel_height.
2040 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
2041 from x/w32/macterm.h files. All uses changed. Also change code
2042 which referred to f->output_data...->pixel_width.
2043 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
2044 Also change code which referred to f->height.
2045 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
2046 Also change code which referred to f->width.
2047 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
2048 to update new_text_lines and new_text_cols members directly.
2049 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
2050 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
2051 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
2052 FRAME_SCROLL_BAR_COLS. All uses changed.
2053 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
2054 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
2055 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
2056 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
2057 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
2058 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
2059 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
2060 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
2061 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
2062 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
2063 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
2064 return line_height member (it now has proper value also for
2065 non-window frames).
2066 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
2067 return new column_width member (rather than the default font width).
2068 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
2069 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
2070 from x/w32/macterm.h files. Unconditionally return corresponding
2071 member of frame structure (they now have proper values also for
2072 non-window frames).
2073 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
2074 Calculate return value from left and right widths.
2075 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
2076 internal_border_width member (has proper value for non-window frame).
2077 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
2078 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
2079 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
2080 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
2081 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
2082 consolidated from xterm.h, macterm.h, and w32term.h.
2083 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
2084 consolidated from xterm.h, macterm.h, and w32term.h.
2085 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
2086 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
2087 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
2088 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
2089 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
2090 consolidated from x/mac/w32term.h.
2091 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
2092 consolidated from x/mac/w32term.h.
2093 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
2094 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
2095 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
2096 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
2097
2098 * window.h (struct window): Rename members left to left_col,
2099 top to top_line, height to total_lines, width to total_cols,
2100 left_margin_width to left_margin_cols, right_margin_width to
2101 right_margin_cols, orig_height to orig_total_lines, orig_top to
2102 orig_top_line. All uses changed.
2103 (struct window): New members left_fringe_width, right_fringe_width,
2104 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
2105 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
2106 New macros primarily used to simplify other macros.
2107 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
2108 referred to XINT (w->width).
2109 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
2110 referred to XINT (w->height).
2111 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
2112 referred to XINT (w->width) * canon_x_unit.
2113 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
2114 referred to XINT (w->height) * canon_y_unit.
2115 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
2116 referred to XINT (w->left).
2117 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
2118 all uses and code that referred to XINT (w->left) + XINT (w->width).
2119 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
2120 referred to XINT (w->top).
2121 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
2122 referred to XINT (w->top) + XINT (w->height).
2123 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
2124 referred to XINT (w->left) * canon_x_unit.
2125 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
2126 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
2127 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
2128 referred to XINT (w->top) * canon_y_unit.
2129 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
2130 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
2131 (WINDOW_LEFTMOST_P): New macro.
2132 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
2133 All uses changed.
2134 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
2135 All uses changed.
2136 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
2137 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
2138 Do not exclude left fringe width.
2139 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
2140 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
2141 Do not exclude fringe widths.
2142 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
2143 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
2144 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
2145 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
2146 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
2147 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
2148 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
2149 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
2150 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
2151 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
2152 New macros. Change code which referenced corresponding
2153 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
2154 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
2155 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
2156 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
2157 allow per-window scroll-bar settings.
2158 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
2159 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
2160 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
2161 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
2162 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
2163 FRAME_SCROLL_BAR_WIDTH.
2164 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 2165 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
2166 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
2167 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
2168 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
2169 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
2170 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
2171 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
2172 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
2173 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
2174 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
2175 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
2176 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
2177 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
2178 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
2179 (window_from_coordinates): Update prototype.
2180 (Fset_window_buffer): Update EXFUN.
2181 (set_window_buffer): Update prototype.
9018a88e 2182
0416870b 2183 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 2184 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
2185 changed.
2186 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
2187 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
2188 internal_border_width is now set to 0 for non-window frames.
2189 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
2190 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
2191 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
2192 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
2193 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
2194 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
2195 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
2196 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
2197 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 2198 Move to window.h and renamed [see window.h changes].
0416870b
KS
2199 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
2200 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
2201 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
2202 Use WINDOW_TOTAL_LINES.
0416870b
KS
2203 (frame_update_line_height): Remove prototype.
2204
2205 * buffer.h (struct buffer): Rename members measured in columns:
2206 left_margin_width to left_margin_cols, right_margin_width to
2207 right_margin_cols. All uses changed.
2208 New members left_fringe_width, right_fringe_width,
2209 fringes_outside_margins for per-buffer fringe settings.
2210 New members scroll_bar_width and vertical_scroll_bar_type for
2211 per-buffer scroll bar settings.
2212
2213 * buffer.c (init_buffer_once): Set buffer_defaults and
2214 buffer_local_flags for new buffer-local variables
2215 left_fringe_width, right_fringe_width, fringes_outside_margins,
2216 scroll_bar_width, and vertical_scroll_bar_type.
2217 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
2218 default-* variables for them.
2219
2220 * dispnew.c: Make (many) trivial substitutions for renamed and
2221 new macros in dispextern.h, frame.h and window.h.
2222 (mode_line_string): No need to adjust width for mode lines, as it
2223 is already adjusted by the caller.
2224 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 2225
0416870b
KS
2226 * frame.c: Make (many) trivial substitutions for renamed and
2227 new macros in dispextern.h, frame.h and window.h.
2228 (make_frame): Initialize left_fringe_width, right_fringe_width,
2229 fringe_cols, scroll_bar_actual_width, border_width,
2230 internal_border_width, column_width, line_height, x_pixels_diff,
2231 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
2232 members with values suitable for a non-window frames.
2233
2234 * gtkutil.c: Make (many) trivial substitutions for renamed and
2235 new macros in dispextern.h, frame.h and window.h.
9018a88e 2236
0416870b
KS
2237 * indent.c: Make (few) trivial substitutions for renamed and
2238 new macros in dispextern.h, frame.h and window.h.
2239
2240 * keyboard.c: Make (many) trivial substitutions for renamed and
2241 new macros in dispextern.h, frame.h and window.h.
2242 (make_lispy_event): Use window positions returned from
2243 window_from_coordinates when constructing the lisp event for
2244 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
2245 (incorrect) values locally.
2246 (make_lispy_movement): Use window positions returned from
2247 window_from_coordinates when constructing the lisp event, rather
2248 than calculating (incorrect) values locally.
2249
2250 * scroll.c: Make (some) trivial substitutions for renamed and
2251 new macros in dispextern.h, frame.h and window.h.
2252
2253 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
2254 scroll-bars.
2255
2256 * sysdep.c: Make (few) trivial substitutions for renamed and
2257 new macros in dispextern.h, frame.h and window.h.
2258
2259 * term.c: Make (some) trivial substitutions for renamed and
2260 new macros in dispextern.h, frame.h and window.h.
2261
2262 * widget.c: Make (few) trivial substitutions for renamed and
2263 new macros in dispextern.h, frame.h and window.h.
2264
2265 * window.c: Make (many) trivial substitutions for renamed and
2266 new macros in dispextern.h, frame.h and window.h.
2267 (make_window): Initialize new members
2268 left_margin_cols, right_margin_cols, left_fringe_width,
2269 right_fringe_width, fringes_outside_margins, scroll_bar_width,
2270 and vertical_scroll_bar_type.
2271 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 2272 and per-window fringes and scroll-bars.
0416870b 2273 Fix bug related to incorrectly adjusting coordinates by
9018a88e 2274 frame's internal_border_width (the effect normally negible since
0416870b
KS
2275 the internal_border_width is typically 0 or 1 pixel, but very
2276 noticeable for an internal_border_width of e.g. 25 pixels).
2277 Upon successful return (other than ON_NOTHING), the coordinates
2278 are now always properly converted to window relative for the
2279 given display element.
2280 (window_from_coordinates): Add new parameters wx and wy to
2281 return the window relative x and y position in the returned
2282 window and part. A null arg means, don't return the position.
2283 All callers changed.
2284 (adjust_window_margins): New function which may reduce the width
2285 of the display margins if a window's text area is too small after
2286 resizing or splitting windows.
2287 (size_window): Fix bug that did not account for display margin
2288 widths when checking the minimum width of a window; use
2289 adjust_window_margins.
2290 (set_window_buffer): Call Fset_window_fringes and
2291 Fset_window_scroll_bars to setup per-window elements.
2292 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
2293 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
2294 (e.g. after splitting a window or resizing the frame).
2295 All callers changed.
0416870b
KS
2296 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
2297 (Fsplit_window): Duplicate original window's display margin,
2298 fringe, and scroll-bar settings; then call Fset_window_buffer with
2299 KEEP_MARGINS non-nil. This fixes a bug which caused a split
2300 window to only preserve the display margins in one of the windows.
c4b8aebc 2301 When splitting horizontally, call adjust_window_margins on both
0416870b
KS
2302 windows to ensure that the text area of the new windows is non too
2303 narrow. This fixes a bug which could cause emacs to trap if the
2304 width of the split window was less than the width of the display
2305 margins.
9018a88e
SM
2306 (window_box_text_cols): Renamed from window_internal_width.
2307 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
2308 Fix bug that caused vertical separator to be subtracted also on
2309 window frames. Fix another bug that did not reduce the returned
2310 value by the columns used for display margins.
2311 (window_scroll_line_based): Fix bug related to scrolling too much
2312 when display margins are present (implicitly fixed by the fix to
2313 window_box_text_cols).
2314 (scroll_left, scroll_right): Fix bug related to scrolling too far
2315 by default when display margins are present (implicitly fixed by
2316 the fix to window_box_text_cols).
2317 (struct saved_window): Rename members left to left_col, top to
2318 top_line, width to total_cols, height to total_lines, orig_top to
2319 orig_top_line, orig_height to orig_total_lines. All uses changed.
2320 New members left_margin_cols, right_margin_cols,
2321 left_fringe_width, right_fringe_width, fringes_outside_margins,
2322 scroll_bar_width, and vertical_scroll_bar_type for saving
2323 per-window display elements.
2324 (Fset_window_configuration): Restore display margins, fringes,
2325 and scroll bar settings. This fixes a bug which caused display
2326 margins to be discarded when saving and restoring a window
2327 configuration.
2328 (save_window_save): Save display margins, fringes, and scroll bar
2329 settings. This fixes a bug which caused display margins to be
2330 discarded when saving and restoring a window configuration.
2331 (Fset_window_margins): Do nothing if display margins are not
2332 really changed. Otherwise, call adjust_window_margins to ensure
2333 the text area doesn't get too narrow. This fixes a bug which
2334 could cause emacs to trap if setting display margins wider than
2335 the width of the window.
2336 (Fset_window_fringes): New defun to allow user to specifically set
2337 this window's fringe widths and position vs. display margins.
2338 (Fwindow_fringes): New defun to return window's actual fringe
2339 settings.
2340 (Fset_window_scroll_bars): New defun to allow user to specifically
2341 set this window's scroll bar width and position.
2342 (Fwindow_scroll_bars): New defun to return window's actual scroll
2343 bar settings.
2344 (compare_window_configurations): Also compare display margins,
2345 fringes, and scroll bar settings.
2346 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
2347
2348 * xdisp.c: Make (many) trivial substitutions for renamed and
2349 new macros in dispextern.h, frame.h and window.h.
2350 (window_box_width): Adapt to per-window fringes and scroll bars,
2351 and new fringe vs. display margin position. Note that returned
2352 value is no longer guaranteed to be a whole multiple of the frame
2353 column width, since per-window fringes may now be any width.
2354 (window_box_left_offset): New function like window_box_left, but
2355 value is relative to left border of window (rather than frame).
2356 (window_box_right_offset): New function like window_box_right,
2357 but value is relative to left border of window.
2358 (window_box_left): Adapt to per-window fringes and scroll bars,
2359 and new fringe vs. display margin position. Simplify by using
2360 WINDOW_LEFT_EDGE_X and window_box_left_offset.
2361 (window_box): Allow null args for unnecessary return values;
2362 change/simplify relevant callers.
2363 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
2364 and new fringe vs. display margin position.
2365 Use window_box_left_offset and window_box_right_offset
0416870b 2366 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
2367 scroll bars, and new fringe vs. display margin position.
2368 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
2369 (draw_fringe_bitmap): Rework to handle per-window fringes and new
2370 fringe vs. display margin position.
2371 (hscroll_window_tree): Use window_box_width instead of window_box.
2372 (redisplay_window): Adapt to per-window scroll bars.
2373 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
2374 bars, and new fringe vs. display margin position.
2375 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
0416870b
KS
2376 (x_clear_end_of_line): Adapt to per-window fringes and scroll
2377 bars, and new fringe vs. display margin position. Fix bug which
2378 increased total width of full_width rows by width of scroll bars
2379 although window's total width already includes that.
2380 (x_fix_overlapping_area): Simplify using window_box_left_offset.
2381 (expose_area): Simplify using window_box_left_offset.
2382 (x_draw_vertical_border): Handle per-window scroll bar settings,
2383 mixing windows with left, right and no scroll bars.
2384
2385 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
2386 where it's used in x_list_fonts (for clarity).
2387 (frame_update_line_height): Remove unused function; functionality
2388 is now done directly when setting the default font in x_set_font.
2389
2390 * xfns.c: Make (many) trivial substitutions for renamed and
2391 new macros in dispextern.h, frame.h and window.h.
2392
2393 * xmenu.c: Make (some) trivial substitutions for renamed and
2394 new macros in dispextern.h, frame.h and window.h.
2395
2396 * xterm.h (struct x_output): Move members left_pos, top_pos,
2397 border_width, pixel_height, pixel_width, line_height,
2398 internal_border_width, vertical_scroll_bar_extra,
2399 left_fringe_width, right_fringe_width, fringe_cols,
2400 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
2401 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
2402 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
2403 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
2404 (PIXEL_WIDTH, PIXEL_HEIGHT)
2405 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
2406 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
2407 frame.h and renamed [see frame.h changes].
2408 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
2409 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
2410 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
2411 and renamed [see frame.h changes].
9018a88e 2412
0416870b
KS
2413 * xterm.c: Make (several) trivial substitutions for renamed and
2414 new macros in dispextern.h, frame.h and window.h.
2415 (x_draw_glyph_string_box): Adapt to per-window fringes and
2416 scroll-bars.
2417 (scroll_run): Adapt to new fringe position.
2418 (glyph_rect): Use window coordinates returned from
2419 window_from_coordinates rather than frame_to_window_pixel_xy.
2420 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
2421 scroll-bars.
2422 (handle_one_xevent): Simplify a USE_GTK conditional.
2423 (x_clip_to_row): Remove superfluous whole_line_p arg and code
2424 (fringes are now inside margins, i.e. always in the clipping area).
2425 All callers changed.
2426 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
2427 directly, then call compute_fringe_widths. Don't call
2428 frame_update_line_height.
2429
2430 * w32term.h (struct w32_output): Move members left_pos, top_pos,
2431 border_width, pixel_height, pixel_width, line_height,
2432 internal_border_width, vertical_scroll_bar_extra,
2433 left_fringe_width, right_fringe_width, fringe_cols,
2434 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
2435 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
2436 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
2437 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
2438 (PIXEL_WIDTH, PIXEL_HEIGHT)
2439 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
2440 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
2441 frame.h and renamed [see frame.h changes].
2442 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
2443 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
2444 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
2445 and renamed [see frame.h changes].
9018a88e 2446
0416870b
KS
2447 * w32term.c: Make (several) trivial substitutions for renamed and
2448 new macros in dispextern.h, frame.h and window.h.
2449 (x_draw_glyph_string_box): Adapt to per-window fringes and
2450 scroll-bars.
2451 (glyph_rect): Use window coordinates returned from
2452 window_from_coordinates rather than frame_to_window_pixel_xy.
2453 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
2454 scroll-bars.
2455 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
2456 (fringes are now inside margins, i.e. always in the clipping area).
2457 All callers changed.
2458 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
2459 directly, then call compute_fringe_widths. Don't call
2460 frame_update_line_height.
2461
2462 * w32console.c: Make (few) trivial substitutions for renamed and
2463 new macros in dispextern.h, frame.h and window.h.
2464
2465 * w32fns.c: Make (many) trivial substitutions for renamed and
2466 new macros in dispextern.h, frame.h and window.h.
2467
2468 * w32menu.c: Make (few) trivial substitutions for renamed and
2469 new macros in dispextern.h, frame.h and window.h.
2470
2471 * macterm.h (struct mac_output): Move members left_pos, top_pos,
2472 border_width, pixel_height, pixel_width, line_height,
2473 internal_border_width, vertical_scroll_bar_extra,
2474 left_fringe_width, right_fringe_width, fringe_cols,
2475 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
2476 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
2477 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
2478 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
2479 (PIXEL_WIDTH, PIXEL_HEIGHT)
2480 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
2481 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
2482 frame.h and renamed [see frame.h changes].
2483 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
2484 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
2485 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
2486 and renamed [see frame.h changes].
9018a88e 2487
0416870b
KS
2488 * macterm.c: Make (several) trivial substitutions for renamed and
2489 new macros in dispextern.h, frame.h and window.h.
2490 (x_draw_glyph_string_box): Adapt to per-window fringes and
2491 scroll-bars.
2492 (glyph_rect): Use window coordinates returned from
2493 window_from_coordinates rather than frame_to_window_pixel_xy.
2494 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
2495 scroll-bars.
2496 (x_clip_to_row): Remove superfluous whole_line_p arg and code
2497 (fringes are now inside margins, i.e. always in the clipping area).
2498 All callers changed.
2499 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
2500 directly, then call compute_fringe_widths. Don't call
2501 frame_update_line_height.
2502
2503 * macfns.c: Make (several) trivial substitutions for renamed and
2504 new macros in dispextern.h, frame.h and window.h.
9018a88e 2505 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
2506
2507 * macmenu.c: Make (few) trivial substitutions for renamed and
2508 new macros in dispextern.h, frame.h and window.h.
2509
2510 * msdos.h (struct x_output): Remove members left_pos, top_pos,
2511 and line_height, and use corresponding new members in struct
2512 frame. All uses changed.
2513 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
2514 superseeded by corresponding macros in frame.h.
2515
2516 * msdos.c: Make (several) trivial substitutions for renamed and
2517 new macros in dispextern.h, frame.h and window.h.
2518 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 2519 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
2520 (internal_terminal_init): No need to initialize line_height here;
2521 it now defaults to 1.
2522
9018a88e
SM
25232003-05-24 Stefan Monnier <monnier@cs.yale.edu>
2524
2525 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
2526 dropping `down' events.
2527
016bd3c0
AS
25282003-05-24 Andreas Schwab <schwab@suse.de>
2529
2530 * coding.c (find_safe_codings): Fix last change.
2531
4dacadcc
TTN
25322003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
2533
2534 * xfns.c (x_window): Fix typo from 2003-05-21 change.
2535
319830ce
SM
25362003-05-23 Stefan Monnier <monnier@cs.yale.edu>
2537
9018a88e
SM
2538 * xdisp.c (display_mode_element): Increase max depth.
2539 Simplify the error handling code. Use a different error string
2540 for the case where we hit the depth limit.
2541
319830ce
SM
2542 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
2543
2544 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
2545
25462003-05-21 Stefan Monnier <monnier@cs.yale.edu>
2547
2548 * intervals.c (get_local_map): Don't get char-property of previous
2549 point any more: get_pos_property already does it and better.
2550
c67de8ba
DL
25512003-05-21 Dave Love <fx@gnu.org>
2552
2553 [Merged from unicode branch.]
2554
2555 * xfns.c (x_window, x_window): Use use_xim.
2556
2557 * xterm.c (use_xim): Initialize.
2558 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
2559 (x_term_init): Maybe set use_xim.
2560
2561 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
2562
edd3ff1d
JR
25632003-05-21 Jason Rumney <jasonr@gnu.org>
2564
2565 * unexw32.c (_start): Remove _fmode initialization.
2566
2567 * emacs.c (main) [WINDOWSNT]: Move it here.
2568
463f55ee
DL
25692003-05-20 Dave Love <fx@gnu.org>
2570
2571 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
2572
af253914
RS
25732003-05-19 Richard M. Stallman <rms@gnu.org>
2574
2575 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
2576 as value for QCfont attribute.
2577 (realize_default_face): lface should already exist; crash if not.
2578 Specify 0 for FORCE_P when calling set_lface_from_font_name.
2579
2580 * frame.c (Fignore_event): Doc fix.
2581
1d211019
KH
25822003-05-19 Kenichi Handa <handa@m17n.org>
2583
2584 * coding.c (decode_coding_string): Handle post-read-conversion
2585 even if the coding doesn't require decoding.
2586
4dd68254
RS
25872003-05-18 Richard M. Stallman <rms@gnu.org>
2588
2589 * callproc.c (Fcall_process_region): Doc fix.
2590
14d87dc9
SM
25912003-05-17 Stefan Monnier <monnier@cs.yale.edu>
2592
deca5d96
SM
2593 * lread.c (Fload): Print a message if package is obsolete.
2594
14d87dc9
SM
2595 * window.c (Fselect_window): Add optional `norecord' arg.
2596 (select_window_1): Fold into Fselect_window.
2597 (select_window_norecord): New function.
2598 (temp_output_buffer_show): Use it. Preserve current buffer.
2599
2600 * window.h (Fselect_window): Update declaration.
2601
2602 * window.c (delete_window, Fother_window, Fset_window_configuration):
2603 * minibuf.c (read_minibuf):
2604 * macterm.c (x_new_focus_frame):
2605 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
2606 * callint.c (Fcall_interactively):
2607 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
2608
2609 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
2610
78f52183
DK
26112003-05-17 David Kastrup <dak@gnu.org>
2612
2613 * process.c (read_process_output): Back out change from 2003-03-09.
2614
14d87dc9
SM
26152003-05-17 Stefan Monnier <monnier@cs.yale.edu>
2616
2617 * editfns.c (get_pos_property): Don't assume that `object' = nil.
2618
2619 * textprop.c (text_property_stickiness): New arg `buffer'.
2620
2621 * intervals.h (text_property_stickiness): New arg `buffer'.
2622 (get_pos_property): Declare.
2623
2624 * intervals.c (get_local_map): Use get_pos_property, to obey
2625 stickiness and empty overlays.
2626 (create_root_interval, graft_intervals_into_buffer): Use BEG.
2627 (merge_properties, intervals_equal, merge_properties_sticky):
2628 Use XCAR, XCDR.
2629 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
2630
1fd1cc2f
RS
26312003-05-17 Richard M. Stallman <rms@gnu.org>
2632
4f9f637a
RS
2633 * minibuf.c (read_minibuf): If buffer is empty, record the default
2634 in the history.
2635 (Fminibuffer_complete_word): When deleting the overlap, take account
2636 of its real position.
2637
2638 * fns.c (map_char_table): Fix previous change.
2639
1fd1cc2f
RS
2640 * syntax.c (find_defun_start):
2641 When open_paren_in_column_0_is_defun_start,
2642 return beginning of buffer.
2643
2644 * lisp.h (map_char_table): Declare added arg.
2645
2646 * fns.c (map_char_table): New arg TABLE gets the master table.
2647 All calls changed.
2648 Process default and inheritance, resorting to Faref if necessary.
2649
2650 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
2651 (Faccessible_keymaps): Pass new arg to map_char_table.
2652
2653 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
2654
2655 * casetab.c (set_case_table): Pass new arg to map_char_table.
2656
2657 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
2658
2659 * lisp.h (specbinding_func): New typedef.
2660 (struct specbinding): Use specbinding_func, to put the `volatile'
2661 in the right place.
2662
2663 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
2664 to avoid GCC warning.
14d87dc9 2665
b4bd27c5
RS
26662003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
2667
14d87dc9 2668 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 2669
35fb885d
SM
26702003-05-15 Stefan Monnier <monnier@cs.yale.edu>
2671
2672 * keyboard.c (apply_modifiers): Don't fill the other cache.
2673
9a274fbd
SM
26742003-05-14 Stefan Monnier <monnier@cs.yale.edu>
2675
c55b5fad
SM
2676 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
2677
9a274fbd
SM
2678 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
2679 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
2680 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
2681 (Fset_window_configuration, Fcurrent_window_configuration)
2682 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
2683 (Fpos_visible_in_window_p, mark_window_cursors_off)
2684 (window_internal_height, window_internal_width, Frecenter)
2685 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
2686 (replace_buffer_in_all_windows, init_window_once, init_window)
2687 (syms_of_window, keys_of_window): Move from lisp.h.
2688 * lisp.h: Move window.c declarations to window.h.
2689
2690 * bytecode.c: Include window.h.
2691 * emacs.c: Include window.h.
2692
14d87dc9 2693 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
2694 (keyremap): Add `parent' field.
2695 (keyremap_step): Use it. Remove `parent' argument.
2696 (read_key_sequence): Setup and use the new `parent' field.
2697
fd93e331
SM
26982003-05-11 Stefan Monnier <monnier@cs.yale.edu>
2699
2700 * keyboard.c (adjust_point_for_property): Ensure termination.
2701
1c4001a1
SM
27022003-05-10 Stefan Monnier <monnier@cs.yale.edu>
2703
2704 * keyboard.c (follow_key): Remove dead variable `did_meta'.
2705 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
2706 duplicated handling of function-key-map and key-translation-map
2707 in read_key_sequence.
2708 (read_key_sequence): Use them.
2709
2710 * keyboard.c (adjust_point_for_property): Try harder to move point
2711 to the non-sticky end of an invisible property.
2712
2713 * xdisp.c (single_display_prop_intangible_p): Make `space' display
2714 property intangible as well.
2715
780379b1
AS
27162003-05-10 Andreas Schwab <schwab@suse.de>
2717
2718 * xmenu.c (single_menu_item): Change last parameter to void* to
2719 avoid warning.
2720
ca2de342
RS
27212003-05-09 Richard M. Stallman <rms@gnu.org>
2722
2723 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
2724 Bind Qinhibit_modification_hooks to t so there will be no GC.
2725 Rename local `tem' to `save_deactivate_mark'.
2726
2727 * eval.c (specpdl_ptr): Declare volatile.
2728 (unbind_to): Copy the whole binding and decrement specpdl_ptr
2729 before doing the work of unbinding it.
2730
2731 * lisp.h (struct specbinding): Declare elements volatile.
2732 (specpdl_ptr): Declare volatile.
2733
2734 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
2735
2736 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
2737 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
2738
347003be
DL
27392003-05-08 Dave Love <fx@gnu.org>
2740
2741 * coding.c (Vlast_coding_system_used): Doc fix.
2742
5adcec23
JR
27432003-05-07 Jason Rumney <jasonr@gnu.org>
2744
2745 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
2746 when system does not support them.
2747
5fe3b8a4
SM
27482003-05-05 Stefan Monnier <monnier@cs.yale.edu>
2749
2750 * fileio.c (Qwrite_region_annotate_functions): New var.
2751 (build_annotations): Use it to process the global part of the hook.
2752 (syms_of_fileio): Init and staticpro it.
2753
2754 * keyboard.c (safe_run_hooks_error): Display a message instead of
2755 silently ignoring the error.
2756
27572003-05-03 Stefan Monnier <monnier@cs.yale.edu>
2758
2759 * keyboard.c (input_available_signal): Mark static.
2760 (menu_bar_items): Use map_keymap.
2761 (menu_bar_one_keymap): Remove.
2762 (menu_bar_item): Adjust arglist (for use in map_keymap).
2763 Properly hide a second binding when not both are keymaps.
2764
2765 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
2766 (single_keymap_panes): Use it and map_keymap.
2767 (single_menu_item): Use skp as well.
2768
2769 * keymap.h (map_keymap_function_t): New type.
2770 (map_keymap): Declare.
2771
2772 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
2773 (map_keymap_call, Fmap_keymap): New functions.
2774 (syms_of_keymap): Defsubr map-keymap.
2775
4b1b4443
JD
27762003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2777
2778 * gtkutil.c (create_dialog, make_widget_for_menu_item)
2779 (make_menu_item, create_menus, xg_update_menu_item): Don't call
2780 ..._with_mnemonic functions for menu items.
2781
1f816871
KH
27822003-05-01 Kenichi Handa <handa@m17n.org>
2783
2784 * coding.c (coding_system_accept_latin_extra_p): Delete this
2785 function.
2786 (find_safe_codings): Pay attention to
2787 the property tranlsation-table-for-encode of each codings.
2788 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
2789
5ed6ba5b
SM
27902003-05-01 Stefan Monnier <monnier@cs.yale.edu>
2791
2792 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
2793
32c06229
SM
27942003-04-30 Stefan Monnier <monnier@cs.yale.edu>
2795
2796 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
2797
2798 * lisp.h (CHECK): Wrap args in parenthesis.
2799 (specbind): Fix doc: symbol = Qnil is not supported any more.
2800
2801 * bytecode.c (Fbyte_code) <unwind-protect>:
2802 Use Fprogn rather than 0 and Qnil.
2803
2804 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
2805 `double', and `triple' modifiers as well.
2806
ed3c3314
RS
28072003-04-30 Richard M. Stallman <rms@gnu.org>
2808
2809 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
2810
2811 * alloc.c (abort_on_gc): New variable.
2812 (Fgarbage_collect): Abort if abort_on_gc is set.
2813
2814 * lisp.h (abort_on_gc): Add decl.
2815
2816 * eval.c (Fsignal): Clear abort_on_gc.
2817
2818 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 2819 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
2820
2821 * xdisp.c (move_it_vertically_backward): Do the final big else
2822 even if nlines is 0.
2823
2824 * xdisp.c (redisplay_internal): Finish the per-frame loop
2825 even if redisplay is suspended by input.
2826
0b325c12
AC
28272003-04-24 Andrew Choi <akochoi@shaw.ca>
2828
2829 * macterm.c (x_list_fonts): Return all fonts that match if
2830 maxnames = -1.
2831
4e837cd0
KH
28322003-04-25 Kenichi Handa <handa@m17n.org>
2833
2834 * syntax.c (skip_chars): Fix previous change.
2835
9af7511a
KH
28362003-04-24 Kenichi Handa <handa@m17n.org>
2837
2838 * syntax.c (skip_chars): Make the code faster by using the common
2839 technique of *p, *stop, and *endp.
2840
e3b2c21f
JD
28412003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2842
2843 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 2844 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
2845 being updated.
2846
32c06229
SM
28472003-04-19 Stefan Monnier <monnier@cs.yale.edu>
2848
2849 * eval.c (Fapply): Undo last change and add a comment about why.
2850
c6464167
MB
28512003-04-18 Miles Bader <miles@gnu.org>
2852
2853 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
2854 pickier PARSE_MULTIBYTE_SEQ.
2855
e509f168
SM
28562003-04-17 Stefan Monnier <monnier@cs.yale.edu>
2857
2858 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
2859 Use XCDR, XCAR, CONSP.
2860 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
2861 (Fapply): Remove unnecessary GCPRO.
2862
2863 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
2864
2865 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
2866
2867 * buffer.h: Don't hardcode BEG==1.
2868
2869 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
2870
5ceea398
RS
28712003-04-16 Richard M. Stallman <rms@gnu.org>
2872
2873 * xdisp.c (try_window, try_window_reusing_current_matrix):
2874 When at end of window, set window_end_pos to Z-ZV.
2875
2876 * buffer.c (Foverlay_recenter): Doc fix.
2877
e509f168
SM
28782003-04-14 Stefan Monnier <monnier@cs.yale.edu>
2879
2880 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
2881
d243e605
AC
28822003-04-14 Andrew Choi <akochoi@shaw.ca>
2883
2884 * macterm.c (mac_check_for_quit_char): Don't check more often than
2885 once a second.
2886
6901b111
SM
28872003-04-11 Stefan Monnier <monnier@cs.yale.edu>
2888
2889 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
2890 specially, so that they can't hide an implicit switch-frame event.
2891 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
2892 (head_table): Use switch-frame as event_kind for select-window.
2893 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
2894
2895 * editfns.c (Fformat): Lisp_Object/int mixup.
2896 (format2): Remove unused var numargs.
2897
e301806f 28982003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 2899
6901b111 2900 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
2901 (Qafter_insert_file_set_coding): New variable.
2902 (syms_of_fileio): Initialize and staticpro it. Delete declaration
2903 for after-insert-file-adjust-coding-function.
2904 (Finsert_file_contents): Call Qafter_insert_file_set_coding
2905 instead of Vafter_insert_file_adjust_coding_function.
2906
38914424
KH
29072003-04-11 Kenichi Handa <handa@m17n.org>
2908
2909 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
2910
2911 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
2912 string. Callers changed.
2913
29142003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 2915
6901b111 2916 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 2917 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
2918 (Finsert_file_contents):
2919 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
2920 decode-format.
2921
f979dc05
JD
29222003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2923
2924 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
2925 get GtkAdjustment as widget now is a GtkRange.
2926
2927 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
2928 GtkRange to avoid memory leak.
2929
f8c6b4c2 29302003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 2931
50ebc53d
KH
2932 * xfaces.c (Vface_font_rescale_alist): New variable.
2933 (struct font_name): New member rescale_ratio.
2934 (font_rescale_ratio): New function.
6901b111 2935 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
2936 (better_font_p): On comparing point sized, pay attention to
2937 recale_ratio member of fonts.
2938 (build_scalable_font_name): Reflect font->rescale_ratio in the
2939 font name.
6901b111 2940 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 2941
cb98871c
KH
2942 * lread.c (read1): Before calling index, check if the 2nd
2943 arguemnt is in ASCII range.
2944
4773b8ca
RS
29452003-04-08 Richard M. Stallman <rms@gnu.org>
2946
b0ada147
RS
2947 * fileio.c (Ffile_symlink_p): Doc fix.
2948
2949 * editfns.c (Fformat): Translate positions of text properties
2950 in the format string to apply them to the result.
2951
4773b8ca
RS
2952 * fileio.c (Finsert_file_contents): Doc fix.
2953 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
2954
29552003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 2956
4773b8ca
RS
2957 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
2958
e8f25745 29592003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 2960
e8f25745
ST
2961 * mac.c (init_mac_osx_environment): Switch libexec and bin so
2962 that self-contained application finds libexec files.
2963
f8c6b4c2 29642003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 2965
6901b111
SM
2966 * coding.c (code_convert_region_unwind):
2967 Set Vlast_coding_system_used to the argument.
2310d84c
KH
2968 (code_convert_region): If post-read-conversion function changed
2969 the value of last-coding-sytem, keep the new value in
2970 coding->symbol so that it won't be overridden.
2971 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
2972 (coding_system_accept_latin_extra_p): New function.
2973 (find_safe_codings): Pay attention to characters registered in
2974 latin-extra-code-table.
2310d84c 2975
39c9a034
TTN
29762003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
2977
2978 * Makefile.in (md5.o): Add missing dependency info.
2979
eb67c5d6
RS
29802003-04-06 Richard M. Stallman <rms@gnu.org>
2981
2982 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
2983
2984 * marker.c (verify_bytepos): New function.
2985
2986 * intervals.c (set_intervals_multibyte_1): When becoming
2987 multibyte, adjust right and left child sizes to a whole set of
2988 characters. If an interval gets zero total-length, delete it.
2989 If an interval consists of just its children, delete one of them.
2990
2991 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
2992 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 2993
eb67c5d6
RS
2994 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
2995 All calls deleted.
2996 (lisp_malloc): Do the work here directly.
2997
b1f81fc5
JB
29982003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
2999
3000 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
3001 char tables.
3002
30032003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
3004
3005 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
3006 destructively change "%S" to "%s".
3007
774666fb
MB
30082003-04-03 Miles Bader <miles@gnu.org>
3009
3010 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
3011 always set.
3012
19c37f01
DL
30132003-04-01 Dave Love <fx@gnu.org>
3014
3015 * xfns.c (xpm_lookup_color): Grok "opaque".
3016
2f4b24c3
AC
30172003-03-31 Andrew Choi <akochoi@shaw.ca>
3018
3019 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
3020 parent window ID.
3021
3022 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
3023
3024 * macterm.h (struct mac_output): Define x_pixels_diff and
3025 y_pixels_diff.
b1f81fc5 3026
9443fcf6
JB
30272003-03-31 Juanma Barranquero <lektu@terra.es>
3028
3029 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
3030 blockinput.h and files included from it.
3031
e072891b
KS
30322003-03-31 Kim F. Storm <storm@cua.dk>
3033
3034 The following changes consolidates the common code related to
3035 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
3036 files into frame.c.
9443fcf6 3037
e072891b
KS
3038 * frame.c: Include blockinput.h.
3039 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
3040 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
3041 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
3042 related vars here.
3043 (struct frame_parm_table, frame_parms): New table for describing
3044 frame parameters and their associated Q-variable.
3045 The order of the parameters corresponds to the sequence of the
3046 frame_parm_handlers table in redisplay_interface.
3047 (x_fullscreen_move, x_set_frame_parameters)
3048 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
3049 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
3050 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3051 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
3052 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
3053 Generic functions for processing of frame parameters.
3054 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
3055 (display_x_get_resource, x_get_resource_string): Functions for
3056 generic access to X resources.
3057 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
3058 (x_default_parameter, Fx_parse_geometry): Functions for generic
3059 access to frame parameters.
6901b111
SM
3060 (x_figure_window_size): Generic calculation of frame size.
3061 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
3062 (syms_of_frame): Intern and staticpro frame parameter variables.
3063 Defvar_lisp Vx_resource_class and Vx_resource_name here.
3064 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 3065
e072891b
KS
3066 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
3067 parameter related vars defined in frame.c.
3068 (EMACS_CLASS): Define here.
3069 (enum FULLSCREEN_*): Define here.
3070 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
3071 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
3072 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
3073 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
3074 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
3075 (x_set_visibility, x_set_autoraise, x_set_autolower)
3076 (x_set_unsplittable, x_set_vertical_scroll_bars)
3077 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
3078 (x_figure_window_size): Add prototypes.
3079
3080 * dispextern.h (frame_parm_handler): New typedef.
3081 (struct redisplay_interface): New member frame_parm_handlers.
3082 (enum resource_types): Move declaration here.
3083 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
3084 (x_default_parameter): Add prototypes.
3085
3086 * window.c: Remove extern decl for frame parameter vars.
3087 (change_window_heights): New generic function;
3088 replaces x_change_window_heights. All users changed.
3089
3090 * window.h (change_window_heights): Add prototype.
3091
3092 * xfaces.c: Remove extern decl for frame parameter vars.
3093
3094 * xterm.h (EMACS_CLASS): Remove. Use generic define.
3095 (struct w32_display_info): Fix type of xrdb member.
3096 (enum FULLSCREEN_*): Remove.
3097 Remove prototypes for generic functions (in frame.h).
3098
3099 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3100 parameters now defined in frame.h and frame.c.
3101 (Vx_resource_name): Remove. Use generic var.
3102 (enum x_frame_parms): Remove (bogus, unused enum).
3103 (check_x_display_info): Make non-static (for frame.c).
3104 (struct x_frame_parm_table, x_frame_parms): Remove.
3105 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3106 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3107 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3108 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3109 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3110 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3111 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3112 Remove. Use generic functions instead.
3113 (enum resource_types): Remove.
3114 (x_set_scroll_bar_default_width): New global function (for frame.c).
3115 (Fx_create_frame): Depend on x_figure_window_size to add space for
3116 toolbar and setup size_hint_flags.
3117 (x_frame_parm_handlers): New table for redisplay_interface.
3118 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 3119
e072891b
KS
3120 * xterm.c: Remove unnecessary extern declarations.
3121 (x_fullscreen_adjust): Remove. Use generic instead.
3122 (x_redisplay_interface): Add x_frame_parm_handlers member.
3123
3124 * w32gui.h (XrmDatabase): New (dummy) typedef.
3125
3126 * w32term.h (EMACS_CLASS): Remove. Use generic define.
3127 (struct w32_display_info): Fix type of xrdb member.
3128 (enum FULLSCREEN_*): Remove.
3129 (x_fullscreen_adjust): Remove prototype.
3130
3131 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3132 parameters now defined in frame.h and frame.c.
3133 (Vx_resource_name): Remove. Use generic var.
3134 (enum x_frame_parms): Remove (bogus, unused enum).
3135 (check_x_display_info): Make non-static (for frame.c).
3136 (struct x_frame_parm_table, x_frame_parms): Remove.
3137 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3138 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3139 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3140 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3141 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3142 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3143 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3144 Remove. Use generic functions instead.
3145 (enum resource_types): Remove.
3146 (x_set_scroll_bar_default_width): New global function (for frame.c).
3147 (Fx_create_frame): Depend on x_figure_window_size to add space for
3148 toolbar and setup size_hint_flags.
3149 (w32_frame_parm_handlers): New table for redisplay_interface.
3150 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 3151
e072891b
KS
3152 * w32term.c: Remove unnecessary extern declarations.
3153 (x_fullscreen_adjust): Remove. Use generic instead.
3154 (x_redisplay_interface): Add w32_frame_parm_handlers member.
3155
3156 * w32reg.c (x_get_string_resource): Use XrmDatabase.
3157
3158 * macgui.h (XrmDatabase): New (dummy) typedef.
3159
3160 * macterm.h (EMACS_CLASS): Remove.
3161 (struct mac_display_info): Add xrdb member.
3162 (struct mac_output): Add want_fullscreen member.
3163
3164 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3165 parameters now defined in frame.h and frame.c.
3166 (Vx_resource_name): Remove. Use generic var.
3167 (check_x_display_info): Make non-static (for frame.c).
3168 (struct x_frame_parm_table, x_frame_parms): Remove.
3169 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3170 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3171 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3172 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3173 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3174 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3175 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3176 Remove. Use generic functions instead.
3177 (enum resource_types): Remove.
3178 (x_set_scroll_bar_default_width): New global function (for frame.c).
3179 (mac_frame_parm_handlers): New table for redisplay_interface.
3180 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 3181
e072891b
KS
3182 * macterm.c: Remove unnecessary extern declarations.
3183 (x_redisplay_interface): Add mac_frame_parm_handlers member.
3184
3e6a560b
KS
3185 * Makefile.in (frame.o): Add dependency on blockinput.h and files
3186 included from it (atimer.h and systime.h).
3187
7b7b454e
AS
31882003-03-30 Andreas Schwab <schwab@suse.de>
3189
3190 * xdisp.c (x_insert_glyphs): Fix swapped width and height
3191 parameters for shift_glyphs_for_insert.
3192
3193 * macterm.c (x_redisplay_interface): Add missing entry for
3194 draw_vertical_window_border.
3195
beb402de
KG
31962003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
3197
3198 * fileio.c (Fexpand_file_name): In the no-handler case, after
3199 expanding, look again for a handler and invoke it. This is needed
3200 for filenames like "/foo/../user@host:/bar/../baz" -- the first
3201 expansion produces "/user@host:/bar/../baz" which needs to be
3202 expanded again for the finame result "/user@host:/baz".
3203
b676f356
JD
32042003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3205
3206 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
3207 of area to be redrawn for better performance.
3208
3c671a56
SM
32092003-03-28 Stefan Monnier <monnier@cs.yale.edu>
3210
3211 * xterm.c (take_vertical_position_into_account): Remove.
3212 (xt_action_hook): Call set_vertical_scroll_bar if needed.
3213 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
3214 (xm_scroll_callback, x_create_toolkit_scroll_bar)
3215 (x_set_toolkit_scroll_bar_thumb): Simplify.
3216 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
3217 (XTread_socket): Remove unused var.
3218 (x_make_frame_invisible): Replace goto with else.
3219
3220 * xdisp.c (set_vertical_scroll_bar): New fun.
3221 (redisplay_window): Use it.
3222
84f2e615
RS
32232003-03-26 Richard M. Stallman <rms@gnu.org>
3224
3225 * xdisp.c (update_tool_bar): Recompute tool bar if
3226 update_mode_lines is set. Set w->update_mode_line
3227 only if the tool bar contents actually change.
3228 (update_menu_bar): Undo previous change.
3229
70b6104c
JD
32302003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3231
5fd6f727
JD
3232 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
3233 (xg_frame_set_char_size): Calculate scroll bar width before frame
3234 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
3235 (xg_separator_p): Check for all documented separator types.
3236 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
3237 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
3238
70b6104c
JD
3239 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
3240 so tool bar gets updated.
3241
d9b36d19
SM
32422003-03-26 Stefan Monnier <monnier@cs.yale.edu>
3243
3244 * data.c (store_symval_forwarding): Re-instate part of the code
3245 that was deleted with too much enthusiasm.
3246
32472003-03-25 Stefan Monnier <monnier@cs.yale.edu>
3248
3249 * data.c (store_symval_forwarding): Delete special read-only
3250 hack for type == -1, since we now use ->constant instead.
3251 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
3252
3253 * buffer.c (overlays_in): Declare static.
3254 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
3255 `constant' field rather than the variable's `type' field.
3256
365fa1b3
AC
32572003-03-24 Andrew Choi <akochoi@shaw.ca>
3258
3259 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
3260
3261 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
3262
3263 * fns.c [MAC_OSX]: Do not redefine vector.
3264
3265 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
3266
3267 * macgui.h: Remove definition of No_Cursor.
3268
d9b36d19 3269 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
3270
3271 * xdisp.c: Define No_Cursor.
3272 (x_write_glyphs, notice_overwritten_cursor)
3273 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
3274 (note_mouse_highlight): Remove Mac-specific code.
3275 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 3276
c0bcce6f
JPW
32772003-03-24 John Paul Wallington <jpw@gnu.org>
3278
3279 * xdisp.c (redisplay_window): If mini window's buffer is not
3280 empty, then redisplay it like other windows.
3281
a526b96c
KS
32822003-03-23 Kim F. Storm <storm@cua.dk>
3283
3284 * w32term.c (w32_draw_window_cursor): Fix last change.
3285
37ab321e
KH
32862003-03-23 Kenichi Handa <handa@m17n.org>
3287
a526b96c
KS
3288 * alloc.c (make_string_from_bytes, make_specified_string):
3289 Add `const' for the arg CONTENTS.
37ab321e
KH
3290
3291 * lisp.h (make_string_from_bytes, make_specified_string):
3292 Prototypes adjusted.
3293
7863d625
JD
32942003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3295
a526b96c 3296 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 3297
7863d625
JD
3298 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
3299 (XG_SB_RANGE): New define.
3300
3301 * gtkutil.c (xg_fixed_handle_expose): New function.
3302 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
3303 expose events.
3304 (xg_update_scrollbar_pos): Take two more arguments, left and width
3305 of scroll bar including borders.
3306 Clear left and right part outside scroll bar separately as some
3307 themes have bars that are not an even number of pixels.
d9b36d19 3308 Don't set reallocate_redraws, don't call
7863d625
JD
3309 gdk_window_process_all_updates.
3310 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
3311 so no need to change it. Calculate size and value with XG_SB_RANGE.
3312
d9b36d19
SM
3313 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
3314 Pass left and width of scroll bar including borders to
7863d625
JD
3315 xg_update_scrollbar_pos.
3316
af0ad939
TTN
33172003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
3318
3319 * Makefile.in: Make sure space precedes end-of-line backslashes.
3320
b22139fd
KS
33212003-03-22 Kim F. Storm <storm@cua.dk>
3322
3323 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
3324 Add generic versions here. Remove system specific versions
3325 defined elsewhere.
3326
3327 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
3328 Add prototypes.
3329
6e6410cf
KS
3330 * xterm.h (STORE_NATIVE_RECT): New macro.
3331
5c9cc435
KS
33322003-03-21 Kim F. Storm <storm@cua.dk>
3333
00c64fab
SM
3334 * xdisp.c (get_glyph_string_clip_rect):
3335 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
3336
3337 * dispextern.h (struct redisplay_interface): Add active_p
3338 argument to draw_window_cursor member. All uses changed.
3339
acd37560
KS
33402003-03-21 Kim F. Storm <storm@cua.dk>
3341
3342 The following changes consolidate code related to writing and
3343 inserting glyphs, exposing frame, the tool bar, the mouse face,
3344 the output cursor, and help echo from xterm.c, w32term.c and
3345 macterm.c into xdisp.c. It also generalizes the use of the
3346 window_part enum instead of using numeric values throughout.
af0ad939 3347
acd37560
KS
3348 * xdisp.c: Consolidate gui-independent code here.
3349 Include keymap.h.
3350 (Qhelp_echo): Import.
3351 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
3352 (help_echo_string, help_echo_window, help_echo_object)
3353 (previous_help_echo_string, help_echo_pos): Declare here.
3354 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
3355 (estimate_mode_line_height): Define here. Handle windowing
3356 systems directly (without using estimate_mode_line_height_hook).
3357 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
3358 (update_window_cursor, update_cursor_in_window_tree)
3359 (fast_find_position, fast_find_string_pos)
3360 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
3361 (expose_area, expose_line, expose_overlaps, expose_window)
3362 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
3363 declared static as they are only used locally in xdisp.c.
3364 (draw_glyphs): Rename from x_draw_glyphs and make static.
3365 (tool_bar_item_info, notice_overwritten_cursor): Make static.
3366 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
3367 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 3368 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
3369 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
3370 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
3371 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
3372 (note_mouse_highlight, x_clear_window_mouse_face)
3373 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
3374 (x_intersect_rectangles): New generic functions for use by xdisp.c
3375 and GUI front-ends.
3376 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
3377 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
3378
3379 * dispextern.h (Display_Info): Generic typedef for *_display_info.
3380 (NativeRectangle): Generic typedef for rectangle type.
3381 (enum window_part): Move here from window.c.
3382 (struct redisplay_interface): New members flush_display_optional,
3383 define_frame_cursor, clear_frame_area, draw_window_cursor,
3384 draw_vertical_window_border, shift_glyphs_for_insert.
3385 Rename member clear_mouse_face to clear_window_mouse_face.
3386 (estimate_mode_line_height_hook): Remove hook.
3387 (auto_raise_tool_bar_buttons_p): Don't declare extern.
3388 (tool_bar_item_info): Remove prototype.
3389 (help_echo_string, help_echo_window, help_echo_object)
3390 (previous_help_echo_string, help_echo_pos)
3391 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
3392 (x_stretch_cursor_p, output_cursor): Declare extern.
3393 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
3394 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
3395 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
3396 (display_and_set_cursor, set_output_cursor, x_cursor_to)
3397 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
3398 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
3399 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
3400 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
3401 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
3402 Add prototypes.
3403 (mode_line_string, marginal_area_string): Fix prototypes.
3404
3405 * window.c (enum window_part): Move to dispextern.h.
3406 (coordinates_in_window): Use enum window_part member names
3407 instead of numbers to describe return value.
3408 (struct check_window_data): Change part member to window_part.
3409 (check_window_containing): Return window_part unaltered.
3410 (window_from_coordinates): Change part arg from int to enum
3411 window_part. Allow part arg to be null. All users changed.
3412
3413 * window.h (window_from_coordinates): Fix prototype.
3414
3415 * term.c (estimate_mode_line_height): Move to xdisp.c.
3416
3417 * keyboard.c (make_lispy_event): Use enum window_part.
3418
3419 * dispnew.c (mode_line_string, marginal_area_string): Use enum
3420 window_part instead of int in arg list. Users changed.
3421
3422 * xterm.h (No_Cursor): Declare as None for X.
3423 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 3424
acd37560
KS
3425 * xterm.c: Remove consolidated defines and code.
3426 (BETWEEN): Remove unused macro.
3427 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
3428 (x_define_frame_cursor, x_clear_frame_area)
3429 (x_draw_window_cursor): New X-specific functions for RIF.
3430 (x_redisplay_interface): Add new members.
3431
3432 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
3433
3434 * w32term.h (struct w32_output): Remove cross_cursor member.
3435
3436 * w32term.c: Remove consolidated defines and code.
3437 (BETWEEN): Remove unused macro.
3438 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
3439 (w32_define_frame_cursor, w32_clear_frame_area)
3440 (w32_draw_window_cursor): New W32-specific functions for RIF.
3441 (w32_redisplay_interface): Add new members.
3442
3443 * w32gui.h (No_Cursor): Define as 0 for W32.
3444 (XRectangle): Add X compatible rectangle type.
3445 (NativeRectangle): Declare as RECT for W32.
3446 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
3447
3448 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
3449
3450 * w32console.c: Remove consolidated defines and code.
af0ad939 3451
acd37560
KS
3452 * msdos.h (Display_Info): Add generic typedef.
3453
3454 * msdos.c: Remove consolidated defines and code.
3455 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
3456
3457 * macterm.h (struct mac_output): Replace member cross_cursor by
3458 hand_cursor.
3459 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
3460
3461 * macterm.c: Remove consolidated defines and code.
3462 (BETWEEN): Remove unused macro.
3463 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
3464 (mac_define_frame_cursor, mac_clear_frame_area)
3465 (mac_draw_window_cursor): New Mac-specific functions for RIF.
3466 (x_redisplay_interface): Add new members.
3467
3468 * macgui.h (No_Cursor): Define as 0 for Mac.
3469 (XRectangle): Add X compatible rectangle type.
3470 (NativeRectangle): Declare as Rect for Mac.
3471 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
3472
204ccab1
KS
3473 * macfns.c (x_set_mouse_color): Setup hand_cursor.
3474 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 3475
9443fcf6 3476 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
3477 included from it. Add dependency on keymap.h.
3478
3479 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
3480
8ba01a70 34812003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
3482
3483 * fileio.c (Fexpand_file_name): Fix previous change.
3484
8ba01a70 34852003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
3486
3487 * fileio.c (Ffile_name_directory): Reconstruct file name by
3488 make_specified_string.
3489 (Ffile_name_nondirectory, Ffile_name_as_directory)
3490 (Fdirectory_file_name, Fexpand_file_name)
3491 (Fsubstitute_in_file_name): Likewise.
3492 (Fread_file_name): Compare decoded homedir with DIR and
3493 DEFAULT_FILENAME.
3494
3495 * alloc.c (make_specified_string): If NCHARS is negative, count
3496 the number of characters.
3497
19536747
JD
34982003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3499
de38ae5a
JD
3500 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
3501 all widgets.
3502
19536747
JD
3503 * gtkutil.h: Removed xg_ignore_next_thumb.
3504
37ab321e 35052003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
3506
3507 * coding.c (Vchar_coding_system_table): Remove this variable.
3508 (Vcoding_system_safe_chars): New variable.
3509 (intersection): Remove this function.
3510 (find_safe_codings): Don't use Vchar_coding_system_table, but try
3511 all codings in SAFE_CODINGS.
00c64fab 3512 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
3513 find_safe_codings. Get generic coding systems from
3514 Vcoding_system_safe_chars.
3515 (Fdefine_coding_system_internal): New function.
3516 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
3517 Initialize and staticpro Vcoding_system_safe_chars.
3518
17097258
JD
35192003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3520
2a2071c3
JD
3521 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
3522 equal old values before updating.
3523
17097258
JD
3524 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
3525
3526 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
3527
35282003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3529
3530 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
3531 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
3532 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
3533 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
3534 (xg_create_scroll_bar): Pass bar to button event callback.
3535 (xg_find_top_left_in_fixed): New function.
3536 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
3537 whole scroll bar area. Get old position with
3538 xg_find_top_left_in_fixed, calculate and only clear needed areas.
3539 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
3540 dragging is in progress. Calculate whole as for Motif.
3541 Remove code that saved last values. Call gtk_range functions to
3542 set scroll bar sizes.
3543
3544 * gtkutil.h: Removed xg_ignore_next_thumb.
3545
8cb9dfbf
JB
35462003-03-17 Juanma Barranquero <lektu@terra.es>
3547
3548 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
3549 and files included from it.
3550
00c64fab
SM
35512003-03-18 Stefan Monnier <monnier@cs.yale.edu>
3552
3553 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
3554 multiple occurrences of the same keymap under different prefixes.
3555 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
3556
c45bb3b2
JR
35572003-03-16 Jason Rumney <jasonr@gnu.org>
3558
3559 * w32gui.h: Use HDC for Display.
3560
3561 * w32term.c (w32_encode_char): Prevent double-byte chars from
3562 crashing Emacs.
3563
3564 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
3565 as binary.
3566
2a6d0874
JB
35672003-03-16 Juanma Barranquero <lektu@terra.es>
3568
3569 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
3570
03eb5fab
KS
35712003-03-16 Kim F. Storm <storm@cua.dk>
3572
3573 The following changes consolidate some of the gui-independent
3574 parts of the processing and drawing of "glyph strings" from
3575 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 3576
03eb5fab
KS
3577 * dispextern.h (struct glyph): Reduce face_id member from 22 to
3578 21 bits (this reduces number of faces from 4M to 2M).
3579 Replace W32 specific w32_font_type member (2 bits) by generic
3580 font_type member (3 bits) for portability.
3581 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
3582 (enum draw_glyphs_face): Define here.
3583 (struct glyph_string): Define here. Merge W32 and X versions.
3584 (struct redisplay_interface): New members per_char_metric,
3585 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
3586 (VCENTER_BASELINE_OFFSET): Define here.
3587 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
3588 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
3589
3590 * xdisp.c: Consolidate gui-independent "glyph string" code here.
3591 (dump_glyph_string): Moved here.
3592 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
3593 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
3594 (fill_composite_glyph_string, fill_glyph_string)
3595 (fill_image_glyph_string, fill_stretch_glyph_string)
3596 (left_overwritten, left_overwriting, right_overwritten)
3597 (right_overwriting, get_char_face_and_encoding)
3598 (set_glyph_string_background_width, compute_overhangs_and_x)
3599 (append_glyph, append_composite_glyph, produce_image_glyph)
3600 (take_vertical_position_into_account, append_stretch_glyph)
3601 (produce_stretch_glyph): New generic functions (based on X version).
3602 Call platform specific functions through rif.
3603 (INIT_GLYPH_STRING): New macro, hides W32 details.
3604 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
3605 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
3606 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
3607 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
3608 (notice_overwritten_cursor):
3609 Generic functions exported to platform modules. Users changed.
3610
3611 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
3612 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
3613 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 3614 New macros for consolidated code.
2a6d0874 3615
03eb5fab
KS
3616 * xterm.c: Remove consolidated defines and code.
3617 (x_per_char_metric, x_encode_char)
3618 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
3619 (x_redisplay_interface): Add new members.
3620
3621 * w32gui.h (Display): Add dummy typedef for consolidation.
3622 (XChar2b): Define alias for wchar_t for consolidation.
3623 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
3624
3625 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 3626 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
3627 New macros for consolidation.
3628
fad49844 3629 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
3630 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
3631 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
3632 (w32_per_char_metric): Change font_type arg to int for RIF.
3633 (w32_encode_char): Return int according to RIF requirements.
3634 (w32_compute_glyph_string_overhangs): Adapt to RIF.
3635 (w32_get_glyph_overhangs): New function for RIF. Uses generic
3636 x_get_glyph_overhangs.
3637 (w32_redisplay_interface): Add new members.
3638
3639 * macgui.h (XChar2b): Move typedef here for consolidation.
3640 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
3641
3642 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
3643 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
3644 consolidation.
3645
3646 * macterm.c: Remove consolidated defines and code.
3647 (mac_per_char_metric): New function for RIF.
00c64fab 3648 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
3649 (mac_compute_glyph_string_overhangs): Adapt for RIF.
3650 (x_redisplay_interface): Add new members.
3651
00c64fab
SM
36522003-03-15 Stefan Monnier <monnier@cs.yale.edu>
3653
3654 * keymap.c (Vmenu_events): New var.
3655 (syms_of_keymap): Initialize it.
3656 (where_is_internal): Check more carefully what is a menu event.
3657
225c7a07
RS
36582003-03-14 Richard M. Stallman <rms@gnu.org>
3659
3660 * lread.c (read1): After #!, exit loop on eof.
3661
cea9be54
JD
36622003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3663
9ea0e54d
JD
3664 * gtkutil.h: Add declaration for xg_frame_cleared.
3665
0cb35f4e
JD
3666 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
3667
cea9be54
JD
3668 * gtkutil.c (struct xg_last_sb_pos): New structure.
3669 (handle_fixed_child): New function.
3670 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
3671 and force a redraw on them.
3672 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
3673 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
3674 so we can avoid unneeded redraws.
3675 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
3676 and force a redraw on the scroll bar.
3677 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
3678 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 3679 (xg_frame_cleared): New function.
cea9be54 3680
20b853f3
KH
36812003-03-13 Kenichi Handa <handa@m17n.org>
3682
3683 * coding.c (Fdetect_coding_region): Fix docstring.
3684 (Fdetect_coding_string): Fix docstring.
3685
7a555aff
AS
36862003-03-13 Andreas Schwab <schwab@suse.de>
3687
25cc0080
AS
3688 * gtkutil.c: Add prototype for create_menus.
3689
30225431
AS
3690 * data.c (long_to_cons): Fix type of top.
3691
3692 * xselect.c (selection_data_to_lisp_data): Use int instead of
3693 long for an integer of size 4.
3694
7a555aff 3695 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 3696 (xg_tool_bar_help_callback): Likewise.
7a555aff 3697
a3e4741f
AS
36982003-03-12 Andreas Schwab <schwab@suse.de>
3699
3700 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
3701
9668be7c
KS
37022003-03-12 Kim F. Storm <storm@cua.dk>
3703
03eb5fab 3704 The following changes consolidate the fringe handling from
9668be7c 3705 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 3706
9668be7c
KS
3707 * xdisp.c: Consolidate fringe handling code here.
3708 (left_bits, right_bits, continued_bits, continuation_bits)
3709 (ov_bits, zv_bits): Define fringe bitmaps.
3710 (fringe_bitmaps): New array holding fringe bitmaps.
3711 (draw_fringe_bitmap): Draw a specific bitmap; call display
3712 specific drawing routine via rif->draw_fringe_bitmap.
3713 (draw_row_fringe_bitmaps): Generic replacement for
3714 x_draw_row_fringe_bitmaps; all callers changed.
3715 (compute_fringe_widths): Generic replacement for
3716 x_compute_fringe_widths; all callers changed.
3717
3718 * dispextern.h (enum fringe_bitmap_type): Define here.
3719 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
3720 (fringe_bitmaps): Declare extern.
3721 (struct redisplay_interface): New member draw_fringe_bitmap.
3722 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
3723
3724 * xterm.c: Remove generic fringe code.
3725 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
3726 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
3727
3728 * w32term.c: Remove generic fringe code.
3729 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
3730 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 3731
9668be7c
KS
3732 * macterm.c: Remove generic fringe code.
3733 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
3734 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
3735
00a88f32
SM
37362003-03-11 Stefan Monnier <monnier@cs.yale.edu>
3737
3738 * print.c (Fprin1_to_string): Return unibyte string if possible.
3739
1d1de695
DK
37402003-03-09 David Kastrup <dak@gnu.org>
3741
3742 * process.c (read_process_output): We have allocated enough space
3743 for readmax and carryover, so actually use the alloted space.
3744
257f40f2
JD
37452003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3746
3747 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
3748 toolkit scrollbar click.
3749
3750 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
3751 for USE_GTK.
3752 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
3753 also.
3754 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
3755 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 3756
257f40f2
JD
3757 * gtkutil.h: Declare xg_get_scroll_id_for_window.
3758
3759 * gtkutil.c (xg_get_scroll_id_for_window): New function.
3760 (xg_tool_bar_item_expose_callback): New function.
3761 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
3762 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
3763 on the tool bar widget.
3764 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
3765 to expose on the tool bar item widgets.
3766
15213141
JD
37672003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3768
26b74a0b 3769 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 3770 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
3771 deleted from the image cache).
3772
15213141
JD
3773 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
3774 the event isn't for a frame (i.e. for dialogs).
3775
20b853f3 37762003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
3777
3778 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
3779 composition components reaches the limit, terminate composing.
3780 (COMPOSITION_OK): New macro.
00a88f32 3781 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
3782 composition is found.
3783 (coding_restore_composition): Adjust the number of composition
3784 components if it is not sane.
3785
c9029fe5
JB
37862003-03-06 Juanma Barranquero <lektu@terra.es>
3787
3788 * w32term.h (struct w32_display_info): Add xrdb member to support
3789 passing resources via -xrm on Windows.
3790
3791 * w32term.c (w32_make_rdb): New function.
3792 (w32_term_init): Use it to initialize xrdb member of w32_display_info
3793 struct. Delete leftover code.
3794
3795 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
3796 for resources passed on the command line.
3797
3798 * w32reg.c (w32_get_rdb_resource): New function.
3799 (x_get_string_resource): Use it, so resources passed with -xrm
3800 supercede the ones in the registry.
3801
9d00001f
JD
38022003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3803
3804 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
3805 instead of x_top_window_to_frame.
3806
ca2417b9
JD
38072003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3808
3809 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
3810 when restarting Emacs.
3811
5b20caf0
RS
38122003-03-03 Richard M. Stallman <rms@gnu.org>
3813
3814 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
3815 to run kill-buffer-query-functions.
3816 (Qkill_buffer_query_functions): New var.
3817 (syms_of_buffer): Init and staticpro it.
3818
58e91b77
JD
38192003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3820
3821 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
3822
932357b4
KS
38232003-02-25 Kim F. Storm <storm@cua.dk>
3824
3825 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
3826 If centering point failed to make whole line visible and vscroll
3827 is non-zero, disable vscroll and try centering point again.
3828
3829 * lread.c (read1): Accept `single space' syntax like (? x).
3830
bb8db7e1
JD
38312003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3832
3833 * keyboard.c (cancel_hourglass_unwind): Surround with
3834 #ifdef HAVE_X_WINDOWS
3835
47d77aab
KH
38362003-02-25 Kenichi Handa <handa@m17n.org>
3837
3838 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
3839 process only when "subprocesses" is defined.
3840
6a097c0c
SM
38412003-02-24 Stefan Monnier <monnier@cs.yale.edu>
3842
3843 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
3844
0b063c27
JB
38452003-02-24 Juanma Barranquero <lektu@terra.es>
3846
d1135afc
JB
3847 * callint.c (fix_command): Declare as static void and move before
3848 Fcall_interactively.
3849
0b063c27
JB
3850 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
3851 (syms_of_xdisp): Don't initialize Qwhen.
3852
0af912f0
JD
38532003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3854
3855 * keyboard.c (cancel_hourglass_unwind): New function.
3856 (command_loop_1): Cancel hourglass with unwind-protect.
3857
120d0a23
RS
38582003-02-23 Richard M. Stallman <rms@gnu.org>
3859
3860 * callint.c (fix_command): New subroutine, from Fcall_interactively.
3861 Detect (when ... (region-beginning)) etc.
3862 (Fcall_interactively): Call fix_command.
3863 (Qif, Qwhen): New variables.
3864 (syms_of_callint): Init and staticpro them.
0b063c27 3865
120d0a23
RS
3866 * regex.c (print_partial_compiled_pattern): Output to stderr.
3867
4ece81a6
KG
38682003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
3869
3870 * dired.c (directory_files_internal): Don't expand directory.
3871 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
3872 instead. From Lars Hansen <larsh@math.ku.dk>.
3873
e52bd6b7
SM
38742003-02-22 Stefan Monnier <monnier@cs.yale.edu>
3875
3876 * fns.c (string_to_multibyte): Remove unused var i.
3877 (Flanginfo): Fix int/Lisp_Object mixup.
3878 (void_call2): New fun.
3879 (Fmap_char_table): Use it in place of call2.
3880
3881 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
3882
3883 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
3884
3885 * keymap.c (copy_keymap_1): Make it static.
3886
3887 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
3888
c33ef7c4
JB
38892003-02-22 David Ponce <david@dponce.com>
3890
3891 * lread.c (Fload): Don't check STRING_MULTIBYTE.
3892
16782258
JD
38932003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3894
3895 * process.h: Removed subtty field from struct Lisp_Process.
3896
3897 * process.c (create_process): Remove setting of subtty.
3898 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
3899 (Fprocess_running_child_p, process_send_signal):
3900 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
3901 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
3902
3abeca61
KG
39032003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
3904
3905 * keymap.c (Fdefine_key): Doc fix.
3906
92a8ce63
JB
39072003-02-21 Juanma Barranquero <lektu@terra.es>
3908
3909 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
3910
3911 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
3912 POLLING_PROBLEM_IN_SELECT.
3913
3914 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
3915 Delete #undef of POLLING_PROBLEM_IN_SELECT.
3916
3917 * s/hpux10-20.h: New file.
3918
e52bd6b7
SM
3919 * process.c (wait_reading_process_input):
3920 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 3921
20f1ef2e
KH
39222003-02-20 Kenichi Handa <handa@m17n.org>
3923
32d0a9dc
KH
3924 * fontset.c (check_fontset_name): If NAME is nil, return the
3925 default fontset.
3926 (override_font_info): New function.
e52bd6b7 3927 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
3928 (Ffontset_info): If FONTSET is not the default fontset, merge
3929 FONTSET onto the copy of the default fontset, and work on that
3930 copy. Document that NAME nil means the default fontset.
3931 (Ffontset_font): Document that NAME nil means the default fontset.
3932
20f1ef2e
KH
3933 * process.c (setup_process_coding_systems): If the process's
3934 in/out descriptor is -1, do nothing.
3935
77d1daf2
AS
39362003-02-19 Andreas Schwab <schwab@suse.de>
3937
e52bd6b7
SM
3938 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
3939 Add prototypes.
77d1daf2 3940
f9a45bb3
KH
39412003-02-19 Kenichi Handa <handa@m17n.org>
3942
3943 * xfaces.c (try_alternative_families): Try all scalable fonts if
3944 Vscalable_fonts_allowed is not Qt.
3945
72ecb43c
JD
39462003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3947
3948 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
3949
ee5be7c3
JD
39502003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3951
3952 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
3953 names.
3954
3955 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 3956 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
3957 x_face_list_fonts.
3958 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
3959 (Fx_list_fonts): Set maxnames to -1 to get all font names.
3960
4cd519a7
KS
39612003-02-18 Kim F. Storm <storm@cua.dk>
3962
068f9882
KS
3963 * lread.c (read1): Fix last change.
3964 "`" is not always special. Allow "?" after a character constant.
4cd519a7 3965
7290a344
AC
39662003-02-18 Andrew Choi <akochoi@shaw.ca>
3967
3968 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
3969
1f7fa69b
AS
39702003-02-18 Andreas Schwab <schwab@suse.de>
3971
3972 * window.c (window_scroll_pixel_based): Move outside a
3973 multi-glyph character before setting new window start.
3974
3975 * xdisp.c (in_display_vector_p): New function.
3976 * dispextern.h (in_display_vector_p): Declare.
3977
23e21195
KS
39782003-02-18 Kim F. Storm <storm@cua.dk>
3979
3980 * lread.c (read1): Fix and relax read syntax.
3981 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
3982 Only recognize "," after dotted-pair dot if inside backquote.
3983 Never include "`" or "," (inside backquote) in a symbol.
3984 Allow dotted-pair dot after a character constant.
3985 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 3986
f098b121
JD
39872003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3988
3989 * gtkutil.c (xg_tool_bar_expose_callback): New function.
3990 (xg_create_tool_bar): Force style of tool bar to be horizontal with
3991 icons. Set name of tool bar to emacs-toolbar.
3992 (update_frame_tool_bar): Connect expose event to
3993 xg_tool_bar_expose_callback.
3994
63020c46
RS
39952003-02-17 Richard M. Stallman <rms@gnu.org>
3996
3997 * keyboard.c (this_command_key_count_reset): New variable.
3998 Initiatize to 0 where this_command_key_count is set.
3999 (read_char): Save and restore this_command_key_count_reset
4000 around input method code.
4001 (read_char): If this_command_key_count_reset, echo reread commands.
4002 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
4003
fb4452cc
KH
40042003-02-17 Kenichi Handa <handa@m17n.org>
4005
4006 * fns.c (string_to_multibyte): Always return a multibyte string.
4007
bd11cc09
JR
40082003-02-16 Jason Rumney <jasonr@gnu.org>
4009
e52bd6b7
SM
4010 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
4011 Negative max_fonts parameter means list all.
bd11cc09 4012
4cdf4bde
DL
40132003-02-14 Dave Love <fx@gnu.org>
4014
4015 * fns.c (Flanginfo): Doc fix.
4016
023b93f6
KS
40172003-02-13 Kim F. Storm <storm@cua.dk>
4018
37cd4238
KS
4019 * lread.c (read_escape): Interpret \s as a SPACE character, except
4020 for \s-X in a character constant which still is the super modifier.
4021 (read1): Signal an `invalid read syntax' error if a character
4022 constant is immediately followed by a digit or symbol character.
4023
140a6b7e
KS
4024 * search.c (Fmatch_data): Doc fix. Explicitly state that
4025 match-data is undefined if last search failed.
4026
023b93f6
KS
4027 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
4028 All uses changed.
4029
7d5c86e5
JB
40302003-02-12 Juanma Barranquero <lektu@terra.es>
4031
4032 * eval.c (Fdefmacro): Fix typo.
4033
295fff2c
KS
40342003-02-12 Kim F. Storm <storm@cua.dk>
4035
4036 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
4037 macro is a string, convert meta modifiers in string when copying
4038 the string into a vector.
4039
60f3202d
KS
40402003-02-11 Kim F. Storm <storm@cua.dk>
4041
4042 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
4043
61cb0b53
KH
40442003-02-11 Kenichi Handa <handa@m17n.org>
4045
4046 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
4047
7392e23c
KS
40482003-02-10 Kim F. Storm <storm@cua.dk>
4049
4050 * process.c: Doc fixes.
4051 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
4052
ce4254bd
KH
40532003-02-10 Kenichi Handa <handa@m17n.org>
4054
9c7a329a
KH
4055 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
4056
ce4254bd
KH
4057 * process.c (QCfilter_multibyte): New variable.
4058 (setup_process_coding_systems): New function.
e52bd6b7
SM
4059 (Fset_process_buffer, Fset_process_filter):
4060 Call setup_process_coding_systems.
ce4254bd
KH
4061 (Fstart_process): Initialize the member `filter_multibyte' of
4062 struct Lisp_Process.
4063 (create_process): Call setup_process_coding_systems.
4064 (Fmake_network_process): New keyward `:filter-multibyte'.
4065 Initialize the member `filter_multibyte' of struct Lisp_Process.
4066 Call setup_process_coding_systems.
4067 (server_accept_connection): Call setup_process_coding_systems.
4068 (read_process_output): If the process has a filter, decide the
4069 multibyteness of a string to given to the filter by
4070 `filter_multibyte' member of the process. If the process doesn't
4071 have a filter and the result of conversion is unibyte, use
4072 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
4073 multibyte form.
4074 (Fset_process_coding_system): Call setup_process_coding_systems.
4075 (Fset_process_filter_multibyte): New function.
4076 (Fprocess_filter_multibyte_p): New function.
4077 (syms_of_process): Intern and staticpro QCfilter_multibyte.
4078 Defsubr Sset_process_filter_multibyte and
4079 Sprocess_filter_multibyte_p.
4080
4081 * process.h (struct Lisp_Process): New member filter_multibyte.
4082
4083 * lisp.h (setup_process_coding_systems): Add prototype.
4084
4085 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
4086 process, update coding systems for the process.
4087
b08d5f59
KH
40882003-02-09 Kenichi Handa <handa@m17n.org>
4089
4090 * fns.c (string_to_multibyte): New function.
4091 (Fstring_to_multibyte): New function.
4092 (syms_of_fns): Defsubr it.
4093
0dfd93c0
AS
40942003-02-08 Andreas Schwab <schwab@suse.de>
4095
4096 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
4097 instead of the substitution.
4098
7b76ca1c
JD
40992003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4100
4101 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
4102
4103 * xmenu.c (menu_position_func): Adjust menu popup position so that
4104 the menu is fully visible.
7b76ca1c 4105
2436a4e4
JD
41062003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4107
4108 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
4109 (x_make_frame_invisible, x_wm_set_icon_position):
4110 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
4111
4112 * xfns.c (x_set_name, x_set_title): Ditto.
4113
37d1e680
RS
41142003-02-04 Richard M. Stallman <rms@gnu.org>
4115
4116 * keyboard.c (echo_now): Update before_command_echo_length.
4117 (Freset_this_command_lengths): Reset this_command_key_count etc.
4118 immediately rather than arranging to do it later.
4119 (before_command_key_count_1, before_command_echo_length_1)
4120 (before_command_restore_flag): Vars deleted.
4121 (add_command_key): Don't handle before_command_restore_flag.
4122 (read_char, record_menu_key): Don't update before_command_key_count or
4123 before_command_echo_length.
4124 (read_char): Don't handle before_command_restore_flag.
4125
4126 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
4127 in direct-output clauses if it wouldn't be called in the ordinary case.
4128
578846a3
KS
41292003-02-04 Kim F. Storm <storm@cua.dk>
4130
4131 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
4132
49853a4d
JD
41332003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4134
4135 * gtkutil.c (remove_from_container): Copying list is not needed.
4136 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
4137 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
4138 on list returned from gtk_container_get_children to avoid memory leak.
4139
8b53dc06
JR
41402003-02-01 Jason Rumney <jasonr@gnu.org>
4141
5d54d177
JR
4142 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
4143 local malloc.
4144 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
4145 definitions in xpm.h.
4146 (init_xpm_functions): New function.
4147 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
4148 (init_external_image_libraries): Try to load libXpm.dll.
4149
8b53dc06
JR
4150 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
4151 timestamp.
4152
b222e415
DL
41532003-01-31 Dave Love <fx@gnu.org>
4154
4155 * syntax.c (Fskip_chars_forward)
4156 (open-paren-in-column-0-is-defun-start): Doc fix.
4157
c60ee5e7
JB
41582003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
4159
4160 * fileio.c: Support // at start of name for Cygwin (just added proper
4161 preprocessor tests).
4162
4163 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
4164
4165 * Makefile.in: Use @EXEEXT@ for Cygwin.
4166
4167 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
4168
4169 * s/cygwin.h: Added for Cygwin port.
4170
53b37591
JB
41712003-01-31 Juanma Barranquero <lektu@terra.es>
4172
4173 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
4174 when including gif_lib.h.
fe929957
JB
4175 (init_gif_functions, init_tiff_functions): New functions.
4176 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
4177 Windows. Disable color table lookups. Call library functions
53b37591 4178 through pointers determined at runtime.
fe929957
JB
4179 (init_external_image_libraries): Try to load libungif.dll and
4180 libtiff.dll.
53b37591 4181
45415a8f
KH
41822003-01-31 Kenichi Handa <handa@m17n.org>
4183
4184 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 4185 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 4186
a97e4138
JD
41872003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4188
e52bd6b7 4189 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 4190
6eed9bed
DL
41912003-01-30 Dave Love <fx@gnu.org>
4192
4193 * alloc.c (Vgc_elapsed, gcs_done): New variables.
4194 (Fgarbage_collect): Use them.
4195 (init_alloc, syms_of_alloc): Set them up.
4196
100dcd40
JB
41972003-01-30 Juanma Barranquero <lektu@terra.es>
4198
4199 * w32fns.c (init_external_image_libraries): Add missing operator.
4200
fbd852af
JR
42012003-01-29 Jason Rumney <jasonr@gnu.org>
4202
4203 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
4204 an alternative name for jpeg.dll.
4205
8a2d8020
KH
42062003-01-29 Kenichi Handa <handa@m17n.org>
4207
4208 * xdisp.c (set_cursor_from_row): Pay attention to string display
4209 properties.
4210
058c18c7
AC
42112003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
4212
4213 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
4214 <escape>.
4215 (keycode_to_xkeysym_table): Reformat and add more comments.
4216 (XTread_socket): Drop special case for backspace.
4217
385f11cf
AC
42182003-01-28 Andrew Choi <akochoi@shaw.ca>
4219
4220 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
4221 values in old-style RGB specs.
4222
c922a224
JB
42232003-01-27 Juanma Barranquero <lektu@terra.es>
4224
4225 * w32fns.c (init_external_image_libraries): Try alternate names for the
4226 jpeg dll.
4227
0a1d6de0
JD
42282003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4229
4230 * gtkutil.c (create_dialog, xg_separator_p)
4231 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
4232 before calling strcmp or strlen.
4233
a97e4138 42342003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
4235
4236 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
4237 and handle image load failure.
4238
28908312
JR
42392003-01-26 Jason Rumney <jasonr@gnu.org>
4240
4241 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
4242 New functions.
4243 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
4244 Disable color table lookups. Call jpeg library functions
4245 through pointers determined at runtime.
4246 (init_external_image_libraries): Try to load jpeg.dll.
4247
84e47416
RS
42482003-01-25 Richard M. Stallman <rms@gnu.org>
4249
4250 * lisp.h: Declare format2 instead of format1.
4251
4252 * fileio.c (barf_or_query_if_file_exists):
4253 Call format2 instead of format1.
4254
4255 * editfns.c (format2): New function, replaces format1
4256 but takes exactly two Lisp Objects as format args.
4257
4258 * buffer.c (Fkill_buffer): Call format2 instead of format1.
4259
a97e4138 42602003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
4261
4262 * xterm.h: Change to return value of x_dispatch_event to int.
4263
4264 * xterm.c (x_filter_event): New function.
4265 (event_handler_gdk, XTread_socket): Call x_filter_event.
4266 (x_dispatch_event): Change to return value of finish.
4267 (event_handler_gdk): Use return value from x_dispatch_event.
4268
4269 * xfns.c (x_window): Call create_frame_xic for GTK version to
4270 initialize input methods.
4271
4272 * gtkutil.h: Add (void) prototypes.
4273
4274 * gtkutil.c (create_menus): Remove code that puts the help menu to
4275 the right.
4276
54eefef1
JR
42772003-01-25 Jason Rumney <jasonr@gnu.org>
4278
4279 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
4280 [HAVE_PNG]: Sync with xfns.c version.
4281 (png_load): Adjust colors for Windows. Use Windows
4282 bitmaps. Disable color table lookups.
c262430d
JR
4283 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
4284 (init_png_functions): New function.
4285 (png_read_from_memory, png_load): Call png library functions
4286 through pointers determined at runtime.
4287 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
4288 (init_external_image_libraries): New function.
4289 (init_xfns): Call it.
54eefef1 4290
1a9e275b
AS
42912003-01-24 Andreas Schwab <schwab@suse.de>
4292
4293 * minibuf.c (Fminibuffer_message): Verify type of parameter.
4294
a97e4138 42952003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
4296
4297 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
4298 of static initializer.
4299
422eec7e
DL
43002003-01-24 Dave Love <fx@gnu.org>
4301
4302 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
4303 architectures.
4304
4305 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
4306 Use __alignof__.
4307
2a026b04
KH
43082003-01-24 Kenichi Handa <handa@m17n.org>
4309
4310 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 4311 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
4312 (command_loop_1): Call adjust_point_for_property with proper
4313 second arg.
4314
a18bb28d
JR
43152003-01-22 Jason Rumney <jasonr@gnu.org>
4316
4317 Sync changes with xterm.c and xfns.c.
4318
4319 * w32term.c (x_draw_glyph_string_foreground)
4320 (x_draw_composite_glyph_string_foreground): Implement overstriking.
4321
4322 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
4323 phys_cursor's hpos is overwritten. This is still not completely
4324 correct, as it doesn't really make sense to use hpos at all to
4325 get the cursor glyph (as that is relative to the width of the
4326 characters on the line, which may have changed during the update).
4327
4328 * w32term.c (notice_overwritten_cursor): Handle the special case
4329 of the cursor being in the first blank non-text line at the
4330 end of a window.
4331
4332 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
4333 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
4334 Compute from the x position returned by x_draw_glyphs.
4335
4336 (x_display_and_set_cursor): Don't set phys_cursor_width here,
4337 except for NO_CURSOR and system caret, to make phys_cursor_width
4338 contain what its name suggests.
4339 (notice_overwritten_cursor): Consider the cursor image erased if
4340 the output area intersects the cursor image in y-direction.
4341
6a097c0c
SM
4342 * w32term.c (note_mode_line_or_margin_highlight): Rename from
4343 note_mode_line_highlight and extend.
a18bb28d
JR
4344
4345 * w32term.c (last_window): New variable.
4346 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
4347 (note_mouse_movement): Remove reimplemented code in #if 0.
4348
4349 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
4350 not update_mode_lines, and always set it to 1.
4351
ac6e47ef
JR
43522003-01-21 Jason Rumney <jasonr@gnu.org>
4353
4354 * w32fns.c (IDC_HAND): Define it if system headers don't.
4355
43562003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
4357
4358 * w32term.h (struct w32_output): New member hand_cursor.
4359 (WM_EMACS_SETCURSOR): New message definition.
4360
4361 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
4362 function w32_define_cursor.
4363 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
4364 position, change member name output_data.x to output_data.w32 and
4365 add function w32_define_cursor.
4366 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
4367 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
4368 (w32_initialize_display_info):
4369 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
4370
4371 * w32fns.c (Vx_hand_shape): New variable.
4372 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
4373 WM_EMACS_SETCURSOR.
4374 (x-create-frame): Setup Cursor types.
4375
ceb39a17
JB
43762003-01-21 David Ponce <david@dponce.com>
4377
ac6e47ef
JR
4378 * w32term.c (w32_encode_char): For DIM=1 charset, set
4379 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
4380 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 4381 2002-09-30.)
ac6e47ef
JR
4382 (w32_draw_relief_rect): Declare all args.
4383 (w32_define_cursor): New.
4384
4385 * w32fns.c (w32_load_cursor): New function.
4386 (w32_init_class): Use it.
4387 (x_put_x_image): Declare all args.
4388
46cf0bed
JB
43892003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
4390
4391 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
4392
a97e4138 43932003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
4394
4395 * gtkutil.c: Must include stdio.h before termhooks.h
4396
83fc9c63
DL
43972003-01-21 Dave Love <fx@gnu.org>
4398
4399 * alloc.c (Fgc_status): Print zombie list.
4400 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
4401 Fix assignment of zombies.
4402 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
4403 Don't take car of non-cons.
4404
4405 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
4406
4407 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
4408
fe04b8c8
JR
44092003-01-20 David Ponce <david@dponce.com>
4410
4411 * w32menu.c (digest_single_submenu): Declare all args.
4412
4413 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
4414 changes in xmenu.c:
4415
4416 (parse_single_submenu): Use individual keymap's prompt
4417 string as pane name, if there is one.
4418 (set_frame_menubar): Save menu_items_n_panes from each call to
4419 parse_single_submenu and use it when calling digest_single_submenu.
4420
539e69a9
ST
44212003-01-20 Steven Tamm <steventamm@mac.com>
4422
4423 * macterm.c (XTread_socket): Checks for valid, visible window
4424 before sending a scroll-wheel event.
4425
675d000f
RS
44262003-01-20 Richard M. Stallman <rms@gnu.org>
4427
4428 * xdisp.c (redisplay_window): If mini window's buffer is not
4429 a minibuffer, then redisplay it like other windows.
4430
a97e4138 44312003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
4432
4433 * gtkutil.c (xg_create_frame_widgets): Check if there is an
4434 external tool bar before setting tool bar height.
4435
048addec
JD
44362003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4437
4438 * xterm.c (handle_one_xevent): Surround popup_activated
4439 with #ifdef:s for non-toolkit version.
4440
4441 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
4442 (gtkutil.o): New file.
4443 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
4444 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
4445
4446 * gtkutil.c: New file for GTK version.
4447
4448 * gtkutil.h: New file for GTK version.
4449
4450 * xterm.h: Add xt_or_gtk_widget.
4451 Include gtk files for USE_GTK.
4452 (struct x_output): Add toolbar_height.
4453 (struct x_output): Add GTK widgets and Gdk size_hints.
4454 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
4455 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
4456 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
4457
4458 * xterm.c: Include gtkutil.h for USE_GTK.
4459 Declare extern void free_frame_menubar for USE_GTK.
4460 (note_mouse_highlight): Check popup_activated for USE_GTK.
4461 (xt_action_hook): Don't compile if USE_GTK.
4462 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
4463 (xg_scroll_callback): New function.
4464 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
4465 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
4466 for USE_GTK.
4467 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
4468 xg_show_scroll_bar for USE_GTK.
4469 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
4470 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
4471 (event_handler_gdk): New function for USE_GTK.
4472 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
4473 (handle_one_xevent): Make sure widget is mapped before
4474 calling x_real_positions for USE_GTK.
4475 (XTread_socket): Add GTK event loop for USE_GTK.
4476 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
4477 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
4478 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
4479 (x_iconify_frame): Add code for USE_GTK.
4480 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
4481 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
4482 is in gtkutil.c.
4483 (x_term_init): Add initialization for GTK.
4484 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
4485
4486 * xmenu.c: Include gtkutil.h for USE_GTK.
4487 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
4488 (single_menu_item, single_menu_item, Fx_popup_dialog):
4489 Check for USE_GTK.
048addec
JD
4490 (popup_widget_loop): New function for USE_GTK.
4491 (x_activate_menubar): Add code for USE_GTK.
4492 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
4493 (menu_highlight_callback, menubar_selection_callback):
4494 Add USE_GTK versions.
048addec
JD
4495 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
4496 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
4497 (free_frame_menubar): Only compile if not USE_GTK. GTK version
4498 is in gtkutil.c.
4499 (popup_selection_callback): New version for USE_GTK.
4500 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 4501 one USE_X_TOOLKIT version.
048addec
JD
4502 (xmenu_show): Call create_and_show_popup_menu.
4503 (dialog_selection_callback): New version for USE_GTK.
4504 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 4505 one USE_X_TOOLKIT version.
048addec
JD
4506 (xdialog_show): Call create_and_show_dialog.
4507
4508 * xfns.c: Include gtkutil for USE_GTK.
4509 (x_window_to_frame, x_any_window_to_frame)
4510 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
4511 (x_top_window_to_frame): Add code for USE_GTK.
4512 (x_set_background_color): Call xg_set_background_color for GTK.
4513 (x_set_menu_bar_lines): Check for USE_GTK.
4514 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
4515 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
4516 (x_window): Call xg_create_frame_widgets for USE_GTK.
4517 (Fx_create_frame): Check for USE_GTK
4518 (Fx_file_dialog): New implementation for USE_GTK.
4519
4520 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
4521 (update_menu_bar): Add check for USE_GTK.
4522 (update_tool_bar): Add check for USE_GTK and external tool bar.
4523 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
4524 (redisplay_internal): Add check for USE_GTK and popup_activated.
4525 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
4526 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
4527 (display_menu_bar): Add check for USE_GTK
4528
4529 * lisp.h: Declare Vx_resource_name extern.
4530
4531 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
4532 for USE_GTK.
4533 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
4534
4535 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
4536 (FRAME_EXTERNAL_TOOL_BAR): New macro.
4537 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
4538
4539 * fileio.c (Fread_file_name): Add check for USE_GTK.
4540
6bdb309a
SM
4541 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
4542 Add check for USE_GTK.
048addec
JD
4543
4544 * config.in: Added HAVE_GTK
4545
4546 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
4547
45482003-01-18 Stefan Monnier <monnier@cs.yale.edu>
4549
4550 * charset.h (Funibyte_char_to_multibyte): Export.
4551
45522003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4553
4554 * xmenu.c (mouse_position_for_popup): New function.
4555 (Fx_popup_menu): Call mouse_position_for_popup for X and
4556 mouse_position_hook for others.
4557
45582003-01-17 Kim F. Storm <storm@cua.dk>
4559
4560 * editfns.c (Finsert): Mention `string-make-multibyte' and
4561 `string-as-multibyte' in doc string.
4562
45632003-01-17 Kenichi Handa <handa@m17n.org>
4564
4565 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 4566
048addec
JD
4567 * editfns.c (Fformat): Convert an unibyte char argument that is
4568 formatted by "%c" to multibyte if the total result must be a
4569 multibyte string.
cd7df9c0 4570
048addec 45712003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 4572
048addec
JD
4573 * process.c (set-process-filter): Document unibyte/multibyte-ness
4574 of string argument.
56210ecd 4575
048addec 45762003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 4577
048addec 4578 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 4579
048addec
JD
4580 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
4581 (re_search_2): Likewise.
6df8b9fe 4582
048addec 45832003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 4584
048addec
JD
4585 * xdisp.c (message_dolog): Fix bug of the case that *Message*
4586 buffer is unibyte.
292ddc31 4587
048addec 45882003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 4589
048addec 4590 * fns.c (Fsubstring): Clarify doc string.
292ddc31 4591
048addec
JD
4592 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
4593 (Fprevious_char_property_change)
4594 (Fnext_single_char_property_change)
4595 (Fprevious_single_char_property_change, Fnext_property_change)
4596 (Fnext_single_property_change, Fprevious_property_change)
4597 (Fprevious_single_property_change, Fadd_text_properties)
4598 (Fput_text_property, Fset_text_properties)
4599 (Fremove_text_properties, Fremove_list_of_text_properties)
4600 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 4601
048addec 46022003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 4603
048addec
JD
4604 * process.h (struct Lisp_Process): New member plist replaces old
4605 member private_vars. All uses changed.
63e4e4c6 4606
048addec 4607 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 4608 (QCplist): Rename from QCvars. Change all uses.
048addec 4609 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 4610 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 4611 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 4612 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 4613
048addec 46142003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 4615
6bdb309a 4616 * m/delta.h: Remove (obsolete).
e833850f 4617
048addec 46182003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 4619
048addec
JD
4620 * fileio.c (Fdelete_directory, Fdelete_file): Document the
4621 behaviour in front of symlinks.
4622 (Fdelete_file): Raise an error on directories.
817cb127 4623
048addec 46242003-01-13 Dave Love <fx@gnu.org>
817cb127 4625
048addec 4626 * fns.c (Freverse): Use QUIT.
3e8cf2ea 4627
048addec 46282003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 4629
048addec
JD
4630 * minibuf.c (minibuffer_completion_contents):
4631 Error if point is inside prompt.
3e8cf2ea 4632
048addec
JD
4633 * keyboard.c (command_loop_1): Don't redisplay directly
4634 if there's a post-command-hook.
3e8cf2ea 4635
048addec
JD
4636 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
4637 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 4638
048addec 46392003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 4640
048addec 4641 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 4642
048addec
JD
4643 * process.c (QCvars): New variable.
4644 (syms_of_process): Intern and staticpro it.
4645 (Fset_process_contact): Removed function.
4646 (Fprocess_variable, Fset_process_variable): New functions.
4647 (syms_of_process): Defsubr them.
4648 (Fstart_process): Initialize private_vars plist to nil.
4649 (Fmake_network_process): New arg :vars to setup the private
4650 variables for new network process.
4651 (server_accept_connection): Copy server's private variables to
4652 client process.
2c10f029 4653
048addec
JD
4654 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
4655 crashes). Code rewritten and simplified. Now directly aligns the
4656 pointer and recalculates pure_bytes_used, rather than aligning the
4657 size and adjusting the pointer.
b8a76c6c 4658
048addec 46592003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 4660
048addec
JD
4661 * process.c (Fset_process_contact): New function.
4662 (syms_of_process): defsubr it.
4663 (make-network-process): Update doc.
3a8d0899 4664
048addec 46652003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 4666
048addec
JD
4667 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
4668 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 4669
048addec 46702003-01-10 Dave Love <fx@gnu.org>
4abc7470 4671
048addec 4672 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 4673
048addec 46742003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 4675
048addec
JD
4676 * process.c (Fmake_network_process): Convert new port number
4677 to host byte order for `:service t' case. From Mario Lang.
bf338245 4678
048addec 46792003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 4680
048addec
JD
4681 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
4682 instead of XtAppProcessEvent.
bf338245 4683
048addec
JD
4684 * xterm.c (handle_one_xevent): New function.
4685 (x_dispatch_event): New function.
4686 (XTread_socket): Call handle_one_xevent.
bf338245 4687
048addec 4688 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 4689
048addec
JD
4690 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
4691 call XQueryPointer to get coordinates.
4692 (popup_get_selection): Do not set popup_activated_flag to zero,
4693 let popup_deactivate_callback do that. Needed for Motif.
4694 Call x_dispatch_event instead of XtDispatchEvent.
4695 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 4696
048addec 46972003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 4698
6bdb309a 4699 * process.c (server_accept_connection): Fix recording of new
048addec
JD
4700 connection's local address in :local property of contact info.
4701 (Fmake_network_process): Record local network address for new
4702 client processes in :local property of contact info.
6bdb309a 4703 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 4704
048addec 47052003-01-07 Dave Love <fx@gnu.org>
00e3ab56 4706
048addec 4707 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 4708
048addec 47092003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 4710
048addec 4711 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 4712
048addec
JD
4713 * eval.c (Fuser_variable_p): Doc change. For custom variables,
4714 use the same test as for custom-variable-p.
8c6d74c6 4715
048addec 47162003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 4717
048addec
JD
4718 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
4719 Count LAST_LINE_MISFIT in scroll margin for end of window.
4720 Move label too_near_end before setting SCROLL_MARGIN_POS.
4721 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 4722
048addec
JD
4723 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
4724 scroll_conservatively case. If scrolling that much doesn't change
4725 STARTP, move it down one line.
e833850f 4726
048addec
JD
4727 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
4728 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 4729
048addec
JD
4730 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
4731 selected frame.
8c6d74c6 4732
048addec
JD
4733 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
4734 (syms_of_keymap): staticpro them.
4735 (Fapropos_internal): Initialize them and clear them out.
4736 Don't GCPRO them.
8c6d74c6 4737
048addec
JD
4738 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
4739 Doc fixes.
8c6d74c6 4740
048addec
JD
4741 * lisp.h: New misc type Lisp_Save_Value.
4742 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
4743 (XSAVE_VALUE): New macro.
4744 (struct Lisp_Save_Value): New data type.
4745 (union Lisp_Misc): Add u_save_value alternative.
4746 (make_save_value): Declared.
8c6d74c6 4747
048addec 4748 * alloc.c (make_save_value): New function.
8c6d74c6 4749
048addec
JD
4750 * xterm.c (x_catch_errors): Save dpy using make_save_value.
4751 (x_catch_errors_unwind): Call XSync.
8c6d74c6 4752
048addec 47532003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 4754
048addec 4755 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 4756
048addec
JD
4757 * keyboard.c (command_loop_1): Call adjust_point_for_property
4758 in direct action cases for Qforward_char and Qbackward_char.
4759 Set already_adjusted so it won't be done twice.
8c6d74c6 4760
048addec 47612002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 4762
048addec
JD
4763 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
4764 type definition of size_t.
8c609cff 4765
048addec 47662003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 4767
048addec
JD
4768 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
4769 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 4770
048addec 47712002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 4772
048addec
JD
4773 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
4774 to default to t.
fa634a5e 4775
048addec 47762002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 4777
048addec 4778 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 4779
048addec 47802002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 4781
048addec
JD
4782 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
4783 allow building in a different directory than source. Uses some
4784 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 4785
048addec 47862002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 4787
048addec
JD
4788 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
4789 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
4790 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
4791 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 4792
048addec 47932002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 4794
048addec
JD
4795 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
4796 <scroll-down-aggressively>: Doc fix.
2155ecf3 4797
048addec
JD
4798 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
4799 string as pane name, if there is one.
4800 (set_frame_menubar): Save menu_items_n_panes from each call to
4801 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 4802
048addec
JD
4803 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
4804 Don't try to make last line fully visible if it is past end of window.
61f1d295 4805
048addec 48062002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 4807
048addec
JD
4808 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
4809 (mac_menu_show): Add support for hierarchical popup menus.
4810 (add_menu_item): Remove indentation support.
4811 (fill_submenu, fill_menu): Create hierarchical menus
4812 instead of using indentation.
0b17a217 4813
048addec 48142002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 4815
048addec
JD
4816 * xdisp.c (try_cursor_movement): Don't call try_window here.
4817 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 4818
048addec 4819 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 4820
048addec 48212002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 4822
048addec
JD
4823 * macterm.c (XTread_socket): Call KeyTranslate for control and
4824 meta to deal correctly shifted non-alpha characters, like C-S-5
4825 being treated like C-%. Does not look for shift key to deal
4826 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 4827
048addec 48282002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 4829
048addec
JD
4830 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
4831 If it is non-nil, run timers. Use an unwind-protect to requeue
4832 the events that were read ahead.
4833 (popup_get_selection_unwind): New subroutine.
4834 (popup_get_selection_queue): File-scope variable now holds that queue.
4835 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
4836 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
4837 Use an unwind-protect to pop down the dialog box.
4838 (xdialog_show_unwind): New subroutine implements that.
f02cac82 4839
048addec
JD
4840 * xdisp.c (row_containing_pos): Change exit test using last_y.
4841 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 4842
048addec
JD
4843 * lread.c (load_error_handler): New function.
4844 (Fload): Handle errors in Fsubstitute_in_file_name.
4845 Don't expect Fsignal to return.
f02cac82 4846
048addec
JD
4847 * eval.c: Errors and throws work right with interrupt blocking.
4848 (struct catchtag): New elt interrupt_input_blocked.
4849 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
4850 (internal_catch, Fcondition_case, internal_condition_case)
4851 (internal_condition_case_1, internal_condition_case_2): Save it.
4852 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 4853
048addec 4854 * editfns.c (Fformat): Add parens.
f02cac82 4855
048addec
JD
4856 * dired.c (file_name_completion): Fix that change.
4857 Delete special quit-handling code; just use QUIT.
f02cac82 4858
048addec 48592002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 4860
048addec
JD
4861 * dired.c (file_name_completion): Close directory on error
4862 just as in directory_files_internal.
1a590729 4863
048addec 48642002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 4865
048addec
JD
4866 * window.c (Fset_window_configuration): Set old_point to correct
4867 value when new_current_buffer == current_buffer.
f02cac82 4868
048addec 48692002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 4870
048addec
JD
4871 Revisited my earlier fix for the following entry in etc/PROBLEMS:
4872 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
4873 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 4874
048addec
JD
4875 These changes were in part based upon suggestions made by Peter
4876 'Luna' Runestig [peter@runestig.com].
9785d95b 4877
048addec
JD
4878 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
4879 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 4880 g_b_init_get_sid_identifier_authority ): Add several static
048addec 4881 global variables.
9785d95b 4882
048addec
JD
4883 * w32.c (globals_of_w32): New function. Used to initialize those
4884 global variables that must always be initialized on startup even
4885 when the global variable initialized is non zero. Its primary
4886 purpose at this time is to set the global variables
4887 g_b_init_is_windows_9x, g_b_init_open_process_token,
4888 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
4889 g_b_init_get_sid_identifier_authority to 0 on startup.
4890 Called from main.
9785d95b 4891
048addec
JD
4892 * w32.c (is_windows_9x): Perform initialization only if
4893 g_b_init_is_windows_9x is equal to 0. On initialization set
4894 g_b_init_is_windows_9x equal to 1.
2308af15 4895
048addec
JD
4896 * w32.c (open_process_token): Perform initialization only if
4897 g_b_init_open_process_token is equal to 0. On initialization set
4898 g_b_init_open_process_token equal to 1.
2308af15 4899
048addec
JD
4900 * w32.c (get_token_information): Perform initialization only if
4901 g_b_init_get_token_information is equal to 0. On initialization
4902 set g_b_init_get_token_information equal to 1.
9785d95b 4903
048addec
JD
4904 * w32.c (lookup_account_sid): Perform initialization only if
4905 g_b_init_lookup_account_sid is equal to 0. On initialization
4906 set g_b_init_lookup_account_sid equal to 1.
9785d95b 4907
048addec
JD
4908 * w32.c (get_sid_identifier_authority): Perform initialization
4909 only if g_b_init_get_sid_identifier_authority is equal to 0.
4910 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 4911
048addec
JD
4912 * w32fns.c (globals_of_w32fns): New function. Used to initialize
4913 those global variables that must always be initialized on startup
4914 even when the global variable initialized is non zero.
4915 Its primary purpose at this time is to initialize the global variable
4916 track_mouse_event_fn.
9785d95b 4917
048addec
JD
4918 * w32fns.c (w32_wnd_proc): Remove initialization of
4919 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 4920
048addec 4921 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 4922
048addec
JD
4923 * w32menu.c (globals_of_w32menu): New function. Used to
4924 initialize those global variables that must always be initialized
4925 on startup even when the global variable initialized is non zero.
4926 Its primary purpose at this time is to initialize the global
4927 variables get_menu_item_info and set_menu_item_info.
9785d95b 4928
048addec
JD
4929 * w32menu.c (initialize_frame_menubar): Remove initialization of
4930 get_menu_item_info and set_menu_item_info.
9785d95b 4931
048addec 4932 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 4933
048addec
JD
4934 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
4935 Declare them.
9785d95b 4936
048addec
JD
4937 * emacs.c (main): Call globals_of_w32 prior to calling
4938 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
4939 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
4940 is defined.
9785d95b 4941
048addec
JD
4942 * w32term.c (x_update_window_begin): Fix Windows API error
4943 detected by BoundsChecker. Test to determine if
4944 w32_system_caret_hwnd is NULL prior to attempting to use
4945 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 4946
048addec
JD
4947 * w32term.c (x_update_window_end): Fix Windows API error
4948 detected by BoundsChecker. Test to determine if
4949 w32_system_caret_hwnd is NULL prior to attempting to use
4950 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 4951
048addec 49522002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 4953
048addec
JD
4954 * coding.c (coding_system_require_warning): New variable.
4955 (syms_of_coding): DEFVAR it.
b6da19ef 4956
048addec 4957 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 4958
048addec
JD
4959 * fileio.c (choose_write_coding_system): Even if
4960 Vcoding_system_for_write is non-nil, if
4961 coding_system_require_warning is nonzero, call
4962 Vselect_safe_coding_system_function.
bfcf6dbe 4963
048addec 49642002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 4965
048addec
JD
4966 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
4967 (lisp): Add font-core.
2c568af5 4968
048addec 49692002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 4970
048addec
JD
4971 * textprop.c (text_read_only): New arg `propval'.
4972 (get_char_property_and_overlay): Remove unused var `next_overlay'.
4973 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 4974
048addec 49752002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 4976
048addec 4977 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 4978
048addec 49792002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 4980
048addec
JD
4981 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
4982 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
4983 Be more careful about when help_events are generated.
96720f09 4984
048addec 49852002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 4986
048addec
JD
4987 * macterm.c (mac_check_for_quit_char): Correctly set the
4988 modifiers of the event to 0.
4989 * mac.c (sys_select): Duplicate rfds before calling select to
4990 ensure that rfds survive the while loop.
e5ae1c49 4991
048addec 49922002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 4993
048addec
JD
4994 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
4995 row_containing_pos returned NULL.
2eb46b2d 4996
048addec 49972002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 4998
6bdb309a 4999 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 5000 non-blocking.
6bdb309a 5001 (sys_select): Fix sys_select to not use a timeout larger than
048addec 5002 the one given.
b11f1d8a 5003
048addec 50042002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 5005
048addec 5006 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 5007
048addec 50082002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 5009
048addec
JD
5010 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
5011 as the last thing.
a4ac5b17 5012
048addec 50132002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 5014
048addec 5015 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 5016
048addec 50172002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 5018
048addec
JD
5019 * editfns.c (Fformat): Handle precision in string conversion
5020 specifiers like libc functions do (ie, print at most that many
5021 characters).
85cce843 5022
048addec 50232002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 5024
048addec
JD
5025 * xdisp.c (row_containing_pos): Check more carefully
5026 whether charpos is really in the row before returning it.
0d4d26a7 5027
048addec 50282002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 5029
048addec 5030 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 5031
048addec
JD
5032 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
5033 each stack frame. This may change as it could be time consuming.
0d4d26a7 5034
048addec
JD
5035 * macterm.c (mac_check_for_quit_char, quit_char_comp)
5036 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 5037 (mac_initialize): Add code to check for pressing of quit_char
048addec 5038 in the OS event queue.
b11f1d8a 5039
048addec
JD
5040 * mac.c (sys_select): Call mac_check_for_quit_char every second
5041 while blocking on select.
0d4d26a7 5042
048addec
JD
5043 * mac.c (sys_read): Use sys_select to test for input first
5044 before calling read, to allow C-g to break.
9252f7bc 5045
048addec 50462002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 5047
048addec 5048 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 5049
048addec 5050 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 5051
048addec 5052 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 5053
048addec
JD
5054 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
5055 autoload.
9252f7bc 5056
048addec 5057 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 5058
048addec 5059 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 5060
048addec 50612002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 5062
048addec 5063 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 5064
048addec 50652002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 5066
048addec 5067 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 5068
048addec 5069 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 5070
048addec 5071 * alloca.c: Don't use #error.
02d588e2 5072
048addec 50732002-12-03 Dave Love <fx@gnu.org>
02d588e2 5074
048addec
JD
5075 * buffer.c (Qucs_set_table_for_input): New.
5076 (Fget_buffer_create): Use it.
5077 (Qset_buffer_major_mode_hook): Deleted.
5078 (Fset_buffer_major_mode): Revert previous change.
5079 (init_buffer_once): Intern ucs-set-table-for-input.
5080 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
5081 Add &Qucs_set_table_for_input.
451e2697 5082
048addec 50832002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 5084
048addec
JD
5085 * callint.c (Fcall_interactively): Use next_event only if less
5086 than key_count.
72742a99 5087
048addec 50882002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 5089
048addec
JD
5090 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
5091 names to 255 characters.
72742a99 5092
048addec
JD
5093 * macterm.c (XTread_socket): If all frames have been collapsed,
5094 expand the first one before handling drag-and-drop events.
72742a99 5095
048addec
JD
5096 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
5097 which is detected by autoconf.
40e6ff95 5098
048addec 50992002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 5100
048addec
JD
5101 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
5102 offset in two hints table to allow prebinding to be redone and
5103 allow the executable to be stripped.
c02138c6 5104
048addec 51052002-11-29 Dave Love <fx@gnu.org>
c02138c6 5106
048addec
JD
5107 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
5108 already provided.
0e47bbf7 5109
048addec 51102002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 5111
048addec
JD
5112 * xdisp.c (start_display): Check more intelligently for
5113 whether the line is continued.
5114 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 5115
048addec 51162002-11-28 Dave Love <fx@gnu.org>
44129dcb 5117
048addec
JD
5118 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
5119 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 5120
048addec 51212002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 5122
048addec
JD
5123 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
5124 more descriptive error output from lread.c:Fload upon most require
5125 cycles during boostrapping.
1637fd2c 5126
048addec 51272002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 5128
048addec
JD
5129 * fileio.c (Finsert_file_contents): Give a more appropriate error
5130 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 5131
048addec
JD
5132 * dired.c (Ffile_attributes): Don't return negative file sizes for
5133 files bigger than 2Gb when off_t is 32 bit.
540c2788 5134
048addec 51352002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 5136
048addec 5137 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 5138
048addec
JD
5139 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
5140 Test GETPGRP_VOID instead.
5141 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 5142
048addec
JD
5143 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
5144 Don't define.
5145 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 5146
048addec 5147 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 5148
048addec 51492002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 5150
048addec
JD
5151 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
5152 supported.
4042a81a 5153
048addec 51542002-11-25 Dave Love <fx@gnu.org>
4042a81a 5155
048addec 5156 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 5157
048addec 5158 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 5159
048addec 51602002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 5161
048addec 5162 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 5163
048addec 51642002-11-24 Steven Tamm <steventamm@mac.com>
82122254 5165
048addec
JD
5166 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
5167 determine the size of pointers alloced in unexed space instead
5168 of using possibly invalid emacs_zone pointers. This fixes the
5169 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 5170
048addec 51712002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 5172
048addec 5173 * search.c (Fstring_match): Doc fix.
c1ee53bc 5174
048addec
JD
5175 * callint.c (Fcall_interactively): If a command fails because
5176 `*' detects a read-only buffer, but RECORD_FLAG is set,
5177 record it anyway if the args don't actually do tty input.
5598c32e 5178
048addec 51792002-11-22 Dave Love <fx@gnu.org>
5598c32e 5180
048addec 5181 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 5182
048addec
JD
5183 * keyboard.c (interrupt_signal): Provide forward declaration.
5184 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 5185
048addec 5186 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 5187
048addec 51882002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 5189
048addec
JD
5190 * eval.c (interactive_p): Skip any number of bytecode
5191 and special form frames, in any order.
516eea8e 5192
048addec 51932002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 5194
048addec
JD
5195 * w32fns.c (convert_mono_to_color_image): New function.
5196 (xbm_load, xbm_load_image): Use it when foreground or background
5197 is explicitly set.
04dbfa08 5198
048addec 51992002-11-19 Dave Love <fx@gnu.org>
04dbfa08 5200
048addec 5201 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 5202
048addec 52032002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 5204
048addec
JD
5205 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
5206 (XPutPixel): Swap blue and red.
5207 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
5208 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
5209 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
5210 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 5211
048addec 52122002-11-18 Dave Love <fx@gnu.org>
d824beee 5213
048addec 5214 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 5215
048addec 5216 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 5217
048addec 5218 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 5219
048addec
JD
5220 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
5221 malloc, realloc, calloc.
d824beee 5222
048addec
JD
5223 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
5224 (bcmp): Don't define.
d824beee 5225
048addec 5226 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 5227
048addec 5228 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 5229
048addec 5230 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 5231
048addec 5232 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 5233
048addec
JD
5234 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
5235 Don't include alloca.h.
d824beee 5236
048addec 5237 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 5238
048addec 5239 * regex.c (_GNU_SOURCE): Don't define.
1998560a 5240
048addec 5241 * process.c (_GNU_SOURCE): Don't define.
1998560a 5242
048addec 5243 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 5244
048addec 52452002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 5246
048addec 5247 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 5248
048addec 52492002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 5250
048addec
JD
5251 * dispextern.h (struct face): Add `overstrike' field.
5252 * xterm.c (x_draw_glyph_string_foreground)
5253 (x_draw_composite_glyph_string_foreground): Implement overstriking.
5254 * xfaces.c (load_face_font): Set `face->overstrike' based on
5255 result from choose_face_font.
5256 (best_matching_font, choose_face_font): Add `needs_overstrike'
5257 argument, and use it to return whether overstriking is desirable
5258 for this face/font combo.
5259 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 5260
048addec 52612002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 5262
048addec
JD
5263 This change is my fix for the following entry in etc/PROBLEMS:
5264 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
5265 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 5266
048addec
JD
5267 * w32.c: Added wrapper functions around the win32 API functions
5268 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
5269 GetSidIdentifierAuthority. These wrapper functions serve two
5270 purposes:
5271 1. They ensure that the wrapped function can never be called
5272 when Emacs is running on an operating system on which they are
5273 not supported (Microsoft Windows 95 / 98 / ME).
5274 2. They call the wrapped functions via function pointers rather
5275 than calling them directly. This avoids taking advantage of the
5276 undocumented fact that although these functions are not supported
5277 in the 9x branch of Microsoft Windows, the functions do exist in
5278 the version of advapi32.dll that is found in the 9x branch of
5279 Microsoft Windows.
f60ae425 5280
6bdb309a 5281 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
5282 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
5283 and GetSidIdentifierAuthority with calls to the newly added
5284 wrapper functions.
f60ae425 5285
048addec
JD
5286 * w32.h: Added extern declarations for the following functions:
5287 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
5288 syms_of_w32menu, and void syms_of_fontset.
f60ae425 5289
6bdb309a 5290 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
5291 function pointer track_mouse_event_fn in the handler for the
5292 WM_SETFOCUS message.
3582b6a3 5293
6bdb309a 5294 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
5295 reinitialize the function pointers set_menu_item_info and
5296 get_menu_item_info.
f60ae425 5297
048addec 52982002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 5299
048addec
JD
5300 * sound.c: Added a partial implementation of play-sound-internal
5301 for Microsoft Windows. Added various #ifdef / #else / #endif
5302 code blocks to separate the code that will compile under
5303 Microsoft Windows from the code that is specific to Gnu/Linux.
5304 Moved several blocks of code around to make this separation of code
5305 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 5306
048addec 5307 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 5308
048addec
JD
5309 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
5310 added support for play-sound-internal under Windows would be
5311 included in the build of Emacs.
517f42a0 5312
048addec 53132002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 5314
048addec 5315 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 5316
048addec 5317 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 5318
048addec 53192002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 5320
048addec
JD
5321 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
5322 (adjust_point_for_property): Move out of display and invisible even if
5323 we were already inside before (in case a property was added while
5324 we weren't looking). Be more careful when handling invisible props.
5325 Skip invisible text as if it really wasn't there at all.
aab83f91 5326
048addec 53272002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 5328
048addec
JD
5329 * w32term.c (x_draw_image_foreground)
5330 (w32_draw_image_foreground_1): Use standard copy and invert
5331 operations to draw images.
aab83f91 5332
048addec
JD
5333 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
5334 depth of 1.
5335 (xbm_read_bitmap_data): Invert bits as xbm is read in.
5336 (XPutPixel): Don't invert bits here.
a4478a76 5337
048addec 53382002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 5339
048addec
JD
5340 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
5341 (w32_draw_image_foreground_1): Handle image masks.
5342 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 5343
048addec
JD
5344 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
5345 (x_from_xcolors): Adjust RGB values for W32.
5346 (image_background, image_background_transparent)
5347 (postprocess_image, x_to_xcolors, x_disable_image)
5348 (x_build_heuristic_mask): Adapt for W32 and enable.
5349 (x_create_x_image_and_pixmap): Mark images with palettes as such.
5350 (xbm_load): Remove unused variable.
03670a65 5351
048addec 53522002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 5353
048addec 5354 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 5355
048addec 53562002-11-14 Dave Love <fx@gnu.org>
59daa29a 5357
048addec 5358 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 5359
048addec
JD
5360 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
5361 * xmenu.c (unuse_menu_items, digest_single_submenu):
5362 * xfns.c (x_put_x_image):
5363 * xdisp.c (message2_nolog, set_message):
5364 * undo.c (record_point):
5365 * terminfo.c (tparam):
5366 * syntax.c (scan_sexps_forward):
5367 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
5368 * composite.c (update_compositions):
5369 * cm.c (calccost, cmgoto):
5370 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 5371
048addec 5372 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 5373
048addec
JD
5374 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
5375 Don't declare.
59daa29a 5376
048addec 5377 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 5378
048addec
JD
5379 * fns.c (Fcopy_sequence): Doc fix.
5380 (Fmap_char_table): Cast `call2'.
3947677c 5381
048addec
JD
53822002-11-14 Francesco Potorti` <pot@gnu.org>
5383
5384 * s/sol2-8.h: New file.
5385
53862002-11-14 Kim F. Storm <storm@cua.dk>
5387
5388 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
5389 dependency on `risky-local-variable' and the :propertize form.
5390
53912002-11-12 Stefan Monnier <monnier@cs.yale.edu>
5392
5393 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
5394
5395 * syntax.c (scan_sexps_forward): Undo last patch.
5396 Use a more obvious fix: check eob before updating the syntax table.
5397
53982002-11-09 Stefan Monnier <monnier@cs.yale.edu>
5399
5400 * syntax.c (scan_sexps_forward): Update syntax table before reading
5401 a char rather than after so we don't update the table past eob.
5402
54032002-11-09 Dave Love <fx@gnu.org>
5404
5405 * buffer.c (Fset_buffer_major_mode): Fix last change.
5406
5407 * regex.c (regexec): Fix pmatch declaration.
5408
5409 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
5410
5411 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
5412 to self-inserting characters.
5413 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
5414
5415 * coding.c (Vtranslation_table_for_input): New.
5416 (syms_of_coding): DEFVAR it.
5417
54182002-11-08 Juanma Barranquero <lektu@terra.es>
5419
5420 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
5421 window.
5422
54232002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5424
6bdb309a 5425 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
5426 cp, and i.
5427
54282002-11-06 Dave Love <fx@gnu.org>
5429
5430 * buffer.c (Qset_buffer_major_mode_hook): New.
5431 (Fset_buffer_major_mode): Use it.
5432
54332002-11-06 Richard M. Stallman <rms@gnu.org>
5434
5435 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
5436 and stop_polling.
5437
5438 * process.c (wait_reading_process_input):
5439 Test POLLING_PROBLEM_IN_SELECT, not hpux.
5440 Avoid initialization for auto Lisp_Object var.
5441
5442 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
5443
5444 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
5445
54462002-11-05 Richard M. Stallman <rms@gnu.org>
5447
5448 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
5449
5450 * callint.c (Fcall_interactively): New local filter_specs.
5451 (Fcall_interactively): Check for progn as well as let.
5452 Add a gcpro.
5453 (Qprogn): New variable.
5454 (syms_of_callint): Staticpro and init Qprogn.
5455
54562002-11-04 John Paul Wallington <jpw@shootybangbang.com>
5457
5458 * lread.c (Feval_buffer): Doc fix.
5459
54602002-11-04 Dave Love <fx@gnu.org>
5461
5462 * keyboard.c (read_char): Always translate iff
5463 Vkeyboard_translate_table is a char table and c is valid.
5464
5465 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
5466 and fix C types.
5467
54682002-11-03 Stefan Monnier <monnier@cs.yale.edu>
5469
5470 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
5471
5472 * editfns.c (get_pos_property): Don't hardcode Qfield.
5473
5474 * keyboard.c (adjust_point_for_property): Handle `display' prop on
5475 overlays. Also handle `invisible' prop.
5476
54772002-11-02 Stefan Monnier <monnier@cs.yale.edu>
5478
5479 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
5480 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
5481
54822002-11-01 Andreas Schwab <schwab@suse.de>
5483
5484 * editfns.c (Fmessage): Revert last change to properly handle %%.
5485
54862002-11-01 Stefan Monnier <monnier@cs.yale.edu>
5487
5488 * xmenu.c (unuse_menu_items): New fun.
5489 (menu_items_inuse): New var.
5490 (syms_of_xmenu): Initialize it.
5491 (init_menu_items): Use it to detect re-entrance.
5492 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
5493 (Fx_popup_menu): Remove spurious XSETFRAME.
5494
5495 * editfns.c (find_field): Make an exception for nil fields.
5496
54972002-11-01 Dave Love <fx@gnu.org>
5498
5499 * m/gec63.h: Deleted.
5500
55012002-10-31 Dave Love <fx@gnu.org>
5502
5503 * xterm.c (XTread_socket): Fix last change.
5504 (xaw_scroll_callback): Cast call_data to long to avoid warning.
5505
55062002-10-31 Stefan Monnier <monnier@cs.yale.edu>
5507
5508 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
5509
55102002-10-30 Stefan Monnier <monnier@cs.yale.edu>
5511
5512 * editfns.c (overlays_around, get_pos_property): New funs.
5513 (find_field): Use them.
5514 Also be careful not to modify POS before its last use.
5515 (Fmessage): Don't Fformat if there's nothing to format.
5516
55172002-10-30 Dave Love <fx@gnu.org>
5518
5519 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
5520 [HAVE_PTY_H]; Include pty.h.
5521
5522 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
5523
5524 * xterm.c (Qeql): Declare.
5525 (Vx_keysym_table): New.
5526 (syms_of_xterm): Initialize it.
5527 (XTread_socket): Use it. Deal with ASCII keysyms.
5528 (XSetIMValues) [HAVE_X11R6]: Prototype.
5529
5530 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
5531 (lispy_kana_keys): Comment out.
5532 (make_lispy_event) [XK_kana_A]: Comment out.
5533 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
5534 Fix sprintf call.
5535
5536 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
5537 regexp.h change).
5538 (TERMINFO, LIBS_TERMCAP): Define.
5539
5540 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
5541 (bcmp): Define conditional on HAVE_BCMP.
5542 (NO_SIOCTL_H): Don't define.
5543 (TIOCSIGSEND): Don't make conditional on IRIX6.
5544
5545 * s/sol2-5.h: Don't include strings.h.
5546 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
5547
5548 * s/irix6-0.h (IRIX6): Don't define.
5549 (bcopy, bcmp, bzero): Don't undef.
5550
5551 * s/irix6-5.h: Don't include strings.h.
5552 (IRIX6): Don't define.
5553 (bcopy, bcmp, bzero): Don't undef.
5554
5555 * syntax.c (Fforward_comment): Doc fix.
5556
55572002-10-29 Kim F. Storm <storm@cua.dk>
5558
5559 * process.c (Fsignal_process): Allow PROCESS to be specified by
5560 name in addition to pid (as integer or string).
5561
55622002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
5563
5564 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
5565 environments.
5566
55672002-10-27 Kim F. Storm <storm@cua.dk>
5568
5569 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
5570
5571 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
5572
5573 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
5574
5575 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
5576
55772002-10-26 Richard M. Stallman <rms@gnu.org>
5578
5579 * editfns.c (Fformat): Detect invalid format letters for floats.
5580
55812002-10-25 Kenichi Handa <handa@m17n.org>
5582
5583 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
5584 (x_set_title): Likewise.
5585
55862002-10-25 Juanma Barranquero <lektu@terra.es>
5587
5588 * macgui.h:
5589 * w32gui.h: Remove definition of XColor.
5590
5591 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
5592
55932002-10-24 Kim F. Storm <storm@cua.dk>
5594
5595 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
5596 Callers changed (supply dummy arg).
5597
5598 * lisp.h (get_window_cursor_type): Update prototype.
5599
5600 * w32term.c (x_display_and_set_cursor): Get active_cursor from
5601 get_window_cursor_type to track system caret.
5602
56032002-10-24 Kim F. Storm <storm@cua.dk>
5604
5605 * process.c (Fformat_network_address): New function.
5606 (syms_of_process): Defsubr it.
5607 (list_processes_1): Use it to format :local/:remote address if
5608 service/host is not set; before emacs would crash in that case.
5609 (Fmake_network_process): Don't use Ffind_operation_coding_system
5610 to setup coding system if host or service is not set.
5611
56122002-10-23 Juanma Barranquero <lektu@terra.es>
5613
5614 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
5615
5616 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
5617 COLORREF.
5618
5619 * macgui.h:
5620 * w32gui.h: Add definition of XColor.
5621
5622 * macfns.c:
5623 * w32fns.c:
5624 * xfaces.c: Remove definition of XColor.
5625
56262002-10-22 Stefan Monnier <monnier@cs.yale.edu>
5627
5628 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
5629
5630 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
5631 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
5632 window if it is dedicated.
5633 (Fshrink_window): Add preserve_before as was done for enlarge_window.
5634 (Vspecial_display_function): Update docstring.
5635
5636 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
5637 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
5638 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
5639
56402002-10-21 Stefan Monnier <monnier@cs.yale.edu>
5641
5642 * casefiddle.c (casify_region): Don't treat a prefix char as part
5643 of a word when at the beginning.
5644
56452002-10-17 Juanma Barranquero <lektu@terra.es>
5646
5647 * lread.c (syms_of_lread): Fix typos.
5648
56492002-10-17 Dave Love <fx@gnu.org>
5650
5651 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
5652
56532002-10-16 Richard M. Stallman <rms@gnu.org>
5654
5655 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
5656
56572002-10-14 Juanma Barranquero <lektu@terra.es>
5658
5659 * w16select.c (syms_of_win16select): Fix docstring for
5660 `selection-coding-system'.
5661
5662 * w32select.c (syms_of_w32select): Likewise.
5663
56642002-10-14 Stefan Monnier <monnier@cs.yale.edu>
5665
5666 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
5667 a backslash-quoted char.
5668 (scan_lists, scan_sexps_forward): Pacify the compiler.
5669
56702002-10-13 Richard M. Stallman <rms@gnu.org>
5671
5672 * window.c (window_scroll): Set immediate_quit.
5673
5674 * print.c (print): When backquote form is the car of a list,
5675 output in old style. Use old_backquote_output to output all
5676 comma forms inside it in old style too.
5677
5678 * buffer.h (struct buffer): Move `undo_list' down below `name'.
5679
56802002-10-11 Markus Rost <rost@math.ohio-state.edu>
5681
5682 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
5683 batch mode).
5684
5685 * lread.c (Fload): Doc fix (load-suffixes).
5686
56872002-10-10 Steven Tamm <steventamm@mac.com>
5688
5689 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
5690 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
5691 Also switch the default to Qnil from Qt.
5692
56932002-10-08 Kenichi Handa <handa@m17n.org>
5694
5695 * coding.c (code_convert_region): When we need more GAP for
5696 conversion, pay attention to the case that coding->produced is not
5697 greater than coding->consumed.
5698
56992002-10-07 Richard M. Stallman <rms@gnu.org>
5700
5701 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
5702
57032002-10-06 Andrew Choi <akochoi@shaw.ca>
5704
5705 * macmenu.c (mac_menu_show): Add j to count menu items; match
5706 menu_item_selection to it to find selected item.
5707
57082002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5709
5710 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
5711 cases. The correct fix is to pass ReparentNotify to Xt.
5712 The shell widget interprets ConfigureNotify differently depending
5713 on if it has been reparented or not.
5714
57152002-10-05 Markus Rost <rost@math.ohio-state.edu>
5716
5717 * editfns.c (Fformat_time_string): Doc fix.
5718
57192002-10-05 John Paul Wallington <jpw@shootybangbang.com>
5720
5721 * fns.c (Flength): Doc fix.
5722
57232002-10-04 Stefan Monnier <monnier@cs.yale.edu>
5724
5725 * keyboard.c (keyremap): New struct.
5726 (read_key_sequence): Use it: globally replace keytran_foo with
5727 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
5728 keytran_next and fkey_next to just `next'.
5729
57302002-10-04 Steven Tamm <steventamm@mac.com>
5731
5732 * macterm.c (keycode_to_xkeysym_table): Change return to be
5733 treated like an X keysym.
5734
57352002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5736
5737 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
5738 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
5739 This is to also handle x/y changes that occur because of a resize.
5740
57412002-10-02 John Paul Wallington <jpw@shootybangbang.com>
5742
5743 * frame.c (Vdelete_frame_functions): New variable.
5744 (syms_of_frame): Initialize and defvar it.
5745 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
5746 it when frame's `tooltip' parameter is non-nil.
5747
5748 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
5749
5750 * w32fns.c (x_create_tip_frame): Likewise.
5751
5752 * macfns.c (x_create_tip_frame): Likewise.
5753
57542002-09-30 Kenichi Handa <handa@m17n.org>
5755
5756 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
5757 -1 before calling ccl_driver.
5758
5759 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
5760 Only when it is non-nil, handle composition sequence.
5761 (setup_coding_system) <0>: Don't force composition handling.
5762
5763 * Makefile.in (lisp, shortlisp): Add utf-16.elc
5764
57652002-09-29 Richard M. Stallman <rms@gnu.org>
5766
5767 * search.c (Freplace_match): Adjust match data for the substitution
5768 just made in the buffer.
5769
5770 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
5771 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
5772
57732002-09-27 Richard M. Stallman <rms@gnu.org>
5774
5775 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
5776 (read_char): Use them. Do all exits thru the end of the function.
5777
57782002-09-27 Kenichi Handa <handa@etl.go.jp>
5779
5780 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
5781 is nil.
5782
57832002-09-26 Richard M. Stallman <rms@gnu.org>
5784
5785 * regex.h (__restrict_arr): Don't define if already defined.
5786
5787 * coding.c (run_pre_post_conversion_on_str):
5788 Save and restore Vdeactivate_mark.
5789
57902002-09-26 John Paul Wallington <jpw@shootybangbang.com>
5791
5792 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
5793
57942002-09-26 Kenichi Handa <handa@etl.go.jp>
5795
5796 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
5797 nonzero, try face's family at first. Otherwise try FAMILY at first.
5798 (choose_face_font): If C is a single byte char or latin-1, call
5799 try_font_list with PREFER_FACE_FAMILY 1.
5800
58012002-09-21 Richard M. Stallman <rms@gnu.org>
5802
5803 * window.c (select_window_1): Don't select frame.
5804 Set frame's selected window only when frame itself is selected.
5805 (Fselect_window): Doc fix.
5806
58072002-09-18 Kim F. Storm <storm@cua.dk>
5808
5809 * process.c (make-network-process): Doc fix (there is no
5810 network-server-log-function hook).
5811
58122002-09-18 Richard M. Stallman <rms@gnu.org>
5813
5814 * print.c (print): Clear out the unused parts of Vprint_number_table.
5815 (syms_of_print): Doc fix for `print-number-table'.
5816
5817 * unexelf.c (unexec): Undo previous change.
5818
58192002-09-17 Andreas Schwab <schwab@suse.de>
5820
5821 * m/alpha.h [LINUX]: Don't define DATA_START.
5822
58232002-09-16 Dave Love <fx@gnu.org>
5824
5825 * unexelf.c (unexec): Deal with .got, reinstating change from
5826 25-08-1999.
5827
58282002-09-13 Richard M. Stallman <rms@gnu.org>
5829
5830 * s/sol2-6.h (UNEXEC): Comment out definition.
5831
5832 * unexsol.c (unexec): Don't downcase first letter of error msg.
5833
5834 * xfaces.c (Fcolor_supported_p): Just one arg is required.
5835
58362002-09-12 Markus Rost <rost@math.ohio-state.edu>
5837
5838 * unexsol.c: Include buffer.h, charset.h, coding.h.
5839
58402002-09-11 Richard M. Stallman <rms@gnu.org>
5841
5842 * unexsol.c: Don't use report_file_error; do it by hand
5843 using dlerror.
5844
5845 * process.c (wait_reading_process_input, both versions):
5846 Before calling turn_on_atimers, call stop_polling.
5847
5848 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
5849
5850 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
5851 we go to too_near_end, call clear_glyph_matrix.
5852 (redisplay_window): After make_cursor_line_fully_visible,
5853 call clear_glyph_matrix and bypass `goto done'.
5854
5855 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
5856 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
5857
58582002-09-10 Richard M. Stallman <rms@gnu.org>
5859
5860 * fileio.c (Fdo_auto_save): Catch error making directory.
5861 Only call push_message if we need to.
5862 At the same time, make an unwind-protect to pop it.
5863 Rename local message_p to old_message_p.
5864 (do_auto_save_make_dir, do_auto_save_eh): New functions.
5865 (do_auto_save_unwind): Don't call pop_message.
5866
5867 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
5868
5869 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
5870
5871 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
5872
5873 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
5874
58752002-09-10 Stefan Monnier <monnier@cs.yale.edu>
5876
5877 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
5878 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
5879 (re_match_2_internal): Be more careful with infinite loops.
5880
58812002-09-10 Kim F. Storm <storm@cua.dk>
5882
5883 * macros.c (end_kbd_macro): New function.
5884 (Fend_kbd_macro): Use it.
5885
5886 * macros.h (end_kbd_macro): Declare extern.
5887
5888 * keyboard.c (Fdiscard_input): If defining keyboard macro,
5889 end and save it instead of discarding it.
5890
58912002-09-09 Markus Rost <rost@math.ohio-state.edu>
5892
5893 * s/sol2-6.h: Fix typo. Add comment.
5894
58952002-09-09 Richard M. Stallman <rms@gnu.org>
5896
5897 * regex.c (regnum_t): Use signed int, not unsigned int.
5898
5899 * s/sol2-6.h: New file.
5900
5901 * s/sol2-5.h (UNEXEC): Definition deleted.
5902
59032002-09-08 Kim F. Storm <storm@cua.dk>
5904
5905 * macros.c (executing_macro_index): Change type to EMACS_INT.
5906 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
5907
5908 * macros.h (executing_macro_index): Change type to EMACS_INT.
5909
59102002-09-06 Richard M. Stallman <rms@gnu.org>
5911
5912 * casetab.c (set_case_table): Make canon table point to eqv table.
5913
59142002-09-06 Juanma Barranquero <lektu@terra.es>
5915
5916 * coding.c (syms_of_coding): Fix spacing.
5917
5918 * composite.c (Fcompose_region_internal)
5919 (Fcompose_string_internal): Likewise.
5920
5921 * data.c (Flsh): Likewise.
5922
5923 * fontset.c (Fset_fontset_font): Likewise.
5924
5925 * macfns.c (Fx_server_max_request_size): Likewise.
5926
5927 * w16select.c (syms_of_win16select): Likewise.
5928
5929 * w32select.c (syms_of_w32select): Likewise.
5930
5931 * xselect.c (syms_of_xselect): Likewise.
5932
59332002-09-05 Richard M. Stallman <rms@gnu.org>
5934
5935 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
5936 call EXTEND_RANGE_TABLE and return a proper value.
5937 (set_image_of_range): Don't call set_image_of_range_1
5938 if no TRANSLATE or if range includes all of Latin-1.
5939 Only call it for the Latin-1 part of the range.
5940 For other cases, make two separate ranges,
5941 one for the original specified characters and one for
5942 their case-conversions.
5943
59442002-09-04 Richard M. Stallman <rms@gnu.org>
5945
5946 * s/sol2-5.h (UNEXEC): Use unexsol.o.
5947
5948 * window.c (displayed_window_lines): Correct for one-off bug
5949 in HEIGHT on non-window displays.
5950
5951 * regex.c (set_image_of_range_1): New function.
5952 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
5953 Return a value to indicate running out of memory.
5954 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
5955 (extend_range_table_work_area): New subroutine.
5956 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
5957 Different calling conventions, and used from set_image_of_range{,_1}.
5958 (IMMEDIATE_QUIT_CHECK): Definitions moved.
5959
59602002-09-04 Juanma Barranquero <lektu@terra.es>
5961
5962 * makefile.w32-in: All dependencies updated.
5963
59642002-09-01 Richard M. Stallman <rms@gnu.org>
5965
5966 * unexsol.c: New file.
5967
5968 * xfns.c (Qbox): Declare external, don't define.
5969
5970 * xdisp.c (redisplay_window) <force-start case>:
5971 If point is on semi-visible last line, reposition
5972 it at previous line.
5973
5974 * alloc.c (display_malloc_warning): Use display-warning.
5975 (malloc_warning_1): Function deleted.
5976
5977 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
5978
5979 * lread.c (read1): Handle #! by skipping the line.
5980
59812002-08-31 Richard M. Stallman <rms@gnu.org>
5982
5983 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
5984 Don't include LDFLAGS.
5985 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
5986
59872002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
5988
5989 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
5990 member of x_display_info unless we compile for some window system.
5991
59922002-08-31 Kim F. Storm <storm@cua.dk>
5993
5994 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
5995 (get_window_cursor_type): Don't use them.
5996 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
5997
59982002-08-30 Kenichi Handa <handa@etl.go.jp>
5999
6000 * xdisp.c (get_next_display_element): Fix previous change.
6001
60022002-08-30 Andrew Choi <akochoi@shaw.ca>
6003
6004 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
6005 (expose_window): Use it to fix the display of overlapping
6006 rows (merge code from xterm.c).
6007
6008 * macfns.c (Qbox): Add extern declaration.
6009
60102002-08-30 Juanma Barranquero <lektu@terra.es>
6011
6012 * w32fns.c (Qbox): Make extern.
6013 (syms_of_w32fns): Remove initialization of Qbox.
6014
60152002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
6016
6017 * xfns.c (Fx_open_connection): Fix error message.
6018
60192002-08-30 Kim F. Storm <storm@cua.dk>
6020
6021 The following changes consolidates the handling of the cursor
6022 type in xdisp.c, moving duplicate code and functionality from
6023 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
6024
6025 * frame.h (enum text_cursor_kinds): Consolidated here.
6026 Added DEFAULT_CURSOR value.
6027 (struct frame) <desired_cursor, cursor_width>
6028 <blink_off_cursor, blink_off_cursor_width>: New fields.
6029 Consolidated from output_x, output_w32 and output_mac structs.
6030 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6031 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
6032
6033 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
6034 Variables consolidated here.
6035 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
6036 (Vcursor_in_non_selected_windows): Renamed from
6037 cursor_in_non_selected_windows and changed to Lisp_Object.
6038 (syms_of_xdisp): Define and staticpro new and moved variables.
6039 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
6040 consolidated here. Recognize Qhollow setting.
6041 (set_frame_cursor_types): New function to set frame cursor types
6042 based on the frame parameters.
6043 (get_window_cursor_type): New function to calculate new cursor
6044 type and width for the specified window. Based on duplicated
6045 code consolidated here.
6046 Enhancements: cursor-in-non-selected-windows may be a cursor type,
6047 check buffer-local alternate-cursor-type and blink-cursor-alist
6048 before using built-in blink off methods.
6049
6050 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
6051
6052 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
6053 (get_specified_cursor_type, get_window_cursor_type)
6054 (set_frame_cursor_types): Added prototypes.
6055
6056 * macfns.c (x_specified_cursor_type): Removed.
6057 (x_set_cursor_type): Use set_frame_cursor_types.
6058 (Qbar, Qbox): Removed.
6059 (syms_of_macfns): Don't intern or staticpro them.
6060
6061 * macterm.c (x_specified_cursor_type): Remove prototype.
6062 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6063 (x_display_and_set_cursor): Use get_window_cursor_type.
6064 Remove unused local variables cursor_non_selected, active_cursor.
6065 Redraw cursor if hbar cursor width changes.
6066 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
6067
6068 * macterm.h (enum text_cursor_kinds): Removed.
6069 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
6070 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6071 (FRAME_DESIRED_CURSOR): Macro removed.
6072
6073 * w32fns.c (Vblink_cursor_alist): Removed.
6074 (Qbar, Qhbar, Qbox, Qhollow): Removed.
6075 (syms_of_w32fns): Don't intern, staticpro, or define them.
6076 (x_specified_cursor_type): Removed.
6077 (x_set_cursor_type): Use set_frame_cursor_types.
6078
6079 * w32term.c (x_specified_cursor_type): Remove prototype.
6080 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6081 (x_display_and_set_cursor): Use get_window_cursor_type.
6082 Remove unused local variables cursor_off_state.
6083 Redraw cursor if hbar cursor width changes.
6084 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
6085
6086 * w32term.h (enum text_cursor_kinds): Removed.
6087 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
6088 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6089 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6090 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
6091 (struct w32_display_info) <x_highlight_frame>: Renamed member from
6092 w32_highlight_frame.
6093
6094 * xfns.c (Vblink_cursor_alist): Removed.
6095 (Qbar, Qhbar, Qbox, Qhollow): Removed.
6096 (syms_of_xfns): Don't intern, staticpro, or define them.
6097 (x_specified_cursor_type): Removed.
6098 (x_set_cursor_type): Use set_frame_cursor_types.
6099
6100 * xterm.c (x_specified_cursor_type): Remove prototype.
6101 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6102 (x_display_and_set_cursor): Use get_window_cursor_type.
6103 Remove unused local variables cursor_off_state.
6104 Redraw cursor if hbar cursor width changes.
6105
6106 * xterm.h (enum text_cursor_kinds): Removed.
6107 (struct output_x) <current_cursor, desired_cursor, cursor_width>
6108 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6109 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6110 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
6111 (x_specified_cursor_type): Remove prototype.
6112
61132002-08-28 Richard M. Stallman <rms@gnu.org>
6114
6115 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
6116 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
6117 (Vblink_cursor_alist): New variable.
6118 (syms_of_w32fns): Initialize and defvar it.
6119 (x_specified_cursor_type): Recognize Qbox for filled box.
6120 Exceptions are hollow boxes.
6121 (Qbox, Qhollow): New variables.
6122 (syms_of_w32fns): Initialize and staticpro them.
6123
6124 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
6125 New macros.
6126 (struct w32_output): New fields blink_off_cursor,
6127 blink_off_cursor_width.
6128 (FRAME_CURSOR_WIDTH): New macro.
6129
6130 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
6131 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
6132
6133 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
6134 for bar cursor.
6135
6136 * w32term.c (expose_overlaps): New function.
6137 (expose_window): Use it to fix the display of overlapping rows.
6138
61392002-08-28 Simon Josefsson <jas@extundo.com>
6140
6141 * xfns.c (Fx_open_connection): Improve help when X connection
6142 fails, xhost is insecure and xauth is better.
6143
61442002-08-28 Juanma Barranquero <lektu@terra.es>
6145
6146 * makefile.w32-in: Add missing dependencies on w32term.h and
6147 composite.h.
6148
6149 * emacs.c (USAGE1): Add missing newline.
6150
61512002-08-27 Andrew Choi <akochoi@shaw.ca>
6152
6153 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
6154
61552002-08-27 Richard M. Stallman <rms@gnu.org>
6156
6157 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
6158 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
6159 (Vblink_cursor_alist): New variable.
6160 (syms_of_xfns): Initialize and defvar it.
6161 (x_specified_cursor_type): Recognize Qbox for filled box.
6162 Exceptions are hollow boxes.
6163 (Qbox, Qhollow): New variables.
6164 (syms_of_xfns): Initialize and staticpro them.
6165
6166 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
6167 New macros.
6168 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
6169
6170 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
6171 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
6172
6173 * emacs.c (main): Handle --script.
6174 (USAGE1): Mention --script.
6175 (standard_args): Define sort order for --script.
6176
61772002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
6178
6179 * xdisp.c (redisplay_updating_p): Variable removed.
6180 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
6181 New variables.
6182 (init_iterator): Don't free realized faces if
6183 inhibit_free_realized_faces is set.
6184 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
6185 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
6186 initialize Qinhibit_free_realized_faces.
6187
6188 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
6189 when iterator is adding glyphs to a glyph matrix.
6190
61912002-08-27 Kenichi Handa <handa@etl.go.jp>
6192
6193 * xdisp.c (get_next_display_element): In unibyte case, don't use
6194 octal form for such eight-bit characters that can be converted to
6195 multibyte char.
6196
61972002-08-26 Kim F. Storm <storm@cua.dk>
6198
6199 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
6200 and background colors. From Joe Buehler (tiny change).
6201
62022002-08-26 Miles Bader <miles@gnu.org>
6203
6204 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
6205
62062002-08-25 Andrew Choi <akochoi@shaw.ca>
6207
6208 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
6209 defined instead of MAC_OSX.
6210
6211 * s/darwin.h (select): Define select to sys_select only if
6212 HAVE_CARBON is defined.
6213 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
6214 (DONT_REOPEN_PTY): #def it.
6215
6216 * macterm.c (XTread_socket): Remove code to call
6217 SendEventToEventTarget for keys with command modifiers when
6218 mac_command_key_is_meta is nil.
6219
62202002-08-24 Andreas Schwab <schwab@suse.de>
6221
6222 * eval.c (Fdefvar): Fix last change.
6223
62242002-08-23 Richard M. Stallman <rms@gnu.org>
6225
6226 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
6227 Record variables in load history as (defvar . VAR).
6228 (Fdefvar): Don't record in load history if no initial value.
6229 (Qdefvar): New variable.
6230 (syms_of_eval): Init and staticpro it.
6231
6232 * lread.c (syms_of_lread): Doc fix.
6233 (build_load_history): Use Fmember to see if a definition
6234 is already in the Vload_history element.
6235
6236 * process.c (Fstart_process): Remove /: from program name.
6237
6238 * emacs.c (decode_env_path): Don't add /: if file name handler
6239 has a `safe-magic' property.
6240
6241 * callproc.c (Fcall_process): Remove /: from program name.
6242
62432002-08-23 Stefan Monnier <monnier@cs.yale.edu>
6244
6245 * regex.c (PATFETCH): Remove the translating fetch.
6246 (PATFETCH_RAW): Rename to PATFETCH.
6247 (set_image_of_range): New fun.
6248 (SET_RANGE_TABLE_WORK_AREA): Use it.
6249 (regex_compile): Don't translate the pattern chars so eagerly.
6250 Only do it when inserting an `exactn' bytecode or when handling
6251 a char-range.
6252 (mutually_exclusive_p): Avoid empty statement.
6253
62542002-08-22 Kim F. Storm <storm@cua.dk>
6255
6256 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
6257 end up on a partially visible line; this reverts a specific part
6258 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
6259 display error which has been reported several times now.
6260 However it introduces the problem that changes was supposed to fix.
6261 See my comments in the source if you want to debug this further.
6262
62632002-08-20 Kenichi Handa <handa@etl.go.jp>
6264
6265 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
6266
62672002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
6268
6269 * msdos.c (croak): Add `void' to definition.
6270
6271 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
6272 Don't define them, they are defined in msdos.c.
6273
6274 * mem-limits.h [MSDOS]: Declare etext.
6275
6276 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
6277 `const' since CORRECT_DIR_SEPS modifies its target.
6278
62792002-08-19 Kim F. Storm <storm@cua.dk>
6280
6281 * keyboard.c (Fclear_this_command_keys): Added optional arg
6282 KEEP-RECORD to avoid clearing lossage when we just want to clear
6283 the current key sequence (kmacro needs this).
6284
62852002-08-19 Kenichi Handa <handa@localhost>
6286
6287 * composite.c (run_composition_function): Call FUNC if it is fboundp.
6288
6289 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
6290 cons, return Qnil.
6291
62922002-08-17 Richard M. Stallman <rms@gnu.org>
6293
6294 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
6295
6296 * sysdep.c [!VMS]: Include sys/files.h.
6297
6298 * editfns.c (save_restriction_restore): Defend from unchained marker.
6299
6300 * buffer.c (overlays_at): Handle extending vec uniformly.
6301 (overlays_in): Handle extending vec from length 0 as in overlays_at.
6302
63032002-08-15 Andrew Choi <akochoi@shaw.ca>
6304
6305 * mac.c (init_mac_osx_environment): New function.
6306
6307 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
6308
63092002-08-14 Kim F. Storm <storm@cua.dk>
6310
6311 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
6312 executing macro before appending to it (when used from Lisp).
6313 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
6314 which is called prior to each iteration of macro (for kmacro.el).
6315 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
6316
6317 * lisp.h (Fexecute_kbd_macro): Update prototype.
6318
6319 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
6320
63212002-08-14 Kenichi Handa <handa@etl.go.jp>
6322
6323 * xselect.c (QUTF8_STRING): New variable.
6324 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
6325 (x_atom_to_symbol): Likewise.
6326 (x_get_local_selection): New argument local_request. If it is
6327 nonzero, call handler_fn with the second arg nil.
6328 (x_handle_selection_request): Call x_get_local_selection with
6329 local_request 0.
6330 (lisp_data_to_selection_data): Don't encode the string here.
6331 (Fx_get_selection_internal): Call x_get_local_selection with
6332 local_request 1.
6333 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
6334
6335 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
6336
6337 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
6338
63392002-08-13 Richard M. Stallman <rms@gnu.org>
6340
6341 * minibuf.c (Fminibufferp): New function.
6342 (syms_of_minibuf): Defsubr it.
6343 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
6344
63452002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
6346
6347 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
6348
63492002-08-12 Richard M. Stallman <rms@gnu.org>
6350
6351 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
6352 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
6353 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
6354 already.
6355
6356 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
6357
63582002-08-11 Andrew Choi <akochoi@shaw.ca>
6359
6360 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
6361 (Vmac_pass_command_to_system): New variable.
6362 (Vmac_pass_control_to_system): New variable.
6363 (do_mouse_moved): Check wp with is_emacs_window.
6364 (XTread_socket): Check window_ptr with is_emacs_window.
6365 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
6366 events back to Mac Toolbox for processing, depending on values of
6367 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
6368 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
6369 Vmac_pass_control_to_system.
6370
63712002-08-10 Kenichi Handa <handa@etl.go.jp>
6372
6373 * coding.c (unencodable_char_position): New function.
6374 (Funencodable_char_position): New function.
6375 (syms_of_coding): Defsubr Funencodable_char_position.
6376
63772002-08-10 Andrew Choi <akochoi@shaw.ca>
6378
6379 * mac.c (sys_select) [MAC_OSX]: New function.
6380
6381 * macterm.c (MakeMeTheFrontProcess): New function.
6382 (mac_initialize): Call MakeMeTheFrontProcess.
6383
6384 * s/darwin.h: Define select to sys_select.
6385
63862002-08-09 Richard M. Stallman <rms@gnu.org>
6387
6388 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
6389
63902002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
6391
6392 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
6393 end of the buffer.
6394
63952002-08-08 Ken Raeburn <raeburn@mit.edu>
6396
6397 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
6398
6399 * puresize.h (BASE_PURESIZE): Increase to 910000.
6400
64012002-08-08 Kenichi Handa <handa@etl.go.jp>
6402
6403 * coding.c (Ffind_operation_coding_system): For write-region, if
6404 VISIT is a filename, make it the target.
6405
64062002-08-07 Richard M. Stallman <rms@gnu.org>
6407
6408 * alloc.c (mark_object): Detect long lists for debugging.
6409 (mark_object_loop_halt): New variable.
6410
6411 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
6412
6413 * data.c (Fmake_variable_frame_local): Doc fix.
6414
64152002-08-01 David Ponce <david@dponce.com>
6416
6417 * w32menu.c (local_heap, local_alloc, local_free): New macros.
6418 (malloc_widget_value, free_widget_value)
6419 (w32_free_submenu_strings): Use them.
6420
6421 (push_submenu_start, push_submenu_end, push_left_right_boundary)
6422 (push_menu_pane, push_menu_item, single_keymap_panes)
6423 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
6424 (single_submenu, set_frame_menubar)
6425 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
6426
6427 (Fx_popup_menu): Don't show pop up menu until preceding one is
6428 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
6429
6430 * w32menu.c: Changes adapted from xmenu.c
6431 (set_frame_menubar): First parse all submenus,
6432 then make widget_value trees from them.
6433 Don't allocate any widget_value objects
6434 until we are done with the parsing.
6435 (parse_single_submenu): New function.
6436 (digest_single_submenu): New function.
6437 (single_submenu): Function deleted, replaced by those two.
6438
64392002-08-04 Andrew Choi <akochoi@shaw.ca>
6440
6441 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
6442 returns a valid window pointer before proceeding for keyDown and
6443 autoKey events.
6444
64452002-08-03 Andrew Choi <akochoi@shaw.ca>
6446
6447 * macterm.c (USE_CARBON_EVENTS): New macro.
6448 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
6449 (x_iconify_frame): Call CollapseWindow.
6450 (Vmac_reverse_ctrl_meta): New variable.
6451 (Vmac_wheel_button_is_mouse_2): New variable.
6452 (init_mac_drag_n_drop): New function.
6453 (mac_do_receive_drag): New function.
6454 (mac_handle_service_event): New function.
6455 (init_service_handler): New function.
6456 (mac_to_emacs_modifiers): New function.
6457 (mac_event_to_emacs_modifiers): New function.
6458 (mac_get_mouse_btn): New function.
6459 (mac_convert_event_ref): New function.
6460 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
6461 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
6462 mac_get_mouse_btn.
6463 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
6464
6465 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
6466 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
6467 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
6468 TOOL_BAR_EVENT for MAC_OS as well.
6469 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
6470 as for WINDOWS_NT.
6471 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
6472
6473 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
6474
64752002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
6476
6477 * xdisp.c (forward_to_next_line_start): Fix a condition that
6478 lead to a newline being skipped.
6479
64802002-08-02 Andrew Choi <akochoi@shaw.ca>
6481
6482 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
6483
64842002-08-01 Richard M. Stallman <rms@gnu.org>
6485
6486 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
6487
64882002-07-31 Andrew Choi <akochoi@shaw.ca>
6489
6490 * macfns.c: #undef init_process before #define-ing it.
6491
6492 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
6493 HAVE_CARBON is defined.
6494
64952002-07-31 Richard M. Stallman <rms@gnu.org>
6496
6497 * xmenu.c (set_frame_menubar): First parse all submenus,
6498 then make widget_value trees from them.
6499 Don't allocate any widget_value objects
6500 until we are done with the parsing.
6501 (parse_single_submenu): New function.
6502 (digest_single_submenu): New function.
6503 (single_submenu): Function deleted, replaced by those two.
6504
65052002-07-30 Juanma Barranquero <lektu@terra.es>
6506
6507 * w32proc.c (syms_of_ntproc): Fix docstring of
6508 `w32-get-true-file-attributes'.
6509
65102002-07-28 Richard M. Stallman <rms@gnu.org>
6511
6512 * s/hpux8.h (HPUX8): Define this before including hpux.h.
6513 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
6514
6515 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
6516
6517 * keyboard.c (make_lispy_event):
6518 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
6519 Explicitly clear up_modifier in event->modifiers.
6520
65212002-07-27 Richard M. Stallman <rms@gnu.org>
6522
6523 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
6524
6525 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
6526 for bar cursor.
6527
65282002-07-26 Kenichi Handa <handa@etl.go.jp>
6529
6530 * coding.c (detect_coding_iso2022): While checking a byte sequence
6531 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
6532 it in the normal loop.
6533
65342002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
6535
6536 * xterm.c (expose_overlaps): New function.
6537 (expose_window): Use it to fix the display of overlapping rows.
6538
6539 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
6540
65412002-07-23 Ken Raeburn <raeburn@gnu.org>
6542
6543 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
6544 since it only depends on XUINT.
6545
6546 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
6547 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
6548 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
6549 Macros deleted.
3947677c 6550
77d1daf2
AS
6551 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
6552 its value over other approaches.
6553 * sysdep.c (start_of_data): Don't define the function if a macro
6554 form has been defined.
8a8e19a3 6555
048addec
JD
65562002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
6557
6558 * xdisp.c (redisplay_updating_p): New variable.
6559 (init_iterator): Don't free realized faces when
6560 redisplay_updating_p is set.
6561 (redisplay_internal): Set redisplay_updating_p while updating
6562 the display.
6563
65642002-07-23 Richard M. Stallman <rms@gnu.org>
6565
6566 * editfns.c (Fmessage): Treat "" like nil.
6567
65682002-07-23 Kenichi Handa <handa@etl.go.jp>
6569
6570 * xdisp.c (face_before_or_after_it_pos):
6571 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
6572
65732002-07-22 Juanma Barranquero <lektu@terra.es>
6574
6575 * callproc.c (init_callproc) [DOS_NT]:
6576 Initialize Vshared_game_score_directory to nil.
6577 (syms_of_callproc) [DOS_NT]: Likewise.
6578
65792002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
6580
6581 * xdisp.c (display_line): Replace an abort with xassert.
6582
65832002-07-21 Richard M. Stallman <rms@gnu.org>
6584
6585 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
6586 and END_UNCHANGED when setting buffer_unchanged_p.
6587 Use current_matrix_up_to_date_p to decide whether to use
6588 try_cursor_movement.
6589
6590 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
6591
6592 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
6593
6594 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
6595 Set to nil if dir does not exist.
6596 (syms_of_callproc): Init unconditionally and simply.
6597
6598 * buffer.c (Fbuffer_list): Doc fix.
6599
66002002-07-21 Ken Raeburn <raeburn@gnu.org>
6601
6602 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
6603
6604 * buffer.c (mmap_realloc): When shrinking, make sure number of
6605 pages to unmap is rounded towards zero.
6606
6607 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
6608 (XSETINT): Deleted.
6609
6610 * m/att3b.h (XINT): Don't define.
6611 (VALBITS, VALMASK, XTYPE): Deleted.
6612 (DATA_SEG_BITS): Define.
6613 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
6614 ARRAY_MARK_FLAG): Deleted.
6615 (DATA_SEG_BITS): Define.
6616 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
6617 (DATA_SEG_BITS): Define.
6618
66192002-07-20 Richard M. Stallman <rms@gnu.org>
6620
6621 * print.c (print_error_message): New args CONTEXT and CALLER.
6622 Calls changed.
6623
6624 * lisp.h (print_error_message): Declare new args.
6625
6626 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
6627 and CONTEXT to print_error_message, don't print them here.
6628 For a Quit, don't use Vsignaling_function.
6629 Call message_log_maybe_newline.
6630
6631 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
6632
66332002-07-20 Kim F. Storm <storm@cua.dk>
6634
6635 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
6636
66372002-07-19 Ken Raeburn <raeburn@gnu.org>
6638
6639 * bytecode.c (struct byte_stack): Pointers into byte string now
6640 point to const.
6641 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
6642 const.
6643 * charset.h (BCOPY_SHORT): Source pointer now points to const.
6644 * coding.c (encode_eol, detect_coding, detect_eol):
6645 (decode_coding, encode_coding, detect_coding_system):
6646 Source strings now treated as const.
6647 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
6648 modify Lisp string contents.
6649 * coding.h (decode_coding, encode_coding, detect_coding,
6650 detect_eol): Declarations updated.
6651 * composite.c (compose_chars_in_text): Treat Lisp string contents
6652 as const.
6653 * dispnew.c (safe_bcopy): Source pointer now points to const.
6654 * lisp.h (STRING_COPYIN): New macro.
6655 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
6656 (internal_with_output_to_temp_buffer): Declarations updated.
6657 * print.c (temp_output_buffer_setup):
6658 (internal_with_output_to_temp_buffer): Buffer name argument is now
6659 pointer to const.
6660 * sound.c (struct sound_device): Function pointer field "write"
6661 buffer argument now points to const.
6662 (vox_write): Buffer argument points to const.
6663 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
6664 contents as const.
6665 * sysdep.c (emacs_write): Buffer pointer now const.
6666 * term.c (encode_terminal_code): Buffer pointer now const.
6667 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
6668 (x_face_list_fonts, x_update_menu_appearance):
6669 (hash_string_case_insensitive): Treat Lisp string contents as const.
6670
66712002-07-19 Juanma Barranquero <lektu@terra.es>
6672
6673 * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
6674 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
6675
6676 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
6677
6678 * fileio.c (syms_of_fileio): Likewise.
6679
66802002-07-18 Richard M. Stallman <rms@gnu.org>
6681
6682 * data.c (Fdefalias): Doc fix.
6683
66842002-07-17 Dave Love <fx@gnu.org>
6685
6686 * intervals.h (text_property_stickiness): Use P_.
6687
6688 * ccl.c: Remove `emacs' conditionals.
6689 (ccl_backtrace_table): Fix size spec.
6690 (ccl_driver): Fix type errors.
6691
66922002-07-16 Ken Raeburn <raeburn@gnu.org>
6693
6694 * alloc.c (xstrdup, make_string, make_unibyte_string)
6695 (make_multibyte_string, build_string): String pointer args now
6696 point to const.
6697 * charset.c (find_charset_in_text, c_string_width):
6698 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
6699 * fileio.c (report_file_error):
6700 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
6701 (count_combining_before, count_combining_after, insert_1_both):
6702 (insert, insert_and_inherit, insert_string):
6703 (insert_before_markers, insert_before_markers_and_inherit):
6704 * lread.c (intern, oblookup, hash_string):
6705 * minibuf.c (temp_echo_area_glyphs):
6706 * search.c (fast_c_string_match_ignore_case):
6707 * sysdep.c (emacs_open, set_file_times):
6708 * xfaces.c (xstricmp):
6709 * xdisp.c (store_frame_title, string_char_and_length):
6710 (message_dolog, message2, message2_nolog, set_message): Likewise.
6711 (set_message_1): Cast message string argument to const pointer.
6712 * editfns.c (general_insert_function): Insertion function now
6713 takes pointer to const for input data.
6714 * charset.h (find_charset_in_text, c_string_width):
6715 (parse_str_as_multibyte): Declarations updated.
6716 * dispextern.h (xstricmp): Declaration updated.
6717 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
6718 (count_size_as_multibyte, count_combining_before):
6719 (count_combining_after, insert_1, insert_1_both, message_dolog):
6720 (insert, insert_and_inherit, insert_before_markers)
6721 (insert_before_markers_and_inherit, set_message, message2):
6722 (message2_dolog, build_string, make_string, make_unibyte_string):
6723 (make_multibyte_string, intern, oblookup, report_file_error):
6724 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
6725 (emacs_open, xstrdup): Declarations updated.
6726 * systime.h (set_file_times): Declaration updated.
6727
6728 * charset.c (find_charset_in_text, lisp_string_width): Use const
6729 for pointer to lisp string data.
6730 * charset.h (FETCH_STRING_CHAR_ADVANCE):
6731 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
6732 * coding.c (Ffind_coding_systems_region_interval):
6733 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
6734 (Fmake_directory_internal, Fdelete_directory):
6735 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
6736 * fontset.c (font_family_registry, fs_query_fontset):
6737 (list_fontsets):
6738 * frame.c (Fframe_parameter):
6739 * keyboard.c (cmd_error_internal):
6740 * keymap.c (Fdescribe_buffer_bindings):
6741 * lread.c (complete_filename_p, openp):
6742 * minibuf.c (Fminibuffer_complete_word):
6743 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
6744 (face_before_or_after_it_pos, next_element_from_string):
6745 (get_overlay_arrow_glyph_row, display_mode_element):
6746 (decode_mode_spec_coding):
6747 * xterm.c (same_x_server): Likewise.
6748
6749 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
6750 settings of non-existent fields.
6751
6752 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
6753 copy a lisp value.
6754
6755 * lread.c (Fintern_soft): Use string macros instead of
6756 Lisp_String fields.
6757 * keyboard.c (echo_char, parse_modifiers_uncached):
6758 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
6759 * textprop.c (validate_interval_range, interval_of): Likewise.
6760
6761 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
6762
6763 * charset.h (FETCH_STRING_CHAR_ADVANCE)
6764 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
6765 XSTRING()->size_byte.
6766
6767 * lisp.h (SDATA, SREF): Produce rvalue.
6768 (SSET): New macro.
6769 * alloc.c (make_event_array): Use SSET for storing into a string.
6770 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
6771 a string.
6772 * casefiddle.c (casify_object): Use SSET.
6773 * charset.h (FETCH_STRING_CHAR_ADVANCE)
6774 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
6775 address of string contents.
6776 * data.c (Faref): Use SDATA.
6777 (Faset): Use SDATA, SSET.
6778 * dired.c (directory_files_internal): Use SSET.
6779 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
6780 (Fread_file_name): Use SREF, SSET.
6781 * fns.c (concat): Use SSET.
6782 (concat, Fdelete): Use SDATA.
6783 * insdel.c (insert_from_string_1): Use SDATA.
6784 * keyboard.c (Fevent_convert_list): Use SREF.
6785 * lread.c (Fload): Use SDATA, SSET.
6786 * macfns.c (validate_x_resource_name): Use SSET.
6787 * process.c (status_message): Use SSET.
6788 * search.c (wordify): Use SDATA.
6789 (Freplace_match): Use SREF.
6790 * w32fns.c (validate_x_resource_name): Use SSET.
6791 * xfns.c (validate_x_resource_name): Use SSET.
6792 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
6793
67942002-07-16 Richard M. Stallman <rms@gnu.org>
6795
6796 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
6797
6798 * xdisp.c (reconsider_clip_changes):
6799 Don't test prevent_redisplay_optimizations_p.
6800 (redisplay_internal): Test prevent_redisplay_optimizations_p
6801 along with clip_changed in some cases.
6802 (try_window_id): Likewise.
6803 (redisplay_window): New local var buffer_unchanged_p.
6804
6805 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
6806
6807 * process.c (create_process): Test USG_SUBTTY_WORKS.
6808 (process_send_signal): Clean up handling of GID.
6809 Detect errors in ioctls meant to set GID.
6810
6811 * window.c (temp_output_buffer_show):
6812 Don't set prevent_redisplay_optimizations_p.
6813
68142002-07-15 Juanma Barranquero <lektu@terra.es>
6815
6816 * eval.c (Fdefvaralias): Add docstring argument.
6817
68182002-07-15 Ken Raeburn <raeburn@gnu.org>
6819
6820 * lisp.h (STRING_INTERVALS): Produce rvalue.
6821 (STRING_SET_INTERVALS): New macro.
6822 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
6823 * fns.c (Fstring_as_multibyte): Likewise.
6824 * intervals.c (balance_possible_root_interval, delete_interval)
6825 (create_root_interval, copy_intervals_to_string): Likewise.
6826 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
6827 instead of 0.
6828
68292002-07-14 Ken Raeburn <raeburn@gnu.org>
6830
6831 * lisp.h (STRING_SET_CHARS): New macro.
6832 (SCHARS, SBYTES): Produce rvalues.
6833 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
6834 * fns.c (concat): Likewise.
6835 * lread.c (read_vector): Likewise.
6836
6837 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
6838 (STRING_SET_UNIBYTE): New macro.
6839 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
6840 length of -1) changed to use STRING_SET_UNIBYTE.
6841 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
6842 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
6843 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
6844 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
6845 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
6846 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
6847 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
6848 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
6849 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
6850 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
6851 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
6852 STRING_BYTES or indirection changed to SCHARS, SBYTES,
6853 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
6854 unchanged for now.
6855
68562002-07-13 Kim F. Storm <storm@cua.dk>
6857
6858 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
6859
68602002-07-12 Richard M. Stallman <rms@gnu.org>
6861
6862 * fileio.c (Fwrite_region): Doc fix.
6863
6864 * print.c (print_error_message): Don't handle Vsignaling_function here.
6865
6866 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
6867 (command_loop_1): Avoid certain actions after memory-full error.
6868
6869 * eval.c (Fsignal): Don't call cancel_hourglass.
6870 For a memory-full error, don't call Vsignal_hook_function
6871 and don't set Vsignaling_function.
6872
6873 * process.c (process_send_signal): Add abort call.
6874
68752002-07-11 Markus Rost <rost@math.ohio-state.edu>
6876
6877 * keymap.c (Fkey_binding): Fix typo.
6878
68792002-07-11 Richard M. Stallman <rms@gnu.org>
6880
6881 * alloc.c (Vmemory_full): New variable.
6882 (Vmemory_signal_data): Renamed from memory_signal_data.
6883 Uses changed.
6884 (syms_of_alloc): Defvar them.
6885 (memory_full, buffer_memory_full): Set Vmemory_full.
6886
6887 * lisp.h (Vmemory_full): Add declaration.
6888 (current_column, indented_beyond_p): Change declaration.
6889
6890 * indent.c (last_known_column): Declare as double, not float.
6891 (current_column, current_column_1, string_display_width)
6892 (position_indentation): Return `double'.
6893 (indented_beyond_p): Arg `column' is `double'. Callers changed.
6894
6895 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
6896 (back_to_previous_visible_line_start)
6897 (reseat_at_next_visible_line_start, next_element_from_buffer):
6898 Use `double', not `float', when calling indented_beyond_p.
6899
6900 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
6901
6902 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
6903
69042002-07-11 Juanma Barranquero <lektu@terra.es>
6905
6906 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
6907 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
6908 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
6909 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
6910 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
6911 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
6912
69132002-07-10 Juanma Barranquero <lektu@terra.es>
6914
6915 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
6916 changed.
6917
69182002-07-09 Stefan Monnier <monnier@cs.yale.edu>
6919
6920 * data.c (Fdefalias): Add an optional `docstring' argument.
6921 (set_internal, Fsetq_default): Use XCAR/XCDR.
6922
6923 * composite.c (HASH_VALUE, HASH_KEY):
6924 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
6925
69262002-07-09 Kenichi Handa <handa@etl.go.jp>
6927
6928 * callproc.c (Fcall_process): Fix previous change.
6929
69302002-07-07 Stefan Monnier <monnier@cs.yale.edu>
6931
6932 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
6933 Add support for hash-tables.
6934 (Ftry_completion): Return t even if the string appears multiple times.
6935
6936 * fns.c (Fnconc): Use XCDR.
6937 (Fprovide): Use CONSP and XCDR.
6938 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
6939 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
6940 (Fmake_hash_table): Accept `:size nil'.
6941 (Fmakehash): Delete: moved to subr.el.
6942 (syms_of_fns): Don't defsubr makehash.
6943
6944 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
6945 (HASH_TABLE_SIZE): Move from fns.c.
6946
69472002-07-07 Richard M. Stallman <rms@gnu.org>
6948
6949 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
6950 Instead just return 0 when there is something to be done.
6951 (try_scrolling): If make_cursor_line_fully_visible returns 0,
6952 retry scrolling as if cursor were off the bottom.
6953 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
6954 return CURSOR_MOVEMENT_MUST_SCROLL.
6955 (redisplay_window): If make_cursor_line_fully_visible returns 0,
6956 go to try_to_scroll.
6957
6958 * buffer.c (Fbuffer_local_value): Store current value into its binding
6959 so we get the up-to-date value for the binding that is loaded.
6960
6961 * eval.c (Fdefmacro): Doc fix.
6962
69632002-07-05 Dave Love <fx@gnu.org>
6964
6965 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
6966 correctly.
6967
6968 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
6969 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
6970 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
6971 CCL_LookupCharConstTbl.
6972 (syms_of_ccl): Defvar translation-hash-table-vector.
6973
69742002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6975
6976 * xdisp.c: Remove unused variable `face'.
6977
69782002-07-04 Juanma Barranquero <lektu@terra.es>
6979
6980 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
6981 obsolescence information.
6982
69832002-07-03 Andrew Choi <akochoi@shaw.ca>
6984
6985 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
6986 pattern. Search cache first.
6987 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
6988 for Japanese font.
6989 (XLoadQueryFont): Use it.
6990
69912002-07-02 Richard M. Stallman <rms@gnu.org>
6992
6993 * keymap.c (Fdefine_key): Doc fix.
6994
6995 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
6996
69972002-07-02 Juanma Barranquero <lektu@terra.es>
6998
6999 * keymap.c (syms_of_keymap): Fix typo.
7000
70012002-07-01 Andrew Choi <akochoi@shaw.ca>
7002
7003 * s/darwin.h: Define POSIX_SIGNALS.
7004
7005 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
7006 and FSRefMakePath to convert FSSpec returned with Apple Event to
7007 Posix pathname.
7008 (mac_initialize) [TARGET_API_MAC_CARBON]:
7009 Call init_required_apple_events and disable the `Quit' menu item
7010 provided automatically by the Carbon Toolbox.
7011
70122002-07-01 Dave Love <fx@gnu.org>
7013
7014 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
7015 for K&R.
7016
7017 * xterm.c: Fix prototype for K&R.
7018
7019 * term.c (costs_set): Declare static, non-initialized for pcc.
7020
70212002-07-01 Richard M. Stallman <rms@gnu.org>
7022
7023 * keyboard.c (timer_last_idleness_start_time): New variable.
7024 (timer_start_idle): Set that.
7025 (read_key_sequence): Use that to reset timer_idleness_start_time
7026 to previous value.
7027
7028 * window.c (Frecenter): With arg, set optional_new_start.
7029
7030 * xdisp.c (redisplay_internal): Make optional_new_start really work.
7031
7032 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
7033 buffer for completion.
7034
70352002-06-29 Ken Raeburn <raeburn@gnu.org>
7036
7037 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
7038
70392002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7040
7041 * keyboard.c (readable_filtered_events): New function that filters
7042 FOCUS_IN_EVENT depending on parameter.
7043 (readable_events): Calls readable_filtered_events, not filtering
7044 FOCUS_IN_EVENT.
7045 (get_filtered_input_pending): New function, filtering parameter passed
7046 to readable_filtered_events.
7047 (get_input_pending): Calls get_filtered_input_pending, not filtering
7048 FOCUS_IN_EVENT.
7049 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
7050 FOCUS_IN_EVENT.
7051
7052 * xterm.h (struct x_output): Add focus_state.
7053
7054 * xterm.c (x_focus_changed): New function.
7055 (x_detect_focus_change): New function.
7056 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
7057 EnterNotify and LeaveNotify to track X focus changes.
7058
70592002-06-28 Andreas Schwab <schwab@suse.de>
7060
7061 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
7062
70632002-06-27 Kim F. Storm <storm@cua.dk>
7064
7065 * xdisp.c: (mode_line_string_list, mode_line_string_face)
7066 (mode_line_string_face_prop): New variables.
7067 (store_mode_line_string): New function.
7068 (display_mode_element): Use store_mode_line_string to
7069 add mode-line string elements to mode_line_string_list
7070 when mode_line_string_list is non-nil.
7071 (Fformat_mode_line): Now returns propertized string by
7072 default. New arg NO-PROPS to ignore properties.
7073 (decode_mode_spec): Only add two dashes for %- in propertized
7074 mode-line string.
7075 (syms_of_xdisp): Init and staticpro mode_line_string_list.
7076
70772002-06-27 Stefan Monnier <monnier@cs.yale.edu>
7078
7079 * minibuf.c (minibuffer_completion_contents): Add return type.
7080
70812002-06-27 Juanma Barranquero <lektu@terra.es>
7082
7083 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
7084
70852002-06-26 Juanma Barranquero <lektu@terra.es>
7086
7087 * fileio.c (read_file_name_cleanup): Add missing return.
7088
70892002-06-26 Richard M. Stallman <rms@gnu.org>
7090
7091 * window.c (Frecenter): Don't set force_start flag.
7092
7093 * minibuf.c (do_completion, Fminibuffer_complete_word)
7094 (Fminibuffer_completion_help): Complete just the text before point.
7095 (minibuffer_completion_contents): New function.
7096
7097 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
7098
7099 * frame.c (frames_bury_buffer): Function deleted.
7100
71012002-06-25 Miles Bader <miles@gnu.org>
7102
7103 * callint.c (Fcall_interactively): When checking to see if doprnt hit
7104 the end of callint_message, allow for a terminating '\0'.
7105
71062002-06-24 Juanma Barranquero <lektu@terra.es>
7107
7108 * w32select.c: Include composite.h
7109
7110 * w16select.c: Likewise.
7111
71122002-06-24 Kenichi Handa <handa@etl.go.jp>
7113
7114 * callproc.c (Fcall_process): If code detection is necessary,
7115 call detect_coding directly here.
7116
7117 * coding.c (detect_eol): Preserve coding->cmp_data.
7118
7119 * w16select.c (Fw16_get_clipboard_data):
7120 * w32fns.c (w32_to_x_font):
7121 * w32select.c (Fw32_get_clipboard_data):
7122 * xselect.c (selection_data_to_lisp_data):
7123 * xterm.c (XTread_socket): Disable composition handling.
7124
71252002-06-24 Stefan Monnier <monnier@cs.yale.edu>
7126
7127 * print.c (temp_output_buffer_setup): Kill all local variables.
7128
71292002-06-22 Stefan Monnier <monnier@cs.yale.edu>
7130
7131 * lread.c (Fread): Remove redundant and imprecise declaration.
7132
7133 * xfns.c (check_x_display_info): Use check_x_frame.
7134
7135 * .gdbinit (xprintsym): Use the new `xname' field.
7136 (xsymbol): Use it.
7137
71382002-06-22 Jason Rumney <jasonr@gnu.org>
7139
7140 * w32fns.c (file_dialog_callback): New function.
7141 (Fx_file_dialog): Allow selecting directories as well as files.
7142
71432002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7144
7145 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
7146 OpenBSD. Add support for mipseb-*-netbsd* machines.
7147
71482002-06-17 Andrew Choi <akochoi@shaw.ca>
7149
7150 * macterm.c (mac_scroll_area): Set foreground and backcolor to
7151 black and white before scrolling. Restore frame background and
7152 foreground color after scrolling.
7153 (do_window_update): Call XClearWindow before calling expose_frame.
7154 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
7155 FRAME_FOREGROUND_PIXEL of frame.
7156
7157 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
7158 test Mac command key as <ALT> key.
7159
71602002-06-17 Stefan Monnier <monnier@cs.yale.edu>
7161
7162 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
7163
7164 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
7165 Lookup keys in function-key-map immediately so that key-translation-map
7166 can be applied earlier.
7167 Remove function_key_possible and key_translation_possible, replaced
7168 by checking `keytran_start < t'.
7169
7170 * .gdbinit (xsymbol): Use the new `xname' field.
7171
71722002-06-17 Andrew Choi <akochoi@shaw.ca>
7173
7174 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
7175 test Mac command key as <ALT> key.
7176
7177 * mac.c (do_applescript): Call initialize_applescript if necessary
7178 when first called. Dispose of result_desc only when there is no error.
7179 (Fdo_applescript): Use %d format specifier instead of %ld.
7180
71812002-06-16 Andrew Choi <akochoi@shaw.ca>
7182
7183 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
7184 of FrontWindow for cases keyDown and autoKey.
7185
7186 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
7187 Vdefault_fontset to Monaco with mac-roman coding.
7188
7189 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
7190 init_process before and after inclusion of Carbon/Carbon.h, resp.
7191
7192 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
7193 cursor_gc.
7194 (add_font_name_table_entry): New function.
7195 (init_font_name_table): Use add_font_name_table_entry; add italic,
7196 bold, and bold-italic entries for truetype fonts.
7197
7198 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
7199 for Mac too.
7200 (try_font_list) [MAC_OS]: If no font matches given registry, try
7201 fonts with any registry matching face_family.
7202 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
7203
7204 * s/darwin.h: If autoconf detects the Ncurses library, define
7205 LIBS_TERMCAP to -lncurses to use it.
7206
72072002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
7208
7209 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
7210
72112002-06-15 Richard M. Stallman <rms@gnu.org>
7212
7213 * window.c (Fset_window_configuration): Explicitly preserve
7214 the point value that new_current_buffer had at the start.
7215
72162002-06-14 Juanma Barranquero <lektu@terra.es>
7217
7218 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
7219 Fix typos.
7220
72212002-06-14 Kim F. Storm <storm@cua.dk>
7222
7223 * insdel.c (insert_1_both, insert_from_string_1)
7224 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
7225 insert happened in the end_unchanged region. Otherwise, the
7226 redisplay may be confused and duplicate the last line in the
7227 buffer [seen after save-buffer when require-final-newline==t].
7228
72292002-06-13 Jason Rumney <jasonr@gnu.org>
7230
7231 * w32.c (init_environment): Remove EMACSLOCKDIR.
7232 (stat): Swap _S_IFDIR and _S_IFREG.
7233
72342002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7235
7236 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
7237 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
7238 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
7239 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
7240 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
7241 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
7242 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
7243 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
7244 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
7245 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
7246 SELECTION_REQUEST_EVENT, selection_clear_event to
7247 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
7248 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
7249 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
7250 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
7251 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
7252 no_event to NO_EVENT.
7253
72542002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7255
7256 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
7257
72582002-06-12 Stefan Monnier <monnier@cs.yale.edu>
7259
7260 * intervals.c (textget): Don't forget to `return'.
7261 (lookup_char_property): Use XCAR/XCDR.
7262
72632002-06-12 Juanma Barranquero <lektu@terra.es>
7264
7265 * xdisp.c (Fformat_mode_line): Fix typo.
7266
72672002-06-12 Kim F. Storm <storm@cua.dk>
7268
7269 * xdisp.c (Fformat_mode_line): New function.
7270 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
7271 (store_frame_title_char, store_frame_title): Use unconditionally.
7272 (init_xdisp): Defsubr Fformat_mode_line.
7273 Initialize frame_title_buf etc. unconditionally.
7274
72752002-06-11 Stefan Monnier <monnier@cs.yale.edu>
7276
7277 * keyboard.c (read_key_sequence):
7278 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
7279 things through those maps after downcasing events.
7280 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
7281 applies after function-key-map.
7282 Make sure that keytran can be done in the middle in the sequence.
7283 Be careful not to throw away events past the one we downcase.
7284
7285 * lread.c (read_integer): Remove unused var `tem'.
7286 (read1): Fix int/Lisp_Object mixup.
7287
7288 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
7289
72902002-06-11 Richard M. Stallman <rms@gnu.org>
7291
7292 * keyboard.c (readable_events): Ignore any number of
7293 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
7294
72952002-06-09 Miles Bader <miles@gnu.org>
7296
7297 * xfaces.c (Ftty_supports_face_attributes_p): New function.
7298 (parse_rgb_list, tty_lookup_color): New functions.
7299 (tty_defined_color): Use `tty_lookup_color' to do all the work.
7300 (color_distance, Fcolor_distance): New functions.
7301 (TTY_SAME_COLOR_THRESHOLD): New macro.
7302 (Qtty_color_standard_values): New variable.
7303 (syms_of_xfaces): Initialize new vars & functions.
7304
73052002-06-08 Colin Walters <walters@verbum.org>
7306
7307 * textprop.c (Vchar_property_alias_alist): New variable.
7308 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
7309
7310 * intervals.c (lookup_char_property): New function for looking up
7311 overlay and text properties, created from textget.
7312 (textget): Use it.
7313
7314 * intervals.h (lookup_char_property): Declare.
7315 (Vchar_property_alias_alist): Declare.
7316
7317 * buffer.c (Foverlay_get): Use lookup_char_property.
7318
73192002-06-07 Sam Steingold <sds@gnu.org>
7320
7321 * xselect.c (lisp_data_to_selection_data): Fix last change:
7322 *data_ret is not a Lisp string, while unibyte_string is.
7323
73242002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
7325
7326 * xselect.c (lisp_data_to_selection_data): Fix last change:
7327 set size_ret.
7328
73292002-06-07 Andreas Schwab <schwab@suse.de>
7330
7331 * m/amdx86-64.h: New file.
7332
73332002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
7334
7335 * fns.c (Fstring_make_unibyte): Doc fix.
7336
7337 * xselect.c (lisp_data_to_selection_data): If the requested type
7338 is STRING, call string_make_unibyte to encode the selected text
7339 as a string.
7340
7341 * window.c (Fset_window_hscroll): Doc fix.
7342
73432002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7344
7345 * fileio.c (choose_write_coding_system):
7346 Call select-safe-coding-system properly.
7347
73482002-06-03 Richard M. Stallman <rms@gnu.org>
7349
7350 * xdisp.c (message_with_string): Error if STRING is not a string.
7351
7352 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
7353
7354 * fileio.c (choose_write_coding_system): Pass FILE arg to
7355 Vselect_safe_coding_system_function.
7356
73572002-06-03 Ken Raeburn <raeburn@gnu.org>
7358
7359 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
7360
73612002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
7362
7363 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
7364 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
7365 * keymap.c (describe_command): Likewise.
7366 * minibuf.c (read_minibuf): Likewise.
7367
7368 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
7369 Cast `current_column' return value to int.
7370 (back_to_previous_visible_line_start)
7371 (reseat_at_next_visible_line_start, next_element_from_buffer):
7372 Cast `indented_beyond_p' 3rd arg to float.
7373
7374 * indent.c (last_known_column): Now a float.
7375 (current_column_1, position_indentation, current_column)
7376 (string_display_width): Return float.
7377 (Fcurrent_column): Cast `current_column' return value to int.
7378 (Fcurrent_indentation): Cast `position_indentation' retval to int.
7379 (indented_beyond_p): Third arg now a float.
7380 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
7381
7382 * lisp.h (current_column): Now returns float.
7383 (indented_beyond_p): 3rd arg now a float.
7384
73852002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
7386
7387 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
7388 is Qcompound_text_with_extensions.
7389
7390 * xselect.c (lisp_data_to_selection_data): Always set selection
7391 type as string if x_encode_text returns streingp non-NULL.
7392
7393 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
7394
73952002-05-30 Richard M. Stallman <rms@gnu.org>
7396
7397 * window.c (Fset_window_configuration): Correct the handling
7398 of point in current buffer, to work with multiple windows.
7399
74002002-05-29 Colin Walters <walters@verbum.org>
7401
7402 * lread.c (Fread_from_string): Don't depend on order of evaluation
7403 for C function parameters.
7404
74052002-05-28 Richard M. Stallman <rms@gnu.org>
7406
7407 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
7408 way for blinked-off state and for a nonselected window.
7409
7410 * window.c (window_scroll_pixel_based): Don't call Fbolp;
7411 instead, see if the new start pos is at beginning of line.
7412
7413 * fileio.c (Fwrite_region): If START is a string, don't
7414 make any annotations.
7415
7416 * eval.c (syms_of_eval): Doc fix.
7417
74182002-05-28 Colin Walters <walters@debian.org>
7419
7420 * emacs.c (USAGE1): Add --no-splash.
7421 (standard_args): Ditto.
7422
74232002-05-28 Colin Walters <walters@gnu.org>
7424
7425 * lread.c (readchar_count): New variable.
7426 (readchar): Increment it.
7427 (unreadchar): Decrement it.
7428 (read_multibyte): Decrement it.
7429 (Vread_with_symbol_positions): New variable.
7430 (Vread_symbol_positions_list): New variable.
7431 (read_internal_start): New function, created from Fread and
7432 Fread_from_string. Handle Vread_symbol_positions_list and
7433 Vread_with_symbol_positions.
7434 (readevalloop, Fread, Fread_from_string): Use it.
7435 (read1): Use readchar_count to add symbol positions to
7436 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
7437 (syms_of_lread): DEFVAR_LISP and initialize them.
7438
7439 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
7440 (substitute_object_recurse, substitute_object_in_subtree)
7441 (substitute_in_interval): Prototype.
7442 (read_multibyte): Return c if it's less than zero.
7443
74442002-05-28 Kim F. Storm <storm@cua.dk>
7445
7446 * fileio.c (Fread_file_name_internal): Added brute-force
7447 speed up for using predicate file-directory-p.
7448
74492002-05-28 Kim F. Storm <storm@cua.dk>
7450
7451 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
7452 New variables.
7453 (syms_of_fileio): DEFVAR_LISP them.
7454 (read_file_name_cleanup): New unwind function.
7455 (Fread_file_name_internal): Only return completions satifying
7456 Vread_file_name_predicate. Temporarily unwind protect and rebind
7457 default-directory while checking completions against the predicate.
7458 (Fread_file_name): Added PREDICATE argument. Specbind it to
7459 Vread_file_name_predicate during completion.
7460 Call Vread_file_name_function to read the file name if non-nil.
7461
7462 * lisp.h (Fread_file_name): Now has 6 args.
7463
7464 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
7465 predicate for Fread_file_name when reading directory name.
7466 Supply Qnil for predicate in other calls to Fread_file_name.
7467
74682002-05-26 Miles Bader <miles@gnu.org>
7469
7470 * term.c (tty_capable_p): New function.
7471 * dispextern.h (tty_capable_p): New function declaration.
7472 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
7473 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
7474
74752002-05-23 Stefan Monnier <monnier@cs.yale.edu>
7476
7477 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
7478 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
7479 (Vwrite_region_annotate_functions): Docstring fix.
7480
74812002-05-23 Kim F. Storm <storm@cua.dk>
7482
7483 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
7484 phys_cursor's hpos is overwritten. This is still not completely
7485 correct, as it doesn't really make sense to use hpos at all to
7486 get the cursor glyph (as that is relative to the width of the
7487 characters on the line, which may have changed during the update).
7488
74892002-05-22 Jason Rumney <jasonr@gnu.org>
7490
7491 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
7492 Lisp_Object.
7493 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
7494 Use modified enumfont_t struct.
7495
7496 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
7497
7498 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
7499 Handle the `hbar' cursor type.
7500 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
7501
7502 * w32fns.c (Qhbar): New variable.
7503 (x_specified_cursor_type): Use it.
7504
75052002-05-21 Ken Raeburn <raeburn@gnu.org>
7506
7507 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
7508 now, when the address is needed.
7509
75102002-05-21 Colin Walters <walters@gnu.org>
7511
7512 * Makefile.in (shortlisp): Add font-core.el.
7513
75142002-05-20 Richard M. Stallman <rms@gnu.org>
7515
7516 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
7517
7518 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
7519 equivalent key bindings here.
7520
75212002-05-20 Ken Raeburn <raeburn@gnu.org>
7522
7523 Change symbol structure to contain a lisp object for the symbol
7524 name:
7525 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
7526 object field named "xname".
7527 (SYMBOL_NAME): New macro.
7528 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
7529 name field.
7530 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
7531 (mark_object, gc_sweep): Use symbol xname field and XSTRING
7532 instead of name field.
7533 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
7534 SYMBOL_NAME instead of XSYMBOL and name field.
7535 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
7536 instead of XSYMBOL and name field.
7537 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
7538 and SYMBOL_NAME instead of XSYMBOL and name field.
7539 * coding.c (Fread_coding_system, code_convert_region1)
7540 (code_convert_string1, code_convert_string_norecord)
7541 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
7542 XSYMBOL and name field.
7543 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
7544 (Fmake_variable_buffer_local, Fmake_local_variable)
7545 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
7546 of XSYMBOL and name field.
7547 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
7548 XSYMBOL and name field.
7549 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
7550 instead of XSYMBOL and name field.
7551 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
7552 XSYMBOL and name field.
7553 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
7554 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
7555 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
7556 instead of XSYMBOL and name field.
7557 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
7558 (parse_modifiers, apply_modifiers, Fevent_convert_list)
7559 (parse_solitary_modifier, Fexecute_extended_command):
7560 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
7561 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
7562 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
7563 of XSYMBOL and name field.
7564 (describe_command, describe_translation): Use SYMBOL_NAME and
7565 assignment instead of XSYMBOL and name field and XSETSTRING.
7566 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
7567 instead of XSYMBOL and name field.
7568 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
7569 name field and XSETSTRING.
7570 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
7571 of XSYMBOL and name field.
7572 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
7573 assignment instead of XSYMBOL and name field and XSETSTRING.
7574 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
7575 XSTRING instead of XSYMBOL and name field.
7576 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
7577 and XSTRING instead of XSYMBOL and name field.
7578 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
7579 and XSTRING instead of XSYMBOL and name field.
7580 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
7581 XSTRING instead of XSYMBOL and name field.
7582 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
7583 of XSYMBOL and name field.
7584 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
7585 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
7586
75872002-05-19 Ken Raeburn <raeburn@gnu.org>
7588
7589 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
7590 and XCDR real rvalues in most configurations.
7591
7592 * buffer.c (fix_overlays_in_range, fix_overlays_before):
7593 Don't take the address of the cdr part of a cons cell; instead, track
7594 the parent cell and call XSETCDR, or set the variable for the head
7595 of the list if we haven't started down the list yet.
7596
75972002-05-19 Richard M. Stallman <rms@gnu.org>
7598
7599 * doc.c (reread_doc_file): Don't ask for confirmation.
7600
76012002-05-18 Jason Rumney <jasonr@gnu.org>
7602
7603 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
7604 (xbm_load_image): Use it.
7605 (xbm_load): Ditto.
7606 (xbm_read_bitmap_data): Reverted to xfns.c version.
7607 From David Ponce <david@dponce.com>.
7608
76092002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
7610
7611 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
7612 2.02 and later.
7613
76142002-05-16 Juanma Barranquero <lektu@terra.es>
7615
7616 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
7617
76182002-05-15 Stefan Monnier <monnier@cs.yale.edu>
7619
7620 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
7621 meaningful test.
7622 (read_char_minibuf_menu_prompt): Fix typo.
7623
76242002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
7625
7626 * eval.c (Fcommandp): Doc fix.
7627
76282002-05-13 Stefan Monnier <monnier@cs.yale.edu>
7629
7630 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
7631 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
7632 (Fset_keymap_parent): Gcpro a bit more.
7633 (access_keymap): Gcpro around meta_map call and around the main loop.
7634 (get_keyelt): Gcpro when following indirect references.
7635 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
7636 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
7637 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
7638 Remove useless ad-hoc remap code.
7639
76402002-05-13 Richard M. Stallman <rms@gnu.org>
7641
7642 * search.c (search_buffer): Give up boyer moore search if inverse
7643 translation change charset_base.
7644
76452002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
7646
7647 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
7648 characters is carried over from the previous block of text, adjust
7649 coding->produced to account for the extra character.
7650
76512002-05-11 Andreas Schwab <schwab@suse.de>
7652
7653 * coding.c (intersection): Keep the elements of the returned list
7654 in the same order as in the first list.
7655
76562002-05-11 Kim F. Storm <storm@cua.dk>
7657
7658 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
7659 only update cmm_size if realloc actually succeeds.
7660 Testing with initial size of 2 elements revealed that using
7661 realloc on GNU/Linux would cause a random trap in xmalloc
7662 later on, so I rewrote the code to use malloc/bcopy/free instead
7663 of realloc.
7664
76652002-05-10 Jason Rumney <jasonr@gnu.org>
7666
7667 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
7668
76692002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
7670
7671 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
7672 parens, to ensure correct evaluation order.
7673
76742002-05-10 Kim F. Storm <storm@cua.dk>
7675
7676 * keymap.c (Vemulation_mode_map_alists): New variable.
7677 (syms_of_keymap): DEFVAR_LISP it.
7678 (current_minor_maps): Process keymap alists in that list before
7679 minor-mode-overriding-map-alist and minor-mode-map-alist.
7680
76812002-05-09 Richard M. Stallman <rms@gnu.org>
7682
7683 * search.c (Freplace_match): Doc fix.
7684
76852002-05-09 Kim F. Storm <storm@cua.dk>
7686
7687 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
7688 Enlarge cursor rectangle drawn around image with non-zero relief.
7689
7690 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
7691 Enlarge cursor rectangle drawn around image with non-zero relief.
7692
7693 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
7694 Enlarge cursor rectangle drawn around image with non-zero relief.
7695
76962002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
7697
7698 * xselect.c (lisp_data_to_selection_data): Don't set selection
7699 type if comes from the Lisp object's car. If the selection
7700 contains a pure ASCII text, always return QSTRING as its type.
7701
77022002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7703
7704 * mac.c (mac-cut-function): Doc fix.
7705
77062002-05-05 Richard M. Stallman <rms@gnu.org>
7707
7708 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
7709
77102002-05-04 Jason Rumney <jasonr@gnu.org>
7711
7712 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
7713 for event-click-count.
7714
7715 * process.c (init_process): Only add server subfeature if we can
7716 use non-blocking I/O.
7717
77182002-05-04 Andrew Choi <akochoi@shaw.ca>
7719
7720 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
7721 repeatedly.
7722
77232002-05-03 Jason Rumney <jasonr@gnu.org>
7724
7725 * process.c (Fmake_network_process): Only support server sockets
7726 when we can make them non-blocking.
7727
7728 * s/ms-w32.h (HAVE_SELECT): Define.
7729
7730 * w32.h (FILE_NDELAY): New flag.
7731
7732 * w32.c (sys_getpeername, fcntl): New functions.
7733 (_sys_read_ahead): Temporarily block on non-blocking sockets.
7734
7735 * w32proc.c: include sys/file.h.
7736
77372002-05-03 Colin Walters <walters@verbum.org>
7738
7739 * callproc.c (Vgame_score_directory): Renamed to
7740 Vshared_game_score_directory.
7741
77422002-04-30 Richard M. Stallman <rms@gnu.org>
7743
7744 * s/gnu.h [emacs]: Include stdio.h.
7745 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
7746
7747 * eval.c (do_autoload): Error if called while preparing to dump.
7748
7749 * fns.c (Frequire): Error if need to load while preparing to dump.
7750
77512002-04-28 Colin Walters <walters@verbum.org>
7752
7753 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
7754 Default to "~/.emacs.d/games".
7755
77562002-04-29 Stefan Monnier <monnier@cs.yale.edu>
7757
7758 * lread.c (openp): Change arg exec_only to predicate.
7759 (build_load_history): Use XCAR/XCDR.
7760 (Flocate_file_internal): New fun.
7761 (syms_of_lread): Defsubr it.
7762 (Fload): Update call to openp.
7763
7764 * lisp.h (openp): Update prototype.
7765
7766 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
7767 * w32proc.c (sys_spawnve):
7768 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
7769 * w32.c (check_windows_init_file):
7770 * sound.c (Fplay_sound_internal):
7771 * process.c (Fstart_process):
7772 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
7773 * mac.c (run_mac_command):
7774 * emacs.c (init_cmdargs):
7775 * callproc.c (Fcall_process): Update call to openp.
7776
7777 * textprop.c (remove_properties): Don't use XCAR without CONSP.
7778
7779 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
7780
77812002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7782
7783 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
7784 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
7785
77862002-04-28 Richard M. Stallman <rms@gnu.org>
7787
7788 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
7789
7790 * eval.c (Fcommandp): New arg for_call_interactively.
7791 * lisp.h (Fcommandp): Declare new arg.
7792
77932002-04-28 Jason Rumney <jasonr@gnu.org>
7794
7795 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
7796
7797 * w32.c (stat, fstat): Use file index information to generate
7798 inodes for directories where available.
7799
78002002-04-26 Andrew Choi <akochoi@shaw.ca>
7801
7802 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
7803 [HAVE_CARBON]: Include Mac object files.
7804
7805 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
7806 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
7807 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
7808 MAC_OSX, and MAC_OS instead of macintosh.
7809
7810 * editfns.c [MAC_OS8]: Include stdio.h.
7811
7812 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
7813
7814 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
7815 Apple Monaco.
7816
7817 * process.c: Declare QCfamily and QCfilter as extern.
7818 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
7819 calling select.
7820
7821 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
7822
7823 * tparam.c [MAC_OSX]: Don't define BC and UP.
7824
7825 * config.in [HAVE_CARBON]: Add.
7826
7827 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
7828 Move here from mac/src and mac/inc.
7829
7830 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
7831
78322002-04-26 Gerd Moellmann <gerd@gnu.org>
7833
7834 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
7835 Compute phys_cursor_width from the x position returned
7836 by x_draw_glyhs, which is cheaper.
7837 (x_display_and_set_cursor): Compute the buffer-local value
7838 of `cursor-in-non-selected-windows' only when needed.
7839
78402002-04-25 Gerd Moellmann <gerd@gnu.org>
7841
7842 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
7843 cursor on a stretch glyph has a width that depends on
7844 x_stretch_cursor_p.
7845
78462002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7847
7848 * abbrev.c (abbrev-start-location): Doc fix.
7849
7850 * indent.c (Fvertical_motion): Fix last change.
7851
78522002-04-25 Gerd Moellmann <gerd@gnu.org>
7853
7854 * indent.c (Fvertical_motion): Move to the start of the line
7855 containing PT before moving up or down.
7856
78572002-04-24 Gerd Moellmann <gerd@gnu.org>
7858
7859 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
7860 case of writing a whole row, more or less analogous to the case of
7861 writing only parts of a row.
7862
7863 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
7864 0 for NO_CURSOR.
7865
7866 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
7867
78682002-04-23 Colin Walters <walters@verbum.org>
7869
7870 * buffer.c (syms_of_buffer): Doc fix.
7871
78722002-04-23 Gerd Moellmann <gerd@gnu.org>
7873
7874 * xterm.c (notice_overwritten_cursor): Handle the special case
7875 of the cursor being in the first blank non-text line at the
7876 end of a window.
7877
7878 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
7879 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
7880 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
7881 bar cursors only, to make phys_cursor_width contain what its name
7882 suggests.
7883 (notice_overwritten_cursor): Consider the cursor image erased if
7884 the output area intersects the cursor image in y-direction.
7885
78862002-04-23 Simon Marshall <simon@gnu.org>
7887
7888 * xfns.c (x_set_mouse_color): Change default for cross_cursor
7889 to XC_hand2.
7890
78912002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7892
7893 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
7894
78952002-04-22 Kim F. Storm <storm@cua.dk>
7896
7897 * textprop.c (remove_properties): Fixed trap for malformed plist.
7898
78992002-04-22 Richard M. Stallman <rms@gnu.org>
7900
7901 * cmds.c (Fend_of_line): Handle intangible text in mid line.
7902
7903 * window.c (make_window): Initialize height_fixed_p,
7904 last_cursor_off_p, and p->cursor_off_p slots.
7905
79062002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7907
7908 * fns.c (use-dialog-box): Doc fix.
7909
79102002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7911
7912 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
7913 variables `row', `i' and `area'.
7914 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
7915 toolkit library.
7916
79172002-04-19 Stefan Monnier <monnier@cs.yale.edu>
7918
7919 * xfaces.c (clear_font_table): Don't free the default font of
7920 a frame even if it's on another display.
7921 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
7922 that could be Qt.
7923
79242002-04-19 Juanma Barranquero <lektu@terra.es>
7925
7926 * indent.c (Fmove_to_column): Remove unused local variable
7927 `next_boundary_byte'.
7928 (current_column_1): Likewise.
7929
79302002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
7931
7932 * msdos.c (Qhbar): New variable.
7933 (syms_of_msdos): Intern and staticpro it.
7934 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
7935 cursor type.
7936
79372002-04-19 Dave Lambert <dlambert@acm.org>
7938
7939 Theses change implement an underscore-like (`hbar') cursor.
7940
7941 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
7942
7943 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
7944 Handle the `hbar' cursor type.
7945 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
7946
7947 * xfns.c (Qhbar): New variable.
7948 (syms_of_xfns): Intern and staticpro it.
7949 (x_specified_cursor_type): Handle `hbar' cursor.
7950
7951 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
7952 not defined.
7953
79542002-04-18 Richard M. Stallman <rms@gnu.org>
7955
7956 * textprop.c (remove_properties): New arg LIST allows scanning
7957 either a list or a plist.
7958 (interval_has_some_properties_list): New function, like
7959 interval_has_some_properties using list instead of plist.
7960 All callers changed.
7961 (Fremove_list_of_text_properties): New function.
7962 (syms_of_textprop): Defsubr it.
7963
79642002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
7965
7966 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
7967
79682002-04-17 Juanma Barranquero <lektu@terra.es>
7969
7970 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
7971
79722002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
7973
7974 * window.c (coordinates_in_window): Don't report on margin area
7975 if its width is zero.
7976
79772002-04-16 Jason Rumney <jasonr@gnu.org>
7978
7979 * w32fns.c (Fx_file_dialog): Decode file name before using.
7980
7981 * w32term.c (construct_drag_n_drop): Likewise.
7982
79832002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
7984
7985 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
7986 store load-history in pure space.
7987
7988 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
7989
79902002-04-16 Stefan Monnier <monnier@cs.yale.edu>
7991
7992 * xterm.c (Qlatin_1, Qutf_8): New vars.
7993 (syms_of_xterm): Initialize them.
7994 (XTread_socket): Eliminate incorrect optimization that tried to avoid
7995 decoding the output of X*LookupString.
7996 Always use latin-1 to decode the output of XLookupString.
7997 Try Xutf8LookupString if XmbLookupString failed.
7998
7999 * region-cache.c (new_region_cache): Use BEG.
8000
80012002-04-16 Gerd Moellmann <gerd@gnu.org>
8002
8003 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
8004 configuration files.
8005 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
8006 returns 0.
8007
80082002-04-15 Andreas Schwab <schwab@suse.de>
8009
8010 * config.in: Regenerated using autoheader.
8011
8012 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
8013 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
8014 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
8015 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
8016 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
8017 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
8018 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
8019 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
8020 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
8021 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
8022 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
8023 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
8024 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
8025 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
8026 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
8027 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
8028 STACK_DIRECTION, now set by autoconf.
8029
80302002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8031
8032 * dispnew.c (marginal_area_string): Sort arguments.
8033
8034 * dispextern.h (marginal_area_string): Add prototype.
8035
80362002-04-13 Richard M. Stallman <rms@gnu.org>
8037
8038 * fileio.c (Finsert_file_contents):
8039 Don't call temp_output_buffer_setup--do just part, by hand.
8040
8041 * coding.c (run_pre_post_conversion_on_str):
8042 Don't call temp_output_buffer_setup--do just part, by hand.
8043
8044 * keyboard.c (command_loop_1): Don't call start_hourglass
8045 or cancel_hourglass when executing a macro.
8046
8047 * marker.c (count_markers): New function.
8048
8049 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
8050 grow without limit. Move recently used elements to the front.
8051
80522002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
8053
8054 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
8055
80562002-04-12 Gerd Moellmann <gerd@gnu.org>
8057
8058 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
8059 rows marginal areas.
8060 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
8061 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
8062
8063 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
8064
80652002-04-12 Dave Love <fx@gnu.org>
8066
8067 * dispnew.c (marginal_area_string): New.
8068
8069 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
8070 (Qleft_margin, Qright_margin): Declare.
8071 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
8072
8073 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
8074 note_mode_line_highlight and extended.
8075
8076 * keyboard.c (Qleft_margin, Qright_margin): Declare.
8077 (make_lispy_event): Deal with mouse events in margins.
8078
80792002-04-12 Stefan Monnier <monnier@cs.yale.edu>
8080
8081 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
8082
8083 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
8084 than deactivating the mark if tmm is set to `lambda'.
8085 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
8086 Use a single event for HELP_EVENT.
8087 (Fexecute_extended_command): Save last_point_position.
8088
80892002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8090
8091 * lisp.h (Fpropertize): Add prototype.
8092
8093 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
8094
80952002-04-10 Colin Walters <walters@verbum.org>
8096
8097 * config.in: Add HAVE_SHARED_GAME_DIR.
8098
8099 * callproc.c: (Vgame_score_directory): New variable.
8100 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
8101
81022002-04-10 Richard M. Stallman <rms@gnu.org>
8103
8104 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
8105
81062002-04-09 Stefan Monnier <monnier@cs.yale.edu>
8107
8108 * minibuf.c (read_minibuf): Use empty_string.
8109 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
8110 Short-circuit the search as soon as it "failed".
8111 (Fall_completions): Allow lambda forms and lists of strings for alist.
8112 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
8113 when require_match is nil.
8114 (Ftest_completion): Rename from `test_completion' and export to elisp.
8115 Call the predicate also when alist is a list.
8116 Obey Vcompletion_regexp_list.
8117 (do_completion, Fminibuffer_complete_and_exit): Use it.
8118 (Fassoc_string): Rename from `assoc_for_completion'.
8119 Allow list of strings as well and export to elisp.
8120
81212002-04-08 Stefan Monnier <monnier@cs.yale.edu>
8122
8123 * puresize.h (BASE_PURESIZE): Increase to 900KB.
8124
81252002-04-08 Juanma Barranquero <lektu@terra.es>
8126
8127 * w32.c (sys_accept): Don't hide variable `s'.
8128
81292002-04-05 Gerd Moellmann <gerd@gnu.org>
8130
8131 * callint.c (Fcall_interactively): Use INTEGERP instead of
8132 NUMBERP for checking Vhistory_length.
8133
81342002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8135
8136 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
8137 Doc fix to reflect it.
8138
81392002-04-04 Richard M. Stallman <rms@gnu.org>
8140
8141 * xdisp.c (display_mode_element): New arg RISKY.
8142 Disregard text props found or specified within a variable
8143 that isn't marked risky-local-variable.
8144 (Qrisky_local_variable): New variable.
8145 (syms_of_xdisp): Init and staticpro it.
8146
81472002-04-04 Stefan Monnier <monnier@cs.yale.edu>
8148
8149 * undo.c (record_point): New fun.
8150 (record_delete, record_insert): Use it.
8151
81522002-04-03 Juanma Barranquero <lektu@terra.es>
8153
8154 * doc.c (Fdocumentation): Add missing parentheses.
8155 (Fdocumentation_property): Likewise.
8156
81572002-04-03 Stefan Monnier <monnier@cs.yale.edu>
8158
8159 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
8160 data is 0, just return nil.
8161
81622002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
8163
8164 * msdos.c (syms_of_msdos): Fix last change with
8165 mouse_autoselect_window.
8166
81672002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8168
8169 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
8170 mouse_autoselect_window.
8171
81722002-04-02 Stefan Monnier <monnier@cs.yale.edu>
8173
8174 * keyboard.c (make_lispy_event): Handle unknown keysyms together
8175 with system-specific keysyms. Use it also for unknown function keys.
8176
8177 * doc.c (reread_doc_file): Return whether reload was attempted.
8178 (Fdocumentation, Fdocumentation_property): Don't try to reload
8179 if the doc is 0 and only ask once.
8180
8181 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
8182
81832002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
8184
8185 * keyboard.c (read_char): If the event was Qselect_window,
8186 restore timer_idleness_start_time to its previous value.
8187
8188 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
8189
81902002-04-01 Stefan Monnier <monnier@cs.yale.edu>
8191
8192 * region-cache.c (new_region_cache): Use BEG.
8193
8194 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
8195 Use BEG and BEG_BYTE.
8196
8197 * doc.c (get_doc_string): Return nil if the location is wrong.
8198 (reread_doc_file): New fun.
8199 (Fdocumentation, Fdocumentation_property):
8200 Call it if get_doc_string fails.
8201 (Fsnarf_documentation): Make it work for a dumped Emacs.
8202
8203 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
8204 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
8205
8206 * charset.c (Fstring): Allow 0 arguments.
8207
8208 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
8209
8210 * process.c (DATAGRAM_CONN_P, list_processes_1)
8211 (Fprocess_datagram_address, Fset_process_datagram_address)
8212 (Fset_network_process_options, server_accept_connection):
8213 Fix some int/Lisp_Object confusions (thank you union types).
8214
82152002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8216
8217 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
8218
8219 * w32term.c: Likewise.
8220 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
8221
8222 * keyboard.c (Qselect_window): New symbol.
8223 (head_table): Use it.
8224 (keys_of_keyboard): Bound select-window event to handle-select-window.
8225 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
8226
8227 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
8228 (last_window): New variable.
8229 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
8230 (note_mouse_movement): Remove reimplemented code in #if 0.
8231 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
8232 Emacs windows.
8233
8234 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
8235
82362002-03-31 Gerd Moellmann <gerd@gnu.org>
8237
8238 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
8239 Callers changed.
8240
82412002-03-30 Richard M. Stallman <rms@gnu.org>
8242
8243 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
8244 loop whenever it stops making progress.
8245
8246 * widget.c (set_frame_size): Don't call change_frame_size.
8247
82482002-03-30 Gerd Moellmann <gerd@gnu.org>
8249
8250 * dispnew.c (direct_output_for_insert):
8251 Call mark_window_display_accurate.
8252
82532002-03-29 Jason Rumney <jasonr@gnu.org>
8254
8255 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
8256
82572002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
8258
8259 * Makefile.in (lread.o): Depend on coding.h.
8260
8261 * lread.c (openp, Fload): Encode the file name before passing it
8262 to `stat', `access', and `emacs_open'.
8263 (openp): GCPRO the encoded file name. Don't recompute Lisp
8264 strings unnecessarily.
8265
82662002-03-29 Kim F. Storm <storm@cua.dk>
8267
8268 * fns.c (Flax_plist_put): Doc fix.
8269
82702002-03-28 Miles Bader <miles@gnu.org>
8271
8272 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
8273
82742002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8275
8276 * process.c (set-network-process-options): Add usage.
8277 (make-network-process): Doc fix.
8278
82792002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
8280
8281 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
8282
82832002-03-26 Richard M. Stallman <rms@gnu.org>
8284
8285 * fns.c (Fsubstring_no_properties): New function.
8286 (Flax_plist_get, Flax_plist_put): New functions.
8287 (syms_of_fns): defsubr them.
8288
8289 * xdisp.c (update_menu_bar): Test only update_mode_lines;
8290 don't test or alter w->update_mode_line.
8291
8292 * window.c (Fdisplay_buffer): Doc fix.
8293
82942002-03-24 Richard M. Stallman <rms@gnu.org>
8295
8296 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
8297
82982002-03-24 Gerd Moellmann <gerd@gnu.org>
8299
8300 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
8301 (Fdefmacro): Handle `(declare ...)'.
8302 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
8303 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
8304
83052002-03-24 Jason Rumney <jasonr@gnu.org>
8306
8307 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
8308 (xbm_file_p): Add prototypes.
8309 (xbm_format, xbm_image_p): Sync with xfns.c.
8310 (reflect_byte): New function.
8311 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
8312 (xbm_load_image): Create bitmaps with a depth of 1.
8313 (init_xfns): Enable XBM images.
8314
83152002-03-23 Jason Rumney <jasonr@gnu.org>
8316
8317 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
8318 correctly. Do not pass up_modifier to keyboard buffer.
8319
8320 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
8321
83222002-03-22 Stefan Monnier <monnier@cs.yale.edu>
8323
8324 * Makefile.in (bootstrapclean): New target.
8325 (bootstrap-temacs, bootstrap-doc): Remove.
8326 (bootstrap-emacs): Use a bog-standard `temacs'.
8327 Don't bother to build a DOC file.
8328
8329 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
8330
8331 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
8332 in temacs even if !CANNOT_DUMP.
8333 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
8334
8335 * alloc.c (check_pure_size): Only output a warning.
8336
83372002-03-22 Jason Rumney <jasonr@gnu.org>
8338
8339 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
8340 supported.
8341
8342 * w32term.c (zv_bits): Declare as short, for word alignment.
8343 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
8344 (syms_of_w32term): Define x-use-underline-position-properties.
8345
8346 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
8347 (clear_image_cache): Block input, fix logic, clear matrices in
8348 all frames that share this cache.
8349
83502002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
8351
8352 * emacs.c (main): Update the Copyright year in the blurb printed
8353 by "emacs --version".
8354
8355 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
8356
8357 * xterm.c (XTread_socket): If XK_ISO_Lock and
8358 XK_ISO_Last_Group_Lock are defined, handle keysyms between
8359 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
8360
83612002-03-21 Kim F. Storm <storm@cua.dk>
8362
8363 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
8364 menu-bar bindings in keymap and local-map properties _are_ used.
8365 But try keymap property first in accordance with 2002-01-03 patch.
8366 Added comment describing why this is not always reliable.
8367 (tool_bar_items): Ditto for tool-bar.
8368
83692002-03-21 Jason Rumney <jasonr@gnu.org>
8370
8371 * w32fns.c (x_clear_image_1): Disable color table code.
8372
83732002-03-21 Kim F. Storm <storm@cua.dk>
8374
8375 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
8376 removed the wrong version of the DEFUN macro; fixed it.
8377
8378 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
8379 Fmember rather than Fmemq).
8380 (Fprovide): Check that subfeatures is a list.
8381
8382 * process.c (QCfeature, QCdatagram): Removed variables.
8383 (QCtype, Qdatagram): New variables.
8384 (network_process_featurep): Removed function.
8385 (Fmake_network_process): Removed :feature check.
8386 Use :type 'datagram instead of :datagram t to create a datagram
8387 socket. This allows us to add other connection types (e.g. raw
8388 sockets) later in a consistent manner.
8389 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
8390 supported subfeatures for feature make-network-process.
8391 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
8392 Intern and staticpro QCtype and Qdatagram.
8393 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
8394
8395 * xfns.c: (QCtype): Remove duplicate declaration and
8396 initialization (is now declared in process.c).
8397
8398 * w32fns.c: (QCtype): Remove duplicate declaration and
8399 initialization (is now declared in process.c).
8400
84012002-03-21 Richard M. Stallman <rms@gnu.org>
8402
8403 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
8404 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
8405 when jumping to `fail' to avoid undoing reg changes in the
8406 last iteration of the loop.
8407 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
8408
8409 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
8410 Depend on process.h.
8411
84122002-03-20 Jason Rumney <jasonr@gnu.org>
8413
8414 Most of the following changes are still conditional on HAVE_IMAGES
8415 which is not set by default on Windows.
8416
8417 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
8418
8419 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
8420 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
8421 (four_corners_best, x_clear_image_1, x_clear_image)
8422 (x_alloc_image_color, postprocess_image)
8423 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
8424 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
8425 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
8426
8427 * w32gui.h (struct XImage): Define.
8428
8429 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
8430 extract mouse co-ordinates.
8431
84322002-03-20 Jason Rumney <jasonr@gnu.org>
8433
8434 * w32.c (init_winsock): Dynamically load new server and UDP
8435 socket functions.
8436 (socket_to_fd): New function.
8437 (sys_socket): Use it.
8438 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
8439 (sys_recvfrom, sys_sendto): New wrapper functions.
8440
8441 * process.c (QCfamily, QCfilter): Remove duplicate declaration
8442 and initialization.
8443
8444 * makefile.w32-in (LIBS): Remove $(WSOCK32).
8445
84462002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
8447
8448 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
8449 Don't use "sun" as a variable, it's a predefined constant on Sun
8450 machines.
8451
84522002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8453
8454 * bytecode.c (Fbyte_code): Revert last change.
8455
84562002-03-19 Kim F. Storm <storm@cua.dk>
8457
8458 * makefile.w32-in (LIBS): Add $(WSOCK32).
8459 From David Ponce <dponce@voila.fr>.
8460
84612002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8462
8463 * process.c (wait_reading_process_input): Move variables `pname'
8464 and `pnamelen' down where they are used.
8465
8466 * bytecode.c (Fbyte_code): Discard unused computed value to
8467 prevent gcc warning.
8468
8469 * lisp.h (Fplist_member): Add prototype.
8470
84712002-03-18 Kim F. Storm <storm@cua.dk>
8472
8473 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
8474 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
8475
8476 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
8477 Remove explicit GNU_LINUX settings for datagram support.
8478
84792002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8480
8481 * process.c (Fmake_network_process): Remove unused variable `sa'.
8482 Doc fix. Add usage:.
8483 (set_socket_options): Remove unused variables `optnum' and `opttype'.
8484
84852002-03-17 Richard M. Stallman <rms@gnu.org>
8486
8487 * xdisp.c (cursor_type_changed): New variable.
8488 (redisplay_internal): Redisplay all windows if cursor_type_changed.
8489 Clear it when clearing windows_or_buffers_changed.
8490 (try_cursor_movement, redisplay_window, try_window_id)
8491 (try_window_reusing_current_matrix): Test cursor_type_changed
8492 along with windows_or_buffers_changed.
8493
8494 * window.h (cursor_type_changed): New variable.
8495
8496 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
8497 not update_mode_lines, and always set it to 1.
8498
8499 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
8500 if no frames needed redrawing.
8501
85022002-03-17 Kim F. Storm <storm@cua.dk>
8503
8504 The following changes add support for network server processes,
8505 datagram connections, and local (unix) sockets.
8506
8507 * process.h (struct Lisp_Process): New member log.
8508 Doc fix: Member command used to indicate stopped network process.
8509 Doc fix: Member childp contains plist for network process.
8510 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
8511
8512 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
8513 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
8514 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
8515 New variables.
8516 (NETCONN1_P): New macro.
8517 (DATAGRAM_SOCKETS): New conditional symbol.
8518 (datagram_address): New array.
8519 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
8520 (status_message): Use concat3.
8521 (Fprocess_status): Add `listen' status to doc string. Return `stop'
8522 for a stopped network process.
8523 (Fset_process_buffer): Update contact plist for network process.
8524 (Fset_process_filter): Ditto. Don't enable input for stopped
8525 network processes. Server must listen, even if filter is t.
8526 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
8527 New functions.
8528 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
8529 (Fprocess_contact): Added KEY argument. Handle datagrams.
8530 (list_processes_1): Optionally show only processes with the query
8531 on exit flag set. Dynamically adjust column widths. Omit tty
8532 column if not needed. Report stopped network processes.
8533 Identify server and datagram network processes.
8534 (Flist_processes): New optional arg `query-only'.
8535 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
8536 (conv_lisp_to_sockaddr, set_socket_options)
8537 (network_process_featurep, unwind_request_sigio): New helper functions.
8538 (Fprocess_datagram_address, Fset_process_datagram_address):
8539 (Fset_network_process_options): New lisp functions.
8540 (Fopen_network_stream): Removed. Now defined in simple.el.
8541 (Fmake_network_process): New lisp function. Code is based on previous
8542 Fopen_network_stream, but heavily reworked with new property list based
8543 argument list, support for datagrams, server processes, and local
8544 sockets in addition to old client-only functionality.
8545 (server_accept_connection): New function.
8546 (wait_reading_process_input): Use it to handle incoming connects.
8547 Do not enable input on a new connection if process is stopped.
8548 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
8549 (send_process): Handle datagram sockets.
8550 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
8551 network process is indicated by setting command field to t .
8552 (Fprocess_send_eof): No-op if datagram connection.
8553 (Fstatus_notify): Don't read input for a stream server socket or a
8554 stopped network process.
8555 (init_process): Initialize datagram_address array.
8556 (syms_of_process): Intern and staticpro new variables, defsubr new
8557 functions.
8558
85592002-03-16 Jason Rumney <jasonr@gnu.org>
8560
8561 * w32fns.c (w32_to_all_x_charsets): Return correct type in
8562 startup case.
8563
85642002-03-16 Richard M. Stallman <rms@gnu.org>
8565
8566 * xdisp.c (redisplay_internal, redisplay_windows):
8567 Use list_of_error to call internal_condition_case_1.
8568 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
8569 so as to catch all errors with no possibility of debugger redisplay.
8570 (list_of_error): New variable.
8571 (syms_of_xdisp): Init and staticpro it.
8572
8573 * print.c (print_object): Delete `\ ' from printed rep of frame.
8574
85752002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
8576
8577 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
8578 until its implementation is fixed.
8579
85802002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8581
8582 * xfns.c (png_load): Remove unused variable `gamma_str'.
8583
85842002-03-14 Richard M. Stallman <rms@gnu.org>
8585
8586 * xfns.c (x_real_positions): Handle failure in XQueryTree.
8587
85882002-03-14 Miles Bader <miles@gnu.org>
8589
8590 * intervals.c (adjust_for_invis_intang): New function.
8591 (set_point_both): Use `adjust_for_invis_intang' to do most of the
8592 work for dealing with invisible+intangible regions. Do so before
8593 and after both forward and backward movements, to handle both
8594 front-sticky and rear-sticky cases.
8595 * textprop.c (text_property_stickiness): Function moved here from
8596 `editfns.c'.
8597 * intervals.h (text_property_stickiness): New declaration.
8598 * editfns.c (char_property_eq): Function removed.
8599 (text_property_stickiness): Function moved to `textprop.c'.
8600
86012002-03-13 Jason Rumney <jasonr@gnu.org>
8602
8603 * config.in: Add STRFTIME_NO_POSIX2.
8604
8605 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
8606 and %OX when underlying strftime does not.
8607
86082002-03-13 Stefan Monnier <monnier@cs.yale.edu>
8609
8610 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
8611 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
8612 line) to avoid annoying flicker.
8613 (xm_scroll_callback): Get rid of the now unnecessary kludge.
8614 (XTread_socket): Mark it static.
8615
8616 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
8617
86182002-03-13 Kim F. Storm <storm@cua.dk>
8619
8620 * puresize.h (BASE_PURESIZE): Increase to 775000.
8621
86222002-03-12 Juanma Barranquero <lektu@terra.es>
8623
8624 * editfns.c (syms_of_editfns): Fix typo.
8625
86262002-03-12 Gerd Moellmann <gerd@gnu.org>
8627
8628 * xsmfns.c: Include stdio.h because termhooks.h needs it.
8629 Include termopt.h for interrupt_input.
8630
86312002-03-11 Andreas Schwab <schwab@suse.de>
8632
8633 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
8634
86352002-03-11 Gerd Moellmann <gerd@gnu.org>
8636
8637 * xterm.c (note_mouse_movement): Put code for
8638 x_autoselect_window_p in #if 0.
8639
8640 * lread.c (Fload): Don't assume that message_with_string uses the
8641 string it is given like a C string.
8642
86432002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8644
8645 * xterm.h (x_session_check_input, x_session_initialize): Declared.
8646
8647 * xterm.c: (XTread_socket): Add call to x_session_check_input and
8648 x_session_have_connection.
8649 (x_initialize): Add call to x_session_initialize.
8650
8651 * termhooks.h (enum event_kind): Add save_session_event.
8652
8653 * keyboard.c: Add Emacs event save_session_event.
8654
8655 * emacs.c (main): Add call to syms_of_xsmfns.
8656
8657 * lisp.h: Declare syms_of_xsmfns as extern.
8658
8659 * config.in: Add HAVE_X_SM.
8660
8661 * Makefile.in (LIBXT): Add -lSM -lICE
8662 if HAVE_X_SM and not USE_X_TOOLKIT.
8663 (XOBJ): New file xsmfns.c added.
8664
8665 * xsmfns.c: New file for X session management.
8666
86672002-03-09 Jason Rumney <jasonr@gnu.org>
8668
8669 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
8670 read-only when setting modified time.
8671
86722002-03-08 Gerd Moellmann <gerd@gnu.org>
8673
8674 * xdisp.c (move_it_vertically_backward): At the end of the function,
8675 when moving forward by lines, treat terminal frames specially.
8676
8677 * keyboard.c (echo_char): Make sure to add a separator between
8678 keys even if echo_dash hasn't been called.
8679
8680 * xdisp.c: Use new string macros.
8681 (update_echo_area): Pass number of bytes to message3 instead of
8682 number of chars.
8683 (set_message_1): Don't access a string's size_byte directly.
8684 (decode_mode_spec_coding): Use number of bytes of eoltype string
8685 instead number of chars.
8686
8687 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
8688
86892002-03-08 Juanma Barranquero <lektu@terra.es>
8690
8691 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
8692 24-bit.
8693
86942002-03-06 Jason Rumney <jasonr@gnu.org>
8695
8696 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
8697
86982002-03-06 Gerd Moellmann <gerd@gnu.org>
8699
8700 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
8701 (cancel_echoing, echo_length, echo_truncate): Changed to
8702 work with new kboard definition.
8703 (echo_now): Use message3_nolog instead of message2_nolog.
8704
8705 * alloc.c (mark_kboards): Mark echo_string.
8706
8707 * keyboard.h (ECHOBUFSIZE): Removed.
8708 (struct kboard): Member echoptr removed, member echobuf renamed
8709 to echo_string.
8710
8711 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
8712 message3 instead of message2 to display the message using STRING's
8713 text properties.
8714
87152002-03-05 Andreas Schwab <schwab@suse.de>
8716
8717 * xdisp.c (hscroll_margin): Change to EMACS_INT.
8718
87192002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
8720
8721 * frame.c (default-frame-alist): Explain that setting it doesn't
8722 affect existing frames.
8723
87242002-03-05 Stefan Monnier <monnier@cs.yale.edu>
8725
8726 * indent.c (skip_invisible): Fix my brain fart.
8727
8728 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
8729
87302002-03-04 Stefan Monnier <monnier@cs.yale.edu>
8731
8732 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
8733 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
8734 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
8735 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
8736 and variables to use EMACS_INT instead of just int.
8737
8738 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
8739
87402002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
8741
8742 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
8743 environment, pass it down with corrected value.
8744
87452002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8746
8747 * lread.c (read_filtered_event): Do not call start_hourglass
8748 before returning.
8749
87502002-03-04 Juanma Barranquero <lektu@terra.es>
8751
8752 * w32term.c (x_display_and_set_cursor): Fix typo.
8753
87542002-03-03 Richard M. Stallman <rms@gnu.org>
8755
8756 * fileio.c (Fmake_temp_name): Doc fix.
8757
87582002-03-03 Gary Wong <gtw@gnu.org>
8759
8760 * termcap.c [!emacs]: Replace ospeed for building standalone
8761 libtermcap, for binary compatibility.
8762
8763 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
8764
87652002-03-03 Richard M. Stallman <rms@gnu.org>
8766
8767 * xrdb.c (file_p): Rename arg `path' to `filename'.
8768
8769 * abbrev.c (Fexpand_abbrev): Increment plist as use count
8770 only if it is an integer.
8771
8772 * xfns.c (png_load): Set screen_gamma based on f->gamma.
8773 If png_get_sRGB gives an answer, call png_set_gamma
8774 using the default image gamma value.
8775
8776 * lread.c (read1): When reading from a file, default string to
8777 multibyte only if it has some multibyte characters.
8778
8779 * print.c (print_object): Output multibyte chars 128...255
8780 using \x even if ! print_escape_multibyte.
8781
8782 * xdisp.c (display_mode_element): Move the places where
8783 bytepos, charpos, this, and lisp_string are set.
8784 Use lisp_string to set bytepos.
8785
8786 * xdisp.c (redisplay_internal):
8787 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
8788
8789 * xdisp.c (display_mode_element): Merge properties specified with
8790 :propertize onto those that come with the string.
8791
87922002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
8793
8794 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
8795 automatic-hscrolling. Users changed.
8796 <hscroll-margin>: Renamed from automatic-hscroll-margin.
8797 Users changed.
8798 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
8799
88002002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
8801
8802 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
8803
88042002-03-02 Kim F. Storm <storm@cua.dk>
8805
8806 * window.c (Fminibuffer_selected_window): New function.
8807 (syms_of_window): Defsubr it.
8808
88092002-03-01 Kim F. Storm <storm@cua.dk>
8810
8811 * window.h (struct window): New member phys_cursor_width.
8812
8813 * window.c (make_window, replace_window): Init phys_cursor_width.
8814
8815 * xterm.c (x_display_and_set_cursor): Blink box cursor using
8816 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
8817
8818 * w32term.c (x_display_and_set_cursor): Blink box cursor using
8819 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
8820
8821 * lisp.h (GCPRO6): New macro.
8822
8823 * process.c (Fopen_network_stream): Use GCPRO6.
8824
88252002-03-01 Kim F. Storm <storm@cua.dk>
8826
8827 * process.c (Qconnect, Qfailed): New variables.
8828 (syms_of_process): Intern and staticpro them.
8829 (Fprocess_status): Document connect and failed return values.
8830 [NON_BLOCKING_CONNECT]: New conditional.
8831 (connect_wait_mask, num_pending_connects): New variables.
8832 (status_message): Convert Qfailed status.
8833 (Fopen_network_stream): Added support for non-blocking connect.
8834 New optional args: filter, sentinel, non_blocking. Doc updated.
8835 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
8836 (deactivate_process): Handle pending non-blocking connect.
8837 (wait_reading_process_input): Poll for status of non-blocking
8838 connects. Exec sentinel directly when connect succeeds.
8839 (status_notify): Don't read process output if not yet connected.
8840
88412002-02-28 Kim F. Storm <storm@cua.dk>
8842
8843 * window.c: (minibuf_selected_window): Renamed from
8844 Vminibuf_selected_window. Users changed.
8845 (syms_of_window): Staticpro it.
8846
88472002-02-26 Kim F. Storm <storm@cua.dk>
8848
8849 The following changes add a new Vminibuf_selected_window variable
8850 which is similar to Vminibuf_scroll_window, but which is only set
8851 on entry to the minibuffer (from a non-minibuffer window):
8852
8853 * window.c: (Vminibuf_selected_window): New variable.
8854 (struct save_window_data): New member minibuf_selected_window.
8855 (Fset_window_configuration): Restore Vminibuf_selected_window.
8856 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
8857 Set minibuf_scroll_window member to nil if minibuf_level is 0.
8858 (compare_window_configurations): Compare minibuf_selected_window.
8859
8860 * window.h: (Vminibuf_selected_window): Declare extern.
8861
8862 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
8863 entry to minibuffer or on entry from a non-minibuffer window.
8864
8865 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
8866 Vminibuf_selected_window instead of Vminibuf_scroll_window.
8867
8868 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
8869 instead of Vminibuf_scroll_window when deciding in which window
8870 the region should be highlighted. Consequently, the region remains
8871 highlighteded even when a completion buffer is also displayed.
8872
88732002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
8874
8875 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
8876
8877 * xselect.c (Qcompound_text_with_extensions): Renamed from
8878 Qcompound_text_no_extensions.
8879 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
8880
88812002-02-26 Juanma Barranquero <lektu@terra.es>
8882
8883 * w32proc.c (syms_of_ntproc): Doc fix.
8884
88852002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8886
8887 * intervals.h: Include "dispextern.h" unconditionally.
8888
88892002-02-24 Jason Rumney <jasonr@gnu.org>
8890
8891 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
8892 and disp-table.elc.
8893 (lisp): Add emacs-lisp/backquote.elc.
8894
88952002-02-24 Kim F. Storm <storm@cua.dk>
8896
8897 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
8898 The validation of the event type was too strict as it didn't
8899 allow string events; buffer names are used in bindings for
8900 menu-bar-select-buffer (see `menu-bar-update-buffers').
8901
89022002-02-23 Kim F. Storm <storm@cua.dk>
8903
8904 The following changes rework my patch of 2002-02-06 which
8905 added command remapping by entering the commands directly into
8906 the keymaps. Now, command remapping uses an explicit `remap'
8907 prefix in the keymaps, i.e. [remap COMMAND].
8908
8909 * keymap.c (Qremap, remap_command_vector): New variables.
8910 (is_command_symbol): Removed function.
8911 (Fdefine_key): No longer accept a symbol for KEY.
8912 Added validation of [remap COMMAND] argument for KEY.
8913 The DEF is no longer required to be a symbol when remapping a command.
8914 (Fremap_command): New function to remap command through keymaps.
8915 (Flookup_key): Perform command remapping initiated by
8916 Fremap_command directly for speed.
8917 (Fkey_binding): Use Fremap_command for command remapping.
8918 (where_is_internal): Handle new command remapping representation.
8919 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
8920 staticpro them. Defsubr Fremap_command.
8921
8922 * keymap.h (Fremap_command): Declare extern.
8923 (is_command_symbol): Remove extern.
8924
8925 * keyboard.c (command_loop_1): Use Fremap_command for command
8926 remapping; now try command remapping for all symbols.
8927
89282002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
8929
8930 * coding.h (run_pre_post_conversion_on_str): Add prototype.
8931
89322002-02-23 Jason Rumney <jasonr@gnu.org>
8933
8934 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
8935 on the string before encoding it.
8936 (Fw32_get_clipboard_data): Run post-read-conversion on the string
8937 after decoding it.
8938
8939 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
8940
89412002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8942
8943 * w32term.c (enter_timestamp): Remove unused static variable to
8944 prevent warning.
8945
8946 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
8947
89482002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
8949
8950 * w16select.c (Fw16_get_clipboard_data): Fix last change.
8951
8952 * xselect.c (selection_data_to_lisp_data): Fix last change.
8953
89542002-02-22 Jason Rumney <jasonr@gnu.org>
8955
8956 * w32term.h (struct w32_output): New member menu_command_in_progress.
8957
8958 * w32menu.c (menubar_selection_callback): Free the menu and
8959 clear the menu_command_in_progress flag.
8960
8961 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
8962 (menu_free_timer): New variable.
8963 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
8964 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
8965 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
8966 menu command is in progress.
8967 <WM_COMMAND>: Set the menu_command_in_progress flag.
8968 Kill any menu_free_timer that is running.
8969
8970 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
8971 Call ExtTextOutA rather than ExtTextOut.
8972
89732002-02-22 Eli Zaretskii <eliz@gnu.org>
8974
8975 * puresize.h (BASE_PURESIZE): Increase to 755000.
8976
89772002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
8978
8979 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
8980 on the string before encoding it.
8981 (Fw16_get_clipboard_data): Run post-read-conversion on the string
8982 after decoding it.
8983
89842002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
8985
8986 Support for ICCCM Extended Segments in X selections:
8987
8988 * xselect.c <Qcompound_text_no_extensions>: New variable.
8989 (syms_of_xselect): Intern and staticpro it.
8990 (selection_data_to_lisp_data): Run post-read-conversion on decoded
8991 selection text.
8992 (lisp_data_to_selection_data): If next-selection-coding-system is
8993 compound-text-no-extensions, set the type of selection to be
8994 compound-text.
8995
8996 * xterm.h (x_encode_text): Update prototype.
8997
8998 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
8999 callers changed. If SELECTIONP is non-zero, run the
9000 pre-write-conversion function before encoding the selection text.
9001
90022002-02-21 Kim F. Storm <storm@cua.dk>
9003
9004 * frame.c (syms_of_frame): Change mouse-highlight default to t.
9005
9006 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
9007 Correct composing of language-change event.
9008
90092002-02-20 Kim F. Storm <storm@cua.dk>
9010
9011 * keyboard.c (menu_bar_items): Don't include keymap or local-map
9012 bindings at PT when building menu (the menu is not updated often
9013 enough for this to work reliable).
9014 (tool_bar_items): Likewise.
9015 (current_active_maps): Removed unused (and buggy) function.
9016
90172002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9018
9019 * xfns.c (gif_load): Use correct width and height for GIF images.
9020
90212002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
9022
9023 * floatfns.c (Fatan): Accept an optional second arg and call
9024 atan2 if passed 2 args.
9025
90262002-02-18 Jason Rumney <jasonr@gnu.org>
9027
9028 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
9029
90302002-02-17 Jason Rumney <jasonr@gnu.org>
9031
9032 * w32term.c (x_autoselect_window_p): New variable.
9033 (syms_of_w32term): DEFVAR_BOOL and initialize it.
9034 (note_mouse_movement): Use it.
9035
9036 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
9037
9038 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
9039
9040 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
9041 New variables.
9042 (syms_of_w32fns): Intern and staticpro them.
9043 (x_frame_parms) <"fullscreen">: New parameter.
9044 (x_fullscreen_move, x_set_fullscreen): New functions.
9045 (x_set_frame_parameters): Support Qfullscreen.
9046 (x_real_positions): Save x/y_pixels_diff frame params.
9047 (x_figure_window_size): Support full-screen frames.
9048 (Fx_create_frame): Default the fullscreen parameter.
9049
9050 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
9051 (x_fullscreen_adjust): New functions.
9052 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
9053 fullscreen. Call x_check_fullscreen_move, and set the
9054 want_fullscreen member of output_data.w32
9055 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
9056
9057 * w32term.h: New enum for FULLSCREEN_* constants.
9058 (struct w32_output): New members want_fullscreen, x_pixels_diff,
9059 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
9060 (x-fullscreen-adjust): New prototype.
9061
90622002-02-17 Kim F. Storm <storm@cua.dk>
9063
9064 * frame.c: (Vmouse_highlight): New variable.
9065 (syms_of_frame): DEFVAR_LISP it.
9066
9067 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 9068
048addec 9069 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 9070
048addec
JD
9071 * xterm.c (disable_mouse_highlight): Removed variable.
9072 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
9073 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9074 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
9075 and on after keyboard input.
9076 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 9077
048addec 9078 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 9079
048addec
JD
9080 * msdos.c (disable_mouse_highlight): Removed variable.
9081 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9082 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
9083 (internal_terminal_init): Initialize mouse_face_hidden.
9084 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
9085 and on after keyboard input.
4f1b1854 9086
048addec 9087 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 9088
048addec
JD
9089 * w32term.c (disable_mouse_highlight): Removed variable.
9090 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
9091 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9092 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
9093 and on after keyboard input.
9094 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 9095
048addec 90962002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 9097
048addec
JD
9098 * msdos.c (last_mouse_window): New variable.
9099 (dos_rawgetc): Fix last change--if the mouse is in the same window
9100 as recorded in last_mouse_window, don't select this window.
5cb6905d 9101
048addec 9102 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 9103
048addec
JD
9104 * msdos.c (x_autoselect_window_p): New variable.
9105 (syms_of_msdos): Defvar it.
9106 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
9107 which the last mouse movement occured, unless it is already selected.
437dfb9f 9108
048addec
JD
9109 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
9110 New variables.
9111 (syms_of_xdisp): DEVFAR them.
9112 (hscroll_window_tree): Use automatic_hscroll_margin and
9113 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 9114
048addec 91152002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 9116
048addec
JD
9117 * xterm.c (x-autoselect-window): New variable.
9118 (note_mouse_movement): Use it.
9f696a00 9119
048addec 9120 * keyboard.c: Do not include "systime.h" twice.
d57966d7 9121
048addec 91222002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 9123
048addec 9124 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 9125
048addec 9126 * alloc.c (NSTATICS): Increase to 1280.
74779f52 9127
048addec 91282002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 9129
048addec 9130 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 9131
048addec
JD
9132 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
9133 (Vx_super_keysym): New variables.
9134 (syms_of_xterm): DEFVAR_LISP them.
9135 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
9136 variables to determine which keys to use for the various modifiers.
a474d59c 9137
048addec 91382002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 9139
048addec
JD
9140 * window.c: (Vmode_line_in_non_selected_windows): Removed.
9141 (mode_line_in_non_selected_windows): New variable.
9142 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 9143
048addec
JD
9144 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
9145 Use mode_line_in_non_selected_windows.
9146 (mode_line_in_non_selected_windows): Declare extern.
9147 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 9148
048addec 91492002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 9150
048addec
JD
9151 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
9152 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
9153 (Fclear_this_command_keys): Doc fixes.
2d10309f 9154
048addec
JD
9155 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
9156 (update_face_from_frame_parameter): Increment face_change_count
9157 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 9158
048addec
JD
9159 * xdisp.c (QCpropertize): New variable.
9160 (mode_line_proptrans_alist): New variable.
9161 (display_mode_element): New arg PROPS; all calls changed.
9162 Implement this, for strings.
9163 Handle literal output of strings by sharing the
9164 main-line code for strings, using local var `literal'.
9165 Handle :propertize feature.
9166 (syms_of_xdisp): Initialze and staticpro QCpropertize and
9167 mode_line_proptrans_alist.
0b1e6b54 9168
048addec 91692002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 9170
048addec
JD
9171 * window.c: (Vmode_line_in_non_selected_windows): New variable.
9172 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 9173
048addec
JD
9174 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
9175 (CURRENT_MODE_LINE_FACE_ID): Use it.
9176 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 9177
048addec
JD
9178 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
9179 to get mode line face.
e17144de 9180
048addec 91812002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 9182
048addec
JD
9183 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
9184 variables; cus-start.el doesn't need them anymore.
44368f8f 9185
048addec 91862002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 9187
048addec
JD
9188 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
9189 reduction. This fixes a display problem where stray newlines were
9190 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 9191
048addec 91922002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 9193
048addec 9194 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 9195
048addec 9196 * xdisp.c (display_mode_lines): Fix last change.
453c5510 9197
048addec 91982002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 9199
048addec
JD
9200 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
9201 match each other.
9202 (w32_load_system_font): Prevent Cleartype fonts from loading.
9203 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 9204
048addec 92052002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 9206
048addec
JD
9207 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
9208 (CURRENT_MODE_LINE_HEIGHT): Use it.
9209 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 9210
048addec
JD
9211 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
9212 (pos_visible_p, handle_face_prop): Likewise.
9213 (display_mode_lines): Likewise, but for the real selected window.
9214 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 9215
048addec
JD
9216 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
9217 in non-selected windows.
9218 (realize_basic_faces): Realize it.
9219 (syms_of_term): Intern and staticpro it.
308dd672 9220
048addec 92212002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 9222
048addec
JD
9223 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
9224 Changed mail addresses to emacs-devel@gnu.org.
308dd672 9225
048addec 92262002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 9227
048addec
JD
9228 * fileio.c (Fsubstitute_in_file_name): If the file name includes
9229 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 9230
048addec 9231 * floatfns.c (Fround): Doc fix.
3c1e6b46 9232
048addec 92332002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 9234
048addec 9235 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 9236
048addec 92372002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 9238
048addec 9239 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 9240
048addec 92412002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 9242
048addec
JD
9243 * keymap.c (where_is_internal): Only check whether definition is
9244 remapped if it fulfills is_command_symbol.
0065bb74 9245
048addec 92462002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 9247
048addec 9248 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 9249
048addec 9250 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 9251
048addec 92522002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 9253
048addec
JD
9254 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
9255 defining command remapping. Doc updated.
9256 (Flookup_key): Remap command through keymap if KEY is a symbol.
9257 (is_command_symbol): New function.
9258 (Fkey_binding): Use it. New optional argument NO-REMAP.
9259 Doc updated. Callers changed. Perform command remapping via
9260 recursive call unless that arg is non-nil.
9261 (where_is_internal): New argument no_remap. Callers changed.
9262 Call recursively to find original key bindings for a remapped
9263 comand unless that arg is non-nil.
9264 (Fwhere_is_internal): New optional argument NO-REMAP.
9265 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 9266
048addec
JD
9267 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
9268 (is_command_symbol): Added prototype.
0d8466cc 9269
048addec
JD
9270 * keyboard.c (Vthis_original_command): New variable.
9271 (syms_of_keyboard): DEFVAR_LISP it.
9272 (command_loop_1): Set it, and perform command remapping.
15fff01d 9273
048addec 92742002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 9275
048addec 9276 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 9277
048addec 92782002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 9279
048addec 9280 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 9281
048addec 92822002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 9283
048addec 9284 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 9285
048addec 92862002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 9287
048addec 9288 * filelock.c (S_ISLNK): Define if not defined.
3a232704 9289
048addec 92902002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 9291
048addec 9292 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 9293
048addec
JD
9294 * lread.c (read1): Redesign strategy for force_multibyte and
9295 force_singlebyte. Now is_multibyte records whether read_buffer
9296 is multibyte. Encountering any multibyte character makes it so.
4e02881b 9297
048addec 92982002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 9299
048addec
JD
9300 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
9301 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 9302
048addec 93032002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 9304
048addec
JD
9305 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
9306 latter never being defined on GNU/Linux.
749f499f 9307
048addec 93082002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 9309
048addec
JD
9310 * xfaces.c (realize_default_face): Don't set the weight and slant of
9311 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 9312
048addec 93132002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 9314
048addec
JD
9315 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
9316 Call cancel_hourglass unconditionally.
d0fd26dd 9317
048addec
JD
9318 * eval.c (Fsignal): Remove duplicated declaration of
9319 the variable `display_hourglass_p'.
b4c45162 9320
048addec 93212002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 9322
048addec 9323 * editfns.c (region_limit): Nicer error message.
c95eaa61 9324
048addec
JD
9325 * coding.c (decode_composition_emacs_mule):
9326 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 9327
048addec
JD
9328 * callint.c (check_mark): New arg to specify clearer error message.
9329 Callers changed.
c95eaa61 9330
048addec 93312002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 9332
048addec 9333 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 9334
048addec 93352002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 9336
048addec
JD
9337 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
9338 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
9339 Fix doc-strings.
c95eaa61 9340
048addec 93412002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 9342
048addec 9343 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 9344
048addec
JD
9345 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
9346 and scroll_up_aggressively.
c95eaa61 9347
048addec 93482002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 9349
048addec 9350 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 9351
048addec 93522002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 9353
048addec
JD
9354 * textprop.c (Fnext_property_change, Fnext_single_property_change)
9355 (Fprevious_property_change, Fprevious_single_property_change):
9356 Stay within the narrowed-buffer boundaries.
e2c3786a 9357
048addec 93582002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 9359
048addec
JD
9360 * term.c (Ftty_display_color_cells): New function.
9361 (syms_of_term): Defsubr it.
9362 (Ftty_display_color_cells, Ftty_display_color_p): Change the
9363 argument name to DISPLAY. Doc fix.
bf794306 9364
048addec
JD
9365 * dispextern.h: Add prototype for set_tty_color_mode and
9366 tty_setup_colors.
bf794306 9367
048addec 93682002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 9369
048addec
JD
9370 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
9371 If region left to draw is not what was expected, mark the frame as
9372 garbaged.
62582985 9373
048addec
JD
9374 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
9375 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 9376
048addec 93772002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 9378
048addec
JD
9379 * w32term.c (x_update_window_begin): Only hide caret if
9380 w32_use_visible_system_caret is set.
9381 (x_update_window_end): Only show caret if
9382 w32_use_visible_system_caret is set.
9383 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 9384
048addec 9385 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 9386
048addec 93872002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 9388
048addec
JD
9389 * unexelf.c (unexec): Define n so as to cause compilation error
9390 for the code where people have often written n instead of nn.
1e9a6186 9391
048addec 9392 * .gdbinit (hookpost-run): Defined.
1e9a6186 9393
048addec 93942002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 9395
048addec 9396 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 9397
048addec 93982002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 9399
048addec
JD
9400 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
9401 if fullscreen is being set.
7c75be36 9402
048addec 94032002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 9404
048addec
JD
9405 * minibuf.c (Fminibuffer_contents)
9406 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
9407 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 9408
048addec 94092002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 9410
048addec 9411 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 9412
048addec 94132002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 9414
048addec
JD
9415 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
9416 height before comparison.
9417 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 9418
048addec 94192002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 9420
048addec
JD
9421 * w32term.c (w32_system_caret_width): Remove.
9422 (w32_use_visible_system_caret): New user flag.
9423 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
9424 Windows reports a screen reader running.
9425 (x_update_window_begin): Hide the system caret.
9426 (x_update_window_end): Show the system caret.
9427 (x_display_and_set_cursor): Don't draw a cursor when
9428 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 9429
048addec
JD
9430 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
9431 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
9432 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
9433 the user requests it. Use system default width when creating.
9434 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 9435
048addec
JD
9436 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
9437 New window messages.
905cc05a 9438
048addec 94392002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 9440
048addec 9441 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 9442
048addec 94432002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 9444
048addec 9445 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 9446
048addec 94472002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 9448
048addec 9449 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 9450
048addec 94512002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 9452
048addec
JD
9453 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
9454 that Windows returns. If a double check fails, try to guess how
9455 ExtTextOut is going to act.
4d0fa4f3 9456
048addec
JD
9457 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
9458 in place of stricmp.
9459 (w32_list_synthesized_fonts): Removed.
9460 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
9461 (struct enumfont_t): New element; list.
9462 (enum_font_cb2): List all style and charset variations of a font.
9463 (Fw32_select_font): New optional argument; include_proportional.
9464 Exclude vertical fonts. Exclude proportional fonts unless
9465 include_proportional is non-nil.
9466 (w32_enable_synthesized_fonts): Change to a boolean.
9467 (Fw32_send_sys_command): Doc fix.
493faf20 9468
048addec 94692002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 9470
048addec
JD
9471 * dispnew.c (update_frame): Move the variable `tem' to the block
9472 where it is used.
4971e491 9473
048addec 94742002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 9475
048addec
JD
9476 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
9477 call to face-set-after-frame-default.
4971e491 9478
048addec 94792002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 9480
048addec
JD
9481 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
9482 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 9483
048addec 94842002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 9485
048addec
JD
9486 * window.c (enlarge_window): When exceeding size of parent,
9487 directly delete all the siblings instead of trying to resize it.
201c831a 9488
048addec 94892002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 9490
048addec 9491 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 9492
048addec 94932002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 9494
048addec 9495 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 9496
048addec 94972002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 9498
048addec
JD
9499 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
9500 is invisible. This can happen if cursor is on top line of a
9501 window, and we switch to a buffer with a header line.
d77fbc16 9502
048addec 9503 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 9504
048addec 95052002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 9506
048addec
JD
9507 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
9508 `dont_resize' only when used.
61e3b944 9509
048addec 9510 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 9511
048addec 95122002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 9513
048addec
JD
9514 * xdisp.c (display_mode_element): When computing charpos, depend
9515 on multibyteness of elt, not the text in field.
8af01033 9516
048addec 95172002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 9518
048addec
JD
9519 * buffer.c (Fkill_all_local_variables):
9520 Increment `update_mode_lines' only once.
7363986a 9521
048addec 95222002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 9523
048addec
JD
9524 * lisp.h (adjust_after_replace_noundo)
9525 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 9526
048addec 9527 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 9528
048addec 95292002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 9530
048addec
JD
9531 Support for the --color command-line argument and tty-color-mode
9532 frame parameter:
f1a85b89 9533
048addec
JD
9534 * term.c (tty_default_color_capabilities, tty_setup_colors)
9535 (set_tty_color_mode): New functions.
9536 (term_init): Call tty_default_color_capabilities.
9537 (Qtty_color_mode_alist): New variable.
9538 (syms_of_term): Intern and staticpro it.
f1a85b89 9539
048addec
JD
9540 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
9541 frames.
9542 (do_switch_frame): For termcap frames, switch the tty
9543 color mode as specified by the frame's parameters.
9544 (Qtty_color_mode): New variable.
9545 (syms_of_frame): Intern and staticpro it.
3a62677f 9546
048addec
JD
9547 * emacs.c (USAGE2): Add the --color option.
9548 (standard_args): Ditto.
72244db2 9549
048addec
JD
95502002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9551
9552 * xterm.h (struct x_output): New members want_fullscreen,
9553 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
9554 y_pixels_outer_diff.
9555 New enum for FULLSCREEN_* constants.
9556 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
9557 is NULL.
9558 (x_fullscreen_adjust): Add prototype.
3a62677f 9559
048addec
JD
9560 * emacs.c (USAGE2): Add the new full-screen arguments.
9561 (standard_args): Ditto.
3a62677f 9562
048addec
JD
9563 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
9564 New variables.
9565 (syms_of_xfns): Intern and staticpro them.
9566 (x_frame_parms) <"fullscreen">: New parameter.
9567 (x_fullscreen_move, x_set_fullscreen): New functions.
9568 (x_set_frame_parameters): Support for Qfullscreen.
9569 (x_real_positions): More accurate computation of the frame position.
9570 (x_figure_window_size): Support full-screen frames.
9571 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 9572
048addec
JD
9573 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
9574 (XTread_socket) <Expose>: Call x_check_fullscreen.
9575 <ConfigureNotify>: Don't resize to fullscreen.
9576 Call x_check_fullscreen_move, and set the want_fullscreen member of
9577 output_data.x.
3a62677f 9578
048addec 95792002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 9580
048addec
JD
9581 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
9582 for mice with more than 3 buttons.
b8523839 9583
048addec
JD
9584 * w32term.c (parse_button): New parameter xbutton. Callers changed.
9585 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 9586
048addec
JD
9587 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
9588 (syms_of_w32fns): DEFVAR_BOOL it.
9589 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 9590
048addec 95912002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 9592
048addec 9593 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 9594
048addec 95952002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 9596
048addec 9597 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 9598
048addec 95992002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 9600
048addec
JD
9601 * .gdbinit (xbuffer): Remove address operator since data is now a
9602 pointer.
c93674bb 9603
048addec 96042002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 9605
048addec 9606 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 9607
048addec 9608 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 9609
048addec 96102002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 9611
048addec
JD
9612 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
9613 when checking for multiple frames.
91175673 9614
048addec 96152002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 9616
048addec
JD
9617 * window.c (delete_window): Rewrite the code for changing the
9618 selected window to handle the case where WINDOW is not a leaf.
91175673 9619
048addec 96202002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 9621
048addec
JD
9622 * process.c (send_process): Set src_multibyte to 1 after the call
9623 top setup_coding_system, not before the call.
e0fead5d 9624
048addec 96252002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 9626
048addec
JD
9627 * xmenu.c (set_frame_menubar, xmenu_show):
9628 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 9629
048addec
JD
9630 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
9631 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 9632
048addec 96332002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 9634
048addec 9635 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 9636
048addec 9637 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 9638
048addec 9639 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 9640
048addec 96412002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 9642
048addec
JD
9643 * insdel.c (make_gap_larger): Make sure buffer size does not
9644 overflow range of int.
62854fe2 9645
048addec 96462002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 9647
048addec
JD
9648 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
9649 OVERLAPS_P.
656f46bb 9650
048addec 9651 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 9652
048addec
JD
9653 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
9654 to the left or to the right of the pointer, put it against
9655 the left screen edge.
9656 (x_frame_parms): Add missing braces around initializer.
036e218d 9657
048addec
JD
9658 * w32term.c (x_setup_relief_colors): Don't compute an image's
9659 background color if it doesn't have a Pixmap.
9660 (notice_overwritten_cursor): Don't depend on
9661 output_cursor and updated_area. Compare pixel coordinates with
9662 window's cursor pixel coordinates.
9663 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
9664 Call notice_overwritten_cursor with new arg list.
9665 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
9666 unconditionally.
9667 (x_draw_image_relief): Use predefined macro instead of
9668 constant when the value of `tool_bar_button_relief' is negative.
036e218d 9669
048addec 9670 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 9671
048addec 96722002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 9673
048addec 9674 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 9675
048addec 96762002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 9677
048addec
JD
9678 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
9679 (Fkey_binding): Try the `keymap' property map first.
9680 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
9681 minor mode bindings.
90647b07 9682
048addec 96832002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 9684
048addec 9685 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 9686
048addec 96872002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 9688
048addec
JD
9689 * keyboard.c (read_key_sequence): Handle the keymap property
9690 before minor mode maps.
9fbc32aa 9691
048addec
JD
9692 * editfns.c (Fformat): Update thissize from field_width
9693 based on the actual width, in the string case.
036e218d 9694
048addec 96952002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 9696
048addec
JD
9697 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
9698 when used as truth value to prevent gcc warnings.
9fbc32aa 9699
048addec
JD
9700 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
9701 * w32proc.c: Include <config.h>.
9fbc32aa 9702
048addec 97032002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 9704
048addec
JD
9705 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
9706 not EMACS_INT, to make them compatible with DEFVAR_INT.
9707 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 9708
048addec 97092002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 9710
048addec
JD
9711 * print.c (print_object): Test print_escape_nonascii only for
9712 unibyte strings.
9713 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
9714 when outputting to a multibyte buffer.
9fbc32aa 9715
048addec 97162001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 9717
048addec
JD
9718 * print.c (print_object): In multibyte string, use hex escapes.
9719 Use octal only for unibyte strings.
9720 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 9721
048addec
JD
9722 * lread.c (read_escape): New arg BYTEREP for reporting whether
9723 escape forces unibyte or multibyte.
9724 (read1): When reading a string, take note of that info.
0142178a 9725
048addec 97262001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 9727
048addec
JD
9728 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
9729 comparison to test lisp value returned by Fget.
d4824a5d 9730
048addec 97312001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 9732
048addec 9733 * lisp.h (max_specpdl_size): Add declaration.
b1356234 9734
048addec 9735 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 9736
048addec
JD
9737 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
9738 Handle modifier bits. Correct typo in error message.
99e380ee 9739
048addec 97402001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 9741
048addec
JD
9742 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
9743 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
9744 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
9745 Update calls to Fdefine_abbrev.
9746 (write_abbrev): Update for changed data format.
9747 Don't list "system" abbrevs.
9748 (Fexpand_abbrev): Update use count with new data format.
9749 (describe_abbrev): Update for changed data format.
9750 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 9751
048addec 9752 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 9753
048addec 9754 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 9755
048addec
JD
9756 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
9757 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 9758
048addec
JD
9759 * keymap.c (Flookup_key): Error message if key has wrong data type.
9760 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
9761 (exclude_key): New variable.
59a86c99 9762
048addec 97632001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 9764
048addec
JD
9765 * xterm.c (x_setup_relief_colors): Don't compute an image's
9766 background color if it doesn't have a Pixmap.
eb77a5f4 9767
048addec
JD
9768 * xterm.c (notice_overwritten_cursor): Don't depend on
9769 output_cursor and updated_area. Compare pixel coordinates with
9770 window's cursor pixel coordinates.
9771 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
9772 Call notice_overwritten_cursor with new arg list.
9773 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
9774 unconditionally.
eb77a5f4 9775
048addec
JD
9776 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
9777 height of the cursor line to the amount to scroll.
eb77a5f4 9778
048addec 97792001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 9780
048addec
JD
9781 * intervals.c (set_point_both): The position after an invisible,
9782 intangible character is not an acceptable stopping point.
bb313871 9783
048addec 97842001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 9785
048addec
JD
9786 * window.c (enlarge_window): In new preserve_before code, convert
9787 CURBEG from lisp object to integer before doing arithmetic.
6052529b 9788
048addec 97892001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 9790
048addec 9791 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 9792
048addec 97932001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 9794
048addec
JD
9795 * keyboard.c (record_char): Ignore duplicate help-echo events only
9796 separated by mouse-movement. When tracking mouse, only record
9797 first and last mouse-movement event in same window.
9798 Don't record mouse-movement events in keyboard macros.
3ce081f5 9799
048addec 98002001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 9801
048addec
JD
9802 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
9803 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 9804
048addec
JD
9805 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
9806 instead of Fstring_as_unibyte.
9fabb2f5 9807
048addec 98082001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 9809
048addec 9810 The following changes remove mocklisp support:
9fabb2f5 9811
048addec 9812 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 9813
048addec
JD
9814 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
9815 `Qmocklisp' and `Qmocklisp_arguments'.
9816 Remove prototype of syms_of_mocklisp.
2fa0eedf 9817
048addec 9818 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 9819
048addec
JD
9820 * callint.c: Do not include mocklisp.h.
9821 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 9822
048addec
JD
9823 * eval.c: Remove variables `Qmocklisp_arguments',
9824 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
9825 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
9826 Do not test for mocklisp case.
9827 (Fwhile): Remove unused variable `tem'.
9828 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 9829
048addec 9830 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 9831
048addec 9832 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 9833
048addec 9834 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 9835
048addec 98362001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 9837
048addec
JD
9838 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
9839 to the left or to the right of the pointer, put it against
9840 the left screen edge.
6108b49c 9841
048addec 98422001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 9843
048addec
JD
9844 * Makefile.in (distclean): Remove .gdbinit if we are building
9845 outside the source tree.
5eea19a4 9846
048addec 98472001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 9848
048addec 9849 * w32.c (emacs_root_dir): New function.
5eea19a4 9850
048addec 9851 * msdos.c (emacs_root_dir): New function.
5eea19a4 9852
048addec
JD
9853 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
9854 of the current drive as the fallback for default_directory.
438e57dd 9855
048addec
JD
9856 * dired.c (file_name_completion): Run the elements of
9857 completion-ignored-extensions through ENCODE_FILE.
438e57dd 9858
048addec
JD
9859 * lisp.h (scmp): Remove prototype, since it's now a static
9860 function private to dired.c.
c88e5347 9861
048addec 98622001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 9863
048addec
JD
9864 * dired.c (scmp): Function moved from minibuf.c.
9865 Delete multibyte handling--used only on encoded strings.
59ce1461 9866
048addec 9867 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 9868
048addec 9869 * fns.c (merge): Add QUIT call.
59ce1461 9870
048addec 98712001-12-18 Dave Love <fx@gnu.org>
8727d588 9872
048addec
JD
9873 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
9874 language/georgian.el.
8727d588 9875
048addec 98762001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 9877
048addec
JD
9878 * Makefile.in (lisp, shortlisp): Synchronize with changes to
9879 lisp/Makefile.in:DONTCOMPILE.
cc63037e 9880
048addec 98812001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 9882
048addec
JD
9883 * xdisp.c (window_box_height): Do not return negative values.
9884 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 9885
048addec 9886 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 9887
048addec 9888 * term.c (keys): Likewise.
deece6f5 9889
048addec 9890 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 9891
048addec 98922001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 9893
048addec
JD
9894 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
9895 patch (COMPOSING_P, not COMPOSING).
28ff4293 9896
048addec 98972001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 9898
048addec 9899 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 9900
048addec
JD
9901 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
9902 before calling decode_coding.
9b46de40 9903
048addec 9904 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 9905
048addec
JD
9906 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
9907 instead of only for COMPOSITION_DISABLED.
9b46de40 9908
048addec 99092001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 9910
048addec 9911 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 9912
048addec 9913 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 9914
048addec
JD
9915 * buffer.h (struct buffer): New field `display_error_modiff'.
9916 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 9917
048addec 9918 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 9919
048addec
JD
9920 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
9921 Call redisplay_window, but not if display_error_modiff field says no.
9922 (redisplay_window_error): New function.
9923 (displayed_buffer): New variable.
9924 (redisplay_internal, redisplay_windows): Call the new functions
9925 instead of redisplay_window directly.
2cd23960 9926
048addec 99272001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 9928
048addec 9929 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 9930
048addec 99312001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 9932
048addec
JD
9933 * makefile.w32-in (EMACSLOADPATH): Define.
9934 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
9935 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 9936
048addec 99372001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 9938
048addec
JD
9939 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
9940 parameter have a numeric value all the time.
f6fa0866 9941
048addec 9942 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 9943
048addec 99442001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 9945
048addec 9946 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 9947
048addec
JD
9948 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
9949 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 9950
048addec 99512001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 9952
048addec
JD
9953 * xdisp.c (move_it_vertically_backward): Change heuristic
9954 for the case that we didn't move far enough initially.
91c153e2 9955
048addec
JD
9956 * window.c (Frecenter): Simplify computation in the case of window
9957 system frames and ARG < 0; use window_box_height.
65b7d3e7 9958
048addec 99592001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 9960
048addec
JD
9961 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
9962 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 9963
048addec 99642001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 9965
048addec
JD
9966 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
9967 arg is negative.
be676094 9968
048addec 99692001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 9970
048addec
JD
9971 * m/hp800.h: Split the __hpux conditional into the parts
9972 that are right for GNU/Linux too and the parts that are not.
9973 Use the former if GNU_LINUX.
9974 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 9975
048addec 9976 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 9977
048addec 99782001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 9979
048addec
JD
9980 * macros.c, msdos.c, w16select.c: Change doc-string comments to
9981 `new style' [w/`doc:' keyword].
032a857d 9982
048addec 99832001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 9984
048addec
JD
9985 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
9986 before using.
b6270150 9987
048addec 99882001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 9989
048addec
JD
9990 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
9991 keyword].
98cbb9fa 9992
048addec 99932001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 9994
048addec 9995 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 9996
048addec 9997 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 9998
048addec 99992001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 10000
048addec
JD
10001 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
10002 Add comment to explain where the struct came from.
10003 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
10004 (add_menu_item): Process pop-up menus first to avoid memory leak.
10005 (add_menu_item, w32_menu_display_help): Use `help' field as
10006 Lisp_Object.
10007 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 10008
048addec 100092001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 10010
048addec 10011 * COPYING: Moved back.
fa336b91 10012
048addec
JD
10013 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
10014 Add parentheses around && within ||.
077907d4 10015
048addec 10016 * indent.c (compute_motion): Likewise.
aa2af83a 10017
048addec 10018 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 10019
048addec
JD
10020 * coding.c (setup_coding_system, shrink_encoding_region)
10021 (Fdecode_sjis_char): Likewise.
60a653f1 10022
048addec 100232001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 10024
048addec
JD
10025 * xdisp.c (display_mode_element): Don't read past end of string if
10026 it ends with '%'.
60a653f1 10027
048addec
JD
10028 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
10029 can hold.
60a653f1 10030
048addec
JD
10031 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
10032 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
10033 type changed to Lisp_Object.
10034 (syms_of_data): DEFVAR_LISP them.
60a653f1 10035
048addec 100362001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 10037
048addec
JD
10038 * callproc.c (init_callproc): Set Vdata_directory based on the source
10039 location whenever Emacs was run uninstalled.
60a653f1 10040
048addec 100412001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 10042
048addec
JD
10043 * config.in (HAVE_WORKING_VFORK): New #undefs.
10044 * process.c (create_process):
10045 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
10046 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
10047 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
10048 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
10049 * m/intel386.h (HAVE_VFORK): Likewise.
10050 * m/mips-siemens.h (HAVE_VFORK): Likewise.
10051 * m/mips.h (HAVE_VFORK): Likewise.
10052 * s/freebsd.h (vfork): Remove #define.
10053 * s/lynxos.h (HAVE_VFORK): Remove #undef.
10054 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 10055
048addec 100562001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 10057
048addec
JD
10058 * s/hpux10.h (random): Add undef.
10059 (HAVE_RANDOM): Define it just once.
60a653f1 10060
048addec 100612001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10062
048addec 10063 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 10064
048addec 100652001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10066
048addec
JD
10067 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
10068 scroll bars of the frame before deleting the frame itself. If the
10069 frame has a widget, delete the frame with XtDestroyWidget, and do
10070 not call XDestroyWindow before that.
60a653f1 10071
048addec 100722001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 10073
048addec 10074 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 10075
048addec 10076 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 10077
048addec 100782001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 10079
048addec
JD
10080 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
10081 excessively large.
60a653f1 10082
048addec
JD
10083 * insdel.c (make_gap_larger): New function.
10084 (make_gap_smaller): New function.
10085 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
10086 Call make_gap_smaller if arg is negative.
60a653f1 10087
048addec 100882001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10089
048addec
JD
10090 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
10091 Pass a dummy argument when calling interrupt_signal.
10092 (parse_menu_item): Mark disabled items before checking for empty def.
10093 (read_char_minibuf_menu_prompt): Make safety more visible.
10094 (read_key_sequence): Add a `first_unbound' variable.
10095 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
10096 unbound prefix as soon as we can detect it.
60a653f1 10097
048addec
JD
10098 * doc.c (Fsnarf_documentation): Add prototype.
10099 (get_doc_string): Handle negative arguments.
10100 (Fdocumentation): Use AREF and ASIZE.
10101 Move the calls to get_doc_string to a single place.
10102 Don't confuse an interactive-spec for a docstring reference.
10103 (Fdocumentation_property): Take advantage of the fact that
10104 get_doc_string now ignores the sign of the docstring position.
60a653f1 10105
048addec 10106 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 10107
048addec 101082001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10109
048addec 10110 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief` an option.
60a653f1 10111
048addec 101122001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10113
048addec
JD
10114 * xterm.c (x_draw_image_relief): Use predefined macro instead of
10115 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 10116
048addec 101172001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 10118
048addec
JD
10119 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
10120 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 10121
048addec 10122 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 10123
048addec 101242001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10125
048addec 10126 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 10127
048addec 101282001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 10129
048addec 10130 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 10131
048addec 101322001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 10133
048addec 10134 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 10135
048addec
JD
10136 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
10137 [!WM_MOUSELEAVE]: Define.
60a653f1 10138
048addec
JD
10139 * w32menu.c (current_popup_menu, get_menu_item_info):
10140 (set_menu_item_info): New vars.
10141 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
10142 (w32_menu_show): Set current_popup_menu.
10143 (add_menu_item): Allocate new strings for owner-drawn menu items
10144 and help strings.
10145 Use owner-draw for disabled menu items again.
10146 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
10147 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 10148
048addec
JD
10149 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
10150 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
10151 <WM_EXITMENULOOP>: Free menu strings.
10152 <WM_MOUSELEAVE>: Stop tracking mouse.
10153 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 10154
048addec
JD
10155 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
10156 and mouse face.
60a653f1 10157
048addec 101582001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 10159
048addec
JD
10160 The following changes add left-fringe and right-fringe
10161 frame parameters to adjust fringe widths, or remove one or
10162 both fringes.
60a653f1 10163
048addec
JD
10164 * frame.h (struct frame): Remove trunc_area_pixel_width and
10165 trunc_area_cols fields.
10166 (Qleft_fringe, Qright_fringe): Declare.
10167 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 10168
048addec
JD
10169 * frame.c (Qleft_fringe, Qright_fringe): New vars.
10170 (syms_of_frame): Initialize them.
60a653f1 10171
048addec
JD
10172 * window.c (coordinates_in_window): Handle separate left and right
10173 fringe widths.
60a653f1 10174
048addec
JD
10175 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
10176 and fringe_cols fields.
10177 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
10178 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
10179 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
10180 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
10181 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
10182 (x_compute_fringe_widths): Add prototype.
60a653f1 10183
048addec
JD
10184 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
10185 fill fringe evenly with small dashes.
10186 (x_draw_fringe_bitmap): Clear background if necessary. Align and
10187 clip the new ZV bitmap to avoid jitter between rows.
10188 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
10189 background. Don't draw fringe bitmaps if fringe width is zero.
10190 (x_compute_fringe_widths): New function.
10191 (x_new_font, x_set_window_size_1): Use it.
60a653f1 10192
048addec
JD
10193 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
10194 (x_set_frame_parameters): Process `font' parameter before other
10195 parameters as fringe widths depend on it.
10196 (x_set_fringe_width): New function.
10197 (x_figure_window_size): Use x_compute_fringe_widths.
10198 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
10199 parameters.
60a653f1 10200
048addec
JD
10201 * widget.c (set_frame_size): Use x_compute_fringe_widths.
10202 (EmacsFrameSetCharSize): Ditto.
60a653f1 10203
048addec
JD
10204 * w32term.h: Merged changes from xterm.h.
10205 * w32term.c: Merged changes from xterm.c.
10206 * w32fns.c: Merged changes from xfns.c.
60a653f1 10207
048addec 102082001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10209
048addec 10210 * COPYING: Removed.
60a653f1 10211
048addec 102122001-11-29 Dave Love <fx@gnu.org>
60a653f1 10213
048addec
JD
10214 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
10215 extra extra slot.
10216 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 10217
048addec 102182001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10219
048addec
JD
10220 * fileio.c (file-name-coding-system)
10221 (default-file-name-coding-system): Doc fix (links to referenced
10222 variables added).
60a653f1 10223
048addec 102242001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10225
048addec
JD
10226 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
10227 Add dummy uses of gcproN variables.
60a653f1 10228
048addec
JD
10229 * category.c (describe_category, describe_category_1)
10230 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
10231 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 10232
048addec 102332001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 10234
048addec 10235 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 10236
048addec
JD
10237 * Makefile.in (lispdir): New variable, referring to build dir.
10238 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 10239
048addec 102402001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 10241
048addec
JD
10242 * w32menu.c (w32_menu_display_help): Actually add the new argument
10243 OWNER.
60a653f1 10244
048addec 102452001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 10246
048addec
JD
10247 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
10248 menu items. From David Ponce <dponce@wanadoo.fr>.
10249 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
10250 conditionally.
10251 (w32_menu_display_help): New argument OWNER. Rewritten to store a
10252 help event in the owner frame's keyboard buffer.
60a653f1 10253
048addec
JD
10254 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
10255 (Fx_show_tip): Don't subtract last width from row width.
10256
10257 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
10258 (w32_read_socket): Use EQ to compare frames.
60a653f1 10259
048addec 102602001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 10261
048addec
JD
10262 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
10263 OVERLAPS_P.
60a653f1 10264
048addec 102652001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10266
048addec
JD
10267 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
10268 `gcpro3' and `gcpro4'.
60a653f1 10269
048addec 10270 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 10271
048addec 102722001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10273
048addec 10274 * ccl.c: Use AREF and ASIZE.
60a653f1 10275
048addec 102762001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10277
048addec
JD
10278 * lisp.h (run_hook_list_with_args): Remove.
10279 (LIST_END_P): Fix call to wrong_type_argument.
10280 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 10281
048addec 102822001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10283
048addec
JD
10284 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
10285 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 10286
048addec
JD
10287 * eval.c: Use AREF and ASIZE.
10288 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 10289
048addec
JD
10290 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
10291 which match the end of the file-name.
10292 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
10293 is not a valid env var, but leave it as is instead.
60a653f1 10294
048addec
JD
10295 * keymap.c (access_keymap): Handle t bindings like nil bindings.
10296 Make nil bindings in char-tables transparent.
10297 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 10298
048addec 102992001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 10300
048addec
JD
10301 * textprop.c (set_text_properties_1): Allow START, END in either order.
10302 Do nothing if range is empty.
60a653f1 10303
048addec 10304 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 10305
048addec
JD
10306 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
10307 (clean): Not here.
60a653f1 10308
048addec 103092001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10310
048addec
JD
10311 * textprop.c (set_text_properties_1): Clearly mark that the
10312 interval should not be empty.
60a653f1 10313
048addec
JD
10314 * intervals.c (graft_intervals_into_buffer):
10315 Don't call set_text_properties_1 on an empty interval.
60a653f1 10316
048addec 103172001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 10318
048addec 10319 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 10320
048addec
JD
10321 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
10322 don't lose the data in it.
60a653f1 10323
048addec 103242001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 10325
048addec 10326 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 10327
048addec 10328 * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
60a653f1 10329
048addec 10330 * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
60a653f1 10331
048addec 103322001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10333
048addec 10334 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 10335
048addec 103362001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10337
048addec
JD
10338 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
10339 Niemitalo <kon@iki.fi>.
60a653f1 10340
048addec 103412001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 10342
048addec 10343 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 10344
048addec
JD
10345 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
10346 (Fx_show_tip): Block input during frame creation.
10347 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 10348
048addec 103492001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 10350
048addec
JD
10351 * lread.c (Fload): Detect recursive load error for more than 3
10352 nestings of the same file.
10353 (Vrecursive_load_depth_limit): Variable deleted.
10354 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 10355
048addec 103562001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 10357
048addec
JD
10358 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
10359 mouse position if either left or top is not specified.
60a653f1 10360
048addec
JD
10361 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
10362 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
10363 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
10364 (my_create_tip_window): Assign tip_window.
10365 (x_create_tip_frame): Use same defaults as X.
10366 (compute_tip_xy): Remove unused variable. Use full screen width.
10367 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 10368
048addec
JD
10369 * w32term.c (x_after_update_window_line): Doc fix.
10370 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
10371 frames.
10372 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 10373
048addec
JD
10374 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
10375 for all Windowed systems.
60a653f1 10376
048addec 103772001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10378
048addec
JD
10379 * msdos.c (IT_clear_screen): If the frame's faces are not yet
10380 realized, use the initial screen colors to clear the screen.
60a653f1 10381
048addec 103822001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10383
048addec
JD
10384 * textprop.c (Fset_text_properties): Remove unused variables
10385 `unchanged', `prev_changed', `s' and `len'.
60a653f1 10386
048addec
JD
10387 * search.c (Freplace_match): Remove unused variable `inslen'.
10388
10389 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
10390
103912001-11-22 Jason Rumney <jasonr@gnu.org>
10392
10393 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
10394 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
10395 (my_create_tip_window): New function.
10396 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
10397 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
10398
103992001-11-20 Jason Rumney <jasonr@gnu.org>
10400
10401 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
10402 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
10403
10404 * w32fns.c (Vw32_system_coding_system): Remove.
10405 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
10406
104072001-11-19 Stefan Monnier <monnier@cs.yale.edu>
10408
10409 * fileio.c (Fwrite_region): Move choose_write_coding_system to
10410 after build_annotations.
10411
10412 * syntax.c (describe_syntax): Add dummy arg.
10413 (describe_syntax_1): Update call to describe_vector.
10414
10415 * category.c (describe_category): Add dummy arg.
10416 (describe_category_1): Update call to describe_vector.
10417
10418 * keymap.c (Fdescribe_vector): Add `describer' parameter.
10419 (describe_command, describe_translation): Add dummy second param.
10420 (describe_map): Call elt_describer with two arguments.
10421 (describe_vector_princ): Add `fun' parameter.
10422 Call it instead of the hardcoded `princ'.
10423 (describe_vector): Add arg `args'.
10424 Pass it as a new second argument to elt_describer.
60a653f1 10425
048addec 10426 * keymap.h (describe_vector): Update prototype.
60a653f1 10427
048addec
JD
10428 * frame.c: Don't include keymap.h any more.
10429 (keys_of_frame): Remove.
60a653f1 10430
048addec 10431 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 10432
048addec 10433 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 10434
048addec 104352001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 10436
048addec
JD
10437 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
10438 if defined, 0 otherwise.
10439 (MAP_FAILED): Define if not defined and use it to test mmap failure.
10440 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 10441
048addec 104422001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 10443
048addec 10444 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 10445
048addec 104462001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 10447
048addec
JD
10448 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
10449 (x_draw_bar_cursor): If the background color of the glyph under
10450 the cursor equals the frame's cursor color, use the glyph's
10451 foreground color for drawing the bar cursor.
10452 (x_after_update_window_line): Clear internal border in different
10453 circumstances.
10454 (w32_set_vertical_scroll_bar): Check for width and height > 0.
10455 (w32_draw_relief_rect): Correct relief by 1 pixel.
10456 (x_set_glyph_string_background_width):
10457 Set extends_to_end_of_line_p if the row's fill_line_p is set and
10458 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
10459 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
10460 if cursor_in_non_selected_windows is false.
10461 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
10462 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
10463 Notice if cursor gets overwritten.
10464 (notice_overwritten_cursor): Renamed from
10465 note_overwritten_text_cursor. Rewritten to take glyph widths
10466 into account, and to take X positions as parameters.
10467 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
10468 around call to x_draw_glyphs.
10469 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
10470 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
10471 color to use for image glyph reliefs.
10472 (x_draw_image_relief): Accept zero tool_bar_button_relief.
10473 (glyph_rect): Remove unused variable `area'.
60a653f1 10474
048addec
JD
10475 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
10476 some items.
10477 (x_set_internal_border_width): Set frame garbaged when window
10478 doesn't exist yet.
10479 (Fx_create_frame): Accept zero tool_bar_button_relief.
10480 (x_clear_image_1, four_corners_best, image_background)
10481 (image_background_transparent): New functions.
10482 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
10483 (gs_format): Add `:background' entry.
10484 (lookup_image): Set IMG's background color if specified.
10485 (pbm_load, xbm_load_image, png_load): Set IMG's background field
10486 when appropriate.
10487 (x_clear_image_1): Reset `background_valid' and
10488 `background_transparent_valid' fields.
10489 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
10490 calculating it here. Set IMG's background_transparent field.
10491 (enum xpm_keyword_index): Add XPM_BACKGROUND.
10492 (enum png_keyword_index): Add PNG_BACKGROUND.
10493 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
10494 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
10495 (enum gif_keyword_index): Add GIF_BACKGROUND.
10496 (enum gs_keyword_index): Add GS_BACKGROUND.
10497 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
10498 Pre-calculate image background color where necessary.
10499 (x_create_x_image_and_pixmap, xbm_load, gs_load):
10500 Use display info's n_cbits entry for screen depth.
10501 (Fx_show_tip): Remove unused variables `buffer', `top',
10502 `left', `max_width' and `max_height'.
60a653f1 10503
048addec 10504 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 10505
048addec 105062001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 10507
048addec 10508 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 10509
048addec 105102001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10511
048addec 10512 * frame.c (Fframe_live_p): Doc fix.
60a653f1 10513
048addec 105142001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 10515
048addec
JD
10516 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
10517 (message_dolog_marker3): New static variables hold three markers.
10518 (syms_of_xdisp): Initialize and staticpro them.
10519 (message_dolog): Use message_dolog_marker1..3 instead of
10520 allocating markers each time. Unchain them when done.
60a653f1 10521
048addec 105222001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 10523
048addec 10524 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 10525
048addec 105262001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 10527
048addec 10528 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 10529
048addec 105302001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 10531
048addec 10532 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 10533
048addec 105342001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 10535
048addec 10536 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 10537
048addec 105382001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 10539
048addec
JD
10540 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
10541 with invalid position.
60a653f1 10542
048addec 105432001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 10544
048addec 10545 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 10546
048addec
JD
10547 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
10548 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
10549 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 10550
048addec 10551 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 10552
048addec 105532001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10554
048addec
JD
10555 * fileio.c (build_annotations): Split off the tail.
10556 (build_annotations_2): New fun. Extracted from build_annotations.
10557 (Fwrite_region): Split the call to build_annotations into two
10558 calls to build_annotations and build_annotations_2.
077907d4 10559
048addec 105602001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 10561
048addec
JD
10562 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
10563 clear_waiting_for_input with argument.
1756e2fb 10564
048addec 10565 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 10566
048addec 10567 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 10568
048addec 10569 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 10570
048addec 10571 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 10572
048addec 105732001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 10574
048addec
JD
10575 * fileio.c (choose_write_coding_system): New fun, extracted
10576 from Fwrite_region.
10577 (Fwrite_region): Use it.
fa336b91 10578
048addec
JD
10579 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
10580 (funcall_lambda, run_hook_with_args): Make static and add prototype.
10581 (ml_apply, find_handler_clause): Add prototype.
fa336b91 10582
048addec 105832001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 10584
048addec 10585 * config.in: Add #undef HAVE_COFF_H.
fa336b91 10586
048addec
JD
10587 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
10588 Required for ISC 4.1.
fa336b91 10589
048addec 105902001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 10591
048addec
JD
10592 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
10593 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 10594
048addec 105952001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 10596
048addec
JD
10597 The following changes are made to clean up the various internal
10598 references to the fringes to actually use the term `fringe' for
10599 them. Previously, they were called `flags areas', `bitmap areas',
10600 `left/right side of windows', or implicitly as `flags' or
10601 `bitmaps':
fa336b91 10602
048addec
JD
10603 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
10604 Comments fixed. Use renamed symbols.
06e8f738 10605
048addec 10606 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 10607
048addec
JD
10608 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
10609 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
10610 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 10611
048addec 10612 * msdos.c: Comment fix.
9ce647f4 10613
048addec 10614 * w32fns.c: Use renamed symbols.
9b784ab8 10615
048addec
JD
10616 * w32term.c: Comment fixes. Use renamed symbols.
10617 (fringe_bitmap_type): Renamed from bitmap_type.
10618 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
10619 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
10620 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 10621
048addec
JD
10622 * w32term.h: Comment fixes. Use renamed symbols.
10623 (fringes_extra): Renamed from flags_areas_extra.
10624 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
10625 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
10626 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
10627 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
10628 (FRAME_X_LEFT_FRINGE_WIDTH):
10629 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
10630 (FRAME_X_RIGHT_FRINGE_WIDTH):
10631 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 10632
048addec 10633 * widget.c: Use renamed symbols.
9f7e52b4 10634
048addec
JD
10635 * window.c: Comment fixes. Use renamed symbols.
10636 (coordinates-in-window-p): Doc fix.
fa336b91 10637
048addec 10638 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 10639
048addec 10640 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 10641
048addec 10642 * xfns.c: Use renamed symbols.
89512fcd 10643
048addec
JD
10644 * xterm.c: Comment fixes. Use renamed symbols.
10645 (fringe_bitmap_type): Renamed from bitmap_type.
10646 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
10647 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
10648 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 10649
048addec
JD
10650 * xterm.h: Comment fixes. Use renamed symbols.
10651 (fringes_extra): Renamed from flags_areas_extra.
10652 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
10653 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
10654 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
10655 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
10656 (FRAME_X_LEFT_FRINGE_WIDTH):
10657 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
10658 (FRAME_X_RIGHT_FRINGE_WIDTH):
10659 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
10660
106612001-11-15 Jason Rumney <jasonr@gnu.org>
10662
10663 * w32menu.c (add-menu-item): Make help_echo and radio buttons
10664 work for most menu items. From David Ponce
10665 <david.ponce@wanadoo.fr>.
10666
106672001-11-15 Gerd Moellmann <gerd@gnu.org>
10668
10669 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
10670 Some x_set_* function expect to be called even if old and new
10671 value are equal.
10672
10673 * xdisp.c (build_desired_tool_bar_string): Accept zero
10674 tool_bar_button_relief.
10675
10676 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
10677
10678 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
10679
10680 * xterm.c (x_draw_bar_cursor): If the background color of the
10681 glyph under the cursor equals the frame's cursor color, use
10682 the glyph's foreground color for drawing the bar cursor.
10683
10684 * dispnew.c (direct_output_forward_char): Fix character/byte
10685 position comparison.
7d18891d 10686
048addec 106872001-11-15 Miles Bader <miles@gnu.org>
d2936d21 10688
048addec
JD
10689 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
10690 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
10691 Update arguments to find_field.
10692 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
10693 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
10694 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
10695 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 10696
048addec 106972001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 10698
048addec 10699 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 10700
048addec
JD
10701 * dispextern.h (image_background, image_background_transparent):
10702 Conditionalize on HAVE_X_WINDOWS.
7d18891d 10703
048addec 107042001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 10705
048addec 10706 * print.c (Fprin1_to_string): Doc fix.
7d18891d 10707
048addec 10708 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 10709
048addec 10710 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 10711
048addec 10712 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 10713
048addec 10714 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 10715
048addec 10716 * eval.c (syms_of_eval): Doc fix.
7d18891d 10717
048addec 10718 * coding.c (syms_of_coding): Doc fix.
7d18891d 10719
048addec 10720 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 10721
048addec 10722 * dispnew.c (syms_of_display): Doc fix.
9474c847 10723
048addec 10724 * category.c (Fget_unused_category): Doc fix.
9474c847 10725
048addec 10726 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 10727
048addec 107282001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 10729
048addec 10730 * print.c (prin1, print): Doc fix.
e3059a5d 10731
048addec 107322001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 10733
048addec
JD
10734 * fontset.h: Remove declarations of variables
10735 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 10736
048addec
JD
10737 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
10738 `Vclip_large_size_font'.
eae936e2 10739
048addec 107402001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 10741
048addec 10742 * w32fns.c: Doc fix.
ddb67bdc 10743
048addec 107442001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 10745
048addec 10746 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 10747
048addec 10748 * fns.c: Doc fix.
6e1b91d7 10749
048addec 10750 * emacs.c: Doc fix.
1c1d3d69 10751
048addec 10752 * coding.c: Doc fix.
1c1d3d69 10753
048addec
JD
10754 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
10755 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
10756 `new style' [w/`doc:' keyword].
b6f4c7ba 10757
048addec 107582001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 10759
048addec
JD
10760 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
10761 LeaveNotify events. Only FocusIn and FocusOut do that now.
10762 (x_display_and_set_cursor): Do display hollow cursors in active
10763 minibuffer windows when they are not selected.
b6f4c7ba 10764
048addec 107652001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 10766
048addec
JD
10767 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
10768 * w32term.c: Change doc-string comments to `new style'.
10769 [w/`doc:' keyword]. Doc fixes.
a89f435d 10770
048addec
JD
10771 * w32fns.c: Don't define max.
10772 (Fx_open_connection): Only execute once.
a4cd0cd7 10773
048addec 107742001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 10775
048addec
JD
10776 * ccl.c: Change macros to use do-while block instead of if-else.
10777 Use braces to follow GNU Coding Standards.
eafb659a 10778
048addec 107792001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 10780
048addec 10781 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 10782
048addec 10783 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 10784
048addec
JD
10785 * insdel.c (replace_range): Use adjust_markers_for_replace
10786 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 10787
048addec 10788 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 10789
048addec
JD
10790 * textprop.c (set_text_properties_1): New subroutine
10791 broken out of set_text_properties.
10792 (set_text_properties): Use set_text_properties_1.
91823618 10793
048addec
JD
10794 * intervals.c (graft_intervals_into_buffer):
10795 Use set_text_properties_1 to clear out properties.
91823618 10796
048addec
JD
10797 * search.c (Freplace_match): Use replace_range to insert
10798 and delete. Don't request property inheritance from
10799 surrounding text.
86928dfb 10800
048addec 108012001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 10802
048addec
JD
10803 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
10804 vertical fonts. Allow them if face name is explicitly specified.
10805 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 10806
048addec 108072001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 10808
048addec
JD
10809 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
10810 instead of malloc/free.
a78e0303 10811
048addec 108122001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 10813
048addec
JD
10814 * xfaces.c (merge_face_vectors): Use braces to follow GNU
10815 Coding Standards.
10816 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 10817
048addec 10818 * buffer.c (Fbury_buffer): Likewise.
0c99b139 10819
048addec 10820 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 10821
048addec
JD
10822 * coding.c (encode_coding): Use precomputed value of `src'.
10823 (encode_coding): Remove unused variable `src_end'.
10824 (code_convert_region): Remove unused variables `count'.
830ddd77 10825
048addec 108262001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 10827
048addec
JD
10828 * w32term.c (x_display_and_set_cursor): Do not move system caret
10829 if cursor_glyph is NULL.
55c6d645 10830
048addec 108312001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 10832
048addec 10833 * keymap.c (access_keymap): Fix compilation error.
5de38842 10834
048addec 108352001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 10836
048addec 10837 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 10838
048addec 108392001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 10840
048addec
JD
10841 * intervals.c (graft_intervals_into_buffer):
10842 Remove #ifdef'd-out code.
10843 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 10844
048addec
JD
10845 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
10846 code (eval-current-buffer).
10847 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 10848
048addec 108492001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 10850
048addec 10851 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 10852
048addec 108532001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 10854
048addec 10855 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 10856
048addec
JD
10857 * keyboard.c (make_lispy_event): Check integerness and fix
10858 Lisp_Object/int mixup.
17893c65 10859
048addec 108602001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 10861
048addec 10862 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 10863
048addec
JD
10864 * fontset.c (fontset_font_pattern): Remove unused variable
10865 `family_registry'.
d5360cc7 10866
048addec 10867 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 10868
048addec 108692001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 10870
048addec 10871 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 10872
048addec
JD
10873 * buffer.c (Fkill_buffer): Don't delete auto save file
10874 if buffer is modified.
d9d54213 10875
048addec 108762001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 10877
048addec
JD
10878 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
10879 CHECK_NUMBER_CDR.
b116830b 10880
048addec 108812001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 10882
048addec 10883 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 10884
048addec 108852001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 10886
048addec 10887 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 10888
048addec 108892001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 10890
048addec 10891 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 10892
048addec 108932001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 10894
048addec
JD
10895 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
10896 the program image directly.
982f6c7e 10897
048addec 108982001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 10899
048addec 10900 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 10901
048addec 109022001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 10903
048addec
JD
10904 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
10905 and CHECK_BUFFER.
d31053f9 10906
048addec
JD
10907 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
10908 (record_char): Likewise.
d31053f9 10909
048addec
JD
10910 * keyboard.c (make_lispy_event): Don't insist a drag event must
10911 move to a different buffer position. Instead, check for moving at
10912 least double_click_fuzz.
982f6c7e 10913
048addec 10914 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 10915
048addec 10916 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 10917
048addec
JD
10918 * indent.c (current_column_1, Fmove_to_column): Separate the code
10919 for display-table glyphs from the code for buffer text, to fix
10920 bugs in the former.
830047fd 10921
048addec 109222001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 10923
048addec
JD
10924 * buffer.c (Fbuffer_local_value): New function.
10925 (syms_of_buffer): Defsubr it.
2df5238c 10926
048addec
JD
10927 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
10928 value of `cursor-in-non-selected-windows'.
4e397688 10929
048addec
JD
10930 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
10931 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
10932 (syms_of_xdisp): Initialize it.
48b0f3ae 10933
048addec 109342001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 10935
048addec 10936 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 10937
048addec
JD
10938 * coding.c: Change doc-string comments to `new style' [w/`doc:'
10939 keyword].
3ecaf7e5 10940
048addec
JD
10941 * eval.c (top_level_value, top_level_set): Remove commented and
10942 #ifdef'd-out code.
10943 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 10944
048addec 109452001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 10946
048addec 10947 * xfns.c: Include unistd.h, if it exists.
8db2e33b 10948
048addec 10949 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 10950
048addec 10951 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 10952
048addec 109532001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 10954
048addec
JD
10955 * lisp.h (CHECK_STRING_CAR): New macro.
10956 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
10957 treating XCAR and XCDR as lvalues.
10958 (openp): Use CHECK_STRING_CAR.
10959 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 10960
048addec 109612001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 10962
048addec
JD
10963 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
10964 (SIGMASKTYPE): Define.
1b1acc13 10965
048addec 10966 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 10967
048addec 109682001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 10969
048addec
JD
10970 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
10971 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
10972 Fix typos in comments.
6cb16f95 10973
048addec
JD
10974 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
10975 and #ifdef'd-out code.
10976 Fix and reindent comments.
6cb16f95 10977
048addec 10978 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 10979
048addec
JD
10980 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
10981 argument `i' in macros.
6cb16f95 10982
048addec
JD
10983 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
10984 `i' in macros.
7e9d3c2f 10985
048addec
JD
10986 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
10987 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
10988 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
10989 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
10990 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
10991 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
10992 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
10993 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
10994 in macros.
7e9d3c2f 10995
048addec
JD
10996 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
10997 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
10998 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
10999 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
11000 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
11001 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
11002 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
11003 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
11004 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
11005 (remove unused second argument).
7e9d3c2f 11006
048addec 110072001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 11008
048addec
JD
11009 * syntax.c (describe_syntax): New wrapper.
11010 (Finternal_describe_syntax_value): Rename from describe_syntax.
11011 Don't insert space at front and \n at the end.
11012 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 11013
048addec
JD
11014 * regex.c (re_wctype): Try to fix some warnings.
11015 (regcomp, regexec): Don't forget the __restrict.
9ba48103 11016
048addec 110172001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 11018
048addec 11019 * textprop.c (Fget_char_property): Doc fix.
9ba48103 11020
048addec 110212001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 11022
048addec 11023 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 11024
048addec 11025 * data.c (Fsetq_default): Ditto.
c22e59e1 11026
048addec 11027 * callint.c (Finteractive): Ditto.
9271ed2c 11028
048addec 110292001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 11030
048addec
JD
11031 * macros.c: Don't include keymap.h any more.
11032
110332001-11-01 Richard M. Stallman <rms@gnu.org>
11034
11035 * data.c (Fmake_local_variable): Doc fix.
11036
11037 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
11038 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 11039
048addec 11040 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
11041 bindings along with or instead of the buffer local map.
11042 Make the overriding maps override what they should.
11043
f00691a3 110442001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
11045
11046 * window.c (grow_mini_window): Fix typo in comment.
11047
27188d11
GM
110482001-11-01 Gerd Moellmann <gerd@gnu.org>
11049
7b49b9d2
GM
11050 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
11051 (XTset_vertical_scroll_bar): Likewise.
11052
43f7c3ea
GM
11053 * xfns.c (x_build_heuristic_mask): Use four_corners_best
11054 instead of IMAGE_BACKGROUND.
c22e59e1 11055
b350c2e5
GM
11056 * xfns.c (four_corners_best): Reindent.
11057
c22e59e1 11058 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
11059 Handle :box so that it is possible to specify sexprs.
11060
bf00d461
EZ
110612001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
11062
11063 * s/hpux11.h: New file.
11064
f00691a3 110652001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 11066
2b209b97
PJ
11067 * emacs.c (USAGE1): Show command line option --no-window-system
11068 instead of --no-windows in usage.
11069 (standard_args): Rename --no-windows to --no-window-system.
11070 (bug_reporting_address): Follow Emacs coding conventions.
11071
9dbc9081
PJ
11072 * eval.c (Fcommandp): Doc fix.
11073 Change doc-string comments to `new style' [w/`doc:' keyword].
11074
4e10df59
PJ
11075 * frame.c (Fframe_live_p): Doc fix.
11076
11077 * buffer.c (selective-display-ellipses): Doc fix.
11078
dd387b25
GM
110792001-10-31 Gerd Moellmann <gerd@gnu.org>
11080
fe957e65
GM
11081 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
11082
dd387b25
GM
11083 * xfaces.c (realize_x_face): If C is not a single-byte character,
11084 set the face's colors_copied_bitwise_p instead of the defaulted_p
11085 members which have a different meaning.
11086 (free_face_colors): Do nothing for a face whose colors have been
11087 copied bitwise.
11088
c22e59e1 11089 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 11090
f00691a3 110912001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 11092
687784e8
PJ
11093 * marker.c, mocklisp.c: Change doc-string comments to `new style'
11094 [w/`doc:' keyword].
2e1280f8 11095
b9d9a9b9
GM
110962001-10-31 Gerd Moellmann <gerd@gnu.org>
11097
11098 * fns.c (require_unwind): Return Lisp_Object.
11099
f00691a3 111002001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 11101
fa1361cb
PJ
11102 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
11103 (last-input-char): Revert doc-string to be the same as the
11104 doc-string of `last-input-event'.
11105
6c465a15 11106 * xdisp.c: Fix typos in comments.
48400103 11107
eafa3196
GM
111082001-10-31 Gerd Moellmann <gerd@gnu.org>
11109
11110 * window.c (grow_mini_window): Handle case that the root
11111 window is already smaller than the nominal mininum height.
11112
747d3f2a
SM
111132001-10-30 Stefan Monnier <monnier@cs.yale.edu>
11114
bf9bb76f
SM
11115 * emacs.c (main): Don't call keys_of_macros any more.
11116
11117 * lisp.h (keys_of_macros): Remove.
11118
11119 * macros.c (keys_of_macros): Remove.
11120
747d3f2a
SM
11121 * xfaces.c (Fface_attribute_relative_p): Declare args.
11122
5e905a57
JR
111232001-10-30 Jason Rumney <jasonr@gnu.org>
11124
11125 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
11126 (enum_font_cb2): Ignore fonts with vertical orientation.
11127
3a426197
RS
111282001-10-30 Richard M. Stallman <rms@gnu.org>
11129
11130 * keyboard.c (Finput_pending_p): Doc fix.
11131
a742d646
GM
111322001-10-30 Gerd Moellmann <gerd@gnu.org>
11133
259cf6bc
GM
11134 * xterm.c (x_after_update_window_line): Don't run the code
11135 clearing in borders for rows whose visible height is 0.
11136
3f99f948
GM
11137 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
11138 resized_p flag is set. If not set, use the much less flickering
11139 method previously used.
11140
11141 * dispnew.c (change_frame_size_1): Set frame's resized_p.
11142
11143 * frame.h (struct frame) <resized_p>: New member.
11144
b4a3be43
GM
11145 * lread.c (to_multibyte): Ensure read_buffer is at least twice
11146 as large as the number of bytes to convert.
747d3f2a 11147
a742d646
GM
11148 * lread.c (to_multibyte): New function.
11149 (read1): Use it.
11150
cacbb9e9
EZ
111512001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
11152
11153 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
11154
99cb6b2f
GM
111552001-10-30 Gerd Moellmann <gerd@gnu.org>
11156
327f42ee 11157 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
11158 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
11159 if the row's fill_line_p is set and drawing the last glyph with
11160 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 11161
99cb6b2f
GM
11162 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
11163
8e8223e2
SM
111642001-10-29 Stefan Monnier <monnier@cs.yale.edu>
11165
11166 * xmenu.c: Include coding.h and charset.h.
11167 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
11168 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
11169 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
11170 Explicitly set wv->help. Use `TRUE' rather than `True'.
11171 (menu_help_callback): Use empty_string.
11172
11173 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
11174 (Fx_popup_dialog): Explicitly init f.
11175 (w32_menu_display_help): Use empty_string.
11176
4d083a8f
RS
111772001-10-29 Richard M. Stallman <rms@gnu.org>
11178
b2304472
RS
11179 * fns.c (Frequire): Detect recursive try to require the same
11180 feature 3 or more levels deep, and get error.
11181 (require_unwind): New subroutine.
11182 (require_nesting_list): New variable.
11183 (syms_of_fns): Init and staticpro it.
11184
4d083a8f
RS
11185 * print.c (print_object): Clarify indication of insertion type.
11186
2fe41216
EZ
111872001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
11188
90480000
EZ
11189 * coding.c (syms_of_coding): Document that locale-coding-system is
11190 used for decoding input on X.
11191
2fe41216
EZ
11192 * window.c (Fscroll_left, Fscroll_right): Doc fix.
11193
f00691a3 111942001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
11195
11196 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
11197 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
11198
60ebcfe8
GM
111992001-10-29 Gerd Moellmann <gerd@gnu.org>
11200
9a7bdceb
GM
11201 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
11202 use NO_CURSOR if cursor_in_non_selected_windows is false.
11203
3f08fcd2
GM
11204 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
11205 the slant attribute if FRAME is t.
11206
0ccfdad2
GM
11207 * xfns.c (x_set_internal_border_width): Set frame garbaged
11208 when X window doesn't exist yet.
11209
ef253080
GM
11210 * xterm.c (x_after_update_window_line): Clear internal border
11211 in different circumstances.
b116830b 11212
60ebcfe8
GM
11213 * xterm.c (XTread_socket) <KeyPress>: Don't use
11214 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
11215 <handa@etl.go.jp>.
11216
73d25f9c
EZ
112172001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
11218
11219 * m/ibms390.h: New file. From Adam Thornton
11220 <athornton@sinenomine.net>.
11221
cac1daf0
GM
112222001-10-28 Gerd Moellmann <gerd@gnu.org>
11223
053b3256 11224 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 11225
cac1daf0
GM
11226 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
11227 a loop counter.
11228
f00691a3 112292001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 11230
186486eb
PJ
11231 * emacs.c: Use argv[0] instead of emacs when -t was specified.
11232
4707d2d0
PJ
11233 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
11234 keyword].
11235 Fix typos in comments.
b116830b 11236
d883731c
PJ
11237 * emacs.c (bug_reporting_address): New function.
11238 Use it when displaying usage message.
11239
04012254
PJ
11240 * minibuf.c (read_minibuf): Remove unused external declaration of
11241 variable `Qread_only'.
11242
13b1a09c
PJ
11243 * keymap.c (access_keymap): Remove unused variable `charset'.
11244
5bbf4378
MB
112452001-10-28 Miles Bader <miles@gnu.org>
11246
11247 * xfaces.c (merge_face_heights): Handle TO being relative as well.
11248 Remove #ifdef'd-out code.
11249 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
11250 (syms_of_xfaces): Initialize them.
11251
1ce1e4ee
JR
112522001-10-27 Jason Rumney <jasonr@gnu.org>
11253
11254 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
11255 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
11256 position using the system caret.
11257
11258 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
11259 (w32_system_caret_height, w32_system_caret_x)
11260 (w32_system_caret_y): New variables for tracking system caret.
11261 (w32_initialize): Initialize them.
c2d53558 11262 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 11263
c2d53558
SM
11264 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
11265 New messages types.
1ce1e4ee
JR
11266
11267 * w32term.c (note_mouse_highlight): Clear old help_echo.
11268
f00691a3 112692001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 11270
bb4600a4
PJ
11271 * xterm.c: Fix typo in a comment.
11272
7db35a48
PJ
11273 * emacs.c: Fix typos in comments.
11274 Remove unnecessary spaces.
11275 Change doc-string comments to `new style' [w/`doc:' keyword].
11276 (USAGE2): Fix typos in usage string.
11277
a7248e4f
PJ
11278 * xterm.c: Fix typo in a comment.
11279
4e30ce42
PJ
11280 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
11281 emacs.c.
11282
62725a92
GM
112832001-10-27 Gerd Moellmann <gerd@gnu.org>
11284
798dbe1f 11285 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 11286 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
11287 farther backward when target_y was not reached.
11288
62725a92
GM
11289 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
11290 Display errno only if non-zero.
11291 (sound_warning): New function.
11292 (vox_configure): Don't treat failing to set sample rate as error.
11293 (various places): Improve error messages.
11294
d4e34d24
EZ
112952001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
11296
944e6f60
EZ
11297 * fileio.c (Faccess_file): Run the argument filename through
11298 Fexpand_file_name, before using it.
11299
d4e34d24
EZ
11300 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
11301 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
11302
38d2af0c
GM
113032001-10-26 Gerd Moellmann <gerd@gnu.org>
11304
da80a8d5
GM
11305 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
11306
38d2af0c
GM
11307 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
11308 Fix clearing in the case of scroll bars on the right.
c2d53558 11309
45de4a6f 113102001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
11311
11312 * w32gui.h (XImage): Add a dummy typedef.
11313
fbd5ceb2
GM
113142001-10-26 Gerd Moellmann <gerd@gnu.org>
11315
c2d53558 11316 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 11317
b23236fb
EZ
113182001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
11319
11320 * frame.c (Fframe_parameter): Fix last change.
11321
5d991fc4
EZ
11322 * fileio.c: Revert last change (which removed old commented-out
11323 version of expand-file-name). Add a comment that explains why
11324 this old version should not be removed.
11325
879eadc3
GM
113262001-10-25 Gerd Moellmann <gerd@gnu.org>
11327
75700ff2
GM
11328 * frame.c (Fframe_parameter): Fix a bug whereby some
11329 ``artificial'' frame parameters, like `minibuffer' were not
11330 obtained by calling Fframe_parameters.
11331
dfe92a6a
GM
11332 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
11333 cursor differently.
11334
879eadc3
GM
11335 * xdisp.c (move_it_vertically_backward): Compute line height
11336 differently. Add heuristic to try to be more compatible to 20.x.
11337
e1010ebe
SM
113382001-10-25 Stefan Monnier <monnier@cs.yale.edu>
11339
d73a471b
SM
11340 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
11341
d6da5a06
GM
11342 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
11343 boolean.
e1010ebe 11344
f66bd220
MB
113452001-10-25 Miles Bader <miles@gnu.org>
11346
11347 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
11348 BG is a pointer to a structure, not a structure.
11349 (gif_format, png_format): Add missing commas.
11350
d436d538
RS
113512001-10-24 Richard M. Stallman <rms@gnu.org>
11352
11353 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 11354 (syms_of_xfaces): Defsubr it.
d436d538 11355
f00691a3 113562001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
11357
11358 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
11359 variable `area'.
11360
f00691a3 113612001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 11362
c2d53558 11363 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 11364
e2a57b34
MB
113652001-10-25 Miles Bader <miles@gnu.org>
11366
11367 * dispextern.h (struct image): Add `background',
11368 `background_valid', and `background_transparent' fields.
11369 (image_background, image_background_transparent): New declarations.
11370 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
11371 * xfns.c (image_background, image_background_transparent)
11372 (four_corners_best): New functions.
c2d53558 11373 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
11374 (gs_format): Add `:background' entry.
11375 (lookup_image): Set IMG's background color if specified.
11376 (pbm_load, xbm_load_image, png_load): Set IMG's background field
11377 when appropriate.
11378 (x_clear_image_1): Reset `background_valid' and
11379 `background_transparent_valid' fields.
11380 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
11381 calculating it here. Set IMG's background_transparent field.
11382 (enum xpm_keyword_index): Add XPM_BACKGROUND.
11383 (enum png_keyword_index): Add PNG_BACKGROUND.
11384 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
11385 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
11386 (enum gif_keyword_index): Add GIF_BACKGROUND.
11387 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 11388 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
11389 Pre-calculate image background color where necessary.
11390 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
11391 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
11392 color to use for image glyph reliefs.
11393
b547b6e8
GM
113942001-10-24 Gerd Moellmann <gerd@gnu.org>
11395
d9e3b8c6
GM
11396 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
11397 in full-width rows.
c2d53558 11398
b547b6e8
GM
11399 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
11400 Fix clearing of area not covered by scroll bar.
11401
f00691a3 114022001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
11403
11404 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
11405 and `real_start'.
c2d53558 11406 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
11407 (glyph_rect): Remove unused variable `area'.
11408
76cb5e06
GM
114092001-10-24 Gerd Moellmann <gerd@gnu.org>
11410
bdbdebff 11411 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
11412
11413 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
11414 (row_containing_pos): Take additional argument DY.
11415 Treat rows ending in middle of char differently.
62e33982
GM
11416 (display_line): Handle tabs on window systems differently.
11417
11418 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
11419 with additional argument.
11420
11421 * dispextern.h (row_containing_pos): Adjust prototype.
11422
76cb5e06
GM
11423 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
11424 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
11425 (try_window_id, try_window_reusing_current_matrix)
11426 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 11427 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 11428
f00691a3 114292001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 11430
c9e60620
PJ
11431 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
11432 gnuemacs).
11433 (HAVE_BOXES): Fix typo in comment.
11434 (push_menu_pane): Fix typo in comment.
11435
3b552d56
PJ
11436 * xdisp.c: (display_prop_string_p): Remove unused local declaration
11437 of `Qwhen'.
11438 (single_display_prop_string_p): Remove unused local declarations
11439 of `Qwhen' and `Qmargin'.
11440 (string_buffer_position): Remove unused variable `around'.
11441 (store_frame_title): Remove unused variable `width'.
11442
15c565ac
PJ
11443 * window.c: Don't define max.
11444 (coordinates_in_window): Remove unused variable `uy'.
11445
a8818eb9
PJ
11446 * widget.c: Don't define max.
11447
996fee11
PJ
11448 * process.c: Don't define max.
11449 (create_process): Remove unused variable `buffer'.
11450
496e1a5b
GM
114512001-10-23 Gerd Moellmann <gerd@gnu.org>
11452
c2d53558 11453 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 11454
5905ae8b
EZ
114552001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
11456
11457 * xfaces.c (Finternal_set_lisp_face_attribute)
11458 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
11459 frame is on a windowed display.
11460
24db49fb
GM
114612001-10-23 Gerd Moellmann <gerd@gnu.org>
11462
c2d53558
SM
11463 * dispnew.c (sync_window_with_frame_matrix_rows):
11464 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
11465 of marginal areas.
11466
c2d53558 11467 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 11468
f0487f05
EZ
114692001-10-23 Andreas Schwab <schwab@suse.de>
11470
11471 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
11472 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
11473
f0a48a01
GM
114742001-10-23 Gerd Moellmann <gerd@gnu.org>
11475
c2d53558 11476 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
11477 REAL_END. Notice if cursor gets overwritten.
11478 (notice_overwritten_cursor): Take X positions as parameters.
11479 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
11480 around call to x_draw_glyphs.
11481
f00691a3 114822001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 11483
fc11dff0
PJ
11484 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
11485 instead of C) and usage.
a50a10a0 11486
fc11dff0
PJ
11487 * editfns.c (char-to-string): Fix argument names (use CHAR instead
11488 of C) and usage.
a50a10a0
PJ
11489
11490 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
11491 `left', `max_width' and `max_height'.
11492
8738febd
GM
114932001-10-23 Gerd Moellmann <gerd@gnu.org>
11494
11495 * xdisp.c (display_line): For a tab continued to the next line,
11496 set row's ends_in_middle_of_char_p.
11497
653c329b
GM
114982001-10-22 Gerd Moellmann <gerd@gnu.org>
11499
11500 * xdisp.c (display_line): Fix computation of continuation lines
11501 width for TABs.
11502
f00691a3 115032001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 11504
7ba51063
PJ
11505 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
11506 `Qlaplace'.
11507
f958c5ac
PJ
11508 * fileio.c: Remove unused code.
11509
eb360291
MB
115102001-10-22 Miles Bader <miles@gnu.org>
11511
11512 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
11513 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
11514 Remove `DOC_STRINGS_IN_COMMENTS' cases.
11515
98515cf0
JR
115162001-10-21 Jason Rumney <jasonr@gnu.org>
11517
11518 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
11519
93026d88
EZ
115202001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
11521
11522 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
11523 (Finsert_string): Avoid the multi-line string literals warning.
11524
c9a95b79
MB
115252001-10-22 Miles Bader <miles@gnu.org>
11526
11527 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
11528 (Fdocumentation): Don't use it.
11529 (syms_of_doc): Don't initialize it.
11530
11531 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
11532 * print.c (Fwith_output_to_temp_buffer): Likewise.
11533 * window.c (Fsave_window_excursion): Likewise.
c2d53558 11534 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 11535 (Fsave_restriction): Likewise.
c2d53558
SM
11536 * eval.c (Frun_hooks, Frun_hook_with_args)
11537 (Frun_hook_with_args_until_failure)
11538 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
11539 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
11540 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
11541 (Funwind_protect, Fcondition_case): Likewise.
11542 * coding.c (Ffind_operation_coding_system): Likewise.
11543 * keyboard.c (Ftrack_mouse): Likewise.
11544
a3b10252
MB
115452001-10-21 Miles Bader <miles@gnu.org>
11546
c2d53558 11547 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
11548 (Fmake_hash_table): Add usage: string to doc string.
11549 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 11550 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
11551 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
11552 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
11553 (Fml_prefix_argument_loop): Likewise.
11554
f00691a3 115552001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 11556
c2d53558 11557 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 11558
c6f73eec
PJ
11559 * sysdep.c (init_sys_modes): Change doc-string comments to `new
11560 style' [w/`doc:' keyword].
11561
11562 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
11563 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
11564 comments to `new style' [w/`doc:' keyword].
11565
3cf3436e
JR
115662001-10-21 Jason Rumney <jasonr@gnu.org>
11567
11568 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
11569
c169b8f1
JR
11570 * w32term.c (remember_mouse_glyph): New function.
11571 (w32_mouse_position): Use it.
11572 (note_mouse_movement): If the mouse moved off the glyph, remember
11573 its new position.
c2d53558 11574
4fdd691b
JR
11575 * w32term.h (struct w32_output): Correct spelling of x_compatible.
11576 (w32_display_info): Add mouse_face_overlay.
11577
c169b8f1
JR
11578 * w32term.c (notice_overwritten_cursor): Renamed from
11579 note_overwritten_text_cursor. Rewritten to take glyph widths into
11580 account.
11581 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
11582 (fast_find_string_pos): New function.
11583 (fast_find_position): Return the correct vpos. Add parameter
11584 STOP. In the final row, stop before glyphs having STOP as object.
11585 Don't consider glyphs that are not from a buffer.
11586 (fast_find_position) [0]: Add a presumably more correct version
11587 for after 21.1.
11588 (expose_window_tree, expose_frame): Don't compute intersections here.
11589 (expose_window): Do it here instead.
11590 (expose_window_tree, expose_window, expose_line): Return 1 when
11591 overwriting mouse-face.
11592 (expose_window): If W is the window currently being updated, mark
11593 the frame garbaged.
11594 (expose_frame): If mouse-face was overwritten, redo it.
11595 (x_use_underline_position_properties): New variable.
11596 (syms_of_xterm): DEFVAR_BOOL it.
11597 (x_draw_glyph_string): Add comment to use it in future.
11598 (x_draw_glyph_string): Restore clipping after drawing box.
11599 Fix a computation of the underline position.
11600 (w32_get_glyph_string_clip_rect): Minor cleanup.
11601 (x_fill_stretch_glyph_string): Remove an assertion.
11602 (x_produce_glyphs): Don't convert multibyte characters
11603 to unibyte characters in unibyte buffers.
11604 (cursor_in_mouse_face_p): New function.
11605 (x_draw_stretch_glyph_string): Use it to choose a different GC
11606 when drawing a cursor within highlighted text. Don't draw
11607 background again if it has already been drawn.
11608 (x_draw_glyph_string_box): Don't draw a full-width
11609 box just because the glyph row's full_width_p flag is set.
11610 (x_draw_glyphs): Fix computation of rightmost x for
11611 full-width rows.
11612 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
11613 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
11614 change bottom shadow accordingly. Some cleanup.
11615 (x_update_window_end): Handle overwritten mouse face
11616 also for tool bar windows.
11617 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
11618 DRAW is DRAW_IMAGE_RAISED.
11619 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
11620 actually redrawn. Make the function static.
11621 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
11622 optimize away highlighting if we pass over that same overlay again.
11623 (note_mouse_highlight): Call mouse_face_overlay_overlaps
11624 to detect a case where we have to highlight a different region
11625 despite not having left the currently highlighted region.
11626 Set mouse_face_overlay in the x_display_info. Avoid changing the
11627 mouse pointer shape when show_mouse_face has already done it, or
11628 there is no need. Handle mouse-face and help-echo in strings.
11629 (glyph_rect): New function.
11630 (w32_mouse_position): Use it to raise the threshold for mouse
11631 movement event generation.
11632 (w32_initialize_display_info): Initialize the x_display_info's
11633 mouse_face_overlay.
11634 (w32_set_vertical_scroll_bar): Don't clear a zero height
11635 or width area.
11636 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
11637 a widget to zero height.
11638
3cf3436e 11639 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 11640 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
11641 equivalents in menu_items.
11642 (w32_menu_show): Don't overwrite an item's name with its key
11643 description in case the description is a multibyte string.
11644 (single_submenu): Some cleanup.
11645
11646 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
11647 (postprocess_image): New function.
11648 (lookup_image): Call it for all image types except PostScript.
11649 (x_kill_gs_process): Call postprocess_image.
11650 (tiff_error_handler, tiff_warning_handler): New functions.
11651 (tiff_load): Install them as handlers.
11652 (x_kill_gs_process): Recognize if someone has cleared the image
11653 cache under us.
11654 (valid_image_p): Protect better against invalid image
11655 specifications. Previous code could signal an error.
11656 (Fx_hide_tip, Fshow_tip): Doc fix.
11657 (Fv_max_tooltip_size): New variable.
11658 (syns_of_xfns): DEFVAR_LISP it.
11659 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
11660 window buffer to *tip* right after creating the frame. Set frame's
11661 window_width. Use a maximum tooltip size specified by
11662 Vx_max_tooltip_size, if that has valid contents.
11663 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
11664 Make sure the tooltip is completely visible.
11665 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
11666 (Fx_create_frame): Adjust the frame's height for presence
11667 of the tool bar before calling x_figure_window_size.
11668 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
11669 when the window gets smaller.
11670 (x_set_foreground_color): Set frame's cursor_pixel.
11671 (x_set_foreground_color, x_set_background_color): Cleaned up.
11672 (x_set_font): Handle case of x_new_fontset returning the same name
11673 as before, although there was a change in fontsets.
11674
386ca361
MB
116752001-10-21 Miles Bader <miles@gnu.org>
11676
c2d53558 11677 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
11678 (Flogxor): Add usage: string to doc string.
11679 * charset.c (Fstring): Likewise.
11680 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
11681 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
11682
f00691a3 116832001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 11684
03be2694
PJ
11685 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
11686
11687 * alloc.c: Reindent DEFUNs with doc: keywords.
11688
11689 * abbrev.c (Finsert_abbrev_table_description): Reindent.
11690
14ff1ee0
PJ
11691 * frame.c: Change doc-string comments to `new style' [w/`doc:'
11692 keyword].
11693
2f147815 11694See ChangeLog.9 for earlier changes.
6922b018
KH
11695
11696;; Local Variables:
49b3bd82 11697;; coding: iso-2022-7bit
6922b018 11698;; End:
2a34a036 11699
2f147815 11700 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
11701 Copying and distribution of this file, with or without modification,
11702 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
11703
11704;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4