[__FreeBSD_version >= 400000]: Define TERMINFO, use -lncurses.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
27eeee55
MB
12003-08-19 Miles Bader <miles@gnu.org>
2
3 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
4
2f297815
GM
52003-08-19 Gerd Moellmann <gerd@gnu.org>
6
f4446bbf
GM
7 * alloc.c (lisp_align_malloc): Check for memory full when
8 allocating ablocks, which also avoids freeing a pointer into an
9 ablocks structure.
10
11 * puresize.h (BASE_PURESIZE): Increase to 1100000.
12
2f297815
GM
13 * buffer.c (Fmove_overlay): Set overlay's next pointer
14 unconditionally.
15
0e7d7aae
RS
162003-08-16 Richard M. Stallman <rms@gnu.org>
17
18 * editfns.c (Fencode_time): Doc fix.
19
202003-08-16 David Ponce <david@dponce.com>
21
22 * fileio.c (Fwrite_region): Fix conditional expression to issue
23 the right message.
24
252003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
26
27 * syntax.c (Fforward_word): Argument changed to optional.
28 Set default value to 1.
29
5d551295
KH
302003-08-15 Kenichi Handa <handa@m17n.org>
31
32 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
33 what autoscaled.
34 (best_matching_font): Once we find a better scalable font, set
35 non_scalable_has_exact_height_p to 1.
36 (try_font_list): Call try_alternative_families to try any family
37 with the given registry.
38
1661e56b
AS
392003-08-09 Andreas Schwab <schwab@suse.de>
40
f29181dc
AS
41 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
42
1661e56b
AS
43 * print.c (print_string): Fix printing of multibyte string with
44 nontrivial printcharfun.
45
465aa50a
JD
462003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
47
48 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
49
50 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
51
e430e5ba
KH
522003-07-31 Kenichi Handa <handa@m17n.org>
53
54 * process.c (read_process_output): Return the actually read bytes
55 instead of the result of decoding.
56
97e7188e
KH
572003-07-31 Kenichi Handa <handa@m17n.org>
58
59 * xterm.h (struct x_bitmap_record): New member have_mask.
60
61 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
62 to 0.
63 (x_create_bitmap_from_file): Likewise.
64 (x_destroy_bitmap): Check have_mask member before freeing a mask.
65 (x_destroy_all_bitmaps): Likewise.
66 (x_create_bitmap_mask): Set have_mask member to 1.
67
b53094d6
RS
682003-07-30 Richard M. Stallman <rms@gnu.org>
69
70 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
71
631f2082
JD
722003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
73
74 * gtkutil.c (xg_mark_data): Update calls to mark_object.
75
c855f2ca
RS
762003-07-29 Richard M. Stallman <rms@gnu.org>
77
78 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
79 Conditionalize XIM code on HAVE_XIM.
80
81 * fns.c (Fclear_string): New function.
82 (syms_of_fns): defsubr it.
83
17e6d491
KH
842003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
85
86 * xfns.c (xic_set_preeditarea): Add the left fringe width to
87 spot.x.
88
29ea8ae9
SM
892003-07-22 Stefan Monnier <monnier@cs.yale.edu>
90
91 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
92
93 * buffer.c (delete_all_overlays): New function.
94 * buffer.h (delete_all_overlays): Declare.
95 * coding.c (run_pre_post_conversion_on_str):
96 * print.c (temp_output_buffer_setup):
97 * fileio.c (Finsert_file_contents):
98 * minibuf.c (get_minibuffer): Use it.
99
1dd7ccf2
AC
1002003-07-22 Andrew Choi <akochoi@shaw.ca>
101
102 * unexmacosx.c (unexec_regions_sort_compare):
103 (unexec_regions_merge): New functions. Sort and merge unexec
104 regions before dumping them.
105
f57bd967
DL
1062003-07-22 Dave Love <fx@gnu.org>
107
108 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
109
7cdee936
SM
1102003-07-21 Stefan Monnier <monnier@cs.yale.edu>
111
112 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
113 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
114 MARKBIT as the gcmarkbit for strings.
115
e50886d3
RS
1162003-07-21 Richard M. Stallman <rms@gnu.org>
117
118 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
119
29ea8ae9 120 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
121 (syms_of_fns): Corresponding change.
122
123 * alloc.c (syms_of_alloc): Doc fixes.
124
1252003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
126
127 * s/netbsd.h: Use -Wl syntax.
128
fdc39b59
RS
1292003-07-17 Richard M. Stallman <rms@gnu.org>
130
131 * xterm.c (xim_initialize): Redo 6/24 change.
132
9c53385f
SM
1332003-07-15 Stefan Monnier <monnier@cs.yale.edu>
134
135 * buffer.c (copy_overlays): Use EMACS_INT for positions.
136 (Fswitch_to_buffer): Don't signal an error when switching to the same
137 buffer in a dedicated window.
138
139 * alloc.c: Use bitmaps for cons, as was done for floats.
140 (init_float, init_cons): Let the normal code allocate the first block.
141 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
142 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
143 New macros.
144 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
145 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
146 (live_cons_p): Check the pointer is not past the `conses' array.
147 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
148 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
149 (survives_gc_p): Use CONS_MARKED_P and simplify.
150 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
151
dde13196
PE
1522003-07-13 Paul Eggert <eggert@twinsun.com>
153
154 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
155 puts it into BSS instead, at least on Solaris 8 and 9.
156 This is a valid optimization, and it may occur on other platforms,
157 so Emacs should not assume that initializing a static variable to
158 zero puts it into data.
159 * alloc.c (pure, staticvec):
160 Initialize these arrays to nonzero, so that they're not
161 put into BSS by that optimization.
162
a801bc34
SM
1632003-07-13 Stefan Monnier <monnier@cs.yale.edu>
164
165 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
166 (lisp_align_malloc): Use posix_memalign is available.
167 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
168 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
169 for consistency. Update users.
170
0c8b2afa
RS
1712003-07-13 Richard M. Stallman <rms@gnu.org>
172
173 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
174
668c2ab0
JB
1752003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
176
177 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
178 and use the Gtk+ function gtk_window_icon_from_file if available.
179
180 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
181 handle mask of bitmaps.
182 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
183 mask property.
184 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
185
186 * xterm.h (xg_set_icon): New function.
187
800bebe3
RS
1882003-07-12 Paul Eggert <eggert@twinsun.com>
189
190 * unexelf.c (unexec): Consider a section to precede the .bss
191 section if its addresses overlap that of .bss.
192
69e38995
RS
1932003-07-12 Richard M. Stallman <rms@gnu.org>
194
195 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
196
197 * config.in (HAVE_CRTIN): Add #undef.
198 (INLINE): Really inline only if OPTIMIZE is defined.
199
200 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
201 END_FILES_1.
202 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 203 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
204
205 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
206 (TERMINFO): Define.
207 (LIBS_TERMCAP): Define.
208 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
209
210 * xfns.c: Include libpng/png.h instead of png.h.
211
f1d0c238
AS
2122003-07-11 Andreas Schwab <schwab@suse.de>
213
214 * buffer.c (modify_overlay): Update prototype.
215 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
216 Likewise.
217
5f6bf5fe
SM
2182003-07-09 Stefan Monnier <monnier@cs.yale.edu>
219
220 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
221 (struct interval): Move to intervals.h.
222 (struct Lisp_Marker): Use EMACS_INT for position info.
223 (forward_point): Remove prototype of defunct function.
224 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
225 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
226 (syms_of_textprop, set_text_properties): Remove prototypes that are
227 already in intervals.h.
228
229 * intervals.h (struct interval): Move from lisp.h.
230 Use EMACS_INT for position and size info.
231
232 * coding.c: Include intervals.h for Fset_text_properties.
233
234 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
235 position and length information.
236
2765b457
SM
2372003-07-09 Stefan Monnier <monnier@cs.yale.edu>
238
239 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
240 position and length information.
241
2410d73a
SM
2422003-07-09 Stefan Monnier <monnier@cs.yale.edu>
243
244 Change overlays_after and overlays_before so the overlays themselves
245 are linked into lists, rather than using cons cells. After all each
246 Lisp_Misc already occupies 5 words, so we can add a `next' field to
247 Lisp_Overlay for free and save up one cons cell per overlay (not
248 to mention one indirection when traversing the list of overlay).
249
250 * lisp.h (struct Lisp_Overlay): New field `next'.
251
252 * buffer.h (struct buffer): Change overlays_before and overlays_after
253 from Lisp lists of overlays to pointers to overlays.
254
255 * buffer.c (overlay_strings, recenter_overlay_lists):
256 Fix typo in eassert in last commit.
257 (unchain_overlay): New function.
258 (add_overlay_mod_hooklist): Use AREF.
259 (copy_overlays, reset_buffer, overlays_at, overlays_in)
260 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
261 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
262 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
263 (report_overlay_modification, evaporate_overlays, init_buffer_once):
264 Adjust to new type of overlays_(before|after).
265
266 * alloc.c (mark_object): Mark the new `next' field of overlays.
267 (mark_buffer): Manually mark the overlays_(after|before) fields.
268
269 * coding.c (run_pre_post_conversion_on_str):
270 * editfns.c (overlays_around):
271 * xdisp.c (load_overlay_strings):
272 * fileio.c (Finsert_file_contents):
273 * indent.c (current_column):
274 * insdel.c (signal_before_change, signal_after_change):
275 * intervals.c (set_point_both):
276 * print.c (temp_output_buffer_setup): Use new type for
277 overlays_(before|after).
278
04812929
SM
2792003-07-08 Stefan Monnier <monnier@cs.yale.edu>
280
281 * buffer.c (report_overlay_modification): Don't run hooks while
282 traversing the list of overlays.
283
284 * buffer.h (struct buffer): Use an int for overlay_center.
285 (overlays_at, evaporate_overlays, recenter_overlay_lists)
286 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
287
288 * buffer.c (reset_buffer, recenter_overlay_lists)
289 (adjust_overlays_for_insert, adjust_overlays_for_delete)
290 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
291 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
292 (overlays_at, evaporate_overlays, recenter_overlay_lists)
293 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
294
295 * xdisp.c (fast_find_position): Remove unused var.
296
297 * cmds.c (Qexpand_abbrev): New sym.
298 (syms_of_cmds): Initialize it.
299 (internal_self_insert): Use it to call expand-abbrev.
300
2e7ecf15
KS
3012003-07-09 Kim F. Storm <storm@cua.dk>
302
303 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
304 was configured with --without-xim.
42f81f64 305 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 306
c6de56a0
RS
3072003-07-07 Richard M. Stallman <rms@gnu.org>
308
309 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
310
311 * alloc.c (Fgarbage_collect): Doc fix.
312
b93fb365
KH
3132003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
314
315 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
316
bfe1a3f7
SM
3172003-07-06 Stefan Monnier <monnier@cs.yale.edu>
318
04812929
SM
319 * minibuf.c (read_minibuf): UNGCPRO before returning.
320 (Ftry_completion, Fall_completions): Doc fix.
321
bfe1a3f7
SM
322 * alloc.c (live_float_p): Check that p is not past the `floats' array,
323 now that `floats' is not the last element of the struct any more.
324
ee79d1aa
JR
3252003-07-06 Jason Rumney <jasonr@gnu.org>
326
327 * w32term.h (ClipboardSequence_Proc): New type.
328
329 * w32fns.c (clipboard_sequence_fn): New variable.
330 (globals_of_w32fns): Initialize it.
331
332 * w32select.c (last_clipboard_sequence_number): New variable.
333 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
334 number if possible.
335
49723c04
SM
3362003-07-06 Stefan Monnier <monnier@cs.yale.edu>
337
4698665f
SM
338 * m/amdx86-64.h (MARKBIT):
339 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
340 MARKBIT and ARRAY_MARK_FLAG any more.
341
342 * m/hp800.h (XSETMARKBIT):
343 * m/sr2k.h (XSETMARKBIT):
344 * lisp.h (XSETMARKBIT): Remove unused macro.
345
49723c04
SM
346 * lisp.h (mark_object): Change prototype.
347
348 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
349 (last_marked): Change accordingly.
350 (mark_interval, mark_maybe_object, mark_maybe_pointer)
351 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
352 (mark_buffer): Update calls to mark_object.
353
354 * bytecode.c (mark_byte_stack):
355 * fns.c (sweep_weak_table):
356 * keyboard.c (mark_kboards): Update calls to mark_object.
357
1d660eca
JR
3582003-07-06 Jason Rumney <jasonr@gnu.org>
359
360 * alloc.c (struct ablock): Only include padding when there is some.
361
618b5ae4
SM
3622003-07-04 Stefan Monnier <monnier@cs.yale.edu>
363
364 * alloc.c (ALIGN): Add casts to simplify usage.
365 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
366 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
367 (struct ablock, struct ablocks): New types.
368 (free_ablock): New global var.
369 (lisp_align_malloc, lisp_align_free): New functions.
370 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
371 (struct float_block): Reorder and add gcmarkbits.
372 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
373 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
374 (init_float, make_float): Use lisp_align_malloc.
375 (free_float, live_float_p): Don't use `type' any more.
376 (make_float): Use FLOAT_UNMARK to access to mark bit.
377 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
378 Use FLOAT_MARKED_P to access the mark bit.
379 (pure_alloc): Simplify use of ALIGN.
380 (mark_object): Use FLOAT_MARK to access the mark bit.
381 (gc_sweep): Use new macros to access the float's mark bit.
382 (init_alloc_once): Init free_ablock.
383
384 * lisp.h (struct Lisp_Float): Remove unused field `type'.
385
3ef06d12
SM
3862003-06-27 Stefan Monnier <monnier@cs.yale.edu>
387
388 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
389 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
390 (allocate_buffer): Move.
391 (string_bytes): Don't mask markbit of `size_byte'.
392 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
393 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
394 Use the `size' field of buffers (rather than the `name' field) for
395 the mark bit, as is done for all other vectorlike objects.
396 Use the new macros to access the mark bit of vectorlike objects.
397
e81043aa
RS
3982003-06-26 Richard M. Stallman <rms@gnu.org>
399
400 * puresize.h (BASE_PURESIZE): Increment base size.
401
402 * xdisp.c (fast_find_position): Enable Gerd's new definition.
403
404 * xterm.c (xim_initialize): Undo previous change.
405
2d0834cc
SM
4062003-06-26 Stefan Monnier <monnier@cs.yale.edu>
407
408 * alloc.c (survives_gc_p): Simplify.
409
410 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
411
412 * window.c (Fset_window_dedicated_p): Simplify.
413 (display_buffer_1): Don't raise the win from which minibuf was entered.
414 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
415 (Fminibuffer_selected_window): Simplify.
416
417 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
418
419 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
420 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
421
422 * insdel.c (check_markers, adjust_markers_for_delete)
423 (adjust_markers_for_insert, adjust_markers_for_replace)
424 (prepare_to_modify_buffer, RESTORE_VALUE):
425 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
426 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
427 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
428 * alloc.c (Fmake_marker, free_marker, gc_sweep):
429 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
430 * editfns.c (save_excursion_restore, transpose_markers):
431 * window.c (delete_window):
432 * xdisp.c (message_dolog): Update for new types.
433
d54ae3d8
JD
4342003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
435
a5f696ac
JD
436 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
437 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 438 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
439
440 * frame.c (make_frame): Initialize default_face_done_p.
441
442 * frame.h (struct frame): Add default_face_done_p.
443
d54ae3d8
JD
444 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
445 will be defined.
446
2336fe58
SM
4472003-06-25 Stefan Monnier <monnier@cs.yale.edu>
448
449 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
450 Initialize the new field `gcmarkbit'.
451 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
452 (mark_interval_tree): Don't mark the tree separately from the nodes.
453 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
454 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
455 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
456
457 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
458 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
459 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
460 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
461 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
462
bcea31c2
DL
4632003-06-24 Dave Love <fx@gnu.org>
464
465 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
466
467 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
468 from gnulib.
469
2601f59e
RS
4702003-06-21 Richard M. Stallman <rms@gnu.org>
471
472 * fileio.c (Fwrite_region): Alternate messages
473 for append and partial write.
474
475 * keyboard.c (read_key_sequence): When converting upcase fn key to
476 downcase, update fkey and keytran so `backspace' gets translated.
477
478 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
479
480 * process.c (wait_reading_process_input): Don't signal SIGIO
481 in batch mode.
482
b5d2c621
KH
4832003-06-17 Kenichi Handa <handa@m17n.org>
484
485 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
486 composite.h.
487
488 * xselect.c: Don't include charset.h, coding.h, composite.h.
489 (Qforeign_selection): New variable.
490 (syms_of_xselect): Intern and static it.
491 (selection_data_to_lisp_data): Return a unibyte string made from
492 data with `foreign-selection' text property.
493
6793bc63
SM
4942003-06-15 Stefan Monnier <monnier@cs.yale.edu>
495
496 * termhooks.h (EVENT_INIT): New macro.
497
498 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
499
500 * alloc.c (mark_kboards): Move to keyboard.c.
501
502 * keyboard.c (record_asynch_buffer_change, read_avail_input):
503 * xterm.c (x_dispatch_event):
504 * xmenu.c (find_and_call_menu_selection):
505 * xdisp.c (handle_tool_bar_click):
506 * w32menu.c (menubar_selection_callback):
507 * sysdep.c (kbd_input_ast, read_input_waiting):
508 * msdos.c (dos_rawgetc):
509 * macterm.c (mac_check_for_quit_char):
510 * macmenu.c (menubar_selection_callback):
511 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
512 data to kbd_buffer_store_event.
513
b3ea810c
KS
5142003-06-15 Kim F. Storm <storm@cua.dk>
515
516 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 517 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 518
b8f75eda
KG
5192003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
520
521 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
522
ba92ce48
KH
5232003-06-12 Kenichi Handa <handa@m17n.org>
524
525 * fileio.c (Fwrite_region): Save and restore restriction.
526
b80263be
DL
5272003-06-12 Dave Love <fx@gnu.org>
528
529 * alloca.c (alloca): Declare arg as size_t.
530
6793bc63
SM
531 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
532 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 533
b23c0a83
DL
5342003-06-11 Dave Love <fx@gnu.org>
535
536 * search.c (shrink_regexp_cache): Use xrealloc.
537 (syms_of_search): Use xmalloc.
538
700e47c2
KS
5392003-06-10 Kim F. Storm <storm@cua.dk>
540
541 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
542 Adjust phys_cursor.x to be relative to window box, rather than
543 text area before checking -- to ensure cursor is redrawn when
544 exposing window.
545 Note: This also fixes a similar (older) bug if display margins
546 are present.
547
f11aa0b2
KH
5482003-06-06 Kenichi Handa <handa@m17n.org>
549
550 * coding.c (encoding_buffer_size): If coding->type is
551 coding_type_ccl, double magnification on CRLF encoding.
552
3d143690
JR
5532003-06-06 Jason Rumney <jasonr@gnu.org>
554
555 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
556 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
557
558 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
559 Mac too.
560
f16205ca
DL
5612003-06-05 Dave Love <fx@gnu.org>
562
b23c0a83
DL
563 * strftime.c: Merge changes from gnulib.
564
f16205ca
DL
565 * mktime.c (__mktime_internal): Merge changes from gnulib
566 involving year 69 and dst2.
567
568 Changes to merge with gnulib version and be consistent with the
569 autoconf test:
570
6793bc63
SM
571 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
572 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
573 [HAVE_LOCALE_H]: Include locale.h.
574 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
575
9b87a0bc
KS
5762003-06-05 Kim F. Storm <storm@cua.dk>
577
578 * window.c (coordinates_in_window): Convert X and Y to window
579 relative coordinates inside mode-line and header-line parts.
580 Convert X and Y to margin area relative coordinates inside left
581 and right display margin parts.
582
5a8a15ec
JR
5832003-06-05 Jason Rumney <jasonr@gnu.org>
584
585 * w32fns.c (add_system_logical_colors_to_map): New function.
586 (Fx_open_connection): Use it.
587
01ed8ff1
SM
5882003-06-04 Stefan Monnier <monnier@cs.yale.edu>
589
590 * process.c (allocate_pty): Revert part of the previous patch.
591 (Faccept_process_output): Simplify.
592
b427b65d
JR
5932003-06-04 Jason Rumney <jasonr@gnu.org>
594
595 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
596
597 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
598 (lispy_mouse_wheel_names): Remove.
599 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
600 Always define drag_and_drop_syms.
601
602 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
603 WHEEL_EVENT events.
604
914a8c47
SM
6052003-06-03 Stefan Monnier <monnier@cs.yale.edu>
606
01ed8ff1
SM
607 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
608
914a8c47
SM
609 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
610
adcb132c
JD
6112003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
612
613 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
614 menu item label.
615
be781fa7
RS
6162003-06-03 Richard M. Stallman <rms@gnu.org>
617
618 * window.c (Fwindow_edges): Doc fix.
619 (Fwindow_pixel_edges, Fwindow_inside_edges)
620 (Fwindow_inside_pixel_edges): New functions.
621 (syms_of_window): defsubr them.
622
623 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
624 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
625
914a8c47
SM
6262003-06-02 Stefan Monnier <monnier@cs.yale.edu>
627
628 * dispnew.c (Fsit_for): Don't lie about the number of args.
629
5b07197a
DL
6302003-06-02 Dave Love <fx@gnu.org>
631
632 * callproc.c: Use HAVE_FCNTL_H, not USG5.
633 (syms_of_callproc) <process-environment>: Doc fix.
634
635 * doc.c: Use HAVE_FCNTL_H, not USG5.
636
637 * xfaces.c (font_rescale_ratio): Fix for K&R.
638
639 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
640
641 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
642
643 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
644
645 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
646 (xg_create_frame_widgets): Use ENCODE_UTF_8.
647
648 * xterm.c (Qutf_8): Moved to coding.c
649
650 * xmenu.c (ENCODE_MENU_STRING): New.
651 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
652 Use it.
653
654 * coding.h (ENCODE_UTF_8): New.
655 (Qutf_8): Declare.
656
657 * coding.c (Qutf_8): New.
658 (syms_of_coding): Intern it.
659
660 * fns.c: Doc fixes.
661
7335b336
KH
6622003-06-02 Kenichi Handa <handa@m17n.org>
663
664 * buffer.c (Fset_buffer_multibyte): Fix previous change.
665
914a8c47
SM
6662003-06-01 Stefan Monnier <monnier@cs.yale.edu>
667
668 * lread.c (openp): Make sure STR is a string.
669
9862c135
JR
6702003-06-01 David Ponce <david@dponce.com>
671
672 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
673 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
674
675 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
676 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
677 (discard_mouse_events): Discard WHEEL_EVENT events too.
678 (lispy_wheel_names, wheel_syms): New.
679 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
680 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
681 defined.
914a8c47 682 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
683
684 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
685 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
686 WHEEL_EVENT events.
687
f984e73e
JPW
6882003-05-31 John Paul Wallington <jpw@gnu.org>
689
690 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
691 timer are in lisp/emacs-lisp.
692
1efcd78f
KH
6932003-05-31 Kenichi Handa <handa@m17n.org>
694
458c8af4
KH
695 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
696 region when a buffer is changed to unibyte.
697
1efcd78f
KH
698 * charset.h (VALID_LEADING_CODE_P): New macro.
699 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
700
778e2804
KH
701 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
702 is nonzero, accept multibyte form of eight-bit-control chars.
703 (decode_composition_emacs_mule): Likewise.
704 (decode_coding_emacs_mule): Likewise.
705 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
706 multibyte form of eight-bit-control chars.
707
708 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
709 (Finsert_file_contents): If coding-system-for-read is bound to
710 Qauto_save_coding, use the coding system emacs-mule with special
711 setting for recovering a file.
712 (choose_write_coding_system): On auto saving, use the coding
713 system emacs-mule with special setting for auto saving.
714 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
715
034060e4
KH
7162003-05-30 Kenichi Handa <handa@m17n.org>
717
718 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
719 properly before calling ccl_driver.
720
778e2804 721 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
722
723 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
724 nonzero.
725 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
726 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
727
595f5aa5
GM
7282003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
729
730 * xfaces.c (realize_default_face): Do not abort if lface is
731 non-existent - reverts change from 2003-05-19.
732
103e0180
KH
7332003-05-29 Kenichi Handa <handa@m17n.org>
734
735 * coding.c (decode_coding_iso2022): Pay attention to the byte
736 sequence of CTEXT extended segment, and retain those bytes as is.
737
7382003-05-28 Kenichi Handa <handa@m17n.org>
739
740 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
741 of CODING_REPLACEMENT_CHARACTER.
742 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
743 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
744 check this flag on encoding.
745 (encode_coding_sjis_big5): Check
746 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
747 (Fset_terminal_coding_system_internal): Set
748 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
749 instead of setting CODING_FLAG_ISO_SAFE flag in
750 terminal_coding.flags.
751
752 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
753 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
754 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
755
ff6a3bfb 7562003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 757
ff6a3bfb
RS
758 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
759
760 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 761
1963c428
KS
7622003-05-28 Kim F. Storm <storm@cua.dk>
763
764 * xdisp.c (expose_window): Fix error in calculation of
765 window relative coordinates of area to redisplay.
766
2b5d4601
JR
7672003-05-27 Jason Rumney <jasonr@gnu.org>
768
769 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
770
1c64a4a2
JB
7712003-05-27 David Ponce <david@dponce.com>
772
773 Handle W32 mouse wheel events as mouse click events, like in X.
774
775 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
776 MOUSE_WHEEL_EVENT anymore.
777
778 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
779 Scrolling down/up the mouse wheel is respectively mapped to mouse
780 button 4 and 5.
781 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
782 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
783 WM_MOUSEWHEEL events.
784
2d031b89
AS
7852003-05-27 Andreas Schwab <schwab@suse.de>
786
20464fdf
AS
787 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
788
2d031b89
AS
789 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
790 partially visible line.
791
792 * alloc.c (Fgarbage_collect): Fix last change.
793
97bc76d4
JPW
7942003-05-26 John Paul Wallington <jpw@gnu.org>
795
796 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
797
56613f06
SM
7982003-05-25 Stefan Monnier <monnier@cs.yale.edu>
799
800 * window.c (Fset_window_buffer): Add type of `keep_margins'.
801 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
802
803 * window.h (window_box_text_cols): Declare.
804
805 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
806 (x_draw_vertical_border): Remove unused var `f'.
807
808 * xfaces.c (build_scalable_font_name): Remove `unused var
809 pixel_size' warning.
810
811 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
812
813 * unexelf.c (unexec): Remove `unused var n' warning.
814
815 * strftime.c (my_strftime_localtime_r): Remove `defined but
816 unused' warning.
817
818 * process.c (allocate_pty): Remove `unused var stb' and
819 `cp might be used uninitialized' warnings.
820
821 * dispnew.c (mode_line_string): Remove unused var `f'.
822
823 * coding.c (find_safe_codings): Remove unused var `i'.
824
825 * bytecode.c (Fbyte_code): Remove `unused val' warning.
826
827 * buffer.c (Fkill_buffer): Remove unused var `list'.
828
829 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
830
93421a1f
JD
8312003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
832
833 * frame.c (make_frame): Condition want_fullscreen with
834 HAVE_WINDOW_SYSTEM.
835
c4b8aebc
JB
8362003-05-25 Juanma Barranquero <lektu@terra.es>
837
838 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
839 (Fwindow_scroll_bars): Fix typo in docstring.
840
0416870b
KS
8412003-05-24 Kim F. Storm <storm@cua.dk>
842
843 The following changes serve several purposes:
844
845 1) Swap the position of fringes and display margins in windows, i.e.
846 the fringes are now displayed between the margins and the text area
847 (by default).
848
849 2) Allow fringe and scroll bar parameters to be set per-buffer and
850 per-window (like display margins). Such settings are now stored
851 in window configurations, preserved when frames are resized, and
9018a88e 852 copied when windows are split vertically or horizontally.
0416870b
KS
853 Several bugs related to display margins have been fixed.
854
855 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 856
0416870b
KS
857 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
858 rather than FRAME_WIDTH (FRAME_FONT (f)).
859
860 5) Introduce a consistent naming of variables, members and macros
861 depending on whether their value is measured in pixels or in
862 canonical columns/lines. Pixel dimensions are named *_width and
863 *_height, while canonical columns/lines are named *_cols and
864 *_lines. Pixel positions are named *_x and *_y, while column/line
865 positions are named *_col and *_line.
866
867 6) Consolidate more of the X, W32, and MAC gui code by moving
868 common data into struct frame, and generalize it for the non-gui
869 case by using suitable defaults.
870
871 7) Cleanup and consolidate the macros controlling frame and window
872 layout into frame.h and window.h, and generalize the use of the
873 various window_box_* functions (enhanced to handle the new fringe
874 position and the per-window fringe and scroll bar settings).
875
876 * frame.h (struct frame): Rename members height to text_lines,
877 width to text_cols, window_height to total_lines, window_width to
878 total_cols, new_height to new_text_lines, new_width to
879 new_text_cols. All uses changed.
880 (struct frame): New members which consolidate common members of
881 x_output, w32_output, and mac_output structures: left_pos,
882 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
883 win_gravity, size_hint_flags, border_width, internal_border_width,
884 line_height, fringe_cols, left_fringe_width, right_fringe_width,
885 want_fullscreen. All uses changed.
886 (struct frame): New member column_width contaning the canonical
887 column width, analogue to line_height. All uses changed.
888 (struct frame): Rename members scroll_bar_pixel_width to
889 config_scroll_bar_width, and scroll_bar_cols to
890 config_scroll_bar_cols. All uses changed.
891 (struct frame): New member scroll_bar_actual_width which
892 consolidates and renames the vertical_scroll_bar_extra member of
893 x_output, w32_output, and mac_output structures. All uses changed.
894 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
895 from x/w32/macterm.h files. All uses changed. Also change code
896 which referred to f->output_data...->pixel_height.
897 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
898 from x/w32/macterm.h files. All uses changed. Also change code
899 which referred to f->output_data...->pixel_width.
900 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
901 Also change code which referred to f->height.
902 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
903 Also change code which referred to f->width.
904 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
905 to update new_text_lines and new_text_cols members directly.
906 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
907 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
908 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
909 FRAME_SCROLL_BAR_COLS. All uses changed.
910 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
911 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
912 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
913 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
914 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
915 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
916 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
917 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
918 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
919 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
920 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
921 return line_height member (it now has proper value also for
922 non-window frames).
923 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
924 return new column_width member (rather than the default font width).
925 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
926 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
927 from x/w32/macterm.h files. Unconditionally return corresponding
928 member of frame structure (they now have proper values also for
929 non-window frames).
930 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
931 Calculate return value from left and right widths.
932 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
933 internal_border_width member (has proper value for non-window frame).
934 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
935 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
936 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
937 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
938 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
939 consolidated from xterm.h, macterm.h, and w32term.h.
940 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
941 consolidated from xterm.h, macterm.h, and w32term.h.
942 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
943 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
944 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
945 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
946 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
947 consolidated from x/mac/w32term.h.
948 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
949 consolidated from x/mac/w32term.h.
950 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
951 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
952 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
953 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
954
955 * window.h (struct window): Rename members left to left_col,
956 top to top_line, height to total_lines, width to total_cols,
957 left_margin_width to left_margin_cols, right_margin_width to
958 right_margin_cols, orig_height to orig_total_lines, orig_top to
959 orig_top_line. All uses changed.
960 (struct window): New members left_fringe_width, right_fringe_width,
961 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
962 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
963 New macros primarily used to simplify other macros.
964 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
965 referred to XINT (w->width).
966 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
967 referred to XINT (w->height).
968 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
969 referred to XINT (w->width) * canon_x_unit.
970 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
971 referred to XINT (w->height) * canon_y_unit.
972 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
973 referred to XINT (w->left).
974 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
975 all uses and code that referred to XINT (w->left) + XINT (w->width).
976 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
977 referred to XINT (w->top).
978 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
979 referred to XINT (w->top) + XINT (w->height).
980 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
981 referred to XINT (w->left) * canon_x_unit.
982 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
983 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
984 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
985 referred to XINT (w->top) * canon_y_unit.
986 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
987 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
988 (WINDOW_LEFTMOST_P): New macro.
989 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
990 All uses changed.
991 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
992 All uses changed.
993 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
994 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
995 Do not exclude left fringe width.
996 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
997 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
998 Do not exclude fringe widths.
999 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
1000 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
1001 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
1002 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
1003 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
1004 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
1005 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
1006 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
1007 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
1008 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
1009 New macros. Change code which referenced corresponding
1010 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
1011 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
1012 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
1013 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
1014 allow per-window scroll-bar settings.
1015 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
1016 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
1017 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
1018 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
1019 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
1020 FRAME_SCROLL_BAR_WIDTH.
1021 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 1022 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
1023 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
1024 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
1025 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
1026 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
1027 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
1028 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
1029 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
1030 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
1031 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
1032 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
1033 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
1034 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
1035 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
1036 (window_from_coordinates): Update prototype.
1037 (Fset_window_buffer): Update EXFUN.
1038 (set_window_buffer): Update prototype.
9018a88e 1039
0416870b 1040 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 1041 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
1042 changed.
1043 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
1044 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
1045 internal_border_width is now set to 0 for non-window frames.
1046 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
1047 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
1048 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
1049 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
1050 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
1051 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
1052 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
1053 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
1054 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 1055 Move to window.h and renamed [see window.h changes].
0416870b
KS
1056 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
1057 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
1058 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
1059 Use WINDOW_TOTAL_LINES.
0416870b
KS
1060 (frame_update_line_height): Remove prototype.
1061
1062 * buffer.h (struct buffer): Rename members measured in columns:
1063 left_margin_width to left_margin_cols, right_margin_width to
1064 right_margin_cols. All uses changed.
1065 New members left_fringe_width, right_fringe_width,
1066 fringes_outside_margins for per-buffer fringe settings.
1067 New members scroll_bar_width and vertical_scroll_bar_type for
1068 per-buffer scroll bar settings.
1069
1070 * buffer.c (init_buffer_once): Set buffer_defaults and
1071 buffer_local_flags for new buffer-local variables
1072 left_fringe_width, right_fringe_width, fringes_outside_margins,
1073 scroll_bar_width, and vertical_scroll_bar_type.
1074 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
1075 default-* variables for them.
1076
1077 * dispnew.c: Make (many) trivial substitutions for renamed and
1078 new macros in dispextern.h, frame.h and window.h.
1079 (mode_line_string): No need to adjust width for mode lines, as it
1080 is already adjusted by the caller.
1081 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 1082
0416870b
KS
1083 * frame.c: Make (many) trivial substitutions for renamed and
1084 new macros in dispextern.h, frame.h and window.h.
1085 (make_frame): Initialize left_fringe_width, right_fringe_width,
1086 fringe_cols, scroll_bar_actual_width, border_width,
1087 internal_border_width, column_width, line_height, x_pixels_diff,
1088 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
1089 members with values suitable for a non-window frames.
1090
1091 * gtkutil.c: Make (many) trivial substitutions for renamed and
1092 new macros in dispextern.h, frame.h and window.h.
9018a88e 1093
0416870b
KS
1094 * indent.c: Make (few) trivial substitutions for renamed and
1095 new macros in dispextern.h, frame.h and window.h.
1096
1097 * keyboard.c: Make (many) trivial substitutions for renamed and
1098 new macros in dispextern.h, frame.h and window.h.
1099 (make_lispy_event): Use window positions returned from
1100 window_from_coordinates when constructing the lisp event for
1101 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
1102 (incorrect) values locally.
1103 (make_lispy_movement): Use window positions returned from
1104 window_from_coordinates when constructing the lisp event, rather
1105 than calculating (incorrect) values locally.
1106
1107 * scroll.c: Make (some) trivial substitutions for renamed and
1108 new macros in dispextern.h, frame.h and window.h.
1109
1110 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
1111 scroll-bars.
1112
1113 * sysdep.c: Make (few) trivial substitutions for renamed and
1114 new macros in dispextern.h, frame.h and window.h.
1115
1116 * term.c: Make (some) trivial substitutions for renamed and
1117 new macros in dispextern.h, frame.h and window.h.
1118
1119 * widget.c: Make (few) trivial substitutions for renamed and
1120 new macros in dispextern.h, frame.h and window.h.
1121
1122 * window.c: Make (many) trivial substitutions for renamed and
1123 new macros in dispextern.h, frame.h and window.h.
1124 (make_window): Initialize new members
1125 left_margin_cols, right_margin_cols, left_fringe_width,
1126 right_fringe_width, fringes_outside_margins, scroll_bar_width,
1127 and vertical_scroll_bar_type.
1128 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 1129 and per-window fringes and scroll-bars.
0416870b 1130 Fix bug related to incorrectly adjusting coordinates by
9018a88e 1131 frame's internal_border_width (the effect normally negible since
0416870b
KS
1132 the internal_border_width is typically 0 or 1 pixel, but very
1133 noticeable for an internal_border_width of e.g. 25 pixels).
1134 Upon successful return (other than ON_NOTHING), the coordinates
1135 are now always properly converted to window relative for the
1136 given display element.
1137 (window_from_coordinates): Add new parameters wx and wy to
1138 return the window relative x and y position in the returned
1139 window and part. A null arg means, don't return the position.
1140 All callers changed.
1141 (adjust_window_margins): New function which may reduce the width
1142 of the display margins if a window's text area is too small after
1143 resizing or splitting windows.
1144 (size_window): Fix bug that did not account for display margin
1145 widths when checking the minimum width of a window; use
1146 adjust_window_margins.
1147 (set_window_buffer): Call Fset_window_fringes and
1148 Fset_window_scroll_bars to setup per-window elements.
1149 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
1150 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
1151 (e.g. after splitting a window or resizing the frame).
1152 All callers changed.
0416870b
KS
1153 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
1154 (Fsplit_window): Duplicate original window's display margin,
1155 fringe, and scroll-bar settings; then call Fset_window_buffer with
1156 KEEP_MARGINS non-nil. This fixes a bug which caused a split
1157 window to only preserve the display margins in one of the windows.
c4b8aebc 1158 When splitting horizontally, call adjust_window_margins on both
0416870b
KS
1159 windows to ensure that the text area of the new windows is non too
1160 narrow. This fixes a bug which could cause emacs to trap if the
1161 width of the split window was less than the width of the display
1162 margins.
9018a88e
SM
1163 (window_box_text_cols): Renamed from window_internal_width.
1164 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
1165 Fix bug that caused vertical separator to be subtracted also on
1166 window frames. Fix another bug that did not reduce the returned
1167 value by the columns used for display margins.
1168 (window_scroll_line_based): Fix bug related to scrolling too much
1169 when display margins are present (implicitly fixed by the fix to
1170 window_box_text_cols).
1171 (scroll_left, scroll_right): Fix bug related to scrolling too far
1172 by default when display margins are present (implicitly fixed by
1173 the fix to window_box_text_cols).
1174 (struct saved_window): Rename members left to left_col, top to
1175 top_line, width to total_cols, height to total_lines, orig_top to
1176 orig_top_line, orig_height to orig_total_lines. All uses changed.
1177 New members left_margin_cols, right_margin_cols,
1178 left_fringe_width, right_fringe_width, fringes_outside_margins,
1179 scroll_bar_width, and vertical_scroll_bar_type for saving
1180 per-window display elements.
1181 (Fset_window_configuration): Restore display margins, fringes,
1182 and scroll bar settings. This fixes a bug which caused display
1183 margins to be discarded when saving and restoring a window
1184 configuration.
1185 (save_window_save): Save display margins, fringes, and scroll bar
1186 settings. This fixes a bug which caused display margins to be
1187 discarded when saving and restoring a window configuration.
1188 (Fset_window_margins): Do nothing if display margins are not
1189 really changed. Otherwise, call adjust_window_margins to ensure
1190 the text area doesn't get too narrow. This fixes a bug which
1191 could cause emacs to trap if setting display margins wider than
1192 the width of the window.
1193 (Fset_window_fringes): New defun to allow user to specifically set
1194 this window's fringe widths and position vs. display margins.
1195 (Fwindow_fringes): New defun to return window's actual fringe
1196 settings.
1197 (Fset_window_scroll_bars): New defun to allow user to specifically
1198 set this window's scroll bar width and position.
1199 (Fwindow_scroll_bars): New defun to return window's actual scroll
1200 bar settings.
1201 (compare_window_configurations): Also compare display margins,
1202 fringes, and scroll bar settings.
1203 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
1204
1205 * xdisp.c: Make (many) trivial substitutions for renamed and
1206 new macros in dispextern.h, frame.h and window.h.
1207 (window_box_width): Adapt to per-window fringes and scroll bars,
1208 and new fringe vs. display margin position. Note that returned
1209 value is no longer guaranteed to be a whole multiple of the frame
1210 column width, since per-window fringes may now be any width.
1211 (window_box_left_offset): New function like window_box_left, but
1212 value is relative to left border of window (rather than frame).
1213 (window_box_right_offset): New function like window_box_right,
1214 but value is relative to left border of window.
1215 (window_box_left): Adapt to per-window fringes and scroll bars,
1216 and new fringe vs. display margin position. Simplify by using
1217 WINDOW_LEFT_EDGE_X and window_box_left_offset.
1218 (window_box): Allow null args for unnecessary return values;
1219 change/simplify relevant callers.
1220 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
1221 and new fringe vs. display margin position.
1222 Use window_box_left_offset and window_box_right_offset
0416870b 1223 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
1224 scroll bars, and new fringe vs. display margin position.
1225 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
1226 (draw_fringe_bitmap): Rework to handle per-window fringes and new
1227 fringe vs. display margin position.
1228 (hscroll_window_tree): Use window_box_width instead of window_box.
1229 (redisplay_window): Adapt to per-window scroll bars.
1230 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
1231 bars, and new fringe vs. display margin position.
1232 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
0416870b
KS
1233 (x_clear_end_of_line): Adapt to per-window fringes and scroll
1234 bars, and new fringe vs. display margin position. Fix bug which
1235 increased total width of full_width rows by width of scroll bars
1236 although window's total width already includes that.
1237 (x_fix_overlapping_area): Simplify using window_box_left_offset.
1238 (expose_area): Simplify using window_box_left_offset.
1239 (x_draw_vertical_border): Handle per-window scroll bar settings,
1240 mixing windows with left, right and no scroll bars.
1241
1242 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
1243 where it's used in x_list_fonts (for clarity).
1244 (frame_update_line_height): Remove unused function; functionality
1245 is now done directly when setting the default font in x_set_font.
1246
1247 * xfns.c: Make (many) trivial substitutions for renamed and
1248 new macros in dispextern.h, frame.h and window.h.
1249
1250 * xmenu.c: Make (some) trivial substitutions for renamed and
1251 new macros in dispextern.h, frame.h and window.h.
1252
1253 * xterm.h (struct x_output): Move members left_pos, top_pos,
1254 border_width, pixel_height, pixel_width, line_height,
1255 internal_border_width, vertical_scroll_bar_extra,
1256 left_fringe_width, right_fringe_width, fringe_cols,
1257 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
1258 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
1259 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
1260 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
1261 (PIXEL_WIDTH, PIXEL_HEIGHT)
1262 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
1263 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
1264 frame.h and renamed [see frame.h changes].
1265 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
1266 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
1267 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
1268 and renamed [see frame.h changes].
9018a88e 1269
0416870b
KS
1270 * xterm.c: Make (several) trivial substitutions for renamed and
1271 new macros in dispextern.h, frame.h and window.h.
1272 (x_draw_glyph_string_box): Adapt to per-window fringes and
1273 scroll-bars.
1274 (scroll_run): Adapt to new fringe position.
1275 (glyph_rect): Use window coordinates returned from
1276 window_from_coordinates rather than frame_to_window_pixel_xy.
1277 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
1278 scroll-bars.
1279 (handle_one_xevent): Simplify a USE_GTK conditional.
1280 (x_clip_to_row): Remove superfluous whole_line_p arg and code
1281 (fringes are now inside margins, i.e. always in the clipping area).
1282 All callers changed.
1283 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
1284 directly, then call compute_fringe_widths. Don't call
1285 frame_update_line_height.
1286
1287 * w32term.h (struct w32_output): Move members left_pos, top_pos,
1288 border_width, pixel_height, pixel_width, line_height,
1289 internal_border_width, vertical_scroll_bar_extra,
1290 left_fringe_width, right_fringe_width, fringe_cols,
1291 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
1292 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
1293 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
1294 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
1295 (PIXEL_WIDTH, PIXEL_HEIGHT)
1296 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
1297 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
1298 frame.h and renamed [see frame.h changes].
1299 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
1300 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
1301 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
1302 and renamed [see frame.h changes].
9018a88e 1303
0416870b
KS
1304 * w32term.c: Make (several) trivial substitutions for renamed and
1305 new macros in dispextern.h, frame.h and window.h.
1306 (x_draw_glyph_string_box): Adapt to per-window fringes and
1307 scroll-bars.
1308 (glyph_rect): Use window coordinates returned from
1309 window_from_coordinates rather than frame_to_window_pixel_xy.
1310 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
1311 scroll-bars.
1312 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
1313 (fringes are now inside margins, i.e. always in the clipping area).
1314 All callers changed.
1315 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
1316 directly, then call compute_fringe_widths. Don't call
1317 frame_update_line_height.
1318
1319 * w32console.c: Make (few) trivial substitutions for renamed and
1320 new macros in dispextern.h, frame.h and window.h.
1321
1322 * w32fns.c: Make (many) trivial substitutions for renamed and
1323 new macros in dispextern.h, frame.h and window.h.
1324
1325 * w32menu.c: Make (few) trivial substitutions for renamed and
1326 new macros in dispextern.h, frame.h and window.h.
1327
1328 * macterm.h (struct mac_output): Move members left_pos, top_pos,
1329 border_width, pixel_height, pixel_width, line_height,
1330 internal_border_width, vertical_scroll_bar_extra,
1331 left_fringe_width, right_fringe_width, fringe_cols,
1332 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
1333 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
1334 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
1335 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
1336 (PIXEL_WIDTH, PIXEL_HEIGHT)
1337 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
1338 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
1339 frame.h and renamed [see frame.h changes].
1340 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
1341 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
1342 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
1343 and renamed [see frame.h changes].
9018a88e 1344
0416870b
KS
1345 * macterm.c: Make (several) trivial substitutions for renamed and
1346 new macros in dispextern.h, frame.h and window.h.
1347 (x_draw_glyph_string_box): Adapt to per-window fringes and
1348 scroll-bars.
1349 (glyph_rect): Use window coordinates returned from
1350 window_from_coordinates rather than frame_to_window_pixel_xy.
1351 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
1352 scroll-bars.
1353 (x_clip_to_row): Remove superfluous whole_line_p arg and code
1354 (fringes are now inside margins, i.e. always in the clipping area).
1355 All callers changed.
1356 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
1357 directly, then call compute_fringe_widths. Don't call
1358 frame_update_line_height.
1359
1360 * macfns.c: Make (several) trivial substitutions for renamed and
1361 new macros in dispextern.h, frame.h and window.h.
9018a88e 1362 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
1363
1364 * macmenu.c: Make (few) trivial substitutions for renamed and
1365 new macros in dispextern.h, frame.h and window.h.
1366
1367 * msdos.h (struct x_output): Remove members left_pos, top_pos,
1368 and line_height, and use corresponding new members in struct
1369 frame. All uses changed.
1370 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
1371 superseeded by corresponding macros in frame.h.
1372
1373 * msdos.c: Make (several) trivial substitutions for renamed and
1374 new macros in dispextern.h, frame.h and window.h.
1375 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 1376 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
1377 (internal_terminal_init): No need to initialize line_height here;
1378 it now defaults to 1.
1379
9018a88e
SM
13802003-05-24 Stefan Monnier <monnier@cs.yale.edu>
1381
1382 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
1383 dropping `down' events.
1384
016bd3c0
AS
13852003-05-24 Andreas Schwab <schwab@suse.de>
1386
1387 * coding.c (find_safe_codings): Fix last change.
1388
4dacadcc
TTN
13892003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
1390
1391 * xfns.c (x_window): Fix typo from 2003-05-21 change.
1392
319830ce
SM
13932003-05-23 Stefan Monnier <monnier@cs.yale.edu>
1394
9018a88e
SM
1395 * xdisp.c (display_mode_element): Increase max depth.
1396 Simplify the error handling code. Use a different error string
1397 for the case where we hit the depth limit.
1398
319830ce
SM
1399 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
1400
1401 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
1402
14032003-05-21 Stefan Monnier <monnier@cs.yale.edu>
1404
1405 * intervals.c (get_local_map): Don't get char-property of previous
1406 point any more: get_pos_property already does it and better.
1407
c67de8ba
DL
14082003-05-21 Dave Love <fx@gnu.org>
1409
1410 [Merged from unicode branch.]
1411
1412 * xfns.c (x_window, x_window): Use use_xim.
1413
1414 * xterm.c (use_xim): Initialize.
1415 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
1416 (x_term_init): Maybe set use_xim.
1417
1418 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
1419
edd3ff1d
JR
14202003-05-21 Jason Rumney <jasonr@gnu.org>
1421
1422 * unexw32.c (_start): Remove _fmode initialization.
1423
1424 * emacs.c (main) [WINDOWSNT]: Move it here.
1425
463f55ee
DL
14262003-05-20 Dave Love <fx@gnu.org>
1427
1428 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
1429
af253914
RS
14302003-05-19 Richard M. Stallman <rms@gnu.org>
1431
1432 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
1433 as value for QCfont attribute.
1434 (realize_default_face): lface should already exist; crash if not.
1435 Specify 0 for FORCE_P when calling set_lface_from_font_name.
1436
1437 * frame.c (Fignore_event): Doc fix.
1438
1d211019
KH
14392003-05-19 Kenichi Handa <handa@m17n.org>
1440
1441 * coding.c (decode_coding_string): Handle post-read-conversion
1442 even if the coding doesn't require decoding.
1443
4dd68254
RS
14442003-05-18 Richard M. Stallman <rms@gnu.org>
1445
1446 * callproc.c (Fcall_process_region): Doc fix.
1447
14d87dc9
SM
14482003-05-17 Stefan Monnier <monnier@cs.yale.edu>
1449
deca5d96
SM
1450 * lread.c (Fload): Print a message if package is obsolete.
1451
14d87dc9
SM
1452 * window.c (Fselect_window): Add optional `norecord' arg.
1453 (select_window_1): Fold into Fselect_window.
1454 (select_window_norecord): New function.
1455 (temp_output_buffer_show): Use it. Preserve current buffer.
1456
1457 * window.h (Fselect_window): Update declaration.
1458
1459 * window.c (delete_window, Fother_window, Fset_window_configuration):
1460 * minibuf.c (read_minibuf):
1461 * macterm.c (x_new_focus_frame):
1462 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
1463 * callint.c (Fcall_interactively):
1464 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
1465
1466 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
1467
78f52183
DK
14682003-05-17 David Kastrup <dak@gnu.org>
1469
1470 * process.c (read_process_output): Back out change from 2003-03-09.
1471
14d87dc9
SM
14722003-05-17 Stefan Monnier <monnier@cs.yale.edu>
1473
1474 * editfns.c (get_pos_property): Don't assume that `object' = nil.
1475
1476 * textprop.c (text_property_stickiness): New arg `buffer'.
1477
1478 * intervals.h (text_property_stickiness): New arg `buffer'.
1479 (get_pos_property): Declare.
1480
1481 * intervals.c (get_local_map): Use get_pos_property, to obey
1482 stickiness and empty overlays.
1483 (create_root_interval, graft_intervals_into_buffer): Use BEG.
1484 (merge_properties, intervals_equal, merge_properties_sticky):
1485 Use XCAR, XCDR.
1486 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
1487
1fd1cc2f
RS
14882003-05-17 Richard M. Stallman <rms@gnu.org>
1489
4f9f637a
RS
1490 * minibuf.c (read_minibuf): If buffer is empty, record the default
1491 in the history.
1492 (Fminibuffer_complete_word): When deleting the overlap, take account
1493 of its real position.
1494
1495 * fns.c (map_char_table): Fix previous change.
1496
1fd1cc2f
RS
1497 * syntax.c (find_defun_start):
1498 When open_paren_in_column_0_is_defun_start,
1499 return beginning of buffer.
1500
1501 * lisp.h (map_char_table): Declare added arg.
1502
1503 * fns.c (map_char_table): New arg TABLE gets the master table.
1504 All calls changed.
1505 Process default and inheritance, resorting to Faref if necessary.
1506
1507 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
1508 (Faccessible_keymaps): Pass new arg to map_char_table.
1509
1510 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
1511
1512 * casetab.c (set_case_table): Pass new arg to map_char_table.
1513
1514 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
1515
1516 * lisp.h (specbinding_func): New typedef.
1517 (struct specbinding): Use specbinding_func, to put the `volatile'
1518 in the right place.
1519
1520 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
1521 to avoid GCC warning.
14d87dc9 1522
b4bd27c5
RS
15232003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
1524
14d87dc9 1525 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 1526
35fb885d
SM
15272003-05-15 Stefan Monnier <monnier@cs.yale.edu>
1528
1529 * keyboard.c (apply_modifiers): Don't fill the other cache.
1530
9a274fbd
SM
15312003-05-14 Stefan Monnier <monnier@cs.yale.edu>
1532
c55b5fad
SM
1533 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
1534
9a274fbd
SM
1535 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
1536 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
1537 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
1538 (Fset_window_configuration, Fcurrent_window_configuration)
1539 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
1540 (Fpos_visible_in_window_p, mark_window_cursors_off)
1541 (window_internal_height, window_internal_width, Frecenter)
1542 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
1543 (replace_buffer_in_all_windows, init_window_once, init_window)
1544 (syms_of_window, keys_of_window): Move from lisp.h.
1545 * lisp.h: Move window.c declarations to window.h.
1546
1547 * bytecode.c: Include window.h.
1548 * emacs.c: Include window.h.
1549
14d87dc9 1550 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
1551 (keyremap): Add `parent' field.
1552 (keyremap_step): Use it. Remove `parent' argument.
1553 (read_key_sequence): Setup and use the new `parent' field.
1554
fd93e331
SM
15552003-05-11 Stefan Monnier <monnier@cs.yale.edu>
1556
1557 * keyboard.c (adjust_point_for_property): Ensure termination.
1558
1c4001a1
SM
15592003-05-10 Stefan Monnier <monnier@cs.yale.edu>
1560
1561 * keyboard.c (follow_key): Remove dead variable `did_meta'.
1562 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
1563 duplicated handling of function-key-map and key-translation-map
1564 in read_key_sequence.
1565 (read_key_sequence): Use them.
1566
1567 * keyboard.c (adjust_point_for_property): Try harder to move point
1568 to the non-sticky end of an invisible property.
1569
1570 * xdisp.c (single_display_prop_intangible_p): Make `space' display
1571 property intangible as well.
1572
780379b1
AS
15732003-05-10 Andreas Schwab <schwab@suse.de>
1574
1575 * xmenu.c (single_menu_item): Change last parameter to void* to
1576 avoid warning.
1577
ca2de342
RS
15782003-05-09 Richard M. Stallman <rms@gnu.org>
1579
1580 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
1581 Bind Qinhibit_modification_hooks to t so there will be no GC.
1582 Rename local `tem' to `save_deactivate_mark'.
1583
1584 * eval.c (specpdl_ptr): Declare volatile.
1585 (unbind_to): Copy the whole binding and decrement specpdl_ptr
1586 before doing the work of unbinding it.
1587
1588 * lisp.h (struct specbinding): Declare elements volatile.
1589 (specpdl_ptr): Declare volatile.
1590
1591 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
1592
1593 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
1594 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
1595
347003be
DL
15962003-05-08 Dave Love <fx@gnu.org>
1597
1598 * coding.c (Vlast_coding_system_used): Doc fix.
1599
5adcec23
JR
16002003-05-07 Jason Rumney <jasonr@gnu.org>
1601
1602 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
1603 when system does not support them.
1604
5fe3b8a4
SM
16052003-05-05 Stefan Monnier <monnier@cs.yale.edu>
1606
1607 * fileio.c (Qwrite_region_annotate_functions): New var.
1608 (build_annotations): Use it to process the global part of the hook.
1609 (syms_of_fileio): Init and staticpro it.
1610
1611 * keyboard.c (safe_run_hooks_error): Display a message instead of
1612 silently ignoring the error.
1613
16142003-05-03 Stefan Monnier <monnier@cs.yale.edu>
1615
1616 * keyboard.c (input_available_signal): Mark static.
1617 (menu_bar_items): Use map_keymap.
1618 (menu_bar_one_keymap): Remove.
1619 (menu_bar_item): Adjust arglist (for use in map_keymap).
1620 Properly hide a second binding when not both are keymaps.
1621
1622 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
1623 (single_keymap_panes): Use it and map_keymap.
1624 (single_menu_item): Use skp as well.
1625
1626 * keymap.h (map_keymap_function_t): New type.
1627 (map_keymap): Declare.
1628
1629 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
1630 (map_keymap_call, Fmap_keymap): New functions.
1631 (syms_of_keymap): Defsubr map-keymap.
1632
4b1b4443
JD
16332003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1634
1635 * gtkutil.c (create_dialog, make_widget_for_menu_item)
1636 (make_menu_item, create_menus, xg_update_menu_item): Don't call
1637 ..._with_mnemonic functions for menu items.
1638
1f816871
KH
16392003-05-01 Kenichi Handa <handa@m17n.org>
1640
1641 * coding.c (coding_system_accept_latin_extra_p): Delete this
1642 function.
1643 (find_safe_codings): Pay attention to
1644 the property tranlsation-table-for-encode of each codings.
1645 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
1646
5ed6ba5b
SM
16472003-05-01 Stefan Monnier <monnier@cs.yale.edu>
1648
1649 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
1650
32c06229
SM
16512003-04-30 Stefan Monnier <monnier@cs.yale.edu>
1652
1653 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
1654
1655 * lisp.h (CHECK): Wrap args in parenthesis.
1656 (specbind): Fix doc: symbol = Qnil is not supported any more.
1657
1658 * bytecode.c (Fbyte_code) <unwind-protect>:
1659 Use Fprogn rather than 0 and Qnil.
1660
1661 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
1662 `double', and `triple' modifiers as well.
1663
ed3c3314
RS
16642003-04-30 Richard M. Stallman <rms@gnu.org>
1665
1666 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
1667
1668 * alloc.c (abort_on_gc): New variable.
1669 (Fgarbage_collect): Abort if abort_on_gc is set.
1670
1671 * lisp.h (abort_on_gc): Add decl.
1672
1673 * eval.c (Fsignal): Clear abort_on_gc.
1674
1675 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 1676 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
1677
1678 * xdisp.c (move_it_vertically_backward): Do the final big else
1679 even if nlines is 0.
1680
1681 * xdisp.c (redisplay_internal): Finish the per-frame loop
1682 even if redisplay is suspended by input.
1683
0b325c12
AC
16842003-04-24 Andrew Choi <akochoi@shaw.ca>
1685
1686 * macterm.c (x_list_fonts): Return all fonts that match if
1687 maxnames = -1.
1688
4e837cd0
KH
16892003-04-25 Kenichi Handa <handa@m17n.org>
1690
1691 * syntax.c (skip_chars): Fix previous change.
1692
9af7511a
KH
16932003-04-24 Kenichi Handa <handa@m17n.org>
1694
1695 * syntax.c (skip_chars): Make the code faster by using the common
1696 technique of *p, *stop, and *endp.
1697
e3b2c21f
JD
16982003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1699
1700 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 1701 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
1702 being updated.
1703
32c06229
SM
17042003-04-19 Stefan Monnier <monnier@cs.yale.edu>
1705
1706 * eval.c (Fapply): Undo last change and add a comment about why.
1707
c6464167
MB
17082003-04-18 Miles Bader <miles@gnu.org>
1709
1710 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
1711 pickier PARSE_MULTIBYTE_SEQ.
1712
e509f168
SM
17132003-04-17 Stefan Monnier <monnier@cs.yale.edu>
1714
1715 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
1716 Use XCDR, XCAR, CONSP.
1717 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
1718 (Fapply): Remove unnecessary GCPRO.
1719
1720 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
1721
1722 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
1723
1724 * buffer.h: Don't hardcode BEG==1.
1725
1726 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
1727
5ceea398
RS
17282003-04-16 Richard M. Stallman <rms@gnu.org>
1729
1730 * xdisp.c (try_window, try_window_reusing_current_matrix):
1731 When at end of window, set window_end_pos to Z-ZV.
1732
1733 * buffer.c (Foverlay_recenter): Doc fix.
1734
e509f168
SM
17352003-04-14 Stefan Monnier <monnier@cs.yale.edu>
1736
1737 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
1738
d243e605
AC
17392003-04-14 Andrew Choi <akochoi@shaw.ca>
1740
1741 * macterm.c (mac_check_for_quit_char): Don't check more often than
1742 once a second.
1743
6901b111
SM
17442003-04-11 Stefan Monnier <monnier@cs.yale.edu>
1745
1746 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
1747 specially, so that they can't hide an implicit switch-frame event.
1748 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
1749 (head_table): Use switch-frame as event_kind for select-window.
1750 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
1751
1752 * editfns.c (Fformat): Lisp_Object/int mixup.
1753 (format2): Remove unused var numargs.
1754
e301806f 17552003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 1756
6901b111 1757 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
1758 (Qafter_insert_file_set_coding): New variable.
1759 (syms_of_fileio): Initialize and staticpro it. Delete declaration
1760 for after-insert-file-adjust-coding-function.
1761 (Finsert_file_contents): Call Qafter_insert_file_set_coding
1762 instead of Vafter_insert_file_adjust_coding_function.
1763
38914424
KH
17642003-04-11 Kenichi Handa <handa@m17n.org>
1765
1766 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
1767
1768 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
1769 string. Callers changed.
1770
17712003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 1772
6901b111 1773 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 1774 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
1775 (Finsert_file_contents):
1776 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
1777 decode-format.
1778
f979dc05
JD
17792003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1780
1781 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
1782 get GtkAdjustment as widget now is a GtkRange.
1783
1784 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
1785 GtkRange to avoid memory leak.
1786
f8c6b4c2 17872003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 1788
50ebc53d
KH
1789 * xfaces.c (Vface_font_rescale_alist): New variable.
1790 (struct font_name): New member rescale_ratio.
1791 (font_rescale_ratio): New function.
6901b111 1792 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
1793 (better_font_p): On comparing point sized, pay attention to
1794 recale_ratio member of fonts.
1795 (build_scalable_font_name): Reflect font->rescale_ratio in the
1796 font name.
6901b111 1797 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 1798
cb98871c
KH
1799 * lread.c (read1): Before calling index, check if the 2nd
1800 arguemnt is in ASCII range.
1801
4773b8ca
RS
18022003-04-08 Richard M. Stallman <rms@gnu.org>
1803
b0ada147
RS
1804 * fileio.c (Ffile_symlink_p): Doc fix.
1805
1806 * editfns.c (Fformat): Translate positions of text properties
1807 in the format string to apply them to the result.
1808
4773b8ca
RS
1809 * fileio.c (Finsert_file_contents): Doc fix.
1810 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
1811
18122003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 1813
4773b8ca
RS
1814 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
1815
e8f25745 18162003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 1817
e8f25745
ST
1818 * mac.c (init_mac_osx_environment): Switch libexec and bin so
1819 that self-contained application finds libexec files.
1820
f8c6b4c2 18212003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 1822
6901b111
SM
1823 * coding.c (code_convert_region_unwind):
1824 Set Vlast_coding_system_used to the argument.
2310d84c
KH
1825 (code_convert_region): If post-read-conversion function changed
1826 the value of last-coding-sytem, keep the new value in
1827 coding->symbol so that it won't be overridden.
1828 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
1829 (coding_system_accept_latin_extra_p): New function.
1830 (find_safe_codings): Pay attention to characters registered in
1831 latin-extra-code-table.
2310d84c 1832
39c9a034
TTN
18332003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
1834
1835 * Makefile.in (md5.o): Add missing dependency info.
1836
eb67c5d6
RS
18372003-04-06 Richard M. Stallman <rms@gnu.org>
1838
1839 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
1840
1841 * marker.c (verify_bytepos): New function.
1842
1843 * intervals.c (set_intervals_multibyte_1): When becoming
1844 multibyte, adjust right and left child sizes to a whole set of
1845 characters. If an interval gets zero total-length, delete it.
1846 If an interval consists of just its children, delete one of them.
1847
1848 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
1849 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 1850
eb67c5d6
RS
1851 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
1852 All calls deleted.
1853 (lisp_malloc): Do the work here directly.
1854
b1f81fc5
JB
18552003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
1856
1857 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
1858 char tables.
1859
18602003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
1861
1862 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
1863 destructively change "%S" to "%s".
1864
774666fb
MB
18652003-04-03 Miles Bader <miles@gnu.org>
1866
1867 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
1868 always set.
1869
19c37f01
DL
18702003-04-01 Dave Love <fx@gnu.org>
1871
1872 * xfns.c (xpm_lookup_color): Grok "opaque".
1873
2f4b24c3
AC
18742003-03-31 Andrew Choi <akochoi@shaw.ca>
1875
1876 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
1877 parent window ID.
1878
1879 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
1880
1881 * macterm.h (struct mac_output): Define x_pixels_diff and
1882 y_pixels_diff.
b1f81fc5 1883
9443fcf6
JB
18842003-03-31 Juanma Barranquero <lektu@terra.es>
1885
1886 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
1887 blockinput.h and files included from it.
1888
e072891b
KS
18892003-03-31 Kim F. Storm <storm@cua.dk>
1890
1891 The following changes consolidates the common code related to
1892 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
1893 files into frame.c.
9443fcf6 1894
e072891b
KS
1895 * frame.c: Include blockinput.h.
1896 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
1897 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
1898 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
1899 related vars here.
1900 (struct frame_parm_table, frame_parms): New table for describing
1901 frame parameters and their associated Q-variable.
1902 The order of the parameters corresponds to the sequence of the
1903 frame_parm_handlers table in redisplay_interface.
1904 (x_fullscreen_move, x_set_frame_parameters)
1905 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
1906 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
1907 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
1908 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
1909 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
1910 Generic functions for processing of frame parameters.
1911 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
1912 (display_x_get_resource, x_get_resource_string): Functions for
1913 generic access to X resources.
1914 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
1915 (x_default_parameter, Fx_parse_geometry): Functions for generic
1916 access to frame parameters.
6901b111
SM
1917 (x_figure_window_size): Generic calculation of frame size.
1918 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
1919 (syms_of_frame): Intern and staticpro frame parameter variables.
1920 Defvar_lisp Vx_resource_class and Vx_resource_name here.
1921 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 1922
e072891b
KS
1923 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
1924 parameter related vars defined in frame.c.
1925 (EMACS_CLASS): Define here.
1926 (enum FULLSCREEN_*): Define here.
1927 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
1928 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
1929 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
1930 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
1931 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
1932 (x_set_visibility, x_set_autoraise, x_set_autolower)
1933 (x_set_unsplittable, x_set_vertical_scroll_bars)
1934 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
1935 (x_figure_window_size): Add prototypes.
1936
1937 * dispextern.h (frame_parm_handler): New typedef.
1938 (struct redisplay_interface): New member frame_parm_handlers.
1939 (enum resource_types): Move declaration here.
1940 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
1941 (x_default_parameter): Add prototypes.
1942
1943 * window.c: Remove extern decl for frame parameter vars.
1944 (change_window_heights): New generic function;
1945 replaces x_change_window_heights. All users changed.
1946
1947 * window.h (change_window_heights): Add prototype.
1948
1949 * xfaces.c: Remove extern decl for frame parameter vars.
1950
1951 * xterm.h (EMACS_CLASS): Remove. Use generic define.
1952 (struct w32_display_info): Fix type of xrdb member.
1953 (enum FULLSCREEN_*): Remove.
1954 Remove prototypes for generic functions (in frame.h).
1955
1956 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
1957 parameters now defined in frame.h and frame.c.
1958 (Vx_resource_name): Remove. Use generic var.
1959 (enum x_frame_parms): Remove (bogus, unused enum).
1960 (check_x_display_info): Make non-static (for frame.c).
1961 (struct x_frame_parm_table, x_frame_parms): Remove.
1962 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
1963 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
1964 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
1965 (x_change_window_heights, x_set_autoraise, x_set_autolower)
1966 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
1967 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
1968 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
1969 Remove. Use generic functions instead.
1970 (enum resource_types): Remove.
1971 (x_set_scroll_bar_default_width): New global function (for frame.c).
1972 (Fx_create_frame): Depend on x_figure_window_size to add space for
1973 toolbar and setup size_hint_flags.
1974 (x_frame_parm_handlers): New table for redisplay_interface.
1975 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 1976
e072891b
KS
1977 * xterm.c: Remove unnecessary extern declarations.
1978 (x_fullscreen_adjust): Remove. Use generic instead.
1979 (x_redisplay_interface): Add x_frame_parm_handlers member.
1980
1981 * w32gui.h (XrmDatabase): New (dummy) typedef.
1982
1983 * w32term.h (EMACS_CLASS): Remove. Use generic define.
1984 (struct w32_display_info): Fix type of xrdb member.
1985 (enum FULLSCREEN_*): Remove.
1986 (x_fullscreen_adjust): Remove prototype.
1987
1988 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
1989 parameters now defined in frame.h and frame.c.
1990 (Vx_resource_name): Remove. Use generic var.
1991 (enum x_frame_parms): Remove (bogus, unused enum).
1992 (check_x_display_info): Make non-static (for frame.c).
1993 (struct x_frame_parm_table, x_frame_parms): Remove.
1994 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
1995 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
1996 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
1997 (x_change_window_heights, x_set_autoraise, x_set_autolower)
1998 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
1999 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
2000 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
2001 Remove. Use generic functions instead.
2002 (enum resource_types): Remove.
2003 (x_set_scroll_bar_default_width): New global function (for frame.c).
2004 (Fx_create_frame): Depend on x_figure_window_size to add space for
2005 toolbar and setup size_hint_flags.
2006 (w32_frame_parm_handlers): New table for redisplay_interface.
2007 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 2008
e072891b
KS
2009 * w32term.c: Remove unnecessary extern declarations.
2010 (x_fullscreen_adjust): Remove. Use generic instead.
2011 (x_redisplay_interface): Add w32_frame_parm_handlers member.
2012
2013 * w32reg.c (x_get_string_resource): Use XrmDatabase.
2014
2015 * macgui.h (XrmDatabase): New (dummy) typedef.
2016
2017 * macterm.h (EMACS_CLASS): Remove.
2018 (struct mac_display_info): Add xrdb member.
2019 (struct mac_output): Add want_fullscreen member.
2020
2021 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
2022 parameters now defined in frame.h and frame.c.
2023 (Vx_resource_name): Remove. Use generic var.
2024 (check_x_display_info): Make non-static (for frame.c).
2025 (struct x_frame_parm_table, x_frame_parms): Remove.
2026 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
2027 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
2028 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
2029 (x_change_window_heights, x_set_autoraise, x_set_autolower)
2030 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
2031 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
2032 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
2033 Remove. Use generic functions instead.
2034 (enum resource_types): Remove.
2035 (x_set_scroll_bar_default_width): New global function (for frame.c).
2036 (mac_frame_parm_handlers): New table for redisplay_interface.
2037 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 2038
e072891b
KS
2039 * macterm.c: Remove unnecessary extern declarations.
2040 (x_redisplay_interface): Add mac_frame_parm_handlers member.
2041
3e6a560b
KS
2042 * Makefile.in (frame.o): Add dependency on blockinput.h and files
2043 included from it (atimer.h and systime.h).
2044
7b7b454e
AS
20452003-03-30 Andreas Schwab <schwab@suse.de>
2046
2047 * xdisp.c (x_insert_glyphs): Fix swapped width and height
2048 parameters for shift_glyphs_for_insert.
2049
2050 * macterm.c (x_redisplay_interface): Add missing entry for
2051 draw_vertical_window_border.
2052
beb402de
KG
20532003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
2054
2055 * fileio.c (Fexpand_file_name): In the no-handler case, after
2056 expanding, look again for a handler and invoke it. This is needed
2057 for filenames like "/foo/../user@host:/bar/../baz" -- the first
2058 expansion produces "/user@host:/bar/../baz" which needs to be
2059 expanded again for the finame result "/user@host:/baz".
2060
b676f356
JD
20612003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2062
2063 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
2064 of area to be redrawn for better performance.
2065
3c671a56
SM
20662003-03-28 Stefan Monnier <monnier@cs.yale.edu>
2067
2068 * xterm.c (take_vertical_position_into_account): Remove.
2069 (xt_action_hook): Call set_vertical_scroll_bar if needed.
2070 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
2071 (xm_scroll_callback, x_create_toolkit_scroll_bar)
2072 (x_set_toolkit_scroll_bar_thumb): Simplify.
2073 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
2074 (XTread_socket): Remove unused var.
2075 (x_make_frame_invisible): Replace goto with else.
2076
2077 * xdisp.c (set_vertical_scroll_bar): New fun.
2078 (redisplay_window): Use it.
2079
84f2e615
RS
20802003-03-26 Richard M. Stallman <rms@gnu.org>
2081
2082 * xdisp.c (update_tool_bar): Recompute tool bar if
2083 update_mode_lines is set. Set w->update_mode_line
2084 only if the tool bar contents actually change.
2085 (update_menu_bar): Undo previous change.
2086
70b6104c
JD
20872003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2088
5fd6f727
JD
2089 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
2090 (xg_frame_set_char_size): Calculate scroll bar width before frame
2091 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
2092 (xg_separator_p): Check for all documented separator types.
2093 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
2094 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
2095
70b6104c
JD
2096 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
2097 so tool bar gets updated.
2098
d9b36d19
SM
20992003-03-26 Stefan Monnier <monnier@cs.yale.edu>
2100
2101 * data.c (store_symval_forwarding): Re-instate part of the code
2102 that was deleted with too much enthusiasm.
2103
21042003-03-25 Stefan Monnier <monnier@cs.yale.edu>
2105
2106 * data.c (store_symval_forwarding): Delete special read-only
2107 hack for type == -1, since we now use ->constant instead.
2108 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
2109
2110 * buffer.c (overlays_in): Declare static.
2111 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
2112 `constant' field rather than the variable's `type' field.
2113
365fa1b3
AC
21142003-03-24 Andrew Choi <akochoi@shaw.ca>
2115
2116 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
2117
2118 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
2119
2120 * fns.c [MAC_OSX]: Do not redefine vector.
2121
2122 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
2123
2124 * macgui.h: Remove definition of No_Cursor.
2125
d9b36d19 2126 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
2127
2128 * xdisp.c: Define No_Cursor.
2129 (x_write_glyphs, notice_overwritten_cursor)
2130 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
2131 (note_mouse_highlight): Remove Mac-specific code.
2132 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 2133
c0bcce6f
JPW
21342003-03-24 John Paul Wallington <jpw@gnu.org>
2135
2136 * xdisp.c (redisplay_window): If mini window's buffer is not
2137 empty, then redisplay it like other windows.
2138
a526b96c
KS
21392003-03-23 Kim F. Storm <storm@cua.dk>
2140
2141 * w32term.c (w32_draw_window_cursor): Fix last change.
2142
37ab321e
KH
21432003-03-23 Kenichi Handa <handa@m17n.org>
2144
a526b96c
KS
2145 * alloc.c (make_string_from_bytes, make_specified_string):
2146 Add `const' for the arg CONTENTS.
37ab321e
KH
2147
2148 * lisp.h (make_string_from_bytes, make_specified_string):
2149 Prototypes adjusted.
2150
7863d625
JD
21512003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2152
a526b96c 2153 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 2154
7863d625
JD
2155 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
2156 (XG_SB_RANGE): New define.
2157
2158 * gtkutil.c (xg_fixed_handle_expose): New function.
2159 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
2160 expose events.
2161 (xg_update_scrollbar_pos): Take two more arguments, left and width
2162 of scroll bar including borders.
2163 Clear left and right part outside scroll bar separately as some
2164 themes have bars that are not an even number of pixels.
d9b36d19 2165 Don't set reallocate_redraws, don't call
7863d625
JD
2166 gdk_window_process_all_updates.
2167 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
2168 so no need to change it. Calculate size and value with XG_SB_RANGE.
2169
d9b36d19
SM
2170 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
2171 Pass left and width of scroll bar including borders to
7863d625
JD
2172 xg_update_scrollbar_pos.
2173
af0ad939
TTN
21742003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
2175
2176 * Makefile.in: Make sure space precedes end-of-line backslashes.
2177
b22139fd
KS
21782003-03-22 Kim F. Storm <storm@cua.dk>
2179
2180 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
2181 Add generic versions here. Remove system specific versions
2182 defined elsewhere.
2183
2184 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
2185 Add prototypes.
2186
6e6410cf
KS
2187 * xterm.h (STORE_NATIVE_RECT): New macro.
2188
5c9cc435
KS
21892003-03-21 Kim F. Storm <storm@cua.dk>
2190
00c64fab
SM
2191 * xdisp.c (get_glyph_string_clip_rect):
2192 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
2193
2194 * dispextern.h (struct redisplay_interface): Add active_p
2195 argument to draw_window_cursor member. All uses changed.
2196
acd37560
KS
21972003-03-21 Kim F. Storm <storm@cua.dk>
2198
2199 The following changes consolidate code related to writing and
2200 inserting glyphs, exposing frame, the tool bar, the mouse face,
2201 the output cursor, and help echo from xterm.c, w32term.c and
2202 macterm.c into xdisp.c. It also generalizes the use of the
2203 window_part enum instead of using numeric values throughout.
af0ad939 2204
acd37560
KS
2205 * xdisp.c: Consolidate gui-independent code here.
2206 Include keymap.h.
2207 (Qhelp_echo): Import.
2208 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
2209 (help_echo_string, help_echo_window, help_echo_object)
2210 (previous_help_echo_string, help_echo_pos): Declare here.
2211 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
2212 (estimate_mode_line_height): Define here. Handle windowing
2213 systems directly (without using estimate_mode_line_height_hook).
2214 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
2215 (update_window_cursor, update_cursor_in_window_tree)
2216 (fast_find_position, fast_find_string_pos)
2217 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
2218 (expose_area, expose_line, expose_overlaps, expose_window)
2219 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
2220 declared static as they are only used locally in xdisp.c.
2221 (draw_glyphs): Rename from x_draw_glyphs and make static.
2222 (tool_bar_item_info, notice_overwritten_cursor): Make static.
2223 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
2224 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 2225 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
2226 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
2227 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
2228 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
2229 (note_mouse_highlight, x_clear_window_mouse_face)
2230 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
2231 (x_intersect_rectangles): New generic functions for use by xdisp.c
2232 and GUI front-ends.
2233 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
2234 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
2235
2236 * dispextern.h (Display_Info): Generic typedef for *_display_info.
2237 (NativeRectangle): Generic typedef for rectangle type.
2238 (enum window_part): Move here from window.c.
2239 (struct redisplay_interface): New members flush_display_optional,
2240 define_frame_cursor, clear_frame_area, draw_window_cursor,
2241 draw_vertical_window_border, shift_glyphs_for_insert.
2242 Rename member clear_mouse_face to clear_window_mouse_face.
2243 (estimate_mode_line_height_hook): Remove hook.
2244 (auto_raise_tool_bar_buttons_p): Don't declare extern.
2245 (tool_bar_item_info): Remove prototype.
2246 (help_echo_string, help_echo_window, help_echo_object)
2247 (previous_help_echo_string, help_echo_pos)
2248 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
2249 (x_stretch_cursor_p, output_cursor): Declare extern.
2250 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
2251 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
2252 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
2253 (display_and_set_cursor, set_output_cursor, x_cursor_to)
2254 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
2255 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
2256 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
2257 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
2258 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
2259 Add prototypes.
2260 (mode_line_string, marginal_area_string): Fix prototypes.
2261
2262 * window.c (enum window_part): Move to dispextern.h.
2263 (coordinates_in_window): Use enum window_part member names
2264 instead of numbers to describe return value.
2265 (struct check_window_data): Change part member to window_part.
2266 (check_window_containing): Return window_part unaltered.
2267 (window_from_coordinates): Change part arg from int to enum
2268 window_part. Allow part arg to be null. All users changed.
2269
2270 * window.h (window_from_coordinates): Fix prototype.
2271
2272 * term.c (estimate_mode_line_height): Move to xdisp.c.
2273
2274 * keyboard.c (make_lispy_event): Use enum window_part.
2275
2276 * dispnew.c (mode_line_string, marginal_area_string): Use enum
2277 window_part instead of int in arg list. Users changed.
2278
2279 * xterm.h (No_Cursor): Declare as None for X.
2280 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 2281
acd37560
KS
2282 * xterm.c: Remove consolidated defines and code.
2283 (BETWEEN): Remove unused macro.
2284 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
2285 (x_define_frame_cursor, x_clear_frame_area)
2286 (x_draw_window_cursor): New X-specific functions for RIF.
2287 (x_redisplay_interface): Add new members.
2288
2289 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
2290
2291 * w32term.h (struct w32_output): Remove cross_cursor member.
2292
2293 * w32term.c: Remove consolidated defines and code.
2294 (BETWEEN): Remove unused macro.
2295 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
2296 (w32_define_frame_cursor, w32_clear_frame_area)
2297 (w32_draw_window_cursor): New W32-specific functions for RIF.
2298 (w32_redisplay_interface): Add new members.
2299
2300 * w32gui.h (No_Cursor): Define as 0 for W32.
2301 (XRectangle): Add X compatible rectangle type.
2302 (NativeRectangle): Declare as RECT for W32.
2303 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
2304
2305 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
2306
2307 * w32console.c: Remove consolidated defines and code.
af0ad939 2308
acd37560
KS
2309 * msdos.h (Display_Info): Add generic typedef.
2310
2311 * msdos.c: Remove consolidated defines and code.
2312 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
2313
2314 * macterm.h (struct mac_output): Replace member cross_cursor by
2315 hand_cursor.
2316 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
2317
2318 * macterm.c: Remove consolidated defines and code.
2319 (BETWEEN): Remove unused macro.
2320 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
2321 (mac_define_frame_cursor, mac_clear_frame_area)
2322 (mac_draw_window_cursor): New Mac-specific functions for RIF.
2323 (x_redisplay_interface): Add new members.
2324
2325 * macgui.h (No_Cursor): Define as 0 for Mac.
2326 (XRectangle): Add X compatible rectangle type.
2327 (NativeRectangle): Declare as Rect for Mac.
2328 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
2329
204ccab1
KS
2330 * macfns.c (x_set_mouse_color): Setup hand_cursor.
2331 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 2332
9443fcf6 2333 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
2334 included from it. Add dependency on keymap.h.
2335
2336 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
2337
8ba01a70 23382003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
2339
2340 * fileio.c (Fexpand_file_name): Fix previous change.
2341
8ba01a70 23422003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
2343
2344 * fileio.c (Ffile_name_directory): Reconstruct file name by
2345 make_specified_string.
2346 (Ffile_name_nondirectory, Ffile_name_as_directory)
2347 (Fdirectory_file_name, Fexpand_file_name)
2348 (Fsubstitute_in_file_name): Likewise.
2349 (Fread_file_name): Compare decoded homedir with DIR and
2350 DEFAULT_FILENAME.
2351
2352 * alloc.c (make_specified_string): If NCHARS is negative, count
2353 the number of characters.
2354
19536747
JD
23552003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2356
de38ae5a
JD
2357 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
2358 all widgets.
2359
19536747
JD
2360 * gtkutil.h: Removed xg_ignore_next_thumb.
2361
37ab321e 23622003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
2363
2364 * coding.c (Vchar_coding_system_table): Remove this variable.
2365 (Vcoding_system_safe_chars): New variable.
2366 (intersection): Remove this function.
2367 (find_safe_codings): Don't use Vchar_coding_system_table, but try
2368 all codings in SAFE_CODINGS.
00c64fab 2369 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
2370 find_safe_codings. Get generic coding systems from
2371 Vcoding_system_safe_chars.
2372 (Fdefine_coding_system_internal): New function.
2373 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
2374 Initialize and staticpro Vcoding_system_safe_chars.
2375
17097258
JD
23762003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2377
2a2071c3
JD
2378 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
2379 equal old values before updating.
2380
17097258
JD
2381 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
2382
2383 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
2384
23852003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2386
2387 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
2388 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
2389 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
2390 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
2391 (xg_create_scroll_bar): Pass bar to button event callback.
2392 (xg_find_top_left_in_fixed): New function.
2393 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
2394 whole scroll bar area. Get old position with
2395 xg_find_top_left_in_fixed, calculate and only clear needed areas.
2396 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
2397 dragging is in progress. Calculate whole as for Motif.
2398 Remove code that saved last values. Call gtk_range functions to
2399 set scroll bar sizes.
2400
2401 * gtkutil.h: Removed xg_ignore_next_thumb.
2402
8cb9dfbf
JB
24032003-03-17 Juanma Barranquero <lektu@terra.es>
2404
2405 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
2406 and files included from it.
2407
00c64fab
SM
24082003-03-18 Stefan Monnier <monnier@cs.yale.edu>
2409
2410 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
2411 multiple occurrences of the same keymap under different prefixes.
2412 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
2413
c45bb3b2
JR
24142003-03-16 Jason Rumney <jasonr@gnu.org>
2415
2416 * w32gui.h: Use HDC for Display.
2417
2418 * w32term.c (w32_encode_char): Prevent double-byte chars from
2419 crashing Emacs.
2420
2421 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
2422 as binary.
2423
2a6d0874
JB
24242003-03-16 Juanma Barranquero <lektu@terra.es>
2425
2426 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
2427
03eb5fab
KS
24282003-03-16 Kim F. Storm <storm@cua.dk>
2429
2430 The following changes consolidate some of the gui-independent
2431 parts of the processing and drawing of "glyph strings" from
2432 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 2433
03eb5fab
KS
2434 * dispextern.h (struct glyph): Reduce face_id member from 22 to
2435 21 bits (this reduces number of faces from 4M to 2M).
2436 Replace W32 specific w32_font_type member (2 bits) by generic
2437 font_type member (3 bits) for portability.
2438 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
2439 (enum draw_glyphs_face): Define here.
2440 (struct glyph_string): Define here. Merge W32 and X versions.
2441 (struct redisplay_interface): New members per_char_metric,
2442 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
2443 (VCENTER_BASELINE_OFFSET): Define here.
2444 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
2445 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
2446
2447 * xdisp.c: Consolidate gui-independent "glyph string" code here.
2448 (dump_glyph_string): Moved here.
2449 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
2450 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
2451 (fill_composite_glyph_string, fill_glyph_string)
2452 (fill_image_glyph_string, fill_stretch_glyph_string)
2453 (left_overwritten, left_overwriting, right_overwritten)
2454 (right_overwriting, get_char_face_and_encoding)
2455 (set_glyph_string_background_width, compute_overhangs_and_x)
2456 (append_glyph, append_composite_glyph, produce_image_glyph)
2457 (take_vertical_position_into_account, append_stretch_glyph)
2458 (produce_stretch_glyph): New generic functions (based on X version).
2459 Call platform specific functions through rif.
2460 (INIT_GLYPH_STRING): New macro, hides W32 details.
2461 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
2462 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
2463 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
2464 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
2465 (notice_overwritten_cursor):
2466 Generic functions exported to platform modules. Users changed.
2467
2468 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
2469 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
2470 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 2471 New macros for consolidated code.
2a6d0874 2472
03eb5fab
KS
2473 * xterm.c: Remove consolidated defines and code.
2474 (x_per_char_metric, x_encode_char)
2475 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
2476 (x_redisplay_interface): Add new members.
2477
2478 * w32gui.h (Display): Add dummy typedef for consolidation.
2479 (XChar2b): Define alias for wchar_t for consolidation.
2480 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
2481
2482 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 2483 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
2484 New macros for consolidation.
2485
fad49844 2486 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
2487 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
2488 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
2489 (w32_per_char_metric): Change font_type arg to int for RIF.
2490 (w32_encode_char): Return int according to RIF requirements.
2491 (w32_compute_glyph_string_overhangs): Adapt to RIF.
2492 (w32_get_glyph_overhangs): New function for RIF. Uses generic
2493 x_get_glyph_overhangs.
2494 (w32_redisplay_interface): Add new members.
2495
2496 * macgui.h (XChar2b): Move typedef here for consolidation.
2497 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
2498
2499 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
2500 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
2501 consolidation.
2502
2503 * macterm.c: Remove consolidated defines and code.
2504 (mac_per_char_metric): New function for RIF.
00c64fab 2505 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
2506 (mac_compute_glyph_string_overhangs): Adapt for RIF.
2507 (x_redisplay_interface): Add new members.
2508
00c64fab
SM
25092003-03-15 Stefan Monnier <monnier@cs.yale.edu>
2510
2511 * keymap.c (Vmenu_events): New var.
2512 (syms_of_keymap): Initialize it.
2513 (where_is_internal): Check more carefully what is a menu event.
2514
225c7a07
RS
25152003-03-14 Richard M. Stallman <rms@gnu.org>
2516
2517 * lread.c (read1): After #!, exit loop on eof.
2518
cea9be54
JD
25192003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2520
9ea0e54d
JD
2521 * gtkutil.h: Add declaration for xg_frame_cleared.
2522
0cb35f4e
JD
2523 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
2524
cea9be54
JD
2525 * gtkutil.c (struct xg_last_sb_pos): New structure.
2526 (handle_fixed_child): New function.
2527 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
2528 and force a redraw on them.
2529 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
2530 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
2531 so we can avoid unneeded redraws.
2532 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
2533 and force a redraw on the scroll bar.
2534 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
2535 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 2536 (xg_frame_cleared): New function.
cea9be54 2537
20b853f3
KH
25382003-03-13 Kenichi Handa <handa@m17n.org>
2539
2540 * coding.c (Fdetect_coding_region): Fix docstring.
2541 (Fdetect_coding_string): Fix docstring.
2542
7a555aff
AS
25432003-03-13 Andreas Schwab <schwab@suse.de>
2544
25cc0080
AS
2545 * gtkutil.c: Add prototype for create_menus.
2546
30225431
AS
2547 * data.c (long_to_cons): Fix type of top.
2548
2549 * xselect.c (selection_data_to_lisp_data): Use int instead of
2550 long for an integer of size 4.
2551
7a555aff 2552 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 2553 (xg_tool_bar_help_callback): Likewise.
7a555aff 2554
a3e4741f
AS
25552003-03-12 Andreas Schwab <schwab@suse.de>
2556
2557 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
2558
9668be7c
KS
25592003-03-12 Kim F. Storm <storm@cua.dk>
2560
03eb5fab 2561 The following changes consolidate the fringe handling from
9668be7c 2562 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 2563
9668be7c
KS
2564 * xdisp.c: Consolidate fringe handling code here.
2565 (left_bits, right_bits, continued_bits, continuation_bits)
2566 (ov_bits, zv_bits): Define fringe bitmaps.
2567 (fringe_bitmaps): New array holding fringe bitmaps.
2568 (draw_fringe_bitmap): Draw a specific bitmap; call display
2569 specific drawing routine via rif->draw_fringe_bitmap.
2570 (draw_row_fringe_bitmaps): Generic replacement for
2571 x_draw_row_fringe_bitmaps; all callers changed.
2572 (compute_fringe_widths): Generic replacement for
2573 x_compute_fringe_widths; all callers changed.
2574
2575 * dispextern.h (enum fringe_bitmap_type): Define here.
2576 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
2577 (fringe_bitmaps): Declare extern.
2578 (struct redisplay_interface): New member draw_fringe_bitmap.
2579 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
2580
2581 * xterm.c: Remove generic fringe code.
2582 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
2583 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
2584
2585 * w32term.c: Remove generic fringe code.
2586 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
2587 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 2588
9668be7c
KS
2589 * macterm.c: Remove generic fringe code.
2590 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
2591 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
2592
00a88f32
SM
25932003-03-11 Stefan Monnier <monnier@cs.yale.edu>
2594
2595 * print.c (Fprin1_to_string): Return unibyte string if possible.
2596
1d1de695
DK
25972003-03-09 David Kastrup <dak@gnu.org>
2598
2599 * process.c (read_process_output): We have allocated enough space
2600 for readmax and carryover, so actually use the alloted space.
2601
257f40f2
JD
26022003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2603
2604 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
2605 toolkit scrollbar click.
2606
2607 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
2608 for USE_GTK.
2609 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
2610 also.
2611 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
2612 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 2613
257f40f2
JD
2614 * gtkutil.h: Declare xg_get_scroll_id_for_window.
2615
2616 * gtkutil.c (xg_get_scroll_id_for_window): New function.
2617 (xg_tool_bar_item_expose_callback): New function.
2618 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
2619 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
2620 on the tool bar widget.
2621 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
2622 to expose on the tool bar item widgets.
2623
15213141
JD
26242003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2625
26b74a0b 2626 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 2627 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
2628 deleted from the image cache).
2629
15213141
JD
2630 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
2631 the event isn't for a frame (i.e. for dialogs).
2632
20b853f3 26332003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
2634
2635 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
2636 composition components reaches the limit, terminate composing.
2637 (COMPOSITION_OK): New macro.
00a88f32 2638 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
2639 composition is found.
2640 (coding_restore_composition): Adjust the number of composition
2641 components if it is not sane.
2642
c9029fe5
JB
26432003-03-06 Juanma Barranquero <lektu@terra.es>
2644
2645 * w32term.h (struct w32_display_info): Add xrdb member to support
2646 passing resources via -xrm on Windows.
2647
2648 * w32term.c (w32_make_rdb): New function.
2649 (w32_term_init): Use it to initialize xrdb member of w32_display_info
2650 struct. Delete leftover code.
2651
2652 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
2653 for resources passed on the command line.
2654
2655 * w32reg.c (w32_get_rdb_resource): New function.
2656 (x_get_string_resource): Use it, so resources passed with -xrm
2657 supercede the ones in the registry.
2658
9d00001f
JD
26592003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2660
2661 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
2662 instead of x_top_window_to_frame.
2663
ca2417b9
JD
26642003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2665
2666 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
2667 when restarting Emacs.
2668
5b20caf0
RS
26692003-03-03 Richard M. Stallman <rms@gnu.org>
2670
2671 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
2672 to run kill-buffer-query-functions.
2673 (Qkill_buffer_query_functions): New var.
2674 (syms_of_buffer): Init and staticpro it.
2675
58e91b77
JD
26762003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2677
2678 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
2679
932357b4
KS
26802003-02-25 Kim F. Storm <storm@cua.dk>
2681
2682 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
2683 If centering point failed to make whole line visible and vscroll
2684 is non-zero, disable vscroll and try centering point again.
2685
2686 * lread.c (read1): Accept `single space' syntax like (? x).
2687
bb8db7e1
JD
26882003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2689
2690 * keyboard.c (cancel_hourglass_unwind): Surround with
2691 #ifdef HAVE_X_WINDOWS
2692
47d77aab
KH
26932003-02-25 Kenichi Handa <handa@m17n.org>
2694
2695 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
2696 process only when "subprocesses" is defined.
2697
6a097c0c
SM
26982003-02-24 Stefan Monnier <monnier@cs.yale.edu>
2699
2700 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
2701
0b063c27
JB
27022003-02-24 Juanma Barranquero <lektu@terra.es>
2703
d1135afc
JB
2704 * callint.c (fix_command): Declare as static void and move before
2705 Fcall_interactively.
2706
0b063c27
JB
2707 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
2708 (syms_of_xdisp): Don't initialize Qwhen.
2709
0af912f0
JD
27102003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2711
2712 * keyboard.c (cancel_hourglass_unwind): New function.
2713 (command_loop_1): Cancel hourglass with unwind-protect.
2714
120d0a23
RS
27152003-02-23 Richard M. Stallman <rms@gnu.org>
2716
2717 * callint.c (fix_command): New subroutine, from Fcall_interactively.
2718 Detect (when ... (region-beginning)) etc.
2719 (Fcall_interactively): Call fix_command.
2720 (Qif, Qwhen): New variables.
2721 (syms_of_callint): Init and staticpro them.
0b063c27 2722
120d0a23
RS
2723 * regex.c (print_partial_compiled_pattern): Output to stderr.
2724
4ece81a6
KG
27252003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
2726
2727 * dired.c (directory_files_internal): Don't expand directory.
2728 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
2729 instead. From Lars Hansen <larsh@math.ku.dk>.
2730
e52bd6b7
SM
27312003-02-22 Stefan Monnier <monnier@cs.yale.edu>
2732
2733 * fns.c (string_to_multibyte): Remove unused var i.
2734 (Flanginfo): Fix int/Lisp_Object mixup.
2735 (void_call2): New fun.
2736 (Fmap_char_table): Use it in place of call2.
2737
2738 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
2739
2740 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
2741
2742 * keymap.c (copy_keymap_1): Make it static.
2743
2744 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
2745
c33ef7c4
JB
27462003-02-22 David Ponce <david@dponce.com>
2747
2748 * lread.c (Fload): Don't check STRING_MULTIBYTE.
2749
16782258
JD
27502003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2751
2752 * process.h: Removed subtty field from struct Lisp_Process.
2753
2754 * process.c (create_process): Remove setting of subtty.
2755 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
2756 (Fprocess_running_child_p, process_send_signal):
2757 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
2758 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
2759
3abeca61
KG
27602003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
2761
2762 * keymap.c (Fdefine_key): Doc fix.
2763
92a8ce63
JB
27642003-02-21 Juanma Barranquero <lektu@terra.es>
2765
2766 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
2767
2768 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
2769 POLLING_PROBLEM_IN_SELECT.
2770
2771 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
2772 Delete #undef of POLLING_PROBLEM_IN_SELECT.
2773
2774 * s/hpux10-20.h: New file.
2775
e52bd6b7
SM
2776 * process.c (wait_reading_process_input):
2777 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 2778
20f1ef2e
KH
27792003-02-20 Kenichi Handa <handa@m17n.org>
2780
32d0a9dc
KH
2781 * fontset.c (check_fontset_name): If NAME is nil, return the
2782 default fontset.
2783 (override_font_info): New function.
e52bd6b7 2784 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
2785 (Ffontset_info): If FONTSET is not the default fontset, merge
2786 FONTSET onto the copy of the default fontset, and work on that
2787 copy. Document that NAME nil means the default fontset.
2788 (Ffontset_font): Document that NAME nil means the default fontset.
2789
20f1ef2e
KH
2790 * process.c (setup_process_coding_systems): If the process's
2791 in/out descriptor is -1, do nothing.
2792
77d1daf2
AS
27932003-02-19 Andreas Schwab <schwab@suse.de>
2794
e52bd6b7
SM
2795 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
2796 Add prototypes.
77d1daf2 2797
f9a45bb3
KH
27982003-02-19 Kenichi Handa <handa@m17n.org>
2799
2800 * xfaces.c (try_alternative_families): Try all scalable fonts if
2801 Vscalable_fonts_allowed is not Qt.
2802
72ecb43c
JD
28032003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2804
2805 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
2806
ee5be7c3
JD
28072003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2808
2809 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
2810 names.
2811
2812 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 2813 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
2814 x_face_list_fonts.
2815 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
2816 (Fx_list_fonts): Set maxnames to -1 to get all font names.
2817
4cd519a7
KS
28182003-02-18 Kim F. Storm <storm@cua.dk>
2819
068f9882
KS
2820 * lread.c (read1): Fix last change.
2821 "`" is not always special. Allow "?" after a character constant.
4cd519a7 2822
7290a344
AC
28232003-02-18 Andrew Choi <akochoi@shaw.ca>
2824
2825 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
2826
1f7fa69b
AS
28272003-02-18 Andreas Schwab <schwab@suse.de>
2828
2829 * window.c (window_scroll_pixel_based): Move outside a
2830 multi-glyph character before setting new window start.
2831
2832 * xdisp.c (in_display_vector_p): New function.
2833 * dispextern.h (in_display_vector_p): Declare.
2834
23e21195
KS
28352003-02-18 Kim F. Storm <storm@cua.dk>
2836
2837 * lread.c (read1): Fix and relax read syntax.
2838 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
2839 Only recognize "," after dotted-pair dot if inside backquote.
2840 Never include "`" or "," (inside backquote) in a symbol.
2841 Allow dotted-pair dot after a character constant.
2842 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 2843
f098b121
JD
28442003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2845
2846 * gtkutil.c (xg_tool_bar_expose_callback): New function.
2847 (xg_create_tool_bar): Force style of tool bar to be horizontal with
2848 icons. Set name of tool bar to emacs-toolbar.
2849 (update_frame_tool_bar): Connect expose event to
2850 xg_tool_bar_expose_callback.
2851
63020c46
RS
28522003-02-17 Richard M. Stallman <rms@gnu.org>
2853
2854 * keyboard.c (this_command_key_count_reset): New variable.
2855 Initiatize to 0 where this_command_key_count is set.
2856 (read_char): Save and restore this_command_key_count_reset
2857 around input method code.
2858 (read_char): If this_command_key_count_reset, echo reread commands.
2859 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
2860
fb4452cc
KH
28612003-02-17 Kenichi Handa <handa@m17n.org>
2862
2863 * fns.c (string_to_multibyte): Always return a multibyte string.
2864
bd11cc09
JR
28652003-02-16 Jason Rumney <jasonr@gnu.org>
2866
e52bd6b7
SM
2867 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
2868 Negative max_fonts parameter means list all.
bd11cc09 2869
4cdf4bde
DL
28702003-02-14 Dave Love <fx@gnu.org>
2871
2872 * fns.c (Flanginfo): Doc fix.
2873
023b93f6
KS
28742003-02-13 Kim F. Storm <storm@cua.dk>
2875
37cd4238
KS
2876 * lread.c (read_escape): Interpret \s as a SPACE character, except
2877 for \s-X in a character constant which still is the super modifier.
2878 (read1): Signal an `invalid read syntax' error if a character
2879 constant is immediately followed by a digit or symbol character.
2880
140a6b7e
KS
2881 * search.c (Fmatch_data): Doc fix. Explicitly state that
2882 match-data is undefined if last search failed.
2883
023b93f6
KS
2884 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
2885 All uses changed.
2886
7d5c86e5
JB
28872003-02-12 Juanma Barranquero <lektu@terra.es>
2888
2889 * eval.c (Fdefmacro): Fix typo.
2890
295fff2c
KS
28912003-02-12 Kim F. Storm <storm@cua.dk>
2892
2893 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
2894 macro is a string, convert meta modifiers in string when copying
2895 the string into a vector.
2896
60f3202d
KS
28972003-02-11 Kim F. Storm <storm@cua.dk>
2898
2899 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
2900
61cb0b53
KH
29012003-02-11 Kenichi Handa <handa@m17n.org>
2902
2903 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
2904
7392e23c
KS
29052003-02-10 Kim F. Storm <storm@cua.dk>
2906
2907 * process.c: Doc fixes.
2908 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
2909
ce4254bd
KH
29102003-02-10 Kenichi Handa <handa@m17n.org>
2911
9c7a329a
KH
2912 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
2913
ce4254bd
KH
2914 * process.c (QCfilter_multibyte): New variable.
2915 (setup_process_coding_systems): New function.
e52bd6b7
SM
2916 (Fset_process_buffer, Fset_process_filter):
2917 Call setup_process_coding_systems.
ce4254bd
KH
2918 (Fstart_process): Initialize the member `filter_multibyte' of
2919 struct Lisp_Process.
2920 (create_process): Call setup_process_coding_systems.
2921 (Fmake_network_process): New keyward `:filter-multibyte'.
2922 Initialize the member `filter_multibyte' of struct Lisp_Process.
2923 Call setup_process_coding_systems.
2924 (server_accept_connection): Call setup_process_coding_systems.
2925 (read_process_output): If the process has a filter, decide the
2926 multibyteness of a string to given to the filter by
2927 `filter_multibyte' member of the process. If the process doesn't
2928 have a filter and the result of conversion is unibyte, use
2929 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
2930 multibyte form.
2931 (Fset_process_coding_system): Call setup_process_coding_systems.
2932 (Fset_process_filter_multibyte): New function.
2933 (Fprocess_filter_multibyte_p): New function.
2934 (syms_of_process): Intern and staticpro QCfilter_multibyte.
2935 Defsubr Sset_process_filter_multibyte and
2936 Sprocess_filter_multibyte_p.
2937
2938 * process.h (struct Lisp_Process): New member filter_multibyte.
2939
2940 * lisp.h (setup_process_coding_systems): Add prototype.
2941
2942 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
2943 process, update coding systems for the process.
2944
b08d5f59
KH
29452003-02-09 Kenichi Handa <handa@m17n.org>
2946
2947 * fns.c (string_to_multibyte): New function.
2948 (Fstring_to_multibyte): New function.
2949 (syms_of_fns): Defsubr it.
2950
0dfd93c0
AS
29512003-02-08 Andreas Schwab <schwab@suse.de>
2952
2953 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
2954 instead of the substitution.
2955
7b76ca1c
JD
29562003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2957
2958 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
2959
2960 * xmenu.c (menu_position_func): Adjust menu popup position so that
2961 the menu is fully visible.
7b76ca1c 2962
2436a4e4
JD
29632003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2964
2965 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
2966 (x_make_frame_invisible, x_wm_set_icon_position):
2967 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
2968
2969 * xfns.c (x_set_name, x_set_title): Ditto.
2970
37d1e680
RS
29712003-02-04 Richard M. Stallman <rms@gnu.org>
2972
2973 * keyboard.c (echo_now): Update before_command_echo_length.
2974 (Freset_this_command_lengths): Reset this_command_key_count etc.
2975 immediately rather than arranging to do it later.
2976 (before_command_key_count_1, before_command_echo_length_1)
2977 (before_command_restore_flag): Vars deleted.
2978 (add_command_key): Don't handle before_command_restore_flag.
2979 (read_char, record_menu_key): Don't update before_command_key_count or
2980 before_command_echo_length.
2981 (read_char): Don't handle before_command_restore_flag.
2982
2983 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
2984 in direct-output clauses if it wouldn't be called in the ordinary case.
2985
578846a3
KS
29862003-02-04 Kim F. Storm <storm@cua.dk>
2987
2988 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
2989
49853a4d
JD
29902003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2991
2992 * gtkutil.c (remove_from_container): Copying list is not needed.
2993 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
2994 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
2995 on list returned from gtk_container_get_children to avoid memory leak.
2996
8b53dc06
JR
29972003-02-01 Jason Rumney <jasonr@gnu.org>
2998
5d54d177
JR
2999 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
3000 local malloc.
3001 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
3002 definitions in xpm.h.
3003 (init_xpm_functions): New function.
3004 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
3005 (init_external_image_libraries): Try to load libXpm.dll.
3006
8b53dc06
JR
3007 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
3008 timestamp.
3009
b222e415
DL
30102003-01-31 Dave Love <fx@gnu.org>
3011
3012 * syntax.c (Fskip_chars_forward)
3013 (open-paren-in-column-0-is-defun-start): Doc fix.
3014
c60ee5e7
JB
30152003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
3016
3017 * fileio.c: Support // at start of name for Cygwin (just added proper
3018 preprocessor tests).
3019
3020 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
3021
3022 * Makefile.in: Use @EXEEXT@ for Cygwin.
3023
3024 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
3025
3026 * s/cygwin.h: Added for Cygwin port.
3027
53b37591
JB
30282003-01-31 Juanma Barranquero <lektu@terra.es>
3029
3030 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
3031 when including gif_lib.h.
fe929957
JB
3032 (init_gif_functions, init_tiff_functions): New functions.
3033 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
3034 Windows. Disable color table lookups. Call library functions
53b37591 3035 through pointers determined at runtime.
fe929957
JB
3036 (init_external_image_libraries): Try to load libungif.dll and
3037 libtiff.dll.
53b37591 3038
45415a8f
KH
30392003-01-31 Kenichi Handa <handa@m17n.org>
3040
3041 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 3042 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 3043
a97e4138
JD
30442003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3045
e52bd6b7 3046 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 3047
6eed9bed
DL
30482003-01-30 Dave Love <fx@gnu.org>
3049
3050 * alloc.c (Vgc_elapsed, gcs_done): New variables.
3051 (Fgarbage_collect): Use them.
3052 (init_alloc, syms_of_alloc): Set them up.
3053
100dcd40
JB
30542003-01-30 Juanma Barranquero <lektu@terra.es>
3055
3056 * w32fns.c (init_external_image_libraries): Add missing operator.
3057
fbd852af
JR
30582003-01-29 Jason Rumney <jasonr@gnu.org>
3059
3060 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
3061 an alternative name for jpeg.dll.
3062
8a2d8020
KH
30632003-01-29 Kenichi Handa <handa@m17n.org>
3064
3065 * xdisp.c (set_cursor_from_row): Pay attention to string display
3066 properties.
3067
058c18c7
AC
30682003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
3069
3070 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
3071 <escape>.
3072 (keycode_to_xkeysym_table): Reformat and add more comments.
3073 (XTread_socket): Drop special case for backspace.
3074
385f11cf
AC
30752003-01-28 Andrew Choi <akochoi@shaw.ca>
3076
3077 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
3078 values in old-style RGB specs.
3079
c922a224
JB
30802003-01-27 Juanma Barranquero <lektu@terra.es>
3081
3082 * w32fns.c (init_external_image_libraries): Try alternate names for the
3083 jpeg dll.
3084
0a1d6de0
JD
30852003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3086
3087 * gtkutil.c (create_dialog, xg_separator_p)
3088 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
3089 before calling strcmp or strlen.
3090
a97e4138 30912003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
3092
3093 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
3094 and handle image load failure.
3095
28908312
JR
30962003-01-26 Jason Rumney <jasonr@gnu.org>
3097
3098 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
3099 New functions.
3100 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
3101 Disable color table lookups. Call jpeg library functions
3102 through pointers determined at runtime.
3103 (init_external_image_libraries): Try to load jpeg.dll.
3104
84e47416
RS
31052003-01-25 Richard M. Stallman <rms@gnu.org>
3106
3107 * lisp.h: Declare format2 instead of format1.
3108
3109 * fileio.c (barf_or_query_if_file_exists):
3110 Call format2 instead of format1.
3111
3112 * editfns.c (format2): New function, replaces format1
3113 but takes exactly two Lisp Objects as format args.
3114
3115 * buffer.c (Fkill_buffer): Call format2 instead of format1.
3116
a97e4138 31172003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
3118
3119 * xterm.h: Change to return value of x_dispatch_event to int.
3120
3121 * xterm.c (x_filter_event): New function.
3122 (event_handler_gdk, XTread_socket): Call x_filter_event.
3123 (x_dispatch_event): Change to return value of finish.
3124 (event_handler_gdk): Use return value from x_dispatch_event.
3125
3126 * xfns.c (x_window): Call create_frame_xic for GTK version to
3127 initialize input methods.
3128
3129 * gtkutil.h: Add (void) prototypes.
3130
3131 * gtkutil.c (create_menus): Remove code that puts the help menu to
3132 the right.
3133
54eefef1
JR
31342003-01-25 Jason Rumney <jasonr@gnu.org>
3135
3136 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
3137 [HAVE_PNG]: Sync with xfns.c version.
3138 (png_load): Adjust colors for Windows. Use Windows
3139 bitmaps. Disable color table lookups.
c262430d
JR
3140 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
3141 (init_png_functions): New function.
3142 (png_read_from_memory, png_load): Call png library functions
3143 through pointers determined at runtime.
3144 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
3145 (init_external_image_libraries): New function.
3146 (init_xfns): Call it.
54eefef1 3147
1a9e275b
AS
31482003-01-24 Andreas Schwab <schwab@suse.de>
3149
3150 * minibuf.c (Fminibuffer_message): Verify type of parameter.
3151
a97e4138 31522003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
3153
3154 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
3155 of static initializer.
3156
422eec7e
DL
31572003-01-24 Dave Love <fx@gnu.org>
3158
3159 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
3160 architectures.
3161
3162 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
3163 Use __alignof__.
3164
2a026b04
KH
31652003-01-24 Kenichi Handa <handa@m17n.org>
3166
3167 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 3168 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
3169 (command_loop_1): Call adjust_point_for_property with proper
3170 second arg.
3171
a18bb28d
JR
31722003-01-22 Jason Rumney <jasonr@gnu.org>
3173
3174 Sync changes with xterm.c and xfns.c.
3175
3176 * w32term.c (x_draw_glyph_string_foreground)
3177 (x_draw_composite_glyph_string_foreground): Implement overstriking.
3178
3179 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
3180 phys_cursor's hpos is overwritten. This is still not completely
3181 correct, as it doesn't really make sense to use hpos at all to
3182 get the cursor glyph (as that is relative to the width of the
3183 characters on the line, which may have changed during the update).
3184
3185 * w32term.c (notice_overwritten_cursor): Handle the special case
3186 of the cursor being in the first blank non-text line at the
3187 end of a window.
3188
3189 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
3190 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
3191 Compute from the x position returned by x_draw_glyphs.
3192
3193 (x_display_and_set_cursor): Don't set phys_cursor_width here,
3194 except for NO_CURSOR and system caret, to make phys_cursor_width
3195 contain what its name suggests.
3196 (notice_overwritten_cursor): Consider the cursor image erased if
3197 the output area intersects the cursor image in y-direction.
3198
6a097c0c
SM
3199 * w32term.c (note_mode_line_or_margin_highlight): Rename from
3200 note_mode_line_highlight and extend.
a18bb28d
JR
3201
3202 * w32term.c (last_window): New variable.
3203 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
3204 (note_mouse_movement): Remove reimplemented code in #if 0.
3205
3206 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
3207 not update_mode_lines, and always set it to 1.
3208
ac6e47ef
JR
32092003-01-21 Jason Rumney <jasonr@gnu.org>
3210
3211 * w32fns.c (IDC_HAND): Define it if system headers don't.
3212
32132003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
3214
3215 * w32term.h (struct w32_output): New member hand_cursor.
3216 (WM_EMACS_SETCURSOR): New message definition.
3217
3218 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
3219 function w32_define_cursor.
3220 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
3221 position, change member name output_data.x to output_data.w32 and
3222 add function w32_define_cursor.
3223 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
3224 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
3225 (w32_initialize_display_info):
3226 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
3227
3228 * w32fns.c (Vx_hand_shape): New variable.
3229 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
3230 WM_EMACS_SETCURSOR.
3231 (x-create-frame): Setup Cursor types.
3232
ceb39a17
JB
32332003-01-21 David Ponce <david@dponce.com>
3234
ac6e47ef
JR
3235 * w32term.c (w32_encode_char): For DIM=1 charset, set
3236 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
3237 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 3238 2002-09-30.)
ac6e47ef
JR
3239 (w32_draw_relief_rect): Declare all args.
3240 (w32_define_cursor): New.
3241
3242 * w32fns.c (w32_load_cursor): New function.
3243 (w32_init_class): Use it.
3244 (x_put_x_image): Declare all args.
3245
46cf0bed
JB
32462003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
3247
3248 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
3249
a97e4138 32502003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
3251
3252 * gtkutil.c: Must include stdio.h before termhooks.h
3253
83fc9c63
DL
32542003-01-21 Dave Love <fx@gnu.org>
3255
3256 * alloc.c (Fgc_status): Print zombie list.
3257 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
3258 Fix assignment of zombies.
3259 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
3260 Don't take car of non-cons.
3261
3262 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
3263
3264 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
3265
fe04b8c8
JR
32662003-01-20 David Ponce <david@dponce.com>
3267
3268 * w32menu.c (digest_single_submenu): Declare all args.
3269
3270 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
3271 changes in xmenu.c:
3272
3273 (parse_single_submenu): Use individual keymap's prompt
3274 string as pane name, if there is one.
3275 (set_frame_menubar): Save menu_items_n_panes from each call to
3276 parse_single_submenu and use it when calling digest_single_submenu.
3277
539e69a9
ST
32782003-01-20 Steven Tamm <steventamm@mac.com>
3279
3280 * macterm.c (XTread_socket): Checks for valid, visible window
3281 before sending a scroll-wheel event.
3282
675d000f
RS
32832003-01-20 Richard M. Stallman <rms@gnu.org>
3284
3285 * xdisp.c (redisplay_window): If mini window's buffer is not
3286 a minibuffer, then redisplay it like other windows.
3287
a97e4138 32882003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
3289
3290 * gtkutil.c (xg_create_frame_widgets): Check if there is an
3291 external tool bar before setting tool bar height.
3292
048addec
JD
32932003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3294
3295 * xterm.c (handle_one_xevent): Surround popup_activated
3296 with #ifdef:s for non-toolkit version.
3297
3298 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
3299 (gtkutil.o): New file.
3300 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
3301 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
3302
3303 * gtkutil.c: New file for GTK version.
3304
3305 * gtkutil.h: New file for GTK version.
3306
3307 * xterm.h: Add xt_or_gtk_widget.
3308 Include gtk files for USE_GTK.
3309 (struct x_output): Add toolbar_height.
3310 (struct x_output): Add GTK widgets and Gdk size_hints.
3311 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
3312 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
3313 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
3314
3315 * xterm.c: Include gtkutil.h for USE_GTK.
3316 Declare extern void free_frame_menubar for USE_GTK.
3317 (note_mouse_highlight): Check popup_activated for USE_GTK.
3318 (xt_action_hook): Don't compile if USE_GTK.
3319 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
3320 (xg_scroll_callback): New function.
3321 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
3322 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
3323 for USE_GTK.
3324 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
3325 xg_show_scroll_bar for USE_GTK.
3326 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
3327 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
3328 (event_handler_gdk): New function for USE_GTK.
3329 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
3330 (handle_one_xevent): Make sure widget is mapped before
3331 calling x_real_positions for USE_GTK.
3332 (XTread_socket): Add GTK event loop for USE_GTK.
3333 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
3334 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
3335 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
3336 (x_iconify_frame): Add code for USE_GTK.
3337 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
3338 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
3339 is in gtkutil.c.
3340 (x_term_init): Add initialization for GTK.
3341 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
3342
3343 * xmenu.c: Include gtkutil.h for USE_GTK.
3344 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
3345 (single_menu_item, single_menu_item, Fx_popup_dialog):
3346 Check for USE_GTK.
048addec
JD
3347 (popup_widget_loop): New function for USE_GTK.
3348 (x_activate_menubar): Add code for USE_GTK.
3349 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
3350 (menu_highlight_callback, menubar_selection_callback):
3351 Add USE_GTK versions.
048addec
JD
3352 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
3353 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
3354 (free_frame_menubar): Only compile if not USE_GTK. GTK version
3355 is in gtkutil.c.
3356 (popup_selection_callback): New version for USE_GTK.
3357 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 3358 one USE_X_TOOLKIT version.
048addec
JD
3359 (xmenu_show): Call create_and_show_popup_menu.
3360 (dialog_selection_callback): New version for USE_GTK.
3361 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 3362 one USE_X_TOOLKIT version.
048addec
JD
3363 (xdialog_show): Call create_and_show_dialog.
3364
3365 * xfns.c: Include gtkutil for USE_GTK.
3366 (x_window_to_frame, x_any_window_to_frame)
3367 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3368 (x_top_window_to_frame): Add code for USE_GTK.
3369 (x_set_background_color): Call xg_set_background_color for GTK.
3370 (x_set_menu_bar_lines): Check for USE_GTK.
3371 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
3372 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
3373 (x_window): Call xg_create_frame_widgets for USE_GTK.
3374 (Fx_create_frame): Check for USE_GTK
3375 (Fx_file_dialog): New implementation for USE_GTK.
3376
3377 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
3378 (update_menu_bar): Add check for USE_GTK.
3379 (update_tool_bar): Add check for USE_GTK and external tool bar.
3380 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
3381 (redisplay_internal): Add check for USE_GTK and popup_activated.
3382 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
3383 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
3384 (display_menu_bar): Add check for USE_GTK
3385
3386 * lisp.h: Declare Vx_resource_name extern.
3387
3388 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
3389 for USE_GTK.
3390 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
3391
3392 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
3393 (FRAME_EXTERNAL_TOOL_BAR): New macro.
3394 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
3395
3396 * fileio.c (Fread_file_name): Add check for USE_GTK.
3397
6bdb309a
SM
3398 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
3399 Add check for USE_GTK.
048addec
JD
3400
3401 * config.in: Added HAVE_GTK
3402
3403 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
3404
34052003-01-18 Stefan Monnier <monnier@cs.yale.edu>
3406
3407 * charset.h (Funibyte_char_to_multibyte): Export.
3408
34092003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3410
3411 * xmenu.c (mouse_position_for_popup): New function.
3412 (Fx_popup_menu): Call mouse_position_for_popup for X and
3413 mouse_position_hook for others.
3414
34152003-01-17 Kim F. Storm <storm@cua.dk>
3416
3417 * editfns.c (Finsert): Mention `string-make-multibyte' and
3418 `string-as-multibyte' in doc string.
3419
34202003-01-17 Kenichi Handa <handa@m17n.org>
3421
3422 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 3423
048addec
JD
3424 * editfns.c (Fformat): Convert an unibyte char argument that is
3425 formatted by "%c" to multibyte if the total result must be a
3426 multibyte string.
cd7df9c0 3427
048addec 34282003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 3429
048addec
JD
3430 * process.c (set-process-filter): Document unibyte/multibyte-ness
3431 of string argument.
56210ecd 3432
048addec 34332003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 3434
048addec 3435 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 3436
048addec
JD
3437 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
3438 (re_search_2): Likewise.
6df8b9fe 3439
048addec 34402003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 3441
048addec
JD
3442 * xdisp.c (message_dolog): Fix bug of the case that *Message*
3443 buffer is unibyte.
292ddc31 3444
048addec 34452003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 3446
048addec 3447 * fns.c (Fsubstring): Clarify doc string.
292ddc31 3448
048addec
JD
3449 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
3450 (Fprevious_char_property_change)
3451 (Fnext_single_char_property_change)
3452 (Fprevious_single_char_property_change, Fnext_property_change)
3453 (Fnext_single_property_change, Fprevious_property_change)
3454 (Fprevious_single_property_change, Fadd_text_properties)
3455 (Fput_text_property, Fset_text_properties)
3456 (Fremove_text_properties, Fremove_list_of_text_properties)
3457 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 3458
048addec 34592003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 3460
048addec
JD
3461 * process.h (struct Lisp_Process): New member plist replaces old
3462 member private_vars. All uses changed.
63e4e4c6 3463
048addec 3464 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 3465 (QCplist): Rename from QCvars. Change all uses.
048addec 3466 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 3467 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 3468 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 3469 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 3470
048addec 34712003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 3472
6bdb309a 3473 * m/delta.h: Remove (obsolete).
e833850f 3474
048addec 34752003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 3476
048addec
JD
3477 * fileio.c (Fdelete_directory, Fdelete_file): Document the
3478 behaviour in front of symlinks.
3479 (Fdelete_file): Raise an error on directories.
817cb127 3480
048addec 34812003-01-13 Dave Love <fx@gnu.org>
817cb127 3482
048addec 3483 * fns.c (Freverse): Use QUIT.
3e8cf2ea 3484
048addec 34852003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 3486
048addec
JD
3487 * minibuf.c (minibuffer_completion_contents):
3488 Error if point is inside prompt.
3e8cf2ea 3489
048addec
JD
3490 * keyboard.c (command_loop_1): Don't redisplay directly
3491 if there's a post-command-hook.
3e8cf2ea 3492
048addec
JD
3493 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
3494 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 3495
048addec 34962003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 3497
048addec 3498 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 3499
048addec
JD
3500 * process.c (QCvars): New variable.
3501 (syms_of_process): Intern and staticpro it.
3502 (Fset_process_contact): Removed function.
3503 (Fprocess_variable, Fset_process_variable): New functions.
3504 (syms_of_process): Defsubr them.
3505 (Fstart_process): Initialize private_vars plist to nil.
3506 (Fmake_network_process): New arg :vars to setup the private
3507 variables for new network process.
3508 (server_accept_connection): Copy server's private variables to
3509 client process.
2c10f029 3510
048addec
JD
3511 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
3512 crashes). Code rewritten and simplified. Now directly aligns the
3513 pointer and recalculates pure_bytes_used, rather than aligning the
3514 size and adjusting the pointer.
b8a76c6c 3515
048addec 35162003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 3517
048addec
JD
3518 * process.c (Fset_process_contact): New function.
3519 (syms_of_process): defsubr it.
3520 (make-network-process): Update doc.
3a8d0899 3521
048addec 35222003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 3523
048addec
JD
3524 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
3525 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 3526
048addec 35272003-01-10 Dave Love <fx@gnu.org>
4abc7470 3528
048addec 3529 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 3530
048addec 35312003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 3532
048addec
JD
3533 * process.c (Fmake_network_process): Convert new port number
3534 to host byte order for `:service t' case. From Mario Lang.
bf338245 3535
048addec 35362003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 3537
048addec
JD
3538 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
3539 instead of XtAppProcessEvent.
bf338245 3540
048addec
JD
3541 * xterm.c (handle_one_xevent): New function.
3542 (x_dispatch_event): New function.
3543 (XTread_socket): Call handle_one_xevent.
bf338245 3544
048addec 3545 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 3546
048addec
JD
3547 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
3548 call XQueryPointer to get coordinates.
3549 (popup_get_selection): Do not set popup_activated_flag to zero,
3550 let popup_deactivate_callback do that. Needed for Motif.
3551 Call x_dispatch_event instead of XtDispatchEvent.
3552 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 3553
048addec 35542003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 3555
6bdb309a 3556 * process.c (server_accept_connection): Fix recording of new
048addec
JD
3557 connection's local address in :local property of contact info.
3558 (Fmake_network_process): Record local network address for new
3559 client processes in :local property of contact info.
6bdb309a 3560 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 3561
048addec 35622003-01-07 Dave Love <fx@gnu.org>
00e3ab56 3563
048addec 3564 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 3565
048addec 35662003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 3567
048addec 3568 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 3569
048addec
JD
3570 * eval.c (Fuser_variable_p): Doc change. For custom variables,
3571 use the same test as for custom-variable-p.
8c6d74c6 3572
048addec 35732003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 3574
048addec
JD
3575 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
3576 Count LAST_LINE_MISFIT in scroll margin for end of window.
3577 Move label too_near_end before setting SCROLL_MARGIN_POS.
3578 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 3579
048addec
JD
3580 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
3581 scroll_conservatively case. If scrolling that much doesn't change
3582 STARTP, move it down one line.
e833850f 3583
048addec
JD
3584 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
3585 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 3586
048addec
JD
3587 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
3588 selected frame.
8c6d74c6 3589
048addec
JD
3590 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
3591 (syms_of_keymap): staticpro them.
3592 (Fapropos_internal): Initialize them and clear them out.
3593 Don't GCPRO them.
8c6d74c6 3594
048addec
JD
3595 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
3596 Doc fixes.
8c6d74c6 3597
048addec
JD
3598 * lisp.h: New misc type Lisp_Save_Value.
3599 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
3600 (XSAVE_VALUE): New macro.
3601 (struct Lisp_Save_Value): New data type.
3602 (union Lisp_Misc): Add u_save_value alternative.
3603 (make_save_value): Declared.
8c6d74c6 3604
048addec 3605 * alloc.c (make_save_value): New function.
8c6d74c6 3606
048addec
JD
3607 * xterm.c (x_catch_errors): Save dpy using make_save_value.
3608 (x_catch_errors_unwind): Call XSync.
8c6d74c6 3609
048addec 36102003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 3611
048addec 3612 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 3613
048addec
JD
3614 * keyboard.c (command_loop_1): Call adjust_point_for_property
3615 in direct action cases for Qforward_char and Qbackward_char.
3616 Set already_adjusted so it won't be done twice.
8c6d74c6 3617
048addec 36182002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 3619
048addec
JD
3620 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
3621 type definition of size_t.
8c609cff 3622
048addec 36232003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 3624
048addec
JD
3625 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
3626 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 3627
048addec 36282002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 3629
048addec
JD
3630 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
3631 to default to t.
fa634a5e 3632
048addec 36332002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 3634
048addec 3635 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 3636
048addec 36372002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 3638
048addec
JD
3639 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
3640 allow building in a different directory than source. Uses some
3641 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 3642
048addec 36432002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 3644
048addec
JD
3645 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
3646 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
3647 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
3648 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 3649
048addec 36502002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 3651
048addec
JD
3652 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
3653 <scroll-down-aggressively>: Doc fix.
2155ecf3 3654
048addec
JD
3655 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
3656 string as pane name, if there is one.
3657 (set_frame_menubar): Save menu_items_n_panes from each call to
3658 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 3659
048addec
JD
3660 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
3661 Don't try to make last line fully visible if it is past end of window.
61f1d295 3662
048addec 36632002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 3664
048addec
JD
3665 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
3666 (mac_menu_show): Add support for hierarchical popup menus.
3667 (add_menu_item): Remove indentation support.
3668 (fill_submenu, fill_menu): Create hierarchical menus
3669 instead of using indentation.
0b17a217 3670
048addec 36712002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 3672
048addec
JD
3673 * xdisp.c (try_cursor_movement): Don't call try_window here.
3674 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 3675
048addec 3676 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 3677
048addec 36782002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 3679
048addec
JD
3680 * macterm.c (XTread_socket): Call KeyTranslate for control and
3681 meta to deal correctly shifted non-alpha characters, like C-S-5
3682 being treated like C-%. Does not look for shift key to deal
3683 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 3684
048addec 36852002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 3686
048addec
JD
3687 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
3688 If it is non-nil, run timers. Use an unwind-protect to requeue
3689 the events that were read ahead.
3690 (popup_get_selection_unwind): New subroutine.
3691 (popup_get_selection_queue): File-scope variable now holds that queue.
3692 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
3693 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
3694 Use an unwind-protect to pop down the dialog box.
3695 (xdialog_show_unwind): New subroutine implements that.
f02cac82 3696
048addec
JD
3697 * xdisp.c (row_containing_pos): Change exit test using last_y.
3698 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 3699
048addec
JD
3700 * lread.c (load_error_handler): New function.
3701 (Fload): Handle errors in Fsubstitute_in_file_name.
3702 Don't expect Fsignal to return.
f02cac82 3703
048addec
JD
3704 * eval.c: Errors and throws work right with interrupt blocking.
3705 (struct catchtag): New elt interrupt_input_blocked.
3706 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
3707 (internal_catch, Fcondition_case, internal_condition_case)
3708 (internal_condition_case_1, internal_condition_case_2): Save it.
3709 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 3710
048addec 3711 * editfns.c (Fformat): Add parens.
f02cac82 3712
048addec
JD
3713 * dired.c (file_name_completion): Fix that change.
3714 Delete special quit-handling code; just use QUIT.
f02cac82 3715
048addec 37162002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 3717
048addec
JD
3718 * dired.c (file_name_completion): Close directory on error
3719 just as in directory_files_internal.
1a590729 3720
048addec 37212002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 3722
048addec
JD
3723 * window.c (Fset_window_configuration): Set old_point to correct
3724 value when new_current_buffer == current_buffer.
f02cac82 3725
048addec 37262002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 3727
048addec
JD
3728 Revisited my earlier fix for the following entry in etc/PROBLEMS:
3729 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
3730 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 3731
048addec
JD
3732 These changes were in part based upon suggestions made by Peter
3733 'Luna' Runestig [peter@runestig.com].
9785d95b 3734
048addec
JD
3735 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
3736 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 3737 g_b_init_get_sid_identifier_authority ): Add several static
048addec 3738 global variables.
9785d95b 3739
048addec
JD
3740 * w32.c (globals_of_w32): New function. Used to initialize those
3741 global variables that must always be initialized on startup even
3742 when the global variable initialized is non zero. Its primary
3743 purpose at this time is to set the global variables
3744 g_b_init_is_windows_9x, g_b_init_open_process_token,
3745 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
3746 g_b_init_get_sid_identifier_authority to 0 on startup.
3747 Called from main.
9785d95b 3748
048addec
JD
3749 * w32.c (is_windows_9x): Perform initialization only if
3750 g_b_init_is_windows_9x is equal to 0. On initialization set
3751 g_b_init_is_windows_9x equal to 1.
2308af15 3752
048addec
JD
3753 * w32.c (open_process_token): Perform initialization only if
3754 g_b_init_open_process_token is equal to 0. On initialization set
3755 g_b_init_open_process_token equal to 1.
2308af15 3756
048addec
JD
3757 * w32.c (get_token_information): Perform initialization only if
3758 g_b_init_get_token_information is equal to 0. On initialization
3759 set g_b_init_get_token_information equal to 1.
9785d95b 3760
048addec
JD
3761 * w32.c (lookup_account_sid): Perform initialization only if
3762 g_b_init_lookup_account_sid is equal to 0. On initialization
3763 set g_b_init_lookup_account_sid equal to 1.
9785d95b 3764
048addec
JD
3765 * w32.c (get_sid_identifier_authority): Perform initialization
3766 only if g_b_init_get_sid_identifier_authority is equal to 0.
3767 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 3768
048addec
JD
3769 * w32fns.c (globals_of_w32fns): New function. Used to initialize
3770 those global variables that must always be initialized on startup
3771 even when the global variable initialized is non zero.
3772 Its primary purpose at this time is to initialize the global variable
3773 track_mouse_event_fn.
9785d95b 3774
048addec
JD
3775 * w32fns.c (w32_wnd_proc): Remove initialization of
3776 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 3777
048addec 3778 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 3779
048addec
JD
3780 * w32menu.c (globals_of_w32menu): New function. Used to
3781 initialize those global variables that must always be initialized
3782 on startup even when the global variable initialized is non zero.
3783 Its primary purpose at this time is to initialize the global
3784 variables get_menu_item_info and set_menu_item_info.
9785d95b 3785
048addec
JD
3786 * w32menu.c (initialize_frame_menubar): Remove initialization of
3787 get_menu_item_info and set_menu_item_info.
9785d95b 3788
048addec 3789 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 3790
048addec
JD
3791 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
3792 Declare them.
9785d95b 3793
048addec
JD
3794 * emacs.c (main): Call globals_of_w32 prior to calling
3795 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
3796 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
3797 is defined.
9785d95b 3798
048addec
JD
3799 * w32term.c (x_update_window_begin): Fix Windows API error
3800 detected by BoundsChecker. Test to determine if
3801 w32_system_caret_hwnd is NULL prior to attempting to use
3802 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 3803
048addec
JD
3804 * w32term.c (x_update_window_end): Fix Windows API error
3805 detected by BoundsChecker. Test to determine if
3806 w32_system_caret_hwnd is NULL prior to attempting to use
3807 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 3808
048addec 38092002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 3810
048addec
JD
3811 * coding.c (coding_system_require_warning): New variable.
3812 (syms_of_coding): DEFVAR it.
b6da19ef 3813
048addec 3814 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 3815
048addec
JD
3816 * fileio.c (choose_write_coding_system): Even if
3817 Vcoding_system_for_write is non-nil, if
3818 coding_system_require_warning is nonzero, call
3819 Vselect_safe_coding_system_function.
bfcf6dbe 3820
048addec 38212002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 3822
048addec
JD
3823 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
3824 (lisp): Add font-core.
2c568af5 3825
048addec 38262002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 3827
048addec
JD
3828 * textprop.c (text_read_only): New arg `propval'.
3829 (get_char_property_and_overlay): Remove unused var `next_overlay'.
3830 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 3831
048addec 38322002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 3833
048addec 3834 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 3835
048addec 38362002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 3837
048addec
JD
3838 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
3839 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
3840 Be more careful about when help_events are generated.
96720f09 3841
048addec 38422002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 3843
048addec
JD
3844 * macterm.c (mac_check_for_quit_char): Correctly set the
3845 modifiers of the event to 0.
3846 * mac.c (sys_select): Duplicate rfds before calling select to
3847 ensure that rfds survive the while loop.
e5ae1c49 3848
048addec 38492002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 3850
048addec
JD
3851 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
3852 row_containing_pos returned NULL.
2eb46b2d 3853
048addec 38542002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 3855
6bdb309a 3856 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 3857 non-blocking.
6bdb309a 3858 (sys_select): Fix sys_select to not use a timeout larger than
048addec 3859 the one given.
b11f1d8a 3860
048addec 38612002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 3862
048addec 3863 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 3864
048addec 38652002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 3866
048addec
JD
3867 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
3868 as the last thing.
a4ac5b17 3869
048addec 38702002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 3871
048addec 3872 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 3873
048addec 38742002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 3875
048addec
JD
3876 * editfns.c (Fformat): Handle precision in string conversion
3877 specifiers like libc functions do (ie, print at most that many
3878 characters).
85cce843 3879
048addec 38802002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 3881
048addec
JD
3882 * xdisp.c (row_containing_pos): Check more carefully
3883 whether charpos is really in the row before returning it.
0d4d26a7 3884
048addec 38852002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 3886
048addec 3887 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 3888
048addec
JD
3889 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
3890 each stack frame. This may change as it could be time consuming.
0d4d26a7 3891
048addec
JD
3892 * macterm.c (mac_check_for_quit_char, quit_char_comp)
3893 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 3894 (mac_initialize): Add code to check for pressing of quit_char
048addec 3895 in the OS event queue.
b11f1d8a 3896
048addec
JD
3897 * mac.c (sys_select): Call mac_check_for_quit_char every second
3898 while blocking on select.
0d4d26a7 3899
048addec
JD
3900 * mac.c (sys_read): Use sys_select to test for input first
3901 before calling read, to allow C-g to break.
9252f7bc 3902
048addec 39032002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 3904
048addec 3905 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 3906
048addec 3907 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 3908
048addec 3909 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 3910
048addec
JD
3911 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
3912 autoload.
9252f7bc 3913
048addec 3914 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 3915
048addec 3916 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 3917
048addec 39182002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 3919
048addec 3920 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 3921
048addec 39222002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 3923
048addec 3924 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 3925
048addec 3926 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 3927
048addec 3928 * alloca.c: Don't use #error.
02d588e2 3929
048addec 39302002-12-03 Dave Love <fx@gnu.org>
02d588e2 3931
048addec
JD
3932 * buffer.c (Qucs_set_table_for_input): New.
3933 (Fget_buffer_create): Use it.
3934 (Qset_buffer_major_mode_hook): Deleted.
3935 (Fset_buffer_major_mode): Revert previous change.
3936 (init_buffer_once): Intern ucs-set-table-for-input.
3937 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
3938 Add &Qucs_set_table_for_input.
451e2697 3939
048addec 39402002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 3941
048addec
JD
3942 * callint.c (Fcall_interactively): Use next_event only if less
3943 than key_count.
72742a99 3944
048addec 39452002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 3946
048addec
JD
3947 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
3948 names to 255 characters.
72742a99 3949
048addec
JD
3950 * macterm.c (XTread_socket): If all frames have been collapsed,
3951 expand the first one before handling drag-and-drop events.
72742a99 3952
048addec
JD
3953 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
3954 which is detected by autoconf.
40e6ff95 3955
048addec 39562002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 3957
048addec
JD
3958 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
3959 offset in two hints table to allow prebinding to be redone and
3960 allow the executable to be stripped.
c02138c6 3961
048addec 39622002-11-29 Dave Love <fx@gnu.org>
c02138c6 3963
048addec
JD
3964 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
3965 already provided.
0e47bbf7 3966
048addec 39672002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 3968
048addec
JD
3969 * xdisp.c (start_display): Check more intelligently for
3970 whether the line is continued.
3971 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 3972
048addec 39732002-11-28 Dave Love <fx@gnu.org>
44129dcb 3974
048addec
JD
3975 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
3976 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 3977
048addec 39782002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 3979
048addec
JD
3980 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
3981 more descriptive error output from lread.c:Fload upon most require
3982 cycles during boostrapping.
1637fd2c 3983
048addec 39842002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 3985
048addec
JD
3986 * fileio.c (Finsert_file_contents): Give a more appropriate error
3987 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 3988
048addec
JD
3989 * dired.c (Ffile_attributes): Don't return negative file sizes for
3990 files bigger than 2Gb when off_t is 32 bit.
540c2788 3991
048addec 39922002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 3993
048addec 3994 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 3995
048addec
JD
3996 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
3997 Test GETPGRP_VOID instead.
3998 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 3999
048addec
JD
4000 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
4001 Don't define.
4002 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 4003
048addec 4004 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 4005
048addec 40062002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 4007
048addec
JD
4008 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
4009 supported.
4042a81a 4010
048addec 40112002-11-25 Dave Love <fx@gnu.org>
4042a81a 4012
048addec 4013 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 4014
048addec 4015 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 4016
048addec 40172002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 4018
048addec 4019 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 4020
048addec 40212002-11-24 Steven Tamm <steventamm@mac.com>
82122254 4022
048addec
JD
4023 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
4024 determine the size of pointers alloced in unexed space instead
4025 of using possibly invalid emacs_zone pointers. This fixes the
4026 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 4027
048addec 40282002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 4029
048addec 4030 * search.c (Fstring_match): Doc fix.
c1ee53bc 4031
048addec
JD
4032 * callint.c (Fcall_interactively): If a command fails because
4033 `*' detects a read-only buffer, but RECORD_FLAG is set,
4034 record it anyway if the args don't actually do tty input.
5598c32e 4035
048addec 40362002-11-22 Dave Love <fx@gnu.org>
5598c32e 4037
048addec 4038 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 4039
048addec
JD
4040 * keyboard.c (interrupt_signal): Provide forward declaration.
4041 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 4042
048addec 4043 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 4044
048addec 40452002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 4046
048addec
JD
4047 * eval.c (interactive_p): Skip any number of bytecode
4048 and special form frames, in any order.
516eea8e 4049
048addec 40502002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 4051
048addec
JD
4052 * w32fns.c (convert_mono_to_color_image): New function.
4053 (xbm_load, xbm_load_image): Use it when foreground or background
4054 is explicitly set.
04dbfa08 4055
048addec 40562002-11-19 Dave Love <fx@gnu.org>
04dbfa08 4057
048addec 4058 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 4059
048addec 40602002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 4061
048addec
JD
4062 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
4063 (XPutPixel): Swap blue and red.
4064 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
4065 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
4066 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
4067 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 4068
048addec 40692002-11-18 Dave Love <fx@gnu.org>
d824beee 4070
048addec 4071 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 4072
048addec 4073 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 4074
048addec 4075 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 4076
048addec
JD
4077 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
4078 malloc, realloc, calloc.
d824beee 4079
048addec
JD
4080 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
4081 (bcmp): Don't define.
d824beee 4082
048addec 4083 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 4084
048addec 4085 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 4086
048addec 4087 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 4088
048addec 4089 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 4090
048addec
JD
4091 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
4092 Don't include alloca.h.
d824beee 4093
048addec 4094 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 4095
048addec 4096 * regex.c (_GNU_SOURCE): Don't define.
1998560a 4097
048addec 4098 * process.c (_GNU_SOURCE): Don't define.
1998560a 4099
048addec 4100 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 4101
048addec 41022002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 4103
048addec 4104 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 4105
048addec 41062002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 4107
048addec
JD
4108 * dispextern.h (struct face): Add `overstrike' field.
4109 * xterm.c (x_draw_glyph_string_foreground)
4110 (x_draw_composite_glyph_string_foreground): Implement overstriking.
4111 * xfaces.c (load_face_font): Set `face->overstrike' based on
4112 result from choose_face_font.
4113 (best_matching_font, choose_face_font): Add `needs_overstrike'
4114 argument, and use it to return whether overstriking is desirable
4115 for this face/font combo.
4116 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 4117
048addec 41182002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 4119
048addec
JD
4120 This change is my fix for the following entry in etc/PROBLEMS:
4121 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
4122 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 4123
048addec
JD
4124 * w32.c: Added wrapper functions around the win32 API functions
4125 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
4126 GetSidIdentifierAuthority. These wrapper functions serve two
4127 purposes:
4128 1. They ensure that the wrapped function can never be called
4129 when Emacs is running on an operating system on which they are
4130 not supported (Microsoft Windows 95 / 98 / ME).
4131 2. They call the wrapped functions via function pointers rather
4132 than calling them directly. This avoids taking advantage of the
4133 undocumented fact that although these functions are not supported
4134 in the 9x branch of Microsoft Windows, the functions do exist in
4135 the version of advapi32.dll that is found in the 9x branch of
4136 Microsoft Windows.
f60ae425 4137
6bdb309a 4138 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
4139 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
4140 and GetSidIdentifierAuthority with calls to the newly added
4141 wrapper functions.
f60ae425 4142
048addec
JD
4143 * w32.h: Added extern declarations for the following functions:
4144 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
4145 syms_of_w32menu, and void syms_of_fontset.
f60ae425 4146
6bdb309a 4147 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
4148 function pointer track_mouse_event_fn in the handler for the
4149 WM_SETFOCUS message.
3582b6a3 4150
6bdb309a 4151 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
4152 reinitialize the function pointers set_menu_item_info and
4153 get_menu_item_info.
f60ae425 4154
048addec 41552002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 4156
048addec
JD
4157 * sound.c: Added a partial implementation of play-sound-internal
4158 for Microsoft Windows. Added various #ifdef / #else / #endif
4159 code blocks to separate the code that will compile under
4160 Microsoft Windows from the code that is specific to Gnu/Linux.
4161 Moved several blocks of code around to make this separation of code
4162 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 4163
048addec 4164 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 4165
048addec
JD
4166 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
4167 added support for play-sound-internal under Windows would be
4168 included in the build of Emacs.
517f42a0 4169
048addec 41702002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 4171
048addec 4172 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 4173
048addec 4174 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 4175
048addec 41762002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 4177
048addec
JD
4178 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
4179 (adjust_point_for_property): Move out of display and invisible even if
4180 we were already inside before (in case a property was added while
4181 we weren't looking). Be more careful when handling invisible props.
4182 Skip invisible text as if it really wasn't there at all.
aab83f91 4183
048addec 41842002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 4185
048addec
JD
4186 * w32term.c (x_draw_image_foreground)
4187 (w32_draw_image_foreground_1): Use standard copy and invert
4188 operations to draw images.
aab83f91 4189
048addec
JD
4190 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
4191 depth of 1.
4192 (xbm_read_bitmap_data): Invert bits as xbm is read in.
4193 (XPutPixel): Don't invert bits here.
a4478a76 4194
048addec 41952002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 4196
048addec
JD
4197 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
4198 (w32_draw_image_foreground_1): Handle image masks.
4199 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 4200
048addec
JD
4201 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
4202 (x_from_xcolors): Adjust RGB values for W32.
4203 (image_background, image_background_transparent)
4204 (postprocess_image, x_to_xcolors, x_disable_image)
4205 (x_build_heuristic_mask): Adapt for W32 and enable.
4206 (x_create_x_image_and_pixmap): Mark images with palettes as such.
4207 (xbm_load): Remove unused variable.
03670a65 4208
048addec 42092002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 4210
048addec 4211 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 4212
048addec 42132002-11-14 Dave Love <fx@gnu.org>
59daa29a 4214
048addec 4215 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 4216
048addec
JD
4217 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
4218 * xmenu.c (unuse_menu_items, digest_single_submenu):
4219 * xfns.c (x_put_x_image):
4220 * xdisp.c (message2_nolog, set_message):
4221 * undo.c (record_point):
4222 * terminfo.c (tparam):
4223 * syntax.c (scan_sexps_forward):
4224 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
4225 * composite.c (update_compositions):
4226 * cm.c (calccost, cmgoto):
4227 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 4228
048addec 4229 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 4230
048addec
JD
4231 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
4232 Don't declare.
59daa29a 4233
048addec 4234 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 4235
048addec
JD
4236 * fns.c (Fcopy_sequence): Doc fix.
4237 (Fmap_char_table): Cast `call2'.
3947677c 4238
048addec
JD
42392002-11-14 Francesco Potorti` <pot@gnu.org>
4240
4241 * s/sol2-8.h: New file.
4242
42432002-11-14 Kim F. Storm <storm@cua.dk>
4244
4245 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
4246 dependency on `risky-local-variable' and the :propertize form.
4247
42482002-11-12 Stefan Monnier <monnier@cs.yale.edu>
4249
4250 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
4251
4252 * syntax.c (scan_sexps_forward): Undo last patch.
4253 Use a more obvious fix: check eob before updating the syntax table.
4254
42552002-11-09 Stefan Monnier <monnier@cs.yale.edu>
4256
4257 * syntax.c (scan_sexps_forward): Update syntax table before reading
4258 a char rather than after so we don't update the table past eob.
4259
42602002-11-09 Dave Love <fx@gnu.org>
4261
4262 * buffer.c (Fset_buffer_major_mode): Fix last change.
4263
4264 * regex.c (regexec): Fix pmatch declaration.
4265
4266 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
4267
4268 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
4269 to self-inserting characters.
4270 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
4271
4272 * coding.c (Vtranslation_table_for_input): New.
4273 (syms_of_coding): DEFVAR it.
4274
42752002-11-08 Juanma Barranquero <lektu@terra.es>
4276
4277 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
4278 window.
4279
42802002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4281
6bdb309a 4282 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
4283 cp, and i.
4284
42852002-11-06 Dave Love <fx@gnu.org>
4286
4287 * buffer.c (Qset_buffer_major_mode_hook): New.
4288 (Fset_buffer_major_mode): Use it.
4289
42902002-11-06 Richard M. Stallman <rms@gnu.org>
4291
4292 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
4293 and stop_polling.
4294
4295 * process.c (wait_reading_process_input):
4296 Test POLLING_PROBLEM_IN_SELECT, not hpux.
4297 Avoid initialization for auto Lisp_Object var.
4298
4299 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
4300
4301 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
4302
43032002-11-05 Richard M. Stallman <rms@gnu.org>
4304
4305 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
4306
4307 * callint.c (Fcall_interactively): New local filter_specs.
4308 (Fcall_interactively): Check for progn as well as let.
4309 Add a gcpro.
4310 (Qprogn): New variable.
4311 (syms_of_callint): Staticpro and init Qprogn.
4312
43132002-11-04 John Paul Wallington <jpw@shootybangbang.com>
4314
4315 * lread.c (Feval_buffer): Doc fix.
4316
43172002-11-04 Dave Love <fx@gnu.org>
4318
4319 * keyboard.c (read_char): Always translate iff
4320 Vkeyboard_translate_table is a char table and c is valid.
4321
4322 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
4323 and fix C types.
4324
43252002-11-03 Stefan Monnier <monnier@cs.yale.edu>
4326
4327 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
4328
4329 * editfns.c (get_pos_property): Don't hardcode Qfield.
4330
4331 * keyboard.c (adjust_point_for_property): Handle `display' prop on
4332 overlays. Also handle `invisible' prop.
4333
43342002-11-02 Stefan Monnier <monnier@cs.yale.edu>
4335
4336 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
4337 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
4338
43392002-11-01 Andreas Schwab <schwab@suse.de>
4340
4341 * editfns.c (Fmessage): Revert last change to properly handle %%.
4342
43432002-11-01 Stefan Monnier <monnier@cs.yale.edu>
4344
4345 * xmenu.c (unuse_menu_items): New fun.
4346 (menu_items_inuse): New var.
4347 (syms_of_xmenu): Initialize it.
4348 (init_menu_items): Use it to detect re-entrance.
4349 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
4350 (Fx_popup_menu): Remove spurious XSETFRAME.
4351
4352 * editfns.c (find_field): Make an exception for nil fields.
4353
43542002-11-01 Dave Love <fx@gnu.org>
4355
4356 * m/gec63.h: Deleted.
4357
43582002-10-31 Dave Love <fx@gnu.org>
4359
4360 * xterm.c (XTread_socket): Fix last change.
4361 (xaw_scroll_callback): Cast call_data to long to avoid warning.
4362
43632002-10-31 Stefan Monnier <monnier@cs.yale.edu>
4364
4365 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
4366
43672002-10-30 Stefan Monnier <monnier@cs.yale.edu>
4368
4369 * editfns.c (overlays_around, get_pos_property): New funs.
4370 (find_field): Use them.
4371 Also be careful not to modify POS before its last use.
4372 (Fmessage): Don't Fformat if there's nothing to format.
4373
43742002-10-30 Dave Love <fx@gnu.org>
4375
4376 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
4377 [HAVE_PTY_H]; Include pty.h.
4378
4379 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
4380
4381 * xterm.c (Qeql): Declare.
4382 (Vx_keysym_table): New.
4383 (syms_of_xterm): Initialize it.
4384 (XTread_socket): Use it. Deal with ASCII keysyms.
4385 (XSetIMValues) [HAVE_X11R6]: Prototype.
4386
4387 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
4388 (lispy_kana_keys): Comment out.
4389 (make_lispy_event) [XK_kana_A]: Comment out.
4390 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
4391 Fix sprintf call.
4392
4393 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
4394 regexp.h change).
4395 (TERMINFO, LIBS_TERMCAP): Define.
4396
4397 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
4398 (bcmp): Define conditional on HAVE_BCMP.
4399 (NO_SIOCTL_H): Don't define.
4400 (TIOCSIGSEND): Don't make conditional on IRIX6.
4401
4402 * s/sol2-5.h: Don't include strings.h.
4403 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
4404
4405 * s/irix6-0.h (IRIX6): Don't define.
4406 (bcopy, bcmp, bzero): Don't undef.
4407
4408 * s/irix6-5.h: Don't include strings.h.
4409 (IRIX6): Don't define.
4410 (bcopy, bcmp, bzero): Don't undef.
4411
4412 * syntax.c (Fforward_comment): Doc fix.
4413
44142002-10-29 Kim F. Storm <storm@cua.dk>
4415
4416 * process.c (Fsignal_process): Allow PROCESS to be specified by
4417 name in addition to pid (as integer or string).
4418
44192002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
4420
4421 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
4422 environments.
4423
44242002-10-27 Kim F. Storm <storm@cua.dk>
4425
4426 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
4427
4428 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
4429
4430 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
4431
4432 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
4433
44342002-10-26 Richard M. Stallman <rms@gnu.org>
4435
4436 * editfns.c (Fformat): Detect invalid format letters for floats.
4437
44382002-10-25 Kenichi Handa <handa@m17n.org>
4439
4440 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
4441 (x_set_title): Likewise.
4442
44432002-10-25 Juanma Barranquero <lektu@terra.es>
4444
4445 * macgui.h:
4446 * w32gui.h: Remove definition of XColor.
4447
4448 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
4449
44502002-10-24 Kim F. Storm <storm@cua.dk>
4451
4452 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
4453 Callers changed (supply dummy arg).
4454
4455 * lisp.h (get_window_cursor_type): Update prototype.
4456
4457 * w32term.c (x_display_and_set_cursor): Get active_cursor from
4458 get_window_cursor_type to track system caret.
4459
44602002-10-24 Kim F. Storm <storm@cua.dk>
4461
4462 * process.c (Fformat_network_address): New function.
4463 (syms_of_process): Defsubr it.
4464 (list_processes_1): Use it to format :local/:remote address if
4465 service/host is not set; before emacs would crash in that case.
4466 (Fmake_network_process): Don't use Ffind_operation_coding_system
4467 to setup coding system if host or service is not set.
4468
44692002-10-23 Juanma Barranquero <lektu@terra.es>
4470
4471 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
4472
4473 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
4474 COLORREF.
4475
4476 * macgui.h:
4477 * w32gui.h: Add definition of XColor.
4478
4479 * macfns.c:
4480 * w32fns.c:
4481 * xfaces.c: Remove definition of XColor.
4482
44832002-10-22 Stefan Monnier <monnier@cs.yale.edu>
4484
4485 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
4486
4487 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
4488 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
4489 window if it is dedicated.
4490 (Fshrink_window): Add preserve_before as was done for enlarge_window.
4491 (Vspecial_display_function): Update docstring.
4492
4493 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
4494 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
4495 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
4496
44972002-10-21 Stefan Monnier <monnier@cs.yale.edu>
4498
4499 * casefiddle.c (casify_region): Don't treat a prefix char as part
4500 of a word when at the beginning.
4501
45022002-10-17 Juanma Barranquero <lektu@terra.es>
4503
4504 * lread.c (syms_of_lread): Fix typos.
4505
45062002-10-17 Dave Love <fx@gnu.org>
4507
4508 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
4509
45102002-10-16 Richard M. Stallman <rms@gnu.org>
4511
4512 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
4513
45142002-10-14 Juanma Barranquero <lektu@terra.es>
4515
4516 * w16select.c (syms_of_win16select): Fix docstring for
4517 `selection-coding-system'.
4518
4519 * w32select.c (syms_of_w32select): Likewise.
4520
45212002-10-14 Stefan Monnier <monnier@cs.yale.edu>
4522
4523 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
4524 a backslash-quoted char.
4525 (scan_lists, scan_sexps_forward): Pacify the compiler.
4526
45272002-10-13 Richard M. Stallman <rms@gnu.org>
4528
4529 * window.c (window_scroll): Set immediate_quit.
4530
4531 * print.c (print): When backquote form is the car of a list,
4532 output in old style. Use old_backquote_output to output all
4533 comma forms inside it in old style too.
4534
4535 * buffer.h (struct buffer): Move `undo_list' down below `name'.
4536
45372002-10-11 Markus Rost <rost@math.ohio-state.edu>
4538
4539 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
4540 batch mode).
4541
4542 * lread.c (Fload): Doc fix (load-suffixes).
4543
45442002-10-10 Steven Tamm <steventamm@mac.com>
4545
4546 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
4547 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
4548 Also switch the default to Qnil from Qt.
4549
45502002-10-08 Kenichi Handa <handa@m17n.org>
4551
4552 * coding.c (code_convert_region): When we need more GAP for
4553 conversion, pay attention to the case that coding->produced is not
4554 greater than coding->consumed.
4555
45562002-10-07 Richard M. Stallman <rms@gnu.org>
4557
4558 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
4559
45602002-10-06 Andrew Choi <akochoi@shaw.ca>
4561
4562 * macmenu.c (mac_menu_show): Add j to count menu items; match
4563 menu_item_selection to it to find selected item.
4564
45652002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4566
4567 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
4568 cases. The correct fix is to pass ReparentNotify to Xt.
4569 The shell widget interprets ConfigureNotify differently depending
4570 on if it has been reparented or not.
4571
45722002-10-05 Markus Rost <rost@math.ohio-state.edu>
4573
4574 * editfns.c (Fformat_time_string): Doc fix.
4575
45762002-10-05 John Paul Wallington <jpw@shootybangbang.com>
4577
4578 * fns.c (Flength): Doc fix.
4579
45802002-10-04 Stefan Monnier <monnier@cs.yale.edu>
4581
4582 * keyboard.c (keyremap): New struct.
4583 (read_key_sequence): Use it: globally replace keytran_foo with
4584 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
4585 keytran_next and fkey_next to just `next'.
4586
45872002-10-04 Steven Tamm <steventamm@mac.com>
4588
4589 * macterm.c (keycode_to_xkeysym_table): Change return to be
4590 treated like an X keysym.
4591
45922002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4593
4594 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
4595 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
4596 This is to also handle x/y changes that occur because of a resize.
4597
45982002-10-02 John Paul Wallington <jpw@shootybangbang.com>
4599
4600 * frame.c (Vdelete_frame_functions): New variable.
4601 (syms_of_frame): Initialize and defvar it.
4602 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
4603 it when frame's `tooltip' parameter is non-nil.
4604
4605 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
4606
4607 * w32fns.c (x_create_tip_frame): Likewise.
4608
4609 * macfns.c (x_create_tip_frame): Likewise.
4610
46112002-09-30 Kenichi Handa <handa@m17n.org>
4612
4613 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
4614 -1 before calling ccl_driver.
4615
4616 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
4617 Only when it is non-nil, handle composition sequence.
4618 (setup_coding_system) <0>: Don't force composition handling.
4619
4620 * Makefile.in (lisp, shortlisp): Add utf-16.elc
4621
46222002-09-29 Richard M. Stallman <rms@gnu.org>
4623
4624 * search.c (Freplace_match): Adjust match data for the substitution
4625 just made in the buffer.
4626
4627 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
4628 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
4629
46302002-09-27 Richard M. Stallman <rms@gnu.org>
4631
4632 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
4633 (read_char): Use them. Do all exits thru the end of the function.
4634
46352002-09-27 Kenichi Handa <handa@etl.go.jp>
4636
4637 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
4638 is nil.
4639
46402002-09-26 Richard M. Stallman <rms@gnu.org>
4641
4642 * regex.h (__restrict_arr): Don't define if already defined.
4643
4644 * coding.c (run_pre_post_conversion_on_str):
4645 Save and restore Vdeactivate_mark.
4646
46472002-09-26 John Paul Wallington <jpw@shootybangbang.com>
4648
4649 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
4650
46512002-09-26 Kenichi Handa <handa@etl.go.jp>
4652
4653 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
4654 nonzero, try face's family at first. Otherwise try FAMILY at first.
4655 (choose_face_font): If C is a single byte char or latin-1, call
4656 try_font_list with PREFER_FACE_FAMILY 1.
4657
46582002-09-21 Richard M. Stallman <rms@gnu.org>
4659
4660 * window.c (select_window_1): Don't select frame.
4661 Set frame's selected window only when frame itself is selected.
4662 (Fselect_window): Doc fix.
4663
46642002-09-18 Kim F. Storm <storm@cua.dk>
4665
4666 * process.c (make-network-process): Doc fix (there is no
4667 network-server-log-function hook).
4668
46692002-09-18 Richard M. Stallman <rms@gnu.org>
4670
4671 * print.c (print): Clear out the unused parts of Vprint_number_table.
4672 (syms_of_print): Doc fix for `print-number-table'.
4673
4674 * unexelf.c (unexec): Undo previous change.
4675
46762002-09-17 Andreas Schwab <schwab@suse.de>
4677
4678 * m/alpha.h [LINUX]: Don't define DATA_START.
4679
46802002-09-16 Dave Love <fx@gnu.org>
4681
4682 * unexelf.c (unexec): Deal with .got, reinstating change from
4683 25-08-1999.
4684
46852002-09-13 Richard M. Stallman <rms@gnu.org>
4686
4687 * s/sol2-6.h (UNEXEC): Comment out definition.
4688
4689 * unexsol.c (unexec): Don't downcase first letter of error msg.
4690
4691 * xfaces.c (Fcolor_supported_p): Just one arg is required.
4692
46932002-09-12 Markus Rost <rost@math.ohio-state.edu>
4694
4695 * unexsol.c: Include buffer.h, charset.h, coding.h.
4696
46972002-09-11 Richard M. Stallman <rms@gnu.org>
4698
4699 * unexsol.c: Don't use report_file_error; do it by hand
4700 using dlerror.
4701
4702 * process.c (wait_reading_process_input, both versions):
4703 Before calling turn_on_atimers, call stop_polling.
4704
4705 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
4706
4707 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
4708 we go to too_near_end, call clear_glyph_matrix.
4709 (redisplay_window): After make_cursor_line_fully_visible,
4710 call clear_glyph_matrix and bypass `goto done'.
4711
4712 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
4713 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
4714
47152002-09-10 Richard M. Stallman <rms@gnu.org>
4716
4717 * fileio.c (Fdo_auto_save): Catch error making directory.
4718 Only call push_message if we need to.
4719 At the same time, make an unwind-protect to pop it.
4720 Rename local message_p to old_message_p.
4721 (do_auto_save_make_dir, do_auto_save_eh): New functions.
4722 (do_auto_save_unwind): Don't call pop_message.
4723
4724 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
4725
4726 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
4727
4728 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
4729
4730 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
4731
47322002-09-10 Stefan Monnier <monnier@cs.yale.edu>
4733
4734 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
4735 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
4736 (re_match_2_internal): Be more careful with infinite loops.
4737
47382002-09-10 Kim F. Storm <storm@cua.dk>
4739
4740 * macros.c (end_kbd_macro): New function.
4741 (Fend_kbd_macro): Use it.
4742
4743 * macros.h (end_kbd_macro): Declare extern.
4744
4745 * keyboard.c (Fdiscard_input): If defining keyboard macro,
4746 end and save it instead of discarding it.
4747
47482002-09-09 Markus Rost <rost@math.ohio-state.edu>
4749
4750 * s/sol2-6.h: Fix typo. Add comment.
4751
47522002-09-09 Richard M. Stallman <rms@gnu.org>
4753
4754 * regex.c (regnum_t): Use signed int, not unsigned int.
4755
4756 * s/sol2-6.h: New file.
4757
4758 * s/sol2-5.h (UNEXEC): Definition deleted.
4759
47602002-09-08 Kim F. Storm <storm@cua.dk>
4761
4762 * macros.c (executing_macro_index): Change type to EMACS_INT.
4763 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
4764
4765 * macros.h (executing_macro_index): Change type to EMACS_INT.
4766
47672002-09-06 Richard M. Stallman <rms@gnu.org>
4768
4769 * casetab.c (set_case_table): Make canon table point to eqv table.
4770
47712002-09-06 Juanma Barranquero <lektu@terra.es>
4772
4773 * coding.c (syms_of_coding): Fix spacing.
4774
4775 * composite.c (Fcompose_region_internal)
4776 (Fcompose_string_internal): Likewise.
4777
4778 * data.c (Flsh): Likewise.
4779
4780 * fontset.c (Fset_fontset_font): Likewise.
4781
4782 * macfns.c (Fx_server_max_request_size): Likewise.
4783
4784 * w16select.c (syms_of_win16select): Likewise.
4785
4786 * w32select.c (syms_of_w32select): Likewise.
4787
4788 * xselect.c (syms_of_xselect): Likewise.
4789
47902002-09-05 Richard M. Stallman <rms@gnu.org>
4791
4792 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
4793 call EXTEND_RANGE_TABLE and return a proper value.
4794 (set_image_of_range): Don't call set_image_of_range_1
4795 if no TRANSLATE or if range includes all of Latin-1.
4796 Only call it for the Latin-1 part of the range.
4797 For other cases, make two separate ranges,
4798 one for the original specified characters and one for
4799 their case-conversions.
4800
48012002-09-04 Richard M. Stallman <rms@gnu.org>
4802
4803 * s/sol2-5.h (UNEXEC): Use unexsol.o.
4804
4805 * window.c (displayed_window_lines): Correct for one-off bug
4806 in HEIGHT on non-window displays.
4807
4808 * regex.c (set_image_of_range_1): New function.
4809 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
4810 Return a value to indicate running out of memory.
4811 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
4812 (extend_range_table_work_area): New subroutine.
4813 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
4814 Different calling conventions, and used from set_image_of_range{,_1}.
4815 (IMMEDIATE_QUIT_CHECK): Definitions moved.
4816
48172002-09-04 Juanma Barranquero <lektu@terra.es>
4818
4819 * makefile.w32-in: All dependencies updated.
4820
48212002-09-01 Richard M. Stallman <rms@gnu.org>
4822
4823 * unexsol.c: New file.
4824
4825 * xfns.c (Qbox): Declare external, don't define.
4826
4827 * xdisp.c (redisplay_window) <force-start case>:
4828 If point is on semi-visible last line, reposition
4829 it at previous line.
4830
4831 * alloc.c (display_malloc_warning): Use display-warning.
4832 (malloc_warning_1): Function deleted.
4833
4834 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
4835
4836 * lread.c (read1): Handle #! by skipping the line.
4837
48382002-08-31 Richard M. Stallman <rms@gnu.org>
4839
4840 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
4841 Don't include LDFLAGS.
4842 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
4843
48442002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
4845
4846 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
4847 member of x_display_info unless we compile for some window system.
4848
48492002-08-31 Kim F. Storm <storm@cua.dk>
4850
4851 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
4852 (get_window_cursor_type): Don't use them.
4853 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
4854
48552002-08-30 Kenichi Handa <handa@etl.go.jp>
4856
4857 * xdisp.c (get_next_display_element): Fix previous change.
4858
48592002-08-30 Andrew Choi <akochoi@shaw.ca>
4860
4861 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
4862 (expose_window): Use it to fix the display of overlapping
4863 rows (merge code from xterm.c).
4864
4865 * macfns.c (Qbox): Add extern declaration.
4866
48672002-08-30 Juanma Barranquero <lektu@terra.es>
4868
4869 * w32fns.c (Qbox): Make extern.
4870 (syms_of_w32fns): Remove initialization of Qbox.
4871
48722002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
4873
4874 * xfns.c (Fx_open_connection): Fix error message.
4875
48762002-08-30 Kim F. Storm <storm@cua.dk>
4877
4878 The following changes consolidates the handling of the cursor
4879 type in xdisp.c, moving duplicate code and functionality from
4880 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
4881
4882 * frame.h (enum text_cursor_kinds): Consolidated here.
4883 Added DEFAULT_CURSOR value.
4884 (struct frame) <desired_cursor, cursor_width>
4885 <blink_off_cursor, blink_off_cursor_width>: New fields.
4886 Consolidated from output_x, output_w32 and output_mac structs.
4887 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
4888 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
4889
4890 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
4891 Variables consolidated here.
4892 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
4893 (Vcursor_in_non_selected_windows): Renamed from
4894 cursor_in_non_selected_windows and changed to Lisp_Object.
4895 (syms_of_xdisp): Define and staticpro new and moved variables.
4896 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
4897 consolidated here. Recognize Qhollow setting.
4898 (set_frame_cursor_types): New function to set frame cursor types
4899 based on the frame parameters.
4900 (get_window_cursor_type): New function to calculate new cursor
4901 type and width for the specified window. Based on duplicated
4902 code consolidated here.
4903 Enhancements: cursor-in-non-selected-windows may be a cursor type,
4904 check buffer-local alternate-cursor-type and blink-cursor-alist
4905 before using built-in blink off methods.
4906
4907 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
4908
4909 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
4910 (get_specified_cursor_type, get_window_cursor_type)
4911 (set_frame_cursor_types): Added prototypes.
4912
4913 * macfns.c (x_specified_cursor_type): Removed.
4914 (x_set_cursor_type): Use set_frame_cursor_types.
4915 (Qbar, Qbox): Removed.
4916 (syms_of_macfns): Don't intern or staticpro them.
4917
4918 * macterm.c (x_specified_cursor_type): Remove prototype.
4919 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
4920 (x_display_and_set_cursor): Use get_window_cursor_type.
4921 Remove unused local variables cursor_non_selected, active_cursor.
4922 Redraw cursor if hbar cursor width changes.
4923 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
4924
4925 * macterm.h (enum text_cursor_kinds): Removed.
4926 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
4927 <blink_off_cursor, blink_off_cursor_width>: Members removed.
4928 (FRAME_DESIRED_CURSOR): Macro removed.
4929
4930 * w32fns.c (Vblink_cursor_alist): Removed.
4931 (Qbar, Qhbar, Qbox, Qhollow): Removed.
4932 (syms_of_w32fns): Don't intern, staticpro, or define them.
4933 (x_specified_cursor_type): Removed.
4934 (x_set_cursor_type): Use set_frame_cursor_types.
4935
4936 * w32term.c (x_specified_cursor_type): Remove prototype.
4937 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
4938 (x_display_and_set_cursor): Use get_window_cursor_type.
4939 Remove unused local variables cursor_off_state.
4940 Redraw cursor if hbar cursor width changes.
4941 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
4942
4943 * w32term.h (enum text_cursor_kinds): Removed.
4944 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
4945 <blink_off_cursor, blink_off_cursor_width>: Members removed.
4946 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
4947 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
4948 (struct w32_display_info) <x_highlight_frame>: Renamed member from
4949 w32_highlight_frame.
4950
4951 * xfns.c (Vblink_cursor_alist): Removed.
4952 (Qbar, Qhbar, Qbox, Qhollow): Removed.
4953 (syms_of_xfns): Don't intern, staticpro, or define them.
4954 (x_specified_cursor_type): Removed.
4955 (x_set_cursor_type): Use set_frame_cursor_types.
4956
4957 * xterm.c (x_specified_cursor_type): Remove prototype.
4958 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
4959 (x_display_and_set_cursor): Use get_window_cursor_type.
4960 Remove unused local variables cursor_off_state.
4961 Redraw cursor if hbar cursor width changes.
4962
4963 * xterm.h (enum text_cursor_kinds): Removed.
4964 (struct output_x) <current_cursor, desired_cursor, cursor_width>
4965 <blink_off_cursor, blink_off_cursor_width>: Members removed.
4966 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
4967 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
4968 (x_specified_cursor_type): Remove prototype.
4969
49702002-08-28 Richard M. Stallman <rms@gnu.org>
4971
4972 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
4973 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
4974 (Vblink_cursor_alist): New variable.
4975 (syms_of_w32fns): Initialize and defvar it.
4976 (x_specified_cursor_type): Recognize Qbox for filled box.
4977 Exceptions are hollow boxes.
4978 (Qbox, Qhollow): New variables.
4979 (syms_of_w32fns): Initialize and staticpro them.
4980
4981 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
4982 New macros.
4983 (struct w32_output): New fields blink_off_cursor,
4984 blink_off_cursor_width.
4985 (FRAME_CURSOR_WIDTH): New macro.
4986
4987 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
4988 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
4989
4990 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
4991 for bar cursor.
4992
4993 * w32term.c (expose_overlaps): New function.
4994 (expose_window): Use it to fix the display of overlapping rows.
4995
49962002-08-28 Simon Josefsson <jas@extundo.com>
4997
4998 * xfns.c (Fx_open_connection): Improve help when X connection
4999 fails, xhost is insecure and xauth is better.
5000
50012002-08-28 Juanma Barranquero <lektu@terra.es>
5002
5003 * makefile.w32-in: Add missing dependencies on w32term.h and
5004 composite.h.
5005
5006 * emacs.c (USAGE1): Add missing newline.
5007
50082002-08-27 Andrew Choi <akochoi@shaw.ca>
5009
5010 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
5011
50122002-08-27 Richard M. Stallman <rms@gnu.org>
5013
5014 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
5015 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
5016 (Vblink_cursor_alist): New variable.
5017 (syms_of_xfns): Initialize and defvar it.
5018 (x_specified_cursor_type): Recognize Qbox for filled box.
5019 Exceptions are hollow boxes.
5020 (Qbox, Qhollow): New variables.
5021 (syms_of_xfns): Initialize and staticpro them.
5022
5023 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
5024 New macros.
5025 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
5026
5027 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
5028 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
5029
5030 * emacs.c (main): Handle --script.
5031 (USAGE1): Mention --script.
5032 (standard_args): Define sort order for --script.
5033
50342002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
5035
5036 * xdisp.c (redisplay_updating_p): Variable removed.
5037 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
5038 New variables.
5039 (init_iterator): Don't free realized faces if
5040 inhibit_free_realized_faces is set.
5041 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
5042 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
5043 initialize Qinhibit_free_realized_faces.
5044
5045 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
5046 when iterator is adding glyphs to a glyph matrix.
5047
50482002-08-27 Kenichi Handa <handa@etl.go.jp>
5049
5050 * xdisp.c (get_next_display_element): In unibyte case, don't use
5051 octal form for such eight-bit characters that can be converted to
5052 multibyte char.
5053
50542002-08-26 Kim F. Storm <storm@cua.dk>
5055
5056 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
5057 and background colors. From Joe Buehler (tiny change).
5058
50592002-08-26 Miles Bader <miles@gnu.org>
5060
5061 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
5062
50632002-08-25 Andrew Choi <akochoi@shaw.ca>
5064
5065 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
5066 defined instead of MAC_OSX.
5067
5068 * s/darwin.h (select): Define select to sys_select only if
5069 HAVE_CARBON is defined.
5070 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
5071 (DONT_REOPEN_PTY): #def it.
5072
5073 * macterm.c (XTread_socket): Remove code to call
5074 SendEventToEventTarget for keys with command modifiers when
5075 mac_command_key_is_meta is nil.
5076
50772002-08-24 Andreas Schwab <schwab@suse.de>
5078
5079 * eval.c (Fdefvar): Fix last change.
5080
50812002-08-23 Richard M. Stallman <rms@gnu.org>
5082
5083 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
5084 Record variables in load history as (defvar . VAR).
5085 (Fdefvar): Don't record in load history if no initial value.
5086 (Qdefvar): New variable.
5087 (syms_of_eval): Init and staticpro it.
5088
5089 * lread.c (syms_of_lread): Doc fix.
5090 (build_load_history): Use Fmember to see if a definition
5091 is already in the Vload_history element.
5092
5093 * process.c (Fstart_process): Remove /: from program name.
5094
5095 * emacs.c (decode_env_path): Don't add /: if file name handler
5096 has a `safe-magic' property.
5097
5098 * callproc.c (Fcall_process): Remove /: from program name.
5099
51002002-08-23 Stefan Monnier <monnier@cs.yale.edu>
5101
5102 * regex.c (PATFETCH): Remove the translating fetch.
5103 (PATFETCH_RAW): Rename to PATFETCH.
5104 (set_image_of_range): New fun.
5105 (SET_RANGE_TABLE_WORK_AREA): Use it.
5106 (regex_compile): Don't translate the pattern chars so eagerly.
5107 Only do it when inserting an `exactn' bytecode or when handling
5108 a char-range.
5109 (mutually_exclusive_p): Avoid empty statement.
5110
51112002-08-22 Kim F. Storm <storm@cua.dk>
5112
5113 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
5114 end up on a partially visible line; this reverts a specific part
5115 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
5116 display error which has been reported several times now.
5117 However it introduces the problem that changes was supposed to fix.
5118 See my comments in the source if you want to debug this further.
5119
51202002-08-20 Kenichi Handa <handa@etl.go.jp>
5121
5122 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
5123
51242002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
5125
5126 * msdos.c (croak): Add `void' to definition.
5127
5128 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
5129 Don't define them, they are defined in msdos.c.
5130
5131 * mem-limits.h [MSDOS]: Declare etext.
5132
5133 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
5134 `const' since CORRECT_DIR_SEPS modifies its target.
5135
51362002-08-19 Kim F. Storm <storm@cua.dk>
5137
5138 * keyboard.c (Fclear_this_command_keys): Added optional arg
5139 KEEP-RECORD to avoid clearing lossage when we just want to clear
5140 the current key sequence (kmacro needs this).
5141
51422002-08-19 Kenichi Handa <handa@localhost>
5143
5144 * composite.c (run_composition_function): Call FUNC if it is fboundp.
5145
5146 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
5147 cons, return Qnil.
5148
51492002-08-17 Richard M. Stallman <rms@gnu.org>
5150
5151 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
5152
5153 * sysdep.c [!VMS]: Include sys/files.h.
5154
5155 * editfns.c (save_restriction_restore): Defend from unchained marker.
5156
5157 * buffer.c (overlays_at): Handle extending vec uniformly.
5158 (overlays_in): Handle extending vec from length 0 as in overlays_at.
5159
51602002-08-15 Andrew Choi <akochoi@shaw.ca>
5161
5162 * mac.c (init_mac_osx_environment): New function.
5163
5164 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
5165
51662002-08-14 Kim F. Storm <storm@cua.dk>
5167
5168 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
5169 executing macro before appending to it (when used from Lisp).
5170 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
5171 which is called prior to each iteration of macro (for kmacro.el).
5172 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
5173
5174 * lisp.h (Fexecute_kbd_macro): Update prototype.
5175
5176 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
5177
51782002-08-14 Kenichi Handa <handa@etl.go.jp>
5179
5180 * xselect.c (QUTF8_STRING): New variable.
5181 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
5182 (x_atom_to_symbol): Likewise.
5183 (x_get_local_selection): New argument local_request. If it is
5184 nonzero, call handler_fn with the second arg nil.
5185 (x_handle_selection_request): Call x_get_local_selection with
5186 local_request 0.
5187 (lisp_data_to_selection_data): Don't encode the string here.
5188 (Fx_get_selection_internal): Call x_get_local_selection with
5189 local_request 1.
5190 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
5191
5192 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
5193
5194 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
5195
51962002-08-13 Richard M. Stallman <rms@gnu.org>
5197
5198 * minibuf.c (Fminibufferp): New function.
5199 (syms_of_minibuf): Defsubr it.
5200 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
5201
52022002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
5203
5204 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
5205
52062002-08-12 Richard M. Stallman <rms@gnu.org>
5207
5208 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
5209 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
5210 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
5211 already.
5212
5213 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
5214
52152002-08-11 Andrew Choi <akochoi@shaw.ca>
5216
5217 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
5218 (Vmac_pass_command_to_system): New variable.
5219 (Vmac_pass_control_to_system): New variable.
5220 (do_mouse_moved): Check wp with is_emacs_window.
5221 (XTread_socket): Check window_ptr with is_emacs_window.
5222 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
5223 events back to Mac Toolbox for processing, depending on values of
5224 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
5225 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
5226 Vmac_pass_control_to_system.
5227
52282002-08-10 Kenichi Handa <handa@etl.go.jp>
5229
5230 * coding.c (unencodable_char_position): New function.
5231 (Funencodable_char_position): New function.
5232 (syms_of_coding): Defsubr Funencodable_char_position.
5233
52342002-08-10 Andrew Choi <akochoi@shaw.ca>
5235
5236 * mac.c (sys_select) [MAC_OSX]: New function.
5237
5238 * macterm.c (MakeMeTheFrontProcess): New function.
5239 (mac_initialize): Call MakeMeTheFrontProcess.
5240
5241 * s/darwin.h: Define select to sys_select.
5242
52432002-08-09 Richard M. Stallman <rms@gnu.org>
5244
5245 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
5246
52472002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
5248
5249 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
5250 end of the buffer.
5251
52522002-08-08 Ken Raeburn <raeburn@mit.edu>
5253
5254 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
5255
5256 * puresize.h (BASE_PURESIZE): Increase to 910000.
5257
52582002-08-08 Kenichi Handa <handa@etl.go.jp>
5259
5260 * coding.c (Ffind_operation_coding_system): For write-region, if
5261 VISIT is a filename, make it the target.
5262
52632002-08-07 Richard M. Stallman <rms@gnu.org>
5264
5265 * alloc.c (mark_object): Detect long lists for debugging.
5266 (mark_object_loop_halt): New variable.
5267
5268 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
5269
5270 * data.c (Fmake_variable_frame_local): Doc fix.
5271
52722002-08-01 David Ponce <david@dponce.com>
5273
5274 * w32menu.c (local_heap, local_alloc, local_free): New macros.
5275 (malloc_widget_value, free_widget_value)
5276 (w32_free_submenu_strings): Use them.
5277
5278 (push_submenu_start, push_submenu_end, push_left_right_boundary)
5279 (push_menu_pane, push_menu_item, single_keymap_panes)
5280 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
5281 (single_submenu, set_frame_menubar)
5282 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
5283
5284 (Fx_popup_menu): Don't show pop up menu until preceding one is
5285 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
5286
5287 * w32menu.c: Changes adapted from xmenu.c
5288 (set_frame_menubar): First parse all submenus,
5289 then make widget_value trees from them.
5290 Don't allocate any widget_value objects
5291 until we are done with the parsing.
5292 (parse_single_submenu): New function.
5293 (digest_single_submenu): New function.
5294 (single_submenu): Function deleted, replaced by those two.
5295
52962002-08-04 Andrew Choi <akochoi@shaw.ca>
5297
5298 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
5299 returns a valid window pointer before proceeding for keyDown and
5300 autoKey events.
5301
53022002-08-03 Andrew Choi <akochoi@shaw.ca>
5303
5304 * macterm.c (USE_CARBON_EVENTS): New macro.
5305 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
5306 (x_iconify_frame): Call CollapseWindow.
5307 (Vmac_reverse_ctrl_meta): New variable.
5308 (Vmac_wheel_button_is_mouse_2): New variable.
5309 (init_mac_drag_n_drop): New function.
5310 (mac_do_receive_drag): New function.
5311 (mac_handle_service_event): New function.
5312 (init_service_handler): New function.
5313 (mac_to_emacs_modifiers): New function.
5314 (mac_event_to_emacs_modifiers): New function.
5315 (mac_get_mouse_btn): New function.
5316 (mac_convert_event_ref): New function.
5317 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
5318 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
5319 mac_get_mouse_btn.
5320 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
5321
5322 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
5323 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
5324 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
5325 TOOL_BAR_EVENT for MAC_OS as well.
5326 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
5327 as for WINDOWS_NT.
5328 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
5329
5330 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
5331
53322002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
5333
5334 * xdisp.c (forward_to_next_line_start): Fix a condition that
5335 lead to a newline being skipped.
5336
53372002-08-02 Andrew Choi <akochoi@shaw.ca>
5338
5339 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
5340
53412002-08-01 Richard M. Stallman <rms@gnu.org>
5342
5343 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
5344
53452002-07-31 Andrew Choi <akochoi@shaw.ca>
5346
5347 * macfns.c: #undef init_process before #define-ing it.
5348
5349 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
5350 HAVE_CARBON is defined.
5351
53522002-07-31 Richard M. Stallman <rms@gnu.org>
5353
5354 * xmenu.c (set_frame_menubar): First parse all submenus,
5355 then make widget_value trees from them.
5356 Don't allocate any widget_value objects
5357 until we are done with the parsing.
5358 (parse_single_submenu): New function.
5359 (digest_single_submenu): New function.
5360 (single_submenu): Function deleted, replaced by those two.
5361
53622002-07-30 Juanma Barranquero <lektu@terra.es>
5363
5364 * w32proc.c (syms_of_ntproc): Fix docstring of
5365 `w32-get-true-file-attributes'.
5366
53672002-07-28 Richard M. Stallman <rms@gnu.org>
5368
5369 * s/hpux8.h (HPUX8): Define this before including hpux.h.
5370 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
5371
5372 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
5373
5374 * keyboard.c (make_lispy_event):
5375 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
5376 Explicitly clear up_modifier in event->modifiers.
5377
53782002-07-27 Richard M. Stallman <rms@gnu.org>
5379
5380 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
5381
5382 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
5383 for bar cursor.
5384
53852002-07-26 Kenichi Handa <handa@etl.go.jp>
5386
5387 * coding.c (detect_coding_iso2022): While checking a byte sequence
5388 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
5389 it in the normal loop.
5390
53912002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
5392
5393 * xterm.c (expose_overlaps): New function.
5394 (expose_window): Use it to fix the display of overlapping rows.
5395
5396 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
5397
53982002-07-23 Ken Raeburn <raeburn@gnu.org>
5399
5400 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
5401 since it only depends on XUINT.
5402
5403 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
5404 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
5405 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
5406 Macros deleted.
3947677c 5407
77d1daf2
AS
5408 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
5409 its value over other approaches.
5410 * sysdep.c (start_of_data): Don't define the function if a macro
5411 form has been defined.
8a8e19a3 5412
048addec
JD
54132002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
5414
5415 * xdisp.c (redisplay_updating_p): New variable.
5416 (init_iterator): Don't free realized faces when
5417 redisplay_updating_p is set.
5418 (redisplay_internal): Set redisplay_updating_p while updating
5419 the display.
5420
54212002-07-23 Richard M. Stallman <rms@gnu.org>
5422
5423 * editfns.c (Fmessage): Treat "" like nil.
5424
54252002-07-23 Kenichi Handa <handa@etl.go.jp>
5426
5427 * xdisp.c (face_before_or_after_it_pos):
5428 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
5429
54302002-07-22 Juanma Barranquero <lektu@terra.es>
5431
5432 * callproc.c (init_callproc) [DOS_NT]:
5433 Initialize Vshared_game_score_directory to nil.
5434 (syms_of_callproc) [DOS_NT]: Likewise.
5435
54362002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
5437
5438 * xdisp.c (display_line): Replace an abort with xassert.
5439
54402002-07-21 Richard M. Stallman <rms@gnu.org>
5441
5442 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
5443 and END_UNCHANGED when setting buffer_unchanged_p.
5444 Use current_matrix_up_to_date_p to decide whether to use
5445 try_cursor_movement.
5446
5447 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
5448
5449 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
5450
5451 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
5452 Set to nil if dir does not exist.
5453 (syms_of_callproc): Init unconditionally and simply.
5454
5455 * buffer.c (Fbuffer_list): Doc fix.
5456
54572002-07-21 Ken Raeburn <raeburn@gnu.org>
5458
5459 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
5460
5461 * buffer.c (mmap_realloc): When shrinking, make sure number of
5462 pages to unmap is rounded towards zero.
5463
5464 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
5465 (XSETINT): Deleted.
5466
5467 * m/att3b.h (XINT): Don't define.
5468 (VALBITS, VALMASK, XTYPE): Deleted.
5469 (DATA_SEG_BITS): Define.
5470 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
5471 ARRAY_MARK_FLAG): Deleted.
5472 (DATA_SEG_BITS): Define.
5473 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
5474 (DATA_SEG_BITS): Define.
5475
54762002-07-20 Richard M. Stallman <rms@gnu.org>
5477
5478 * print.c (print_error_message): New args CONTEXT and CALLER.
5479 Calls changed.
5480
5481 * lisp.h (print_error_message): Declare new args.
5482
5483 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
5484 and CONTEXT to print_error_message, don't print them here.
5485 For a Quit, don't use Vsignaling_function.
5486 Call message_log_maybe_newline.
5487
5488 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
5489
54902002-07-20 Kim F. Storm <storm@cua.dk>
5491
5492 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
5493
54942002-07-19 Ken Raeburn <raeburn@gnu.org>
5495
5496 * bytecode.c (struct byte_stack): Pointers into byte string now
5497 point to const.
5498 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
5499 const.
5500 * charset.h (BCOPY_SHORT): Source pointer now points to const.
5501 * coding.c (encode_eol, detect_coding, detect_eol):
5502 (decode_coding, encode_coding, detect_coding_system):
5503 Source strings now treated as const.
5504 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
5505 modify Lisp string contents.
5506 * coding.h (decode_coding, encode_coding, detect_coding,
5507 detect_eol): Declarations updated.
5508 * composite.c (compose_chars_in_text): Treat Lisp string contents
5509 as const.
5510 * dispnew.c (safe_bcopy): Source pointer now points to const.
5511 * lisp.h (STRING_COPYIN): New macro.
5512 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
5513 (internal_with_output_to_temp_buffer): Declarations updated.
5514 * print.c (temp_output_buffer_setup):
5515 (internal_with_output_to_temp_buffer): Buffer name argument is now
5516 pointer to const.
5517 * sound.c (struct sound_device): Function pointer field "write"
5518 buffer argument now points to const.
5519 (vox_write): Buffer argument points to const.
5520 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
5521 contents as const.
5522 * sysdep.c (emacs_write): Buffer pointer now const.
5523 * term.c (encode_terminal_code): Buffer pointer now const.
5524 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
5525 (x_face_list_fonts, x_update_menu_appearance):
5526 (hash_string_case_insensitive): Treat Lisp string contents as const.
5527
55282002-07-19 Juanma Barranquero <lektu@terra.es>
5529
5530 * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
5531 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
5532
5533 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
5534
5535 * fileio.c (syms_of_fileio): Likewise.
5536
55372002-07-18 Richard M. Stallman <rms@gnu.org>
5538
5539 * data.c (Fdefalias): Doc fix.
5540
55412002-07-17 Dave Love <fx@gnu.org>
5542
5543 * intervals.h (text_property_stickiness): Use P_.
5544
5545 * ccl.c: Remove `emacs' conditionals.
5546 (ccl_backtrace_table): Fix size spec.
5547 (ccl_driver): Fix type errors.
5548
55492002-07-16 Ken Raeburn <raeburn@gnu.org>
5550
5551 * alloc.c (xstrdup, make_string, make_unibyte_string)
5552 (make_multibyte_string, build_string): String pointer args now
5553 point to const.
5554 * charset.c (find_charset_in_text, c_string_width):
5555 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
5556 * fileio.c (report_file_error):
5557 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
5558 (count_combining_before, count_combining_after, insert_1_both):
5559 (insert, insert_and_inherit, insert_string):
5560 (insert_before_markers, insert_before_markers_and_inherit):
5561 * lread.c (intern, oblookup, hash_string):
5562 * minibuf.c (temp_echo_area_glyphs):
5563 * search.c (fast_c_string_match_ignore_case):
5564 * sysdep.c (emacs_open, set_file_times):
5565 * xfaces.c (xstricmp):
5566 * xdisp.c (store_frame_title, string_char_and_length):
5567 (message_dolog, message2, message2_nolog, set_message): Likewise.
5568 (set_message_1): Cast message string argument to const pointer.
5569 * editfns.c (general_insert_function): Insertion function now
5570 takes pointer to const for input data.
5571 * charset.h (find_charset_in_text, c_string_width):
5572 (parse_str_as_multibyte): Declarations updated.
5573 * dispextern.h (xstricmp): Declaration updated.
5574 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
5575 (count_size_as_multibyte, count_combining_before):
5576 (count_combining_after, insert_1, insert_1_both, message_dolog):
5577 (insert, insert_and_inherit, insert_before_markers)
5578 (insert_before_markers_and_inherit, set_message, message2):
5579 (message2_dolog, build_string, make_string, make_unibyte_string):
5580 (make_multibyte_string, intern, oblookup, report_file_error):
5581 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
5582 (emacs_open, xstrdup): Declarations updated.
5583 * systime.h (set_file_times): Declaration updated.
5584
5585 * charset.c (find_charset_in_text, lisp_string_width): Use const
5586 for pointer to lisp string data.
5587 * charset.h (FETCH_STRING_CHAR_ADVANCE):
5588 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
5589 * coding.c (Ffind_coding_systems_region_interval):
5590 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
5591 (Fmake_directory_internal, Fdelete_directory):
5592 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
5593 * fontset.c (font_family_registry, fs_query_fontset):
5594 (list_fontsets):
5595 * frame.c (Fframe_parameter):
5596 * keyboard.c (cmd_error_internal):
5597 * keymap.c (Fdescribe_buffer_bindings):
5598 * lread.c (complete_filename_p, openp):
5599 * minibuf.c (Fminibuffer_complete_word):
5600 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
5601 (face_before_or_after_it_pos, next_element_from_string):
5602 (get_overlay_arrow_glyph_row, display_mode_element):
5603 (decode_mode_spec_coding):
5604 * xterm.c (same_x_server): Likewise.
5605
5606 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
5607 settings of non-existent fields.
5608
5609 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
5610 copy a lisp value.
5611
5612 * lread.c (Fintern_soft): Use string macros instead of
5613 Lisp_String fields.
5614 * keyboard.c (echo_char, parse_modifiers_uncached):
5615 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
5616 * textprop.c (validate_interval_range, interval_of): Likewise.
5617
5618 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
5619
5620 * charset.h (FETCH_STRING_CHAR_ADVANCE)
5621 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
5622 XSTRING()->size_byte.
5623
5624 * lisp.h (SDATA, SREF): Produce rvalue.
5625 (SSET): New macro.
5626 * alloc.c (make_event_array): Use SSET for storing into a string.
5627 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
5628 a string.
5629 * casefiddle.c (casify_object): Use SSET.
5630 * charset.h (FETCH_STRING_CHAR_ADVANCE)
5631 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
5632 address of string contents.
5633 * data.c (Faref): Use SDATA.
5634 (Faset): Use SDATA, SSET.
5635 * dired.c (directory_files_internal): Use SSET.
5636 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
5637 (Fread_file_name): Use SREF, SSET.
5638 * fns.c (concat): Use SSET.
5639 (concat, Fdelete): Use SDATA.
5640 * insdel.c (insert_from_string_1): Use SDATA.
5641 * keyboard.c (Fevent_convert_list): Use SREF.
5642 * lread.c (Fload): Use SDATA, SSET.
5643 * macfns.c (validate_x_resource_name): Use SSET.
5644 * process.c (status_message): Use SSET.
5645 * search.c (wordify): Use SDATA.
5646 (Freplace_match): Use SREF.
5647 * w32fns.c (validate_x_resource_name): Use SSET.
5648 * xfns.c (validate_x_resource_name): Use SSET.
5649 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
5650
56512002-07-16 Richard M. Stallman <rms@gnu.org>
5652
5653 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
5654
5655 * xdisp.c (reconsider_clip_changes):
5656 Don't test prevent_redisplay_optimizations_p.
5657 (redisplay_internal): Test prevent_redisplay_optimizations_p
5658 along with clip_changed in some cases.
5659 (try_window_id): Likewise.
5660 (redisplay_window): New local var buffer_unchanged_p.
5661
5662 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
5663
5664 * process.c (create_process): Test USG_SUBTTY_WORKS.
5665 (process_send_signal): Clean up handling of GID.
5666 Detect errors in ioctls meant to set GID.
5667
5668 * window.c (temp_output_buffer_show):
5669 Don't set prevent_redisplay_optimizations_p.
5670
56712002-07-15 Juanma Barranquero <lektu@terra.es>
5672
5673 * eval.c (Fdefvaralias): Add docstring argument.
5674
56752002-07-15 Ken Raeburn <raeburn@gnu.org>
5676
5677 * lisp.h (STRING_INTERVALS): Produce rvalue.
5678 (STRING_SET_INTERVALS): New macro.
5679 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
5680 * fns.c (Fstring_as_multibyte): Likewise.
5681 * intervals.c (balance_possible_root_interval, delete_interval)
5682 (create_root_interval, copy_intervals_to_string): Likewise.
5683 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
5684 instead of 0.
5685
56862002-07-14 Ken Raeburn <raeburn@gnu.org>
5687
5688 * lisp.h (STRING_SET_CHARS): New macro.
5689 (SCHARS, SBYTES): Produce rvalues.
5690 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
5691 * fns.c (concat): Likewise.
5692 * lread.c (read_vector): Likewise.
5693
5694 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
5695 (STRING_SET_UNIBYTE): New macro.
5696 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
5697 length of -1) changed to use STRING_SET_UNIBYTE.
5698 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
5699 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
5700 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
5701 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
5702 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
5703 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
5704 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
5705 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
5706 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
5707 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
5708 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
5709 STRING_BYTES or indirection changed to SCHARS, SBYTES,
5710 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
5711 unchanged for now.
5712
57132002-07-13 Kim F. Storm <storm@cua.dk>
5714
5715 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
5716
57172002-07-12 Richard M. Stallman <rms@gnu.org>
5718
5719 * fileio.c (Fwrite_region): Doc fix.
5720
5721 * print.c (print_error_message): Don't handle Vsignaling_function here.
5722
5723 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
5724 (command_loop_1): Avoid certain actions after memory-full error.
5725
5726 * eval.c (Fsignal): Don't call cancel_hourglass.
5727 For a memory-full error, don't call Vsignal_hook_function
5728 and don't set Vsignaling_function.
5729
5730 * process.c (process_send_signal): Add abort call.
5731
57322002-07-11 Markus Rost <rost@math.ohio-state.edu>
5733
5734 * keymap.c (Fkey_binding): Fix typo.
5735
57362002-07-11 Richard M. Stallman <rms@gnu.org>
5737
5738 * alloc.c (Vmemory_full): New variable.
5739 (Vmemory_signal_data): Renamed from memory_signal_data.
5740 Uses changed.
5741 (syms_of_alloc): Defvar them.
5742 (memory_full, buffer_memory_full): Set Vmemory_full.
5743
5744 * lisp.h (Vmemory_full): Add declaration.
5745 (current_column, indented_beyond_p): Change declaration.
5746
5747 * indent.c (last_known_column): Declare as double, not float.
5748 (current_column, current_column_1, string_display_width)
5749 (position_indentation): Return `double'.
5750 (indented_beyond_p): Arg `column' is `double'. Callers changed.
5751
5752 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
5753 (back_to_previous_visible_line_start)
5754 (reseat_at_next_visible_line_start, next_element_from_buffer):
5755 Use `double', not `float', when calling indented_beyond_p.
5756
5757 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
5758
5759 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
5760
57612002-07-11 Juanma Barranquero <lektu@terra.es>
5762
5763 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
5764 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
5765 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
5766 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
5767 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
5768 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
5769
57702002-07-10 Juanma Barranquero <lektu@terra.es>
5771
5772 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
5773 changed.
5774
57752002-07-09 Stefan Monnier <monnier@cs.yale.edu>
5776
5777 * data.c (Fdefalias): Add an optional `docstring' argument.
5778 (set_internal, Fsetq_default): Use XCAR/XCDR.
5779
5780 * composite.c (HASH_VALUE, HASH_KEY):
5781 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
5782
57832002-07-09 Kenichi Handa <handa@etl.go.jp>
5784
5785 * callproc.c (Fcall_process): Fix previous change.
5786
57872002-07-07 Stefan Monnier <monnier@cs.yale.edu>
5788
5789 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
5790 Add support for hash-tables.
5791 (Ftry_completion): Return t even if the string appears multiple times.
5792
5793 * fns.c (Fnconc): Use XCDR.
5794 (Fprovide): Use CONSP and XCDR.
5795 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
5796 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
5797 (Fmake_hash_table): Accept `:size nil'.
5798 (Fmakehash): Delete: moved to subr.el.
5799 (syms_of_fns): Don't defsubr makehash.
5800
5801 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
5802 (HASH_TABLE_SIZE): Move from fns.c.
5803
58042002-07-07 Richard M. Stallman <rms@gnu.org>
5805
5806 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
5807 Instead just return 0 when there is something to be done.
5808 (try_scrolling): If make_cursor_line_fully_visible returns 0,
5809 retry scrolling as if cursor were off the bottom.
5810 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
5811 return CURSOR_MOVEMENT_MUST_SCROLL.
5812 (redisplay_window): If make_cursor_line_fully_visible returns 0,
5813 go to try_to_scroll.
5814
5815 * buffer.c (Fbuffer_local_value): Store current value into its binding
5816 so we get the up-to-date value for the binding that is loaded.
5817
5818 * eval.c (Fdefmacro): Doc fix.
5819
58202002-07-05 Dave Love <fx@gnu.org>
5821
5822 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
5823 correctly.
5824
5825 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
5826 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
5827 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
5828 CCL_LookupCharConstTbl.
5829 (syms_of_ccl): Defvar translation-hash-table-vector.
5830
58312002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5832
5833 * xdisp.c: Remove unused variable `face'.
5834
58352002-07-04 Juanma Barranquero <lektu@terra.es>
5836
5837 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
5838 obsolescence information.
5839
58402002-07-03 Andrew Choi <akochoi@shaw.ca>
5841
5842 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
5843 pattern. Search cache first.
5844 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
5845 for Japanese font.
5846 (XLoadQueryFont): Use it.
5847
58482002-07-02 Richard M. Stallman <rms@gnu.org>
5849
5850 * keymap.c (Fdefine_key): Doc fix.
5851
5852 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
5853
58542002-07-02 Juanma Barranquero <lektu@terra.es>
5855
5856 * keymap.c (syms_of_keymap): Fix typo.
5857
58582002-07-01 Andrew Choi <akochoi@shaw.ca>
5859
5860 * s/darwin.h: Define POSIX_SIGNALS.
5861
5862 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
5863 and FSRefMakePath to convert FSSpec returned with Apple Event to
5864 Posix pathname.
5865 (mac_initialize) [TARGET_API_MAC_CARBON]:
5866 Call init_required_apple_events and disable the `Quit' menu item
5867 provided automatically by the Carbon Toolbox.
5868
58692002-07-01 Dave Love <fx@gnu.org>
5870
5871 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
5872 for K&R.
5873
5874 * xterm.c: Fix prototype for K&R.
5875
5876 * term.c (costs_set): Declare static, non-initialized for pcc.
5877
58782002-07-01 Richard M. Stallman <rms@gnu.org>
5879
5880 * keyboard.c (timer_last_idleness_start_time): New variable.
5881 (timer_start_idle): Set that.
5882 (read_key_sequence): Use that to reset timer_idleness_start_time
5883 to previous value.
5884
5885 * window.c (Frecenter): With arg, set optional_new_start.
5886
5887 * xdisp.c (redisplay_internal): Make optional_new_start really work.
5888
5889 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
5890 buffer for completion.
5891
58922002-06-29 Ken Raeburn <raeburn@gnu.org>
5893
5894 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
5895
58962002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5897
5898 * keyboard.c (readable_filtered_events): New function that filters
5899 FOCUS_IN_EVENT depending on parameter.
5900 (readable_events): Calls readable_filtered_events, not filtering
5901 FOCUS_IN_EVENT.
5902 (get_filtered_input_pending): New function, filtering parameter passed
5903 to readable_filtered_events.
5904 (get_input_pending): Calls get_filtered_input_pending, not filtering
5905 FOCUS_IN_EVENT.
5906 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
5907 FOCUS_IN_EVENT.
5908
5909 * xterm.h (struct x_output): Add focus_state.
5910
5911 * xterm.c (x_focus_changed): New function.
5912 (x_detect_focus_change): New function.
5913 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
5914 EnterNotify and LeaveNotify to track X focus changes.
5915
59162002-06-28 Andreas Schwab <schwab@suse.de>
5917
5918 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
5919
59202002-06-27 Kim F. Storm <storm@cua.dk>
5921
5922 * xdisp.c: (mode_line_string_list, mode_line_string_face)
5923 (mode_line_string_face_prop): New variables.
5924 (store_mode_line_string): New function.
5925 (display_mode_element): Use store_mode_line_string to
5926 add mode-line string elements to mode_line_string_list
5927 when mode_line_string_list is non-nil.
5928 (Fformat_mode_line): Now returns propertized string by
5929 default. New arg NO-PROPS to ignore properties.
5930 (decode_mode_spec): Only add two dashes for %- in propertized
5931 mode-line string.
5932 (syms_of_xdisp): Init and staticpro mode_line_string_list.
5933
59342002-06-27 Stefan Monnier <monnier@cs.yale.edu>
5935
5936 * minibuf.c (minibuffer_completion_contents): Add return type.
5937
59382002-06-27 Juanma Barranquero <lektu@terra.es>
5939
5940 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
5941
59422002-06-26 Juanma Barranquero <lektu@terra.es>
5943
5944 * fileio.c (read_file_name_cleanup): Add missing return.
5945
59462002-06-26 Richard M. Stallman <rms@gnu.org>
5947
5948 * window.c (Frecenter): Don't set force_start flag.
5949
5950 * minibuf.c (do_completion, Fminibuffer_complete_word)
5951 (Fminibuffer_completion_help): Complete just the text before point.
5952 (minibuffer_completion_contents): New function.
5953
5954 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
5955
5956 * frame.c (frames_bury_buffer): Function deleted.
5957
59582002-06-25 Miles Bader <miles@gnu.org>
5959
5960 * callint.c (Fcall_interactively): When checking to see if doprnt hit
5961 the end of callint_message, allow for a terminating '\0'.
5962
59632002-06-24 Juanma Barranquero <lektu@terra.es>
5964
5965 * w32select.c: Include composite.h
5966
5967 * w16select.c: Likewise.
5968
59692002-06-24 Kenichi Handa <handa@etl.go.jp>
5970
5971 * callproc.c (Fcall_process): If code detection is necessary,
5972 call detect_coding directly here.
5973
5974 * coding.c (detect_eol): Preserve coding->cmp_data.
5975
5976 * w16select.c (Fw16_get_clipboard_data):
5977 * w32fns.c (w32_to_x_font):
5978 * w32select.c (Fw32_get_clipboard_data):
5979 * xselect.c (selection_data_to_lisp_data):
5980 * xterm.c (XTread_socket): Disable composition handling.
5981
59822002-06-24 Stefan Monnier <monnier@cs.yale.edu>
5983
5984 * print.c (temp_output_buffer_setup): Kill all local variables.
5985
59862002-06-22 Stefan Monnier <monnier@cs.yale.edu>
5987
5988 * lread.c (Fread): Remove redundant and imprecise declaration.
5989
5990 * xfns.c (check_x_display_info): Use check_x_frame.
5991
5992 * .gdbinit (xprintsym): Use the new `xname' field.
5993 (xsymbol): Use it.
5994
59952002-06-22 Jason Rumney <jasonr@gnu.org>
5996
5997 * w32fns.c (file_dialog_callback): New function.
5998 (Fx_file_dialog): Allow selecting directories as well as files.
5999
60002002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6001
6002 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
6003 OpenBSD. Add support for mipseb-*-netbsd* machines.
6004
60052002-06-17 Andrew Choi <akochoi@shaw.ca>
6006
6007 * macterm.c (mac_scroll_area): Set foreground and backcolor to
6008 black and white before scrolling. Restore frame background and
6009 foreground color after scrolling.
6010 (do_window_update): Call XClearWindow before calling expose_frame.
6011 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
6012 FRAME_FOREGROUND_PIXEL of frame.
6013
6014 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
6015 test Mac command key as <ALT> key.
6016
60172002-06-17 Stefan Monnier <monnier@cs.yale.edu>
6018
6019 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
6020
6021 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
6022 Lookup keys in function-key-map immediately so that key-translation-map
6023 can be applied earlier.
6024 Remove function_key_possible and key_translation_possible, replaced
6025 by checking `keytran_start < t'.
6026
6027 * .gdbinit (xsymbol): Use the new `xname' field.
6028
60292002-06-17 Andrew Choi <akochoi@shaw.ca>
6030
6031 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
6032 test Mac command key as <ALT> key.
6033
6034 * mac.c (do_applescript): Call initialize_applescript if necessary
6035 when first called. Dispose of result_desc only when there is no error.
6036 (Fdo_applescript): Use %d format specifier instead of %ld.
6037
60382002-06-16 Andrew Choi <akochoi@shaw.ca>
6039
6040 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
6041 of FrontWindow for cases keyDown and autoKey.
6042
6043 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
6044 Vdefault_fontset to Monaco with mac-roman coding.
6045
6046 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
6047 init_process before and after inclusion of Carbon/Carbon.h, resp.
6048
6049 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
6050 cursor_gc.
6051 (add_font_name_table_entry): New function.
6052 (init_font_name_table): Use add_font_name_table_entry; add italic,
6053 bold, and bold-italic entries for truetype fonts.
6054
6055 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
6056 for Mac too.
6057 (try_font_list) [MAC_OS]: If no font matches given registry, try
6058 fonts with any registry matching face_family.
6059 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
6060
6061 * s/darwin.h: If autoconf detects the Ncurses library, define
6062 LIBS_TERMCAP to -lncurses to use it.
6063
60642002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
6065
6066 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
6067
60682002-06-15 Richard M. Stallman <rms@gnu.org>
6069
6070 * window.c (Fset_window_configuration): Explicitly preserve
6071 the point value that new_current_buffer had at the start.
6072
60732002-06-14 Juanma Barranquero <lektu@terra.es>
6074
6075 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
6076 Fix typos.
6077
60782002-06-14 Kim F. Storm <storm@cua.dk>
6079
6080 * insdel.c (insert_1_both, insert_from_string_1)
6081 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
6082 insert happened in the end_unchanged region. Otherwise, the
6083 redisplay may be confused and duplicate the last line in the
6084 buffer [seen after save-buffer when require-final-newline==t].
6085
60862002-06-13 Jason Rumney <jasonr@gnu.org>
6087
6088 * w32.c (init_environment): Remove EMACSLOCKDIR.
6089 (stat): Swap _S_IFDIR and _S_IFREG.
6090
60912002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6092
6093 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
6094 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
6095 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
6096 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
6097 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
6098 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
6099 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
6100 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
6101 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
6102 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
6103 SELECTION_REQUEST_EVENT, selection_clear_event to
6104 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
6105 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
6106 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
6107 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
6108 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
6109 no_event to NO_EVENT.
6110
61112002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6112
6113 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
6114
61152002-06-12 Stefan Monnier <monnier@cs.yale.edu>
6116
6117 * intervals.c (textget): Don't forget to `return'.
6118 (lookup_char_property): Use XCAR/XCDR.
6119
61202002-06-12 Juanma Barranquero <lektu@terra.es>
6121
6122 * xdisp.c (Fformat_mode_line): Fix typo.
6123
61242002-06-12 Kim F. Storm <storm@cua.dk>
6125
6126 * xdisp.c (Fformat_mode_line): New function.
6127 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
6128 (store_frame_title_char, store_frame_title): Use unconditionally.
6129 (init_xdisp): Defsubr Fformat_mode_line.
6130 Initialize frame_title_buf etc. unconditionally.
6131
61322002-06-11 Stefan Monnier <monnier@cs.yale.edu>
6133
6134 * keyboard.c (read_key_sequence):
6135 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
6136 things through those maps after downcasing events.
6137 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
6138 applies after function-key-map.
6139 Make sure that keytran can be done in the middle in the sequence.
6140 Be careful not to throw away events past the one we downcase.
6141
6142 * lread.c (read_integer): Remove unused var `tem'.
6143 (read1): Fix int/Lisp_Object mixup.
6144
6145 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
6146
61472002-06-11 Richard M. Stallman <rms@gnu.org>
6148
6149 * keyboard.c (readable_events): Ignore any number of
6150 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
6151
61522002-06-09 Miles Bader <miles@gnu.org>
6153
6154 * xfaces.c (Ftty_supports_face_attributes_p): New function.
6155 (parse_rgb_list, tty_lookup_color): New functions.
6156 (tty_defined_color): Use `tty_lookup_color' to do all the work.
6157 (color_distance, Fcolor_distance): New functions.
6158 (TTY_SAME_COLOR_THRESHOLD): New macro.
6159 (Qtty_color_standard_values): New variable.
6160 (syms_of_xfaces): Initialize new vars & functions.
6161
61622002-06-08 Colin Walters <walters@verbum.org>
6163
6164 * textprop.c (Vchar_property_alias_alist): New variable.
6165 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
6166
6167 * intervals.c (lookup_char_property): New function for looking up
6168 overlay and text properties, created from textget.
6169 (textget): Use it.
6170
6171 * intervals.h (lookup_char_property): Declare.
6172 (Vchar_property_alias_alist): Declare.
6173
6174 * buffer.c (Foverlay_get): Use lookup_char_property.
6175
61762002-06-07 Sam Steingold <sds@gnu.org>
6177
6178 * xselect.c (lisp_data_to_selection_data): Fix last change:
6179 *data_ret is not a Lisp string, while unibyte_string is.
6180
61812002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
6182
6183 * xselect.c (lisp_data_to_selection_data): Fix last change:
6184 set size_ret.
6185
61862002-06-07 Andreas Schwab <schwab@suse.de>
6187
6188 * m/amdx86-64.h: New file.
6189
61902002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
6191
6192 * fns.c (Fstring_make_unibyte): Doc fix.
6193
6194 * xselect.c (lisp_data_to_selection_data): If the requested type
6195 is STRING, call string_make_unibyte to encode the selected text
6196 as a string.
6197
6198 * window.c (Fset_window_hscroll): Doc fix.
6199
62002002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6201
6202 * fileio.c (choose_write_coding_system):
6203 Call select-safe-coding-system properly.
6204
62052002-06-03 Richard M. Stallman <rms@gnu.org>
6206
6207 * xdisp.c (message_with_string): Error if STRING is not a string.
6208
6209 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
6210
6211 * fileio.c (choose_write_coding_system): Pass FILE arg to
6212 Vselect_safe_coding_system_function.
6213
62142002-06-03 Ken Raeburn <raeburn@gnu.org>
6215
6216 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
6217
62182002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
6219
6220 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
6221 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
6222 * keymap.c (describe_command): Likewise.
6223 * minibuf.c (read_minibuf): Likewise.
6224
6225 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
6226 Cast `current_column' return value to int.
6227 (back_to_previous_visible_line_start)
6228 (reseat_at_next_visible_line_start, next_element_from_buffer):
6229 Cast `indented_beyond_p' 3rd arg to float.
6230
6231 * indent.c (last_known_column): Now a float.
6232 (current_column_1, position_indentation, current_column)
6233 (string_display_width): Return float.
6234 (Fcurrent_column): Cast `current_column' return value to int.
6235 (Fcurrent_indentation): Cast `position_indentation' retval to int.
6236 (indented_beyond_p): Third arg now a float.
6237 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
6238
6239 * lisp.h (current_column): Now returns float.
6240 (indented_beyond_p): 3rd arg now a float.
6241
62422002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
6243
6244 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
6245 is Qcompound_text_with_extensions.
6246
6247 * xselect.c (lisp_data_to_selection_data): Always set selection
6248 type as string if x_encode_text returns streingp non-NULL.
6249
6250 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
6251
62522002-05-30 Richard M. Stallman <rms@gnu.org>
6253
6254 * window.c (Fset_window_configuration): Correct the handling
6255 of point in current buffer, to work with multiple windows.
6256
62572002-05-29 Colin Walters <walters@verbum.org>
6258
6259 * lread.c (Fread_from_string): Don't depend on order of evaluation
6260 for C function parameters.
6261
62622002-05-28 Richard M. Stallman <rms@gnu.org>
6263
6264 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
6265 way for blinked-off state and for a nonselected window.
6266
6267 * window.c (window_scroll_pixel_based): Don't call Fbolp;
6268 instead, see if the new start pos is at beginning of line.
6269
6270 * fileio.c (Fwrite_region): If START is a string, don't
6271 make any annotations.
6272
6273 * eval.c (syms_of_eval): Doc fix.
6274
62752002-05-28 Colin Walters <walters@debian.org>
6276
6277 * emacs.c (USAGE1): Add --no-splash.
6278 (standard_args): Ditto.
6279
62802002-05-28 Colin Walters <walters@gnu.org>
6281
6282 * lread.c (readchar_count): New variable.
6283 (readchar): Increment it.
6284 (unreadchar): Decrement it.
6285 (read_multibyte): Decrement it.
6286 (Vread_with_symbol_positions): New variable.
6287 (Vread_symbol_positions_list): New variable.
6288 (read_internal_start): New function, created from Fread and
6289 Fread_from_string. Handle Vread_symbol_positions_list and
6290 Vread_with_symbol_positions.
6291 (readevalloop, Fread, Fread_from_string): Use it.
6292 (read1): Use readchar_count to add symbol positions to
6293 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
6294 (syms_of_lread): DEFVAR_LISP and initialize them.
6295
6296 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
6297 (substitute_object_recurse, substitute_object_in_subtree)
6298 (substitute_in_interval): Prototype.
6299 (read_multibyte): Return c if it's less than zero.
6300
63012002-05-28 Kim F. Storm <storm@cua.dk>
6302
6303 * fileio.c (Fread_file_name_internal): Added brute-force
6304 speed up for using predicate file-directory-p.
6305
63062002-05-28 Kim F. Storm <storm@cua.dk>
6307
6308 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
6309 New variables.
6310 (syms_of_fileio): DEFVAR_LISP them.
6311 (read_file_name_cleanup): New unwind function.
6312 (Fread_file_name_internal): Only return completions satifying
6313 Vread_file_name_predicate. Temporarily unwind protect and rebind
6314 default-directory while checking completions against the predicate.
6315 (Fread_file_name): Added PREDICATE argument. Specbind it to
6316 Vread_file_name_predicate during completion.
6317 Call Vread_file_name_function to read the file name if non-nil.
6318
6319 * lisp.h (Fread_file_name): Now has 6 args.
6320
6321 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
6322 predicate for Fread_file_name when reading directory name.
6323 Supply Qnil for predicate in other calls to Fread_file_name.
6324
63252002-05-26 Miles Bader <miles@gnu.org>
6326
6327 * term.c (tty_capable_p): New function.
6328 * dispextern.h (tty_capable_p): New function declaration.
6329 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
6330 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
6331
63322002-05-23 Stefan Monnier <monnier@cs.yale.edu>
6333
6334 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
6335 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
6336 (Vwrite_region_annotate_functions): Docstring fix.
6337
63382002-05-23 Kim F. Storm <storm@cua.dk>
6339
6340 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
6341 phys_cursor's hpos is overwritten. This is still not completely
6342 correct, as it doesn't really make sense to use hpos at all to
6343 get the cursor glyph (as that is relative to the width of the
6344 characters on the line, which may have changed during the update).
6345
63462002-05-22 Jason Rumney <jasonr@gnu.org>
6347
6348 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
6349 Lisp_Object.
6350 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
6351 Use modified enumfont_t struct.
6352
6353 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
6354
6355 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
6356 Handle the `hbar' cursor type.
6357 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
6358
6359 * w32fns.c (Qhbar): New variable.
6360 (x_specified_cursor_type): Use it.
6361
63622002-05-21 Ken Raeburn <raeburn@gnu.org>
6363
6364 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
6365 now, when the address is needed.
6366
63672002-05-21 Colin Walters <walters@gnu.org>
6368
6369 * Makefile.in (shortlisp): Add font-core.el.
6370
63712002-05-20 Richard M. Stallman <rms@gnu.org>
6372
6373 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
6374
6375 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
6376 equivalent key bindings here.
6377
63782002-05-20 Ken Raeburn <raeburn@gnu.org>
6379
6380 Change symbol structure to contain a lisp object for the symbol
6381 name:
6382 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
6383 object field named "xname".
6384 (SYMBOL_NAME): New macro.
6385 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
6386 name field.
6387 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
6388 (mark_object, gc_sweep): Use symbol xname field and XSTRING
6389 instead of name field.
6390 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
6391 SYMBOL_NAME instead of XSYMBOL and name field.
6392 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
6393 instead of XSYMBOL and name field.
6394 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
6395 and SYMBOL_NAME instead of XSYMBOL and name field.
6396 * coding.c (Fread_coding_system, code_convert_region1)
6397 (code_convert_string1, code_convert_string_norecord)
6398 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
6399 XSYMBOL and name field.
6400 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
6401 (Fmake_variable_buffer_local, Fmake_local_variable)
6402 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
6403 of XSYMBOL and name field.
6404 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
6405 XSYMBOL and name field.
6406 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
6407 instead of XSYMBOL and name field.
6408 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
6409 XSYMBOL and name field.
6410 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
6411 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
6412 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
6413 instead of XSYMBOL and name field.
6414 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
6415 (parse_modifiers, apply_modifiers, Fevent_convert_list)
6416 (parse_solitary_modifier, Fexecute_extended_command):
6417 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
6418 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
6419 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
6420 of XSYMBOL and name field.
6421 (describe_command, describe_translation): Use SYMBOL_NAME and
6422 assignment instead of XSYMBOL and name field and XSETSTRING.
6423 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
6424 instead of XSYMBOL and name field.
6425 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
6426 name field and XSETSTRING.
6427 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
6428 of XSYMBOL and name field.
6429 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
6430 assignment instead of XSYMBOL and name field and XSETSTRING.
6431 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
6432 XSTRING instead of XSYMBOL and name field.
6433 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
6434 and XSTRING instead of XSYMBOL and name field.
6435 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
6436 and XSTRING instead of XSYMBOL and name field.
6437 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
6438 XSTRING instead of XSYMBOL and name field.
6439 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
6440 of XSYMBOL and name field.
6441 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
6442 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
6443
64442002-05-19 Ken Raeburn <raeburn@gnu.org>
6445
6446 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
6447 and XCDR real rvalues in most configurations.
6448
6449 * buffer.c (fix_overlays_in_range, fix_overlays_before):
6450 Don't take the address of the cdr part of a cons cell; instead, track
6451 the parent cell and call XSETCDR, or set the variable for the head
6452 of the list if we haven't started down the list yet.
6453
64542002-05-19 Richard M. Stallman <rms@gnu.org>
6455
6456 * doc.c (reread_doc_file): Don't ask for confirmation.
6457
64582002-05-18 Jason Rumney <jasonr@gnu.org>
6459
6460 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
6461 (xbm_load_image): Use it.
6462 (xbm_load): Ditto.
6463 (xbm_read_bitmap_data): Reverted to xfns.c version.
6464 From David Ponce <david@dponce.com>.
6465
64662002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
6467
6468 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
6469 2.02 and later.
6470
64712002-05-16 Juanma Barranquero <lektu@terra.es>
6472
6473 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
6474
64752002-05-15 Stefan Monnier <monnier@cs.yale.edu>
6476
6477 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
6478 meaningful test.
6479 (read_char_minibuf_menu_prompt): Fix typo.
6480
64812002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
6482
6483 * eval.c (Fcommandp): Doc fix.
6484
64852002-05-13 Stefan Monnier <monnier@cs.yale.edu>
6486
6487 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
6488 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
6489 (Fset_keymap_parent): Gcpro a bit more.
6490 (access_keymap): Gcpro around meta_map call and around the main loop.
6491 (get_keyelt): Gcpro when following indirect references.
6492 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
6493 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
6494 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
6495 Remove useless ad-hoc remap code.
6496
64972002-05-13 Richard M. Stallman <rms@gnu.org>
6498
6499 * search.c (search_buffer): Give up boyer moore search if inverse
6500 translation change charset_base.
6501
65022002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
6503
6504 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
6505 characters is carried over from the previous block of text, adjust
6506 coding->produced to account for the extra character.
6507
65082002-05-11 Andreas Schwab <schwab@suse.de>
6509
6510 * coding.c (intersection): Keep the elements of the returned list
6511 in the same order as in the first list.
6512
65132002-05-11 Kim F. Storm <storm@cua.dk>
6514
6515 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
6516 only update cmm_size if realloc actually succeeds.
6517 Testing with initial size of 2 elements revealed that using
6518 realloc on GNU/Linux would cause a random trap in xmalloc
6519 later on, so I rewrote the code to use malloc/bcopy/free instead
6520 of realloc.
6521
65222002-05-10 Jason Rumney <jasonr@gnu.org>
6523
6524 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
6525
65262002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
6527
6528 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
6529 parens, to ensure correct evaluation order.
6530
65312002-05-10 Kim F. Storm <storm@cua.dk>
6532
6533 * keymap.c (Vemulation_mode_map_alists): New variable.
6534 (syms_of_keymap): DEFVAR_LISP it.
6535 (current_minor_maps): Process keymap alists in that list before
6536 minor-mode-overriding-map-alist and minor-mode-map-alist.
6537
65382002-05-09 Richard M. Stallman <rms@gnu.org>
6539
6540 * search.c (Freplace_match): Doc fix.
6541
65422002-05-09 Kim F. Storm <storm@cua.dk>
6543
6544 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
6545 Enlarge cursor rectangle drawn around image with non-zero relief.
6546
6547 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
6548 Enlarge cursor rectangle drawn around image with non-zero relief.
6549
6550 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
6551 Enlarge cursor rectangle drawn around image with non-zero relief.
6552
65532002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
6554
6555 * xselect.c (lisp_data_to_selection_data): Don't set selection
6556 type if comes from the Lisp object's car. If the selection
6557 contains a pure ASCII text, always return QSTRING as its type.
6558
65592002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6560
6561 * mac.c (mac-cut-function): Doc fix.
6562
65632002-05-05 Richard M. Stallman <rms@gnu.org>
6564
6565 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
6566
65672002-05-04 Jason Rumney <jasonr@gnu.org>
6568
6569 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
6570 for event-click-count.
6571
6572 * process.c (init_process): Only add server subfeature if we can
6573 use non-blocking I/O.
6574
65752002-05-04 Andrew Choi <akochoi@shaw.ca>
6576
6577 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
6578 repeatedly.
6579
65802002-05-03 Jason Rumney <jasonr@gnu.org>
6581
6582 * process.c (Fmake_network_process): Only support server sockets
6583 when we can make them non-blocking.
6584
6585 * s/ms-w32.h (HAVE_SELECT): Define.
6586
6587 * w32.h (FILE_NDELAY): New flag.
6588
6589 * w32.c (sys_getpeername, fcntl): New functions.
6590 (_sys_read_ahead): Temporarily block on non-blocking sockets.
6591
6592 * w32proc.c: include sys/file.h.
6593
65942002-05-03 Colin Walters <walters@verbum.org>
6595
6596 * callproc.c (Vgame_score_directory): Renamed to
6597 Vshared_game_score_directory.
6598
65992002-04-30 Richard M. Stallman <rms@gnu.org>
6600
6601 * s/gnu.h [emacs]: Include stdio.h.
6602 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
6603
6604 * eval.c (do_autoload): Error if called while preparing to dump.
6605
6606 * fns.c (Frequire): Error if need to load while preparing to dump.
6607
66082002-04-28 Colin Walters <walters@verbum.org>
6609
6610 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
6611 Default to "~/.emacs.d/games".
6612
66132002-04-29 Stefan Monnier <monnier@cs.yale.edu>
6614
6615 * lread.c (openp): Change arg exec_only to predicate.
6616 (build_load_history): Use XCAR/XCDR.
6617 (Flocate_file_internal): New fun.
6618 (syms_of_lread): Defsubr it.
6619 (Fload): Update call to openp.
6620
6621 * lisp.h (openp): Update prototype.
6622
6623 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
6624 * w32proc.c (sys_spawnve):
6625 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
6626 * w32.c (check_windows_init_file):
6627 * sound.c (Fplay_sound_internal):
6628 * process.c (Fstart_process):
6629 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
6630 * mac.c (run_mac_command):
6631 * emacs.c (init_cmdargs):
6632 * callproc.c (Fcall_process): Update call to openp.
6633
6634 * textprop.c (remove_properties): Don't use XCAR without CONSP.
6635
6636 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
6637
66382002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6639
6640 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
6641 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
6642
66432002-04-28 Richard M. Stallman <rms@gnu.org>
6644
6645 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
6646
6647 * eval.c (Fcommandp): New arg for_call_interactively.
6648 * lisp.h (Fcommandp): Declare new arg.
6649
66502002-04-28 Jason Rumney <jasonr@gnu.org>
6651
6652 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
6653
6654 * w32.c (stat, fstat): Use file index information to generate
6655 inodes for directories where available.
6656
66572002-04-26 Andrew Choi <akochoi@shaw.ca>
6658
6659 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
6660 [HAVE_CARBON]: Include Mac object files.
6661
6662 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
6663 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
6664 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
6665 MAC_OSX, and MAC_OS instead of macintosh.
6666
6667 * editfns.c [MAC_OS8]: Include stdio.h.
6668
6669 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
6670
6671 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
6672 Apple Monaco.
6673
6674 * process.c: Declare QCfamily and QCfilter as extern.
6675 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
6676 calling select.
6677
6678 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
6679
6680 * tparam.c [MAC_OSX]: Don't define BC and UP.
6681
6682 * config.in [HAVE_CARBON]: Add.
6683
6684 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
6685 Move here from mac/src and mac/inc.
6686
6687 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
6688
66892002-04-26 Gerd Moellmann <gerd@gnu.org>
6690
6691 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
6692 Compute phys_cursor_width from the x position returned
6693 by x_draw_glyhs, which is cheaper.
6694 (x_display_and_set_cursor): Compute the buffer-local value
6695 of `cursor-in-non-selected-windows' only when needed.
6696
66972002-04-25 Gerd Moellmann <gerd@gnu.org>
6698
6699 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
6700 cursor on a stretch glyph has a width that depends on
6701 x_stretch_cursor_p.
6702
67032002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6704
6705 * abbrev.c (abbrev-start-location): Doc fix.
6706
6707 * indent.c (Fvertical_motion): Fix last change.
6708
67092002-04-25 Gerd Moellmann <gerd@gnu.org>
6710
6711 * indent.c (Fvertical_motion): Move to the start of the line
6712 containing PT before moving up or down.
6713
67142002-04-24 Gerd Moellmann <gerd@gnu.org>
6715
6716 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
6717 case of writing a whole row, more or less analogous to the case of
6718 writing only parts of a row.
6719
6720 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
6721 0 for NO_CURSOR.
6722
6723 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
6724
67252002-04-23 Colin Walters <walters@verbum.org>
6726
6727 * buffer.c (syms_of_buffer): Doc fix.
6728
67292002-04-23 Gerd Moellmann <gerd@gnu.org>
6730
6731 * xterm.c (notice_overwritten_cursor): Handle the special case
6732 of the cursor being in the first blank non-text line at the
6733 end of a window.
6734
6735 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
6736 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
6737 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
6738 bar cursors only, to make phys_cursor_width contain what its name
6739 suggests.
6740 (notice_overwritten_cursor): Consider the cursor image erased if
6741 the output area intersects the cursor image in y-direction.
6742
67432002-04-23 Simon Marshall <simon@gnu.org>
6744
6745 * xfns.c (x_set_mouse_color): Change default for cross_cursor
6746 to XC_hand2.
6747
67482002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6749
6750 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
6751
67522002-04-22 Kim F. Storm <storm@cua.dk>
6753
6754 * textprop.c (remove_properties): Fixed trap for malformed plist.
6755
67562002-04-22 Richard M. Stallman <rms@gnu.org>
6757
6758 * cmds.c (Fend_of_line): Handle intangible text in mid line.
6759
6760 * window.c (make_window): Initialize height_fixed_p,
6761 last_cursor_off_p, and p->cursor_off_p slots.
6762
67632002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6764
6765 * fns.c (use-dialog-box): Doc fix.
6766
67672002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6768
6769 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
6770 variables `row', `i' and `area'.
6771 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
6772 toolkit library.
6773
67742002-04-19 Stefan Monnier <monnier@cs.yale.edu>
6775
6776 * xfaces.c (clear_font_table): Don't free the default font of
6777 a frame even if it's on another display.
6778 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
6779 that could be Qt.
6780
67812002-04-19 Juanma Barranquero <lektu@terra.es>
6782
6783 * indent.c (Fmove_to_column): Remove unused local variable
6784 `next_boundary_byte'.
6785 (current_column_1): Likewise.
6786
67872002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
6788
6789 * msdos.c (Qhbar): New variable.
6790 (syms_of_msdos): Intern and staticpro it.
6791 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
6792 cursor type.
6793
67942002-04-19 Dave Lambert <dlambert@acm.org>
6795
6796 Theses change implement an underscore-like (`hbar') cursor.
6797
6798 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
6799
6800 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
6801 Handle the `hbar' cursor type.
6802 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
6803
6804 * xfns.c (Qhbar): New variable.
6805 (syms_of_xfns): Intern and staticpro it.
6806 (x_specified_cursor_type): Handle `hbar' cursor.
6807
6808 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
6809 not defined.
6810
68112002-04-18 Richard M. Stallman <rms@gnu.org>
6812
6813 * textprop.c (remove_properties): New arg LIST allows scanning
6814 either a list or a plist.
6815 (interval_has_some_properties_list): New function, like
6816 interval_has_some_properties using list instead of plist.
6817 All callers changed.
6818 (Fremove_list_of_text_properties): New function.
6819 (syms_of_textprop): Defsubr it.
6820
68212002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
6822
6823 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
6824
68252002-04-17 Juanma Barranquero <lektu@terra.es>
6826
6827 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
6828
68292002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
6830
6831 * window.c (coordinates_in_window): Don't report on margin area
6832 if its width is zero.
6833
68342002-04-16 Jason Rumney <jasonr@gnu.org>
6835
6836 * w32fns.c (Fx_file_dialog): Decode file name before using.
6837
6838 * w32term.c (construct_drag_n_drop): Likewise.
6839
68402002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
6841
6842 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
6843 store load-history in pure space.
6844
6845 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
6846
68472002-04-16 Stefan Monnier <monnier@cs.yale.edu>
6848
6849 * xterm.c (Qlatin_1, Qutf_8): New vars.
6850 (syms_of_xterm): Initialize them.
6851 (XTread_socket): Eliminate incorrect optimization that tried to avoid
6852 decoding the output of X*LookupString.
6853 Always use latin-1 to decode the output of XLookupString.
6854 Try Xutf8LookupString if XmbLookupString failed.
6855
6856 * region-cache.c (new_region_cache): Use BEG.
6857
68582002-04-16 Gerd Moellmann <gerd@gnu.org>
6859
6860 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
6861 configuration files.
6862 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
6863 returns 0.
6864
68652002-04-15 Andreas Schwab <schwab@suse.de>
6866
6867 * config.in: Regenerated using autoheader.
6868
6869 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
6870 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
6871 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
6872 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
6873 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
6874 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
6875 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
6876 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
6877 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
6878 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
6879 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
6880 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
6881 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
6882 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
6883 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
6884 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
6885 STACK_DIRECTION, now set by autoconf.
6886
68872002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6888
6889 * dispnew.c (marginal_area_string): Sort arguments.
6890
6891 * dispextern.h (marginal_area_string): Add prototype.
6892
68932002-04-13 Richard M. Stallman <rms@gnu.org>
6894
6895 * fileio.c (Finsert_file_contents):
6896 Don't call temp_output_buffer_setup--do just part, by hand.
6897
6898 * coding.c (run_pre_post_conversion_on_str):
6899 Don't call temp_output_buffer_setup--do just part, by hand.
6900
6901 * keyboard.c (command_loop_1): Don't call start_hourglass
6902 or cancel_hourglass when executing a macro.
6903
6904 * marker.c (count_markers): New function.
6905
6906 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
6907 grow without limit. Move recently used elements to the front.
6908
69092002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
6910
6911 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
6912
69132002-04-12 Gerd Moellmann <gerd@gnu.org>
6914
6915 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
6916 rows marginal areas.
6917 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
6918 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
6919
6920 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
6921
69222002-04-12 Dave Love <fx@gnu.org>
6923
6924 * dispnew.c (marginal_area_string): New.
6925
6926 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
6927 (Qleft_margin, Qright_margin): Declare.
6928 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
6929
6930 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
6931 note_mode_line_highlight and extended.
6932
6933 * keyboard.c (Qleft_margin, Qright_margin): Declare.
6934 (make_lispy_event): Deal with mouse events in margins.
6935
69362002-04-12 Stefan Monnier <monnier@cs.yale.edu>
6937
6938 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
6939
6940 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
6941 than deactivating the mark if tmm is set to `lambda'.
6942 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
6943 Use a single event for HELP_EVENT.
6944 (Fexecute_extended_command): Save last_point_position.
6945
69462002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6947
6948 * lisp.h (Fpropertize): Add prototype.
6949
6950 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
6951
69522002-04-10 Colin Walters <walters@verbum.org>
6953
6954 * config.in: Add HAVE_SHARED_GAME_DIR.
6955
6956 * callproc.c: (Vgame_score_directory): New variable.
6957 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
6958
69592002-04-10 Richard M. Stallman <rms@gnu.org>
6960
6961 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
6962
69632002-04-09 Stefan Monnier <monnier@cs.yale.edu>
6964
6965 * minibuf.c (read_minibuf): Use empty_string.
6966 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
6967 Short-circuit the search as soon as it "failed".
6968 (Fall_completions): Allow lambda forms and lists of strings for alist.
6969 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
6970 when require_match is nil.
6971 (Ftest_completion): Rename from `test_completion' and export to elisp.
6972 Call the predicate also when alist is a list.
6973 Obey Vcompletion_regexp_list.
6974 (do_completion, Fminibuffer_complete_and_exit): Use it.
6975 (Fassoc_string): Rename from `assoc_for_completion'.
6976 Allow list of strings as well and export to elisp.
6977
69782002-04-08 Stefan Monnier <monnier@cs.yale.edu>
6979
6980 * puresize.h (BASE_PURESIZE): Increase to 900KB.
6981
69822002-04-08 Juanma Barranquero <lektu@terra.es>
6983
6984 * w32.c (sys_accept): Don't hide variable `s'.
6985
69862002-04-05 Gerd Moellmann <gerd@gnu.org>
6987
6988 * callint.c (Fcall_interactively): Use INTEGERP instead of
6989 NUMBERP for checking Vhistory_length.
6990
69912002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6992
6993 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
6994 Doc fix to reflect it.
6995
69962002-04-04 Richard M. Stallman <rms@gnu.org>
6997
6998 * xdisp.c (display_mode_element): New arg RISKY.
6999 Disregard text props found or specified within a variable
7000 that isn't marked risky-local-variable.
7001 (Qrisky_local_variable): New variable.
7002 (syms_of_xdisp): Init and staticpro it.
7003
70042002-04-04 Stefan Monnier <monnier@cs.yale.edu>
7005
7006 * undo.c (record_point): New fun.
7007 (record_delete, record_insert): Use it.
7008
70092002-04-03 Juanma Barranquero <lektu@terra.es>
7010
7011 * doc.c (Fdocumentation): Add missing parentheses.
7012 (Fdocumentation_property): Likewise.
7013
70142002-04-03 Stefan Monnier <monnier@cs.yale.edu>
7015
7016 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
7017 data is 0, just return nil.
7018
70192002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
7020
7021 * msdos.c (syms_of_msdos): Fix last change with
7022 mouse_autoselect_window.
7023
70242002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7025
7026 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
7027 mouse_autoselect_window.
7028
70292002-04-02 Stefan Monnier <monnier@cs.yale.edu>
7030
7031 * keyboard.c (make_lispy_event): Handle unknown keysyms together
7032 with system-specific keysyms. Use it also for unknown function keys.
7033
7034 * doc.c (reread_doc_file): Return whether reload was attempted.
7035 (Fdocumentation, Fdocumentation_property): Don't try to reload
7036 if the doc is 0 and only ask once.
7037
7038 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
7039
70402002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
7041
7042 * keyboard.c (read_char): If the event was Qselect_window,
7043 restore timer_idleness_start_time to its previous value.
7044
7045 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
7046
70472002-04-01 Stefan Monnier <monnier@cs.yale.edu>
7048
7049 * region-cache.c (new_region_cache): Use BEG.
7050
7051 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
7052 Use BEG and BEG_BYTE.
7053
7054 * doc.c (get_doc_string): Return nil if the location is wrong.
7055 (reread_doc_file): New fun.
7056 (Fdocumentation, Fdocumentation_property):
7057 Call it if get_doc_string fails.
7058 (Fsnarf_documentation): Make it work for a dumped Emacs.
7059
7060 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
7061 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
7062
7063 * charset.c (Fstring): Allow 0 arguments.
7064
7065 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
7066
7067 * process.c (DATAGRAM_CONN_P, list_processes_1)
7068 (Fprocess_datagram_address, Fset_process_datagram_address)
7069 (Fset_network_process_options, server_accept_connection):
7070 Fix some int/Lisp_Object confusions (thank you union types).
7071
70722002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7073
7074 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
7075
7076 * w32term.c: Likewise.
7077 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
7078
7079 * keyboard.c (Qselect_window): New symbol.
7080 (head_table): Use it.
7081 (keys_of_keyboard): Bound select-window event to handle-select-window.
7082 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
7083
7084 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
7085 (last_window): New variable.
7086 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
7087 (note_mouse_movement): Remove reimplemented code in #if 0.
7088 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
7089 Emacs windows.
7090
7091 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
7092
70932002-03-31 Gerd Moellmann <gerd@gnu.org>
7094
7095 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
7096 Callers changed.
7097
70982002-03-30 Richard M. Stallman <rms@gnu.org>
7099
7100 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
7101 loop whenever it stops making progress.
7102
7103 * widget.c (set_frame_size): Don't call change_frame_size.
7104
71052002-03-30 Gerd Moellmann <gerd@gnu.org>
7106
7107 * dispnew.c (direct_output_for_insert):
7108 Call mark_window_display_accurate.
7109
71102002-03-29 Jason Rumney <jasonr@gnu.org>
7111
7112 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
7113
71142002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
7115
7116 * Makefile.in (lread.o): Depend on coding.h.
7117
7118 * lread.c (openp, Fload): Encode the file name before passing it
7119 to `stat', `access', and `emacs_open'.
7120 (openp): GCPRO the encoded file name. Don't recompute Lisp
7121 strings unnecessarily.
7122
71232002-03-29 Kim F. Storm <storm@cua.dk>
7124
7125 * fns.c (Flax_plist_put): Doc fix.
7126
71272002-03-28 Miles Bader <miles@gnu.org>
7128
7129 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
7130
71312002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7132
7133 * process.c (set-network-process-options): Add usage.
7134 (make-network-process): Doc fix.
7135
71362002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
7137
7138 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
7139
71402002-03-26 Richard M. Stallman <rms@gnu.org>
7141
7142 * fns.c (Fsubstring_no_properties): New function.
7143 (Flax_plist_get, Flax_plist_put): New functions.
7144 (syms_of_fns): defsubr them.
7145
7146 * xdisp.c (update_menu_bar): Test only update_mode_lines;
7147 don't test or alter w->update_mode_line.
7148
7149 * window.c (Fdisplay_buffer): Doc fix.
7150
71512002-03-24 Richard M. Stallman <rms@gnu.org>
7152
7153 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
7154
71552002-03-24 Gerd Moellmann <gerd@gnu.org>
7156
7157 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
7158 (Fdefmacro): Handle `(declare ...)'.
7159 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
7160 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
7161
71622002-03-24 Jason Rumney <jasonr@gnu.org>
7163
7164 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
7165 (xbm_file_p): Add prototypes.
7166 (xbm_format, xbm_image_p): Sync with xfns.c.
7167 (reflect_byte): New function.
7168 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
7169 (xbm_load_image): Create bitmaps with a depth of 1.
7170 (init_xfns): Enable XBM images.
7171
71722002-03-23 Jason Rumney <jasonr@gnu.org>
7173
7174 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
7175 correctly. Do not pass up_modifier to keyboard buffer.
7176
7177 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
7178
71792002-03-22 Stefan Monnier <monnier@cs.yale.edu>
7180
7181 * Makefile.in (bootstrapclean): New target.
7182 (bootstrap-temacs, bootstrap-doc): Remove.
7183 (bootstrap-emacs): Use a bog-standard `temacs'.
7184 Don't bother to build a DOC file.
7185
7186 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
7187
7188 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
7189 in temacs even if !CANNOT_DUMP.
7190 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
7191
7192 * alloc.c (check_pure_size): Only output a warning.
7193
71942002-03-22 Jason Rumney <jasonr@gnu.org>
7195
7196 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
7197 supported.
7198
7199 * w32term.c (zv_bits): Declare as short, for word alignment.
7200 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
7201 (syms_of_w32term): Define x-use-underline-position-properties.
7202
7203 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
7204 (clear_image_cache): Block input, fix logic, clear matrices in
7205 all frames that share this cache.
7206
72072002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
7208
7209 * emacs.c (main): Update the Copyright year in the blurb printed
7210 by "emacs --version".
7211
7212 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
7213
7214 * xterm.c (XTread_socket): If XK_ISO_Lock and
7215 XK_ISO_Last_Group_Lock are defined, handle keysyms between
7216 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
7217
72182002-03-21 Kim F. Storm <storm@cua.dk>
7219
7220 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
7221 menu-bar bindings in keymap and local-map properties _are_ used.
7222 But try keymap property first in accordance with 2002-01-03 patch.
7223 Added comment describing why this is not always reliable.
7224 (tool_bar_items): Ditto for tool-bar.
7225
72262002-03-21 Jason Rumney <jasonr@gnu.org>
7227
7228 * w32fns.c (x_clear_image_1): Disable color table code.
7229
72302002-03-21 Kim F. Storm <storm@cua.dk>
7231
7232 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
7233 removed the wrong version of the DEFUN macro; fixed it.
7234
7235 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
7236 Fmember rather than Fmemq).
7237 (Fprovide): Check that subfeatures is a list.
7238
7239 * process.c (QCfeature, QCdatagram): Removed variables.
7240 (QCtype, Qdatagram): New variables.
7241 (network_process_featurep): Removed function.
7242 (Fmake_network_process): Removed :feature check.
7243 Use :type 'datagram instead of :datagram t to create a datagram
7244 socket. This allows us to add other connection types (e.g. raw
7245 sockets) later in a consistent manner.
7246 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
7247 supported subfeatures for feature make-network-process.
7248 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
7249 Intern and staticpro QCtype and Qdatagram.
7250 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
7251
7252 * xfns.c: (QCtype): Remove duplicate declaration and
7253 initialization (is now declared in process.c).
7254
7255 * w32fns.c: (QCtype): Remove duplicate declaration and
7256 initialization (is now declared in process.c).
7257
72582002-03-21 Richard M. Stallman <rms@gnu.org>
7259
7260 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
7261 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
7262 when jumping to `fail' to avoid undoing reg changes in the
7263 last iteration of the loop.
7264 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
7265
7266 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
7267 Depend on process.h.
7268
72692002-03-20 Jason Rumney <jasonr@gnu.org>
7270
7271 Most of the following changes are still conditional on HAVE_IMAGES
7272 which is not set by default on Windows.
7273
7274 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
7275
7276 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
7277 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
7278 (four_corners_best, x_clear_image_1, x_clear_image)
7279 (x_alloc_image_color, postprocess_image)
7280 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
7281 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
7282 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
7283
7284 * w32gui.h (struct XImage): Define.
7285
7286 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
7287 extract mouse co-ordinates.
7288
72892002-03-20 Jason Rumney <jasonr@gnu.org>
7290
7291 * w32.c (init_winsock): Dynamically load new server and UDP
7292 socket functions.
7293 (socket_to_fd): New function.
7294 (sys_socket): Use it.
7295 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
7296 (sys_recvfrom, sys_sendto): New wrapper functions.
7297
7298 * process.c (QCfamily, QCfilter): Remove duplicate declaration
7299 and initialization.
7300
7301 * makefile.w32-in (LIBS): Remove $(WSOCK32).
7302
73032002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
7304
7305 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
7306 Don't use "sun" as a variable, it's a predefined constant on Sun
7307 machines.
7308
73092002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7310
7311 * bytecode.c (Fbyte_code): Revert last change.
7312
73132002-03-19 Kim F. Storm <storm@cua.dk>
7314
7315 * makefile.w32-in (LIBS): Add $(WSOCK32).
7316 From David Ponce <dponce@voila.fr>.
7317
73182002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7319
7320 * process.c (wait_reading_process_input): Move variables `pname'
7321 and `pnamelen' down where they are used.
7322
7323 * bytecode.c (Fbyte_code): Discard unused computed value to
7324 prevent gcc warning.
7325
7326 * lisp.h (Fplist_member): Add prototype.
7327
73282002-03-18 Kim F. Storm <storm@cua.dk>
7329
7330 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
7331 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
7332
7333 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
7334 Remove explicit GNU_LINUX settings for datagram support.
7335
73362002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7337
7338 * process.c (Fmake_network_process): Remove unused variable `sa'.
7339 Doc fix. Add usage:.
7340 (set_socket_options): Remove unused variables `optnum' and `opttype'.
7341
73422002-03-17 Richard M. Stallman <rms@gnu.org>
7343
7344 * xdisp.c (cursor_type_changed): New variable.
7345 (redisplay_internal): Redisplay all windows if cursor_type_changed.
7346 Clear it when clearing windows_or_buffers_changed.
7347 (try_cursor_movement, redisplay_window, try_window_id)
7348 (try_window_reusing_current_matrix): Test cursor_type_changed
7349 along with windows_or_buffers_changed.
7350
7351 * window.h (cursor_type_changed): New variable.
7352
7353 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
7354 not update_mode_lines, and always set it to 1.
7355
7356 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
7357 if no frames needed redrawing.
7358
73592002-03-17 Kim F. Storm <storm@cua.dk>
7360
7361 The following changes add support for network server processes,
7362 datagram connections, and local (unix) sockets.
7363
7364 * process.h (struct Lisp_Process): New member log.
7365 Doc fix: Member command used to indicate stopped network process.
7366 Doc fix: Member childp contains plist for network process.
7367 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
7368
7369 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
7370 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
7371 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
7372 New variables.
7373 (NETCONN1_P): New macro.
7374 (DATAGRAM_SOCKETS): New conditional symbol.
7375 (datagram_address): New array.
7376 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
7377 (status_message): Use concat3.
7378 (Fprocess_status): Add `listen' status to doc string. Return `stop'
7379 for a stopped network process.
7380 (Fset_process_buffer): Update contact plist for network process.
7381 (Fset_process_filter): Ditto. Don't enable input for stopped
7382 network processes. Server must listen, even if filter is t.
7383 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
7384 New functions.
7385 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
7386 (Fprocess_contact): Added KEY argument. Handle datagrams.
7387 (list_processes_1): Optionally show only processes with the query
7388 on exit flag set. Dynamically adjust column widths. Omit tty
7389 column if not needed. Report stopped network processes.
7390 Identify server and datagram network processes.
7391 (Flist_processes): New optional arg `query-only'.
7392 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
7393 (conv_lisp_to_sockaddr, set_socket_options)
7394 (network_process_featurep, unwind_request_sigio): New helper functions.
7395 (Fprocess_datagram_address, Fset_process_datagram_address):
7396 (Fset_network_process_options): New lisp functions.
7397 (Fopen_network_stream): Removed. Now defined in simple.el.
7398 (Fmake_network_process): New lisp function. Code is based on previous
7399 Fopen_network_stream, but heavily reworked with new property list based
7400 argument list, support for datagrams, server processes, and local
7401 sockets in addition to old client-only functionality.
7402 (server_accept_connection): New function.
7403 (wait_reading_process_input): Use it to handle incoming connects.
7404 Do not enable input on a new connection if process is stopped.
7405 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
7406 (send_process): Handle datagram sockets.
7407 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
7408 network process is indicated by setting command field to t .
7409 (Fprocess_send_eof): No-op if datagram connection.
7410 (Fstatus_notify): Don't read input for a stream server socket or a
7411 stopped network process.
7412 (init_process): Initialize datagram_address array.
7413 (syms_of_process): Intern and staticpro new variables, defsubr new
7414 functions.
7415
74162002-03-16 Jason Rumney <jasonr@gnu.org>
7417
7418 * w32fns.c (w32_to_all_x_charsets): Return correct type in
7419 startup case.
7420
74212002-03-16 Richard M. Stallman <rms@gnu.org>
7422
7423 * xdisp.c (redisplay_internal, redisplay_windows):
7424 Use list_of_error to call internal_condition_case_1.
7425 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
7426 so as to catch all errors with no possibility of debugger redisplay.
7427 (list_of_error): New variable.
7428 (syms_of_xdisp): Init and staticpro it.
7429
7430 * print.c (print_object): Delete `\ ' from printed rep of frame.
7431
74322002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
7433
7434 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
7435 until its implementation is fixed.
7436
74372002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7438
7439 * xfns.c (png_load): Remove unused variable `gamma_str'.
7440
74412002-03-14 Richard M. Stallman <rms@gnu.org>
7442
7443 * xfns.c (x_real_positions): Handle failure in XQueryTree.
7444
74452002-03-14 Miles Bader <miles@gnu.org>
7446
7447 * intervals.c (adjust_for_invis_intang): New function.
7448 (set_point_both): Use `adjust_for_invis_intang' to do most of the
7449 work for dealing with invisible+intangible regions. Do so before
7450 and after both forward and backward movements, to handle both
7451 front-sticky and rear-sticky cases.
7452 * textprop.c (text_property_stickiness): Function moved here from
7453 `editfns.c'.
7454 * intervals.h (text_property_stickiness): New declaration.
7455 * editfns.c (char_property_eq): Function removed.
7456 (text_property_stickiness): Function moved to `textprop.c'.
7457
74582002-03-13 Jason Rumney <jasonr@gnu.org>
7459
7460 * config.in: Add STRFTIME_NO_POSIX2.
7461
7462 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
7463 and %OX when underlying strftime does not.
7464
74652002-03-13 Stefan Monnier <monnier@cs.yale.edu>
7466
7467 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
7468 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
7469 line) to avoid annoying flicker.
7470 (xm_scroll_callback): Get rid of the now unnecessary kludge.
7471 (XTread_socket): Mark it static.
7472
7473 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
7474
74752002-03-13 Kim F. Storm <storm@cua.dk>
7476
7477 * puresize.h (BASE_PURESIZE): Increase to 775000.
7478
74792002-03-12 Juanma Barranquero <lektu@terra.es>
7480
7481 * editfns.c (syms_of_editfns): Fix typo.
7482
74832002-03-12 Gerd Moellmann <gerd@gnu.org>
7484
7485 * xsmfns.c: Include stdio.h because termhooks.h needs it.
7486 Include termopt.h for interrupt_input.
7487
74882002-03-11 Andreas Schwab <schwab@suse.de>
7489
7490 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
7491
74922002-03-11 Gerd Moellmann <gerd@gnu.org>
7493
7494 * xterm.c (note_mouse_movement): Put code for
7495 x_autoselect_window_p in #if 0.
7496
7497 * lread.c (Fload): Don't assume that message_with_string uses the
7498 string it is given like a C string.
7499
75002002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7501
7502 * xterm.h (x_session_check_input, x_session_initialize): Declared.
7503
7504 * xterm.c: (XTread_socket): Add call to x_session_check_input and
7505 x_session_have_connection.
7506 (x_initialize): Add call to x_session_initialize.
7507
7508 * termhooks.h (enum event_kind): Add save_session_event.
7509
7510 * keyboard.c: Add Emacs event save_session_event.
7511
7512 * emacs.c (main): Add call to syms_of_xsmfns.
7513
7514 * lisp.h: Declare syms_of_xsmfns as extern.
7515
7516 * config.in: Add HAVE_X_SM.
7517
7518 * Makefile.in (LIBXT): Add -lSM -lICE
7519 if HAVE_X_SM and not USE_X_TOOLKIT.
7520 (XOBJ): New file xsmfns.c added.
7521
7522 * xsmfns.c: New file for X session management.
7523
75242002-03-09 Jason Rumney <jasonr@gnu.org>
7525
7526 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
7527 read-only when setting modified time.
7528
75292002-03-08 Gerd Moellmann <gerd@gnu.org>
7530
7531 * xdisp.c (move_it_vertically_backward): At the end of the function,
7532 when moving forward by lines, treat terminal frames specially.
7533
7534 * keyboard.c (echo_char): Make sure to add a separator between
7535 keys even if echo_dash hasn't been called.
7536
7537 * xdisp.c: Use new string macros.
7538 (update_echo_area): Pass number of bytes to message3 instead of
7539 number of chars.
7540 (set_message_1): Don't access a string's size_byte directly.
7541 (decode_mode_spec_coding): Use number of bytes of eoltype string
7542 instead number of chars.
7543
7544 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
7545
75462002-03-08 Juanma Barranquero <lektu@terra.es>
7547
7548 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
7549 24-bit.
7550
75512002-03-06 Jason Rumney <jasonr@gnu.org>
7552
7553 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
7554
75552002-03-06 Gerd Moellmann <gerd@gnu.org>
7556
7557 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
7558 (cancel_echoing, echo_length, echo_truncate): Changed to
7559 work with new kboard definition.
7560 (echo_now): Use message3_nolog instead of message2_nolog.
7561
7562 * alloc.c (mark_kboards): Mark echo_string.
7563
7564 * keyboard.h (ECHOBUFSIZE): Removed.
7565 (struct kboard): Member echoptr removed, member echobuf renamed
7566 to echo_string.
7567
7568 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
7569 message3 instead of message2 to display the message using STRING's
7570 text properties.
7571
75722002-03-05 Andreas Schwab <schwab@suse.de>
7573
7574 * xdisp.c (hscroll_margin): Change to EMACS_INT.
7575
75762002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
7577
7578 * frame.c (default-frame-alist): Explain that setting it doesn't
7579 affect existing frames.
7580
75812002-03-05 Stefan Monnier <monnier@cs.yale.edu>
7582
7583 * indent.c (skip_invisible): Fix my brain fart.
7584
7585 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
7586
75872002-03-04 Stefan Monnier <monnier@cs.yale.edu>
7588
7589 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
7590 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
7591 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
7592 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
7593 and variables to use EMACS_INT instead of just int.
7594
7595 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
7596
75972002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
7598
7599 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
7600 environment, pass it down with corrected value.
7601
76022002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7603
7604 * lread.c (read_filtered_event): Do not call start_hourglass
7605 before returning.
7606
76072002-03-04 Juanma Barranquero <lektu@terra.es>
7608
7609 * w32term.c (x_display_and_set_cursor): Fix typo.
7610
76112002-03-03 Richard M. Stallman <rms@gnu.org>
7612
7613 * fileio.c (Fmake_temp_name): Doc fix.
7614
76152002-03-03 Gary Wong <gtw@gnu.org>
7616
7617 * termcap.c [!emacs]: Replace ospeed for building standalone
7618 libtermcap, for binary compatibility.
7619
7620 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
7621
76222002-03-03 Richard M. Stallman <rms@gnu.org>
7623
7624 * xrdb.c (file_p): Rename arg `path' to `filename'.
7625
7626 * abbrev.c (Fexpand_abbrev): Increment plist as use count
7627 only if it is an integer.
7628
7629 * xfns.c (png_load): Set screen_gamma based on f->gamma.
7630 If png_get_sRGB gives an answer, call png_set_gamma
7631 using the default image gamma value.
7632
7633 * lread.c (read1): When reading from a file, default string to
7634 multibyte only if it has some multibyte characters.
7635
7636 * print.c (print_object): Output multibyte chars 128...255
7637 using \x even if ! print_escape_multibyte.
7638
7639 * xdisp.c (display_mode_element): Move the places where
7640 bytepos, charpos, this, and lisp_string are set.
7641 Use lisp_string to set bytepos.
7642
7643 * xdisp.c (redisplay_internal):
7644 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
7645
7646 * xdisp.c (display_mode_element): Merge properties specified with
7647 :propertize onto those that come with the string.
7648
76492002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
7650
7651 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
7652 automatic-hscrolling. Users changed.
7653 <hscroll-margin>: Renamed from automatic-hscroll-margin.
7654 Users changed.
7655 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
7656
76572002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
7658
7659 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
7660
76612002-03-02 Kim F. Storm <storm@cua.dk>
7662
7663 * window.c (Fminibuffer_selected_window): New function.
7664 (syms_of_window): Defsubr it.
7665
76662002-03-01 Kim F. Storm <storm@cua.dk>
7667
7668 * window.h (struct window): New member phys_cursor_width.
7669
7670 * window.c (make_window, replace_window): Init phys_cursor_width.
7671
7672 * xterm.c (x_display_and_set_cursor): Blink box cursor using
7673 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
7674
7675 * w32term.c (x_display_and_set_cursor): Blink box cursor using
7676 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
7677
7678 * lisp.h (GCPRO6): New macro.
7679
7680 * process.c (Fopen_network_stream): Use GCPRO6.
7681
76822002-03-01 Kim F. Storm <storm@cua.dk>
7683
7684 * process.c (Qconnect, Qfailed): New variables.
7685 (syms_of_process): Intern and staticpro them.
7686 (Fprocess_status): Document connect and failed return values.
7687 [NON_BLOCKING_CONNECT]: New conditional.
7688 (connect_wait_mask, num_pending_connects): New variables.
7689 (status_message): Convert Qfailed status.
7690 (Fopen_network_stream): Added support for non-blocking connect.
7691 New optional args: filter, sentinel, non_blocking. Doc updated.
7692 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
7693 (deactivate_process): Handle pending non-blocking connect.
7694 (wait_reading_process_input): Poll for status of non-blocking
7695 connects. Exec sentinel directly when connect succeeds.
7696 (status_notify): Don't read process output if not yet connected.
7697
76982002-02-28 Kim F. Storm <storm@cua.dk>
7699
7700 * window.c: (minibuf_selected_window): Renamed from
7701 Vminibuf_selected_window. Users changed.
7702 (syms_of_window): Staticpro it.
7703
77042002-02-26 Kim F. Storm <storm@cua.dk>
7705
7706 The following changes add a new Vminibuf_selected_window variable
7707 which is similar to Vminibuf_scroll_window, but which is only set
7708 on entry to the minibuffer (from a non-minibuffer window):
7709
7710 * window.c: (Vminibuf_selected_window): New variable.
7711 (struct save_window_data): New member minibuf_selected_window.
7712 (Fset_window_configuration): Restore Vminibuf_selected_window.
7713 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
7714 Set minibuf_scroll_window member to nil if minibuf_level is 0.
7715 (compare_window_configurations): Compare minibuf_selected_window.
7716
7717 * window.h: (Vminibuf_selected_window): Declare extern.
7718
7719 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
7720 entry to minibuffer or on entry from a non-minibuffer window.
7721
7722 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
7723 Vminibuf_selected_window instead of Vminibuf_scroll_window.
7724
7725 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
7726 instead of Vminibuf_scroll_window when deciding in which window
7727 the region should be highlighted. Consequently, the region remains
7728 highlighteded even when a completion buffer is also displayed.
7729
77302002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
7731
7732 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
7733
7734 * xselect.c (Qcompound_text_with_extensions): Renamed from
7735 Qcompound_text_no_extensions.
7736 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
7737
77382002-02-26 Juanma Barranquero <lektu@terra.es>
7739
7740 * w32proc.c (syms_of_ntproc): Doc fix.
7741
77422002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7743
7744 * intervals.h: Include "dispextern.h" unconditionally.
7745
77462002-02-24 Jason Rumney <jasonr@gnu.org>
7747
7748 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
7749 and disp-table.elc.
7750 (lisp): Add emacs-lisp/backquote.elc.
7751
77522002-02-24 Kim F. Storm <storm@cua.dk>
7753
7754 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
7755 The validation of the event type was too strict as it didn't
7756 allow string events; buffer names are used in bindings for
7757 menu-bar-select-buffer (see `menu-bar-update-buffers').
7758
77592002-02-23 Kim F. Storm <storm@cua.dk>
7760
7761 The following changes rework my patch of 2002-02-06 which
7762 added command remapping by entering the commands directly into
7763 the keymaps. Now, command remapping uses an explicit `remap'
7764 prefix in the keymaps, i.e. [remap COMMAND].
7765
7766 * keymap.c (Qremap, remap_command_vector): New variables.
7767 (is_command_symbol): Removed function.
7768 (Fdefine_key): No longer accept a symbol for KEY.
7769 Added validation of [remap COMMAND] argument for KEY.
7770 The DEF is no longer required to be a symbol when remapping a command.
7771 (Fremap_command): New function to remap command through keymaps.
7772 (Flookup_key): Perform command remapping initiated by
7773 Fremap_command directly for speed.
7774 (Fkey_binding): Use Fremap_command for command remapping.
7775 (where_is_internal): Handle new command remapping representation.
7776 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
7777 staticpro them. Defsubr Fremap_command.
7778
7779 * keymap.h (Fremap_command): Declare extern.
7780 (is_command_symbol): Remove extern.
7781
7782 * keyboard.c (command_loop_1): Use Fremap_command for command
7783 remapping; now try command remapping for all symbols.
7784
77852002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
7786
7787 * coding.h (run_pre_post_conversion_on_str): Add prototype.
7788
77892002-02-23 Jason Rumney <jasonr@gnu.org>
7790
7791 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
7792 on the string before encoding it.
7793 (Fw32_get_clipboard_data): Run post-read-conversion on the string
7794 after decoding it.
7795
7796 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
7797
77982002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7799
7800 * w32term.c (enter_timestamp): Remove unused static variable to
7801 prevent warning.
7802
7803 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
7804
78052002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
7806
7807 * w16select.c (Fw16_get_clipboard_data): Fix last change.
7808
7809 * xselect.c (selection_data_to_lisp_data): Fix last change.
7810
78112002-02-22 Jason Rumney <jasonr@gnu.org>
7812
7813 * w32term.h (struct w32_output): New member menu_command_in_progress.
7814
7815 * w32menu.c (menubar_selection_callback): Free the menu and
7816 clear the menu_command_in_progress flag.
7817
7818 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
7819 (menu_free_timer): New variable.
7820 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
7821 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
7822 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
7823 menu command is in progress.
7824 <WM_COMMAND>: Set the menu_command_in_progress flag.
7825 Kill any menu_free_timer that is running.
7826
7827 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
7828 Call ExtTextOutA rather than ExtTextOut.
7829
78302002-02-22 Eli Zaretskii <eliz@gnu.org>
7831
7832 * puresize.h (BASE_PURESIZE): Increase to 755000.
7833
78342002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
7835
7836 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
7837 on the string before encoding it.
7838 (Fw16_get_clipboard_data): Run post-read-conversion on the string
7839 after decoding it.
7840
78412002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
7842
7843 Support for ICCCM Extended Segments in X selections:
7844
7845 * xselect.c <Qcompound_text_no_extensions>: New variable.
7846 (syms_of_xselect): Intern and staticpro it.
7847 (selection_data_to_lisp_data): Run post-read-conversion on decoded
7848 selection text.
7849 (lisp_data_to_selection_data): If next-selection-coding-system is
7850 compound-text-no-extensions, set the type of selection to be
7851 compound-text.
7852
7853 * xterm.h (x_encode_text): Update prototype.
7854
7855 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
7856 callers changed. If SELECTIONP is non-zero, run the
7857 pre-write-conversion function before encoding the selection text.
7858
78592002-02-21 Kim F. Storm <storm@cua.dk>
7860
7861 * frame.c (syms_of_frame): Change mouse-highlight default to t.
7862
7863 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
7864 Correct composing of language-change event.
7865
78662002-02-20 Kim F. Storm <storm@cua.dk>
7867
7868 * keyboard.c (menu_bar_items): Don't include keymap or local-map
7869 bindings at PT when building menu (the menu is not updated often
7870 enough for this to work reliable).
7871 (tool_bar_items): Likewise.
7872 (current_active_maps): Removed unused (and buggy) function.
7873
78742002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7875
7876 * xfns.c (gif_load): Use correct width and height for GIF images.
7877
78782002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
7879
7880 * floatfns.c (Fatan): Accept an optional second arg and call
7881 atan2 if passed 2 args.
7882
78832002-02-18 Jason Rumney <jasonr@gnu.org>
7884
7885 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
7886
78872002-02-17 Jason Rumney <jasonr@gnu.org>
7888
7889 * w32term.c (x_autoselect_window_p): New variable.
7890 (syms_of_w32term): DEFVAR_BOOL and initialize it.
7891 (note_mouse_movement): Use it.
7892
7893 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
7894
7895 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
7896
7897 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
7898 New variables.
7899 (syms_of_w32fns): Intern and staticpro them.
7900 (x_frame_parms) <"fullscreen">: New parameter.
7901 (x_fullscreen_move, x_set_fullscreen): New functions.
7902 (x_set_frame_parameters): Support Qfullscreen.
7903 (x_real_positions): Save x/y_pixels_diff frame params.
7904 (x_figure_window_size): Support full-screen frames.
7905 (Fx_create_frame): Default the fullscreen parameter.
7906
7907 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
7908 (x_fullscreen_adjust): New functions.
7909 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
7910 fullscreen. Call x_check_fullscreen_move, and set the
7911 want_fullscreen member of output_data.w32
7912 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
7913
7914 * w32term.h: New enum for FULLSCREEN_* constants.
7915 (struct w32_output): New members want_fullscreen, x_pixels_diff,
7916 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
7917 (x-fullscreen-adjust): New prototype.
7918
79192002-02-17 Kim F. Storm <storm@cua.dk>
7920
7921 * frame.c: (Vmouse_highlight): New variable.
7922 (syms_of_frame): DEFVAR_LISP it.
7923
7924 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 7925
048addec 7926 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 7927
048addec
JD
7928 * xterm.c (disable_mouse_highlight): Removed variable.
7929 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
7930 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
7931 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
7932 and on after keyboard input.
7933 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 7934
048addec 7935 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 7936
048addec
JD
7937 * msdos.c (disable_mouse_highlight): Removed variable.
7938 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
7939 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
7940 (internal_terminal_init): Initialize mouse_face_hidden.
7941 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
7942 and on after keyboard input.
4f1b1854 7943
048addec 7944 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 7945
048addec
JD
7946 * w32term.c (disable_mouse_highlight): Removed variable.
7947 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
7948 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
7949 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
7950 and on after keyboard input.
7951 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 7952
048addec 79532002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 7954
048addec
JD
7955 * msdos.c (last_mouse_window): New variable.
7956 (dos_rawgetc): Fix last change--if the mouse is in the same window
7957 as recorded in last_mouse_window, don't select this window.
5cb6905d 7958
048addec 7959 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 7960
048addec
JD
7961 * msdos.c (x_autoselect_window_p): New variable.
7962 (syms_of_msdos): Defvar it.
7963 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
7964 which the last mouse movement occured, unless it is already selected.
437dfb9f 7965
048addec
JD
7966 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
7967 New variables.
7968 (syms_of_xdisp): DEVFAR them.
7969 (hscroll_window_tree): Use automatic_hscroll_margin and
7970 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 7971
048addec 79722002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 7973
048addec
JD
7974 * xterm.c (x-autoselect-window): New variable.
7975 (note_mouse_movement): Use it.
9f696a00 7976
048addec 7977 * keyboard.c: Do not include "systime.h" twice.
d57966d7 7978
048addec 79792002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 7980
048addec 7981 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 7982
048addec 7983 * alloc.c (NSTATICS): Increase to 1280.
74779f52 7984
048addec 79852002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 7986
048addec 7987 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 7988
048addec
JD
7989 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
7990 (Vx_super_keysym): New variables.
7991 (syms_of_xterm): DEFVAR_LISP them.
7992 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
7993 variables to determine which keys to use for the various modifiers.
a474d59c 7994
048addec 79952002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 7996
048addec
JD
7997 * window.c: (Vmode_line_in_non_selected_windows): Removed.
7998 (mode_line_in_non_selected_windows): New variable.
7999 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 8000
048addec
JD
8001 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
8002 Use mode_line_in_non_selected_windows.
8003 (mode_line_in_non_selected_windows): Declare extern.
8004 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 8005
048addec 80062002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 8007
048addec
JD
8008 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
8009 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
8010 (Fclear_this_command_keys): Doc fixes.
2d10309f 8011
048addec
JD
8012 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
8013 (update_face_from_frame_parameter): Increment face_change_count
8014 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 8015
048addec
JD
8016 * xdisp.c (QCpropertize): New variable.
8017 (mode_line_proptrans_alist): New variable.
8018 (display_mode_element): New arg PROPS; all calls changed.
8019 Implement this, for strings.
8020 Handle literal output of strings by sharing the
8021 main-line code for strings, using local var `literal'.
8022 Handle :propertize feature.
8023 (syms_of_xdisp): Initialze and staticpro QCpropertize and
8024 mode_line_proptrans_alist.
0b1e6b54 8025
048addec 80262002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 8027
048addec
JD
8028 * window.c: (Vmode_line_in_non_selected_windows): New variable.
8029 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 8030
048addec
JD
8031 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
8032 (CURRENT_MODE_LINE_FACE_ID): Use it.
8033 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 8034
048addec
JD
8035 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
8036 to get mode line face.
e17144de 8037
048addec 80382002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 8039
048addec
JD
8040 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
8041 variables; cus-start.el doesn't need them anymore.
44368f8f 8042
048addec 80432002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 8044
048addec
JD
8045 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
8046 reduction. This fixes a display problem where stray newlines were
8047 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 8048
048addec 80492002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 8050
048addec 8051 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 8052
048addec 8053 * xdisp.c (display_mode_lines): Fix last change.
453c5510 8054
048addec 80552002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 8056
048addec
JD
8057 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
8058 match each other.
8059 (w32_load_system_font): Prevent Cleartype fonts from loading.
8060 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 8061
048addec 80622002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 8063
048addec
JD
8064 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
8065 (CURRENT_MODE_LINE_HEIGHT): Use it.
8066 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 8067
048addec
JD
8068 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
8069 (pos_visible_p, handle_face_prop): Likewise.
8070 (display_mode_lines): Likewise, but for the real selected window.
8071 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 8072
048addec
JD
8073 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
8074 in non-selected windows.
8075 (realize_basic_faces): Realize it.
8076 (syms_of_term): Intern and staticpro it.
308dd672 8077
048addec 80782002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 8079
048addec
JD
8080 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
8081 Changed mail addresses to emacs-devel@gnu.org.
308dd672 8082
048addec 80832002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 8084
048addec
JD
8085 * fileio.c (Fsubstitute_in_file_name): If the file name includes
8086 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 8087
048addec 8088 * floatfns.c (Fround): Doc fix.
3c1e6b46 8089
048addec 80902002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 8091
048addec 8092 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 8093
048addec 80942002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 8095
048addec 8096 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 8097
048addec 80982002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 8099
048addec
JD
8100 * keymap.c (where_is_internal): Only check whether definition is
8101 remapped if it fulfills is_command_symbol.
0065bb74 8102
048addec 81032002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 8104
048addec 8105 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 8106
048addec 8107 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 8108
048addec 81092002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 8110
048addec
JD
8111 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
8112 defining command remapping. Doc updated.
8113 (Flookup_key): Remap command through keymap if KEY is a symbol.
8114 (is_command_symbol): New function.
8115 (Fkey_binding): Use it. New optional argument NO-REMAP.
8116 Doc updated. Callers changed. Perform command remapping via
8117 recursive call unless that arg is non-nil.
8118 (where_is_internal): New argument no_remap. Callers changed.
8119 Call recursively to find original key bindings for a remapped
8120 comand unless that arg is non-nil.
8121 (Fwhere_is_internal): New optional argument NO-REMAP.
8122 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 8123
048addec
JD
8124 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
8125 (is_command_symbol): Added prototype.
0d8466cc 8126
048addec
JD
8127 * keyboard.c (Vthis_original_command): New variable.
8128 (syms_of_keyboard): DEFVAR_LISP it.
8129 (command_loop_1): Set it, and perform command remapping.
15fff01d 8130
048addec 81312002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 8132
048addec 8133 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 8134
048addec 81352002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 8136
048addec 8137 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 8138
048addec 81392002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 8140
048addec 8141 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 8142
048addec 81432002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 8144
048addec 8145 * filelock.c (S_ISLNK): Define if not defined.
3a232704 8146
048addec 81472002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 8148
048addec 8149 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 8150
048addec
JD
8151 * lread.c (read1): Redesign strategy for force_multibyte and
8152 force_singlebyte. Now is_multibyte records whether read_buffer
8153 is multibyte. Encountering any multibyte character makes it so.
4e02881b 8154
048addec 81552002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 8156
048addec
JD
8157 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
8158 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 8159
048addec 81602002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 8161
048addec
JD
8162 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
8163 latter never being defined on GNU/Linux.
749f499f 8164
048addec 81652002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 8166
048addec
JD
8167 * xfaces.c (realize_default_face): Don't set the weight and slant of
8168 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 8169
048addec 81702002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 8171
048addec
JD
8172 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
8173 Call cancel_hourglass unconditionally.
d0fd26dd 8174
048addec
JD
8175 * eval.c (Fsignal): Remove duplicated declaration of
8176 the variable `display_hourglass_p'.
b4c45162 8177
048addec 81782002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 8179
048addec 8180 * editfns.c (region_limit): Nicer error message.
c95eaa61 8181
048addec
JD
8182 * coding.c (decode_composition_emacs_mule):
8183 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 8184
048addec
JD
8185 * callint.c (check_mark): New arg to specify clearer error message.
8186 Callers changed.
c95eaa61 8187
048addec 81882002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 8189
048addec 8190 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 8191
048addec 81922002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 8193
048addec
JD
8194 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
8195 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
8196 Fix doc-strings.
c95eaa61 8197
048addec 81982002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 8199
048addec 8200 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 8201
048addec
JD
8202 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
8203 and scroll_up_aggressively.
c95eaa61 8204
048addec 82052002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 8206
048addec 8207 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 8208
048addec 82092002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 8210
048addec
JD
8211 * textprop.c (Fnext_property_change, Fnext_single_property_change)
8212 (Fprevious_property_change, Fprevious_single_property_change):
8213 Stay within the narrowed-buffer boundaries.
e2c3786a 8214
048addec 82152002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 8216
048addec
JD
8217 * term.c (Ftty_display_color_cells): New function.
8218 (syms_of_term): Defsubr it.
8219 (Ftty_display_color_cells, Ftty_display_color_p): Change the
8220 argument name to DISPLAY. Doc fix.
bf794306 8221
048addec
JD
8222 * dispextern.h: Add prototype for set_tty_color_mode and
8223 tty_setup_colors.
bf794306 8224
048addec 82252002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 8226
048addec
JD
8227 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
8228 If region left to draw is not what was expected, mark the frame as
8229 garbaged.
62582985 8230
048addec
JD
8231 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
8232 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 8233
048addec 82342002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 8235
048addec
JD
8236 * w32term.c (x_update_window_begin): Only hide caret if
8237 w32_use_visible_system_caret is set.
8238 (x_update_window_end): Only show caret if
8239 w32_use_visible_system_caret is set.
8240 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 8241
048addec 8242 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 8243
048addec 82442002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 8245
048addec
JD
8246 * unexelf.c (unexec): Define n so as to cause compilation error
8247 for the code where people have often written n instead of nn.
1e9a6186 8248
048addec 8249 * .gdbinit (hookpost-run): Defined.
1e9a6186 8250
048addec 82512002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 8252
048addec 8253 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 8254
048addec 82552002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 8256
048addec
JD
8257 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
8258 if fullscreen is being set.
7c75be36 8259
048addec 82602002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 8261
048addec
JD
8262 * minibuf.c (Fminibuffer_contents)
8263 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
8264 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 8265
048addec 82662002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 8267
048addec 8268 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 8269
048addec 82702002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 8271
048addec
JD
8272 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
8273 height before comparison.
8274 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 8275
048addec 82762002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 8277
048addec
JD
8278 * w32term.c (w32_system_caret_width): Remove.
8279 (w32_use_visible_system_caret): New user flag.
8280 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
8281 Windows reports a screen reader running.
8282 (x_update_window_begin): Hide the system caret.
8283 (x_update_window_end): Show the system caret.
8284 (x_display_and_set_cursor): Don't draw a cursor when
8285 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 8286
048addec
JD
8287 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
8288 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
8289 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
8290 the user requests it. Use system default width when creating.
8291 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 8292
048addec
JD
8293 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
8294 New window messages.
905cc05a 8295
048addec 82962002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 8297
048addec 8298 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 8299
048addec 83002002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 8301
048addec 8302 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 8303
048addec 83042002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 8305
048addec 8306 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 8307
048addec 83082002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 8309
048addec
JD
8310 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
8311 that Windows returns. If a double check fails, try to guess how
8312 ExtTextOut is going to act.
4d0fa4f3 8313
048addec
JD
8314 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
8315 in place of stricmp.
8316 (w32_list_synthesized_fonts): Removed.
8317 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
8318 (struct enumfont_t): New element; list.
8319 (enum_font_cb2): List all style and charset variations of a font.
8320 (Fw32_select_font): New optional argument; include_proportional.
8321 Exclude vertical fonts. Exclude proportional fonts unless
8322 include_proportional is non-nil.
8323 (w32_enable_synthesized_fonts): Change to a boolean.
8324 (Fw32_send_sys_command): Doc fix.
493faf20 8325
048addec 83262002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 8327
048addec
JD
8328 * dispnew.c (update_frame): Move the variable `tem' to the block
8329 where it is used.
4971e491 8330
048addec 83312002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 8332
048addec
JD
8333 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
8334 call to face-set-after-frame-default.
4971e491 8335
048addec 83362002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 8337
048addec
JD
8338 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
8339 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 8340
048addec 83412002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 8342
048addec
JD
8343 * window.c (enlarge_window): When exceeding size of parent,
8344 directly delete all the siblings instead of trying to resize it.
201c831a 8345
048addec 83462002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 8347
048addec 8348 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 8349
048addec 83502002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 8351
048addec 8352 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 8353
048addec 83542002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 8355
048addec
JD
8356 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
8357 is invisible. This can happen if cursor is on top line of a
8358 window, and we switch to a buffer with a header line.
d77fbc16 8359
048addec 8360 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 8361
048addec 83622002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 8363
048addec
JD
8364 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
8365 `dont_resize' only when used.
61e3b944 8366
048addec 8367 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 8368
048addec 83692002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 8370
048addec
JD
8371 * xdisp.c (display_mode_element): When computing charpos, depend
8372 on multibyteness of elt, not the text in field.
8af01033 8373
048addec 83742002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 8375
048addec
JD
8376 * buffer.c (Fkill_all_local_variables):
8377 Increment `update_mode_lines' only once.
7363986a 8378
048addec 83792002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 8380
048addec
JD
8381 * lisp.h (adjust_after_replace_noundo)
8382 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 8383
048addec 8384 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 8385
048addec 83862002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 8387
048addec
JD
8388 Support for the --color command-line argument and tty-color-mode
8389 frame parameter:
f1a85b89 8390
048addec
JD
8391 * term.c (tty_default_color_capabilities, tty_setup_colors)
8392 (set_tty_color_mode): New functions.
8393 (term_init): Call tty_default_color_capabilities.
8394 (Qtty_color_mode_alist): New variable.
8395 (syms_of_term): Intern and staticpro it.
f1a85b89 8396
048addec
JD
8397 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
8398 frames.
8399 (do_switch_frame): For termcap frames, switch the tty
8400 color mode as specified by the frame's parameters.
8401 (Qtty_color_mode): New variable.
8402 (syms_of_frame): Intern and staticpro it.
3a62677f 8403
048addec
JD
8404 * emacs.c (USAGE2): Add the --color option.
8405 (standard_args): Ditto.
72244db2 8406
048addec
JD
84072002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8408
8409 * xterm.h (struct x_output): New members want_fullscreen,
8410 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
8411 y_pixels_outer_diff.
8412 New enum for FULLSCREEN_* constants.
8413 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
8414 is NULL.
8415 (x_fullscreen_adjust): Add prototype.
3a62677f 8416
048addec
JD
8417 * emacs.c (USAGE2): Add the new full-screen arguments.
8418 (standard_args): Ditto.
3a62677f 8419
048addec
JD
8420 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
8421 New variables.
8422 (syms_of_xfns): Intern and staticpro them.
8423 (x_frame_parms) <"fullscreen">: New parameter.
8424 (x_fullscreen_move, x_set_fullscreen): New functions.
8425 (x_set_frame_parameters): Support for Qfullscreen.
8426 (x_real_positions): More accurate computation of the frame position.
8427 (x_figure_window_size): Support full-screen frames.
8428 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 8429
048addec
JD
8430 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
8431 (XTread_socket) <Expose>: Call x_check_fullscreen.
8432 <ConfigureNotify>: Don't resize to fullscreen.
8433 Call x_check_fullscreen_move, and set the want_fullscreen member of
8434 output_data.x.
3a62677f 8435
048addec 84362002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 8437
048addec
JD
8438 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
8439 for mice with more than 3 buttons.
b8523839 8440
048addec
JD
8441 * w32term.c (parse_button): New parameter xbutton. Callers changed.
8442 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 8443
048addec
JD
8444 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
8445 (syms_of_w32fns): DEFVAR_BOOL it.
8446 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 8447
048addec 84482002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 8449
048addec 8450 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 8451
048addec 84522002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 8453
048addec 8454 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 8455
048addec 84562002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 8457
048addec
JD
8458 * .gdbinit (xbuffer): Remove address operator since data is now a
8459 pointer.
c93674bb 8460
048addec 84612002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 8462
048addec 8463 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 8464
048addec 8465 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 8466
048addec 84672002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 8468
048addec
JD
8469 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
8470 when checking for multiple frames.
91175673 8471
048addec 84722002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 8473
048addec
JD
8474 * window.c (delete_window): Rewrite the code for changing the
8475 selected window to handle the case where WINDOW is not a leaf.
91175673 8476
048addec 84772002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 8478
048addec
JD
8479 * process.c (send_process): Set src_multibyte to 1 after the call
8480 top setup_coding_system, not before the call.
e0fead5d 8481
048addec 84822002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 8483
048addec
JD
8484 * xmenu.c (set_frame_menubar, xmenu_show):
8485 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 8486
048addec
JD
8487 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
8488 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 8489
048addec 84902002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 8491
048addec 8492 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 8493
048addec 8494 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 8495
048addec 8496 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 8497
048addec 84982002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 8499
048addec
JD
8500 * insdel.c (make_gap_larger): Make sure buffer size does not
8501 overflow range of int.
62854fe2 8502
048addec 85032002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 8504
048addec
JD
8505 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
8506 OVERLAPS_P.
656f46bb 8507
048addec 8508 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 8509
048addec
JD
8510 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
8511 to the left or to the right of the pointer, put it against
8512 the left screen edge.
8513 (x_frame_parms): Add missing braces around initializer.
036e218d 8514
048addec
JD
8515 * w32term.c (x_setup_relief_colors): Don't compute an image's
8516 background color if it doesn't have a Pixmap.
8517 (notice_overwritten_cursor): Don't depend on
8518 output_cursor and updated_area. Compare pixel coordinates with
8519 window's cursor pixel coordinates.
8520 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
8521 Call notice_overwritten_cursor with new arg list.
8522 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
8523 unconditionally.
8524 (x_draw_image_relief): Use predefined macro instead of
8525 constant when the value of `tool_bar_button_relief' is negative.
036e218d 8526
048addec 8527 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 8528
048addec 85292002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 8530
048addec 8531 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 8532
048addec 85332002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 8534
048addec
JD
8535 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
8536 (Fkey_binding): Try the `keymap' property map first.
8537 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
8538 minor mode bindings.
90647b07 8539
048addec 85402002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 8541
048addec 8542 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 8543
048addec 85442002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 8545
048addec
JD
8546 * keyboard.c (read_key_sequence): Handle the keymap property
8547 before minor mode maps.
9fbc32aa 8548
048addec
JD
8549 * editfns.c (Fformat): Update thissize from field_width
8550 based on the actual width, in the string case.
036e218d 8551
048addec 85522002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 8553
048addec
JD
8554 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
8555 when used as truth value to prevent gcc warnings.
9fbc32aa 8556
048addec
JD
8557 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
8558 * w32proc.c: Include <config.h>.
9fbc32aa 8559
048addec 85602002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 8561
048addec
JD
8562 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
8563 not EMACS_INT, to make them compatible with DEFVAR_INT.
8564 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 8565
048addec 85662002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 8567
048addec
JD
8568 * print.c (print_object): Test print_escape_nonascii only for
8569 unibyte strings.
8570 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
8571 when outputting to a multibyte buffer.
9fbc32aa 8572
048addec 85732001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 8574
048addec
JD
8575 * print.c (print_object): In multibyte string, use hex escapes.
8576 Use octal only for unibyte strings.
8577 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 8578
048addec
JD
8579 * lread.c (read_escape): New arg BYTEREP for reporting whether
8580 escape forces unibyte or multibyte.
8581 (read1): When reading a string, take note of that info.
0142178a 8582
048addec 85832001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 8584
048addec
JD
8585 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
8586 comparison to test lisp value returned by Fget.
d4824a5d 8587
048addec 85882001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 8589
048addec 8590 * lisp.h (max_specpdl_size): Add declaration.
b1356234 8591
048addec 8592 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 8593
048addec
JD
8594 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
8595 Handle modifier bits. Correct typo in error message.
99e380ee 8596
048addec 85972001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 8598
048addec
JD
8599 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
8600 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
8601 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
8602 Update calls to Fdefine_abbrev.
8603 (write_abbrev): Update for changed data format.
8604 Don't list "system" abbrevs.
8605 (Fexpand_abbrev): Update use count with new data format.
8606 (describe_abbrev): Update for changed data format.
8607 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 8608
048addec 8609 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 8610
048addec 8611 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 8612
048addec
JD
8613 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
8614 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 8615
048addec
JD
8616 * keymap.c (Flookup_key): Error message if key has wrong data type.
8617 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
8618 (exclude_key): New variable.
59a86c99 8619
048addec 86202001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 8621
048addec
JD
8622 * xterm.c (x_setup_relief_colors): Don't compute an image's
8623 background color if it doesn't have a Pixmap.
eb77a5f4 8624
048addec
JD
8625 * xterm.c (notice_overwritten_cursor): Don't depend on
8626 output_cursor and updated_area. Compare pixel coordinates with
8627 window's cursor pixel coordinates.
8628 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
8629 Call notice_overwritten_cursor with new arg list.
8630 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
8631 unconditionally.
eb77a5f4 8632
048addec
JD
8633 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
8634 height of the cursor line to the amount to scroll.
eb77a5f4 8635
048addec 86362001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 8637
048addec
JD
8638 * intervals.c (set_point_both): The position after an invisible,
8639 intangible character is not an acceptable stopping point.
bb313871 8640
048addec 86412001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 8642
048addec
JD
8643 * window.c (enlarge_window): In new preserve_before code, convert
8644 CURBEG from lisp object to integer before doing arithmetic.
6052529b 8645
048addec 86462001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 8647
048addec 8648 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 8649
048addec 86502001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 8651
048addec
JD
8652 * keyboard.c (record_char): Ignore duplicate help-echo events only
8653 separated by mouse-movement. When tracking mouse, only record
8654 first and last mouse-movement event in same window.
8655 Don't record mouse-movement events in keyboard macros.
3ce081f5 8656
048addec 86572001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 8658
048addec
JD
8659 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
8660 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 8661
048addec
JD
8662 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
8663 instead of Fstring_as_unibyte.
9fabb2f5 8664
048addec 86652001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 8666
048addec 8667 The following changes remove mocklisp support:
9fabb2f5 8668
048addec 8669 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 8670
048addec
JD
8671 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
8672 `Qmocklisp' and `Qmocklisp_arguments'.
8673 Remove prototype of syms_of_mocklisp.
2fa0eedf 8674
048addec 8675 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 8676
048addec
JD
8677 * callint.c: Do not include mocklisp.h.
8678 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 8679
048addec
JD
8680 * eval.c: Remove variables `Qmocklisp_arguments',
8681 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
8682 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
8683 Do not test for mocklisp case.
8684 (Fwhile): Remove unused variable `tem'.
8685 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 8686
048addec 8687 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 8688
048addec 8689 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 8690
048addec 8691 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 8692
048addec 86932001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 8694
048addec
JD
8695 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
8696 to the left or to the right of the pointer, put it against
8697 the left screen edge.
6108b49c 8698
048addec 86992001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 8700
048addec
JD
8701 * Makefile.in (distclean): Remove .gdbinit if we are building
8702 outside the source tree.
5eea19a4 8703
048addec 87042001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 8705
048addec 8706 * w32.c (emacs_root_dir): New function.
5eea19a4 8707
048addec 8708 * msdos.c (emacs_root_dir): New function.
5eea19a4 8709
048addec
JD
8710 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
8711 of the current drive as the fallback for default_directory.
438e57dd 8712
048addec
JD
8713 * dired.c (file_name_completion): Run the elements of
8714 completion-ignored-extensions through ENCODE_FILE.
438e57dd 8715
048addec
JD
8716 * lisp.h (scmp): Remove prototype, since it's now a static
8717 function private to dired.c.
c88e5347 8718
048addec 87192001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 8720
048addec
JD
8721 * dired.c (scmp): Function moved from minibuf.c.
8722 Delete multibyte handling--used only on encoded strings.
59ce1461 8723
048addec 8724 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 8725
048addec 8726 * fns.c (merge): Add QUIT call.
59ce1461 8727
048addec 87282001-12-18 Dave Love <fx@gnu.org>
8727d588 8729
048addec
JD
8730 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
8731 language/georgian.el.
8727d588 8732
048addec 87332001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 8734
048addec
JD
8735 * Makefile.in (lisp, shortlisp): Synchronize with changes to
8736 lisp/Makefile.in:DONTCOMPILE.
cc63037e 8737
048addec 87382001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 8739
048addec
JD
8740 * xdisp.c (window_box_height): Do not return negative values.
8741 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 8742
048addec 8743 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 8744
048addec 8745 * term.c (keys): Likewise.
deece6f5 8746
048addec 8747 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 8748
048addec 87492001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 8750
048addec
JD
8751 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
8752 patch (COMPOSING_P, not COMPOSING).
28ff4293 8753
048addec 87542001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 8755
048addec 8756 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 8757
048addec
JD
8758 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
8759 before calling decode_coding.
9b46de40 8760
048addec 8761 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 8762
048addec
JD
8763 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
8764 instead of only for COMPOSITION_DISABLED.
9b46de40 8765
048addec 87662001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 8767
048addec 8768 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 8769
048addec 8770 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 8771
048addec
JD
8772 * buffer.h (struct buffer): New field `display_error_modiff'.
8773 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 8774
048addec 8775 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 8776
048addec
JD
8777 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
8778 Call redisplay_window, but not if display_error_modiff field says no.
8779 (redisplay_window_error): New function.
8780 (displayed_buffer): New variable.
8781 (redisplay_internal, redisplay_windows): Call the new functions
8782 instead of redisplay_window directly.
2cd23960 8783
048addec 87842001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 8785
048addec 8786 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 8787
048addec 87882001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 8789
048addec
JD
8790 * makefile.w32-in (EMACSLOADPATH): Define.
8791 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
8792 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 8793
048addec 87942001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 8795
048addec
JD
8796 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
8797 parameter have a numeric value all the time.
f6fa0866 8798
048addec 8799 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 8800
048addec 88012001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 8802
048addec 8803 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 8804
048addec
JD
8805 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
8806 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 8807
048addec 88082001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 8809
048addec
JD
8810 * xdisp.c (move_it_vertically_backward): Change heuristic
8811 for the case that we didn't move far enough initially.
91c153e2 8812
048addec
JD
8813 * window.c (Frecenter): Simplify computation in the case of window
8814 system frames and ARG < 0; use window_box_height.
65b7d3e7 8815
048addec 88162001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 8817
048addec
JD
8818 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
8819 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 8820
048addec 88212001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 8822
048addec
JD
8823 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
8824 arg is negative.
be676094 8825
048addec 88262001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 8827
048addec
JD
8828 * m/hp800.h: Split the __hpux conditional into the parts
8829 that are right for GNU/Linux too and the parts that are not.
8830 Use the former if GNU_LINUX.
8831 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 8832
048addec 8833 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 8834
048addec 88352001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 8836
048addec
JD
8837 * macros.c, msdos.c, w16select.c: Change doc-string comments to
8838 `new style' [w/`doc:' keyword].
032a857d 8839
048addec 88402001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 8841
048addec
JD
8842 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
8843 before using.
b6270150 8844
048addec 88452001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 8846
048addec
JD
8847 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
8848 keyword].
98cbb9fa 8849
048addec 88502001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 8851
048addec 8852 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 8853
048addec 8854 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 8855
048addec 88562001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 8857
048addec
JD
8858 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
8859 Add comment to explain where the struct came from.
8860 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
8861 (add_menu_item): Process pop-up menus first to avoid memory leak.
8862 (add_menu_item, w32_menu_display_help): Use `help' field as
8863 Lisp_Object.
8864 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 8865
048addec 88662001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 8867
048addec 8868 * COPYING: Moved back.
fa336b91 8869
048addec
JD
8870 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
8871 Add parentheses around && within ||.
077907d4 8872
048addec 8873 * indent.c (compute_motion): Likewise.
aa2af83a 8874
048addec 8875 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 8876
048addec
JD
8877 * coding.c (setup_coding_system, shrink_encoding_region)
8878 (Fdecode_sjis_char): Likewise.
60a653f1 8879
048addec 88802001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 8881
048addec
JD
8882 * xdisp.c (display_mode_element): Don't read past end of string if
8883 it ends with '%'.
60a653f1 8884
048addec
JD
8885 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
8886 can hold.
60a653f1 8887
048addec
JD
8888 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
8889 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
8890 type changed to Lisp_Object.
8891 (syms_of_data): DEFVAR_LISP them.
60a653f1 8892
048addec 88932001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 8894
048addec
JD
8895 * callproc.c (init_callproc): Set Vdata_directory based on the source
8896 location whenever Emacs was run uninstalled.
60a653f1 8897
048addec 88982001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 8899
048addec
JD
8900 * config.in (HAVE_WORKING_VFORK): New #undefs.
8901 * process.c (create_process):
8902 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
8903 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
8904 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
8905 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
8906 * m/intel386.h (HAVE_VFORK): Likewise.
8907 * m/mips-siemens.h (HAVE_VFORK): Likewise.
8908 * m/mips.h (HAVE_VFORK): Likewise.
8909 * s/freebsd.h (vfork): Remove #define.
8910 * s/lynxos.h (HAVE_VFORK): Remove #undef.
8911 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 8912
048addec 89132001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 8914
048addec
JD
8915 * s/hpux10.h (random): Add undef.
8916 (HAVE_RANDOM): Define it just once.
60a653f1 8917
048addec 89182001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 8919
048addec 8920 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 8921
048addec 89222001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 8923
048addec
JD
8924 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
8925 scroll bars of the frame before deleting the frame itself. If the
8926 frame has a widget, delete the frame with XtDestroyWidget, and do
8927 not call XDestroyWindow before that.
60a653f1 8928
048addec 89292001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 8930
048addec 8931 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 8932
048addec 8933 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 8934
048addec 89352001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 8936
048addec
JD
8937 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
8938 excessively large.
60a653f1 8939
048addec
JD
8940 * insdel.c (make_gap_larger): New function.
8941 (make_gap_smaller): New function.
8942 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
8943 Call make_gap_smaller if arg is negative.
60a653f1 8944
048addec 89452001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 8946
048addec
JD
8947 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
8948 Pass a dummy argument when calling interrupt_signal.
8949 (parse_menu_item): Mark disabled items before checking for empty def.
8950 (read_char_minibuf_menu_prompt): Make safety more visible.
8951 (read_key_sequence): Add a `first_unbound' variable.
8952 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
8953 unbound prefix as soon as we can detect it.
60a653f1 8954
048addec
JD
8955 * doc.c (Fsnarf_documentation): Add prototype.
8956 (get_doc_string): Handle negative arguments.
8957 (Fdocumentation): Use AREF and ASIZE.
8958 Move the calls to get_doc_string to a single place.
8959 Don't confuse an interactive-spec for a docstring reference.
8960 (Fdocumentation_property): Take advantage of the fact that
8961 get_doc_string now ignores the sign of the docstring position.
60a653f1 8962
048addec 8963 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 8964
048addec 89652001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 8966
048addec 8967 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief` an option.
60a653f1 8968
048addec 89692001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 8970
048addec
JD
8971 * xterm.c (x_draw_image_relief): Use predefined macro instead of
8972 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 8973
048addec 89742001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 8975
048addec
JD
8976 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
8977 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 8978
048addec 8979 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 8980
048addec 89812001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 8982
048addec 8983 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 8984
048addec 89852001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 8986
048addec 8987 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 8988
048addec 89892001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 8990
048addec 8991 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 8992
048addec
JD
8993 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
8994 [!WM_MOUSELEAVE]: Define.
60a653f1 8995
048addec
JD
8996 * w32menu.c (current_popup_menu, get_menu_item_info):
8997 (set_menu_item_info): New vars.
8998 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
8999 (w32_menu_show): Set current_popup_menu.
9000 (add_menu_item): Allocate new strings for owner-drawn menu items
9001 and help strings.
9002 Use owner-draw for disabled menu items again.
9003 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
9004 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 9005
048addec
JD
9006 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
9007 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
9008 <WM_EXITMENULOOP>: Free menu strings.
9009 <WM_MOUSELEAVE>: Stop tracking mouse.
9010 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 9011
048addec
JD
9012 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
9013 and mouse face.
60a653f1 9014
048addec 90152001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 9016
048addec
JD
9017 The following changes add left-fringe and right-fringe
9018 frame parameters to adjust fringe widths, or remove one or
9019 both fringes.
60a653f1 9020
048addec
JD
9021 * frame.h (struct frame): Remove trunc_area_pixel_width and
9022 trunc_area_cols fields.
9023 (Qleft_fringe, Qright_fringe): Declare.
9024 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 9025
048addec
JD
9026 * frame.c (Qleft_fringe, Qright_fringe): New vars.
9027 (syms_of_frame): Initialize them.
60a653f1 9028
048addec
JD
9029 * window.c (coordinates_in_window): Handle separate left and right
9030 fringe widths.
60a653f1 9031
048addec
JD
9032 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
9033 and fringe_cols fields.
9034 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
9035 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
9036 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
9037 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
9038 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
9039 (x_compute_fringe_widths): Add prototype.
60a653f1 9040
048addec
JD
9041 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
9042 fill fringe evenly with small dashes.
9043 (x_draw_fringe_bitmap): Clear background if necessary. Align and
9044 clip the new ZV bitmap to avoid jitter between rows.
9045 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
9046 background. Don't draw fringe bitmaps if fringe width is zero.
9047 (x_compute_fringe_widths): New function.
9048 (x_new_font, x_set_window_size_1): Use it.
60a653f1 9049
048addec
JD
9050 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
9051 (x_set_frame_parameters): Process `font' parameter before other
9052 parameters as fringe widths depend on it.
9053 (x_set_fringe_width): New function.
9054 (x_figure_window_size): Use x_compute_fringe_widths.
9055 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
9056 parameters.
60a653f1 9057
048addec
JD
9058 * widget.c (set_frame_size): Use x_compute_fringe_widths.
9059 (EmacsFrameSetCharSize): Ditto.
60a653f1 9060
048addec
JD
9061 * w32term.h: Merged changes from xterm.h.
9062 * w32term.c: Merged changes from xterm.c.
9063 * w32fns.c: Merged changes from xfns.c.
60a653f1 9064
048addec 90652001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 9066
048addec 9067 * COPYING: Removed.
60a653f1 9068
048addec 90692001-11-29 Dave Love <fx@gnu.org>
60a653f1 9070
048addec
JD
9071 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
9072 extra extra slot.
9073 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 9074
048addec 90752001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 9076
048addec
JD
9077 * fileio.c (file-name-coding-system)
9078 (default-file-name-coding-system): Doc fix (links to referenced
9079 variables added).
60a653f1 9080
048addec 90812001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9082
048addec
JD
9083 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
9084 Add dummy uses of gcproN variables.
60a653f1 9085
048addec
JD
9086 * category.c (describe_category, describe_category_1)
9087 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
9088 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 9089
048addec 90902001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 9091
048addec 9092 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 9093
048addec
JD
9094 * Makefile.in (lispdir): New variable, referring to build dir.
9095 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 9096
048addec 90972001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 9098
048addec
JD
9099 * w32menu.c (w32_menu_display_help): Actually add the new argument
9100 OWNER.
60a653f1 9101
048addec 91022001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 9103
048addec
JD
9104 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
9105 menu items. From David Ponce <dponce@wanadoo.fr>.
9106 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
9107 conditionally.
9108 (w32_menu_display_help): New argument OWNER. Rewritten to store a
9109 help event in the owner frame's keyboard buffer.
60a653f1 9110
048addec
JD
9111 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
9112 (Fx_show_tip): Don't subtract last width from row width.
9113
9114 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
9115 (w32_read_socket): Use EQ to compare frames.
60a653f1 9116
048addec 91172001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 9118
048addec
JD
9119 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
9120 OVERLAPS_P.
60a653f1 9121
048addec 91222001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 9123
048addec
JD
9124 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
9125 `gcpro3' and `gcpro4'.
60a653f1 9126
048addec 9127 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 9128
048addec 91292001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9130
048addec 9131 * ccl.c: Use AREF and ASIZE.
60a653f1 9132
048addec 91332001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9134
048addec
JD
9135 * lisp.h (run_hook_list_with_args): Remove.
9136 (LIST_END_P): Fix call to wrong_type_argument.
9137 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 9138
048addec 91392001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9140
048addec
JD
9141 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
9142 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 9143
048addec
JD
9144 * eval.c: Use AREF and ASIZE.
9145 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 9146
048addec
JD
9147 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
9148 which match the end of the file-name.
9149 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
9150 is not a valid env var, but leave it as is instead.
60a653f1 9151
048addec
JD
9152 * keymap.c (access_keymap): Handle t bindings like nil bindings.
9153 Make nil bindings in char-tables transparent.
9154 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 9155
048addec 91562001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 9157
048addec
JD
9158 * textprop.c (set_text_properties_1): Allow START, END in either order.
9159 Do nothing if range is empty.
60a653f1 9160
048addec 9161 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 9162
048addec
JD
9163 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
9164 (clean): Not here.
60a653f1 9165
048addec 91662001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9167
048addec
JD
9168 * textprop.c (set_text_properties_1): Clearly mark that the
9169 interval should not be empty.
60a653f1 9170
048addec
JD
9171 * intervals.c (graft_intervals_into_buffer):
9172 Don't call set_text_properties_1 on an empty interval.
60a653f1 9173
048addec 91742001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 9175
048addec 9176 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 9177
048addec
JD
9178 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
9179 don't lose the data in it.
60a653f1 9180
048addec 91812001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 9182
048addec 9183 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 9184
048addec 9185 * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
60a653f1 9186
048addec 9187 * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
60a653f1 9188
048addec 91892001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9190
048addec 9191 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 9192
048addec 91932001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 9194
048addec
JD
9195 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
9196 Niemitalo <kon@iki.fi>.
60a653f1 9197
048addec 91982001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 9199
048addec 9200 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 9201
048addec
JD
9202 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
9203 (Fx_show_tip): Block input during frame creation.
9204 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 9205
048addec 92062001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 9207
048addec
JD
9208 * lread.c (Fload): Detect recursive load error for more than 3
9209 nestings of the same file.
9210 (Vrecursive_load_depth_limit): Variable deleted.
9211 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 9212
048addec 92132001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 9214
048addec
JD
9215 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
9216 mouse position if either left or top is not specified.
60a653f1 9217
048addec
JD
9218 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
9219 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
9220 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
9221 (my_create_tip_window): Assign tip_window.
9222 (x_create_tip_frame): Use same defaults as X.
9223 (compute_tip_xy): Remove unused variable. Use full screen width.
9224 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 9225
048addec
JD
9226 * w32term.c (x_after_update_window_line): Doc fix.
9227 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
9228 frames.
9229 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 9230
048addec
JD
9231 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
9232 for all Windowed systems.
60a653f1 9233
048addec 92342001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 9235
048addec
JD
9236 * msdos.c (IT_clear_screen): If the frame's faces are not yet
9237 realized, use the initial screen colors to clear the screen.
60a653f1 9238
048addec 92392001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 9240
048addec
JD
9241 * textprop.c (Fset_text_properties): Remove unused variables
9242 `unchanged', `prev_changed', `s' and `len'.
60a653f1 9243
048addec
JD
9244 * search.c (Freplace_match): Remove unused variable `inslen'.
9245
9246 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
9247
92482001-11-22 Jason Rumney <jasonr@gnu.org>
9249
9250 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
9251 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
9252 (my_create_tip_window): New function.
9253 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
9254 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
9255
92562001-11-20 Jason Rumney <jasonr@gnu.org>
9257
9258 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
9259 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
9260
9261 * w32fns.c (Vw32_system_coding_system): Remove.
9262 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
9263
92642001-11-19 Stefan Monnier <monnier@cs.yale.edu>
9265
9266 * fileio.c (Fwrite_region): Move choose_write_coding_system to
9267 after build_annotations.
9268
9269 * syntax.c (describe_syntax): Add dummy arg.
9270 (describe_syntax_1): Update call to describe_vector.
9271
9272 * category.c (describe_category): Add dummy arg.
9273 (describe_category_1): Update call to describe_vector.
9274
9275 * keymap.c (Fdescribe_vector): Add `describer' parameter.
9276 (describe_command, describe_translation): Add dummy second param.
9277 (describe_map): Call elt_describer with two arguments.
9278 (describe_vector_princ): Add `fun' parameter.
9279 Call it instead of the hardcoded `princ'.
9280 (describe_vector): Add arg `args'.
9281 Pass it as a new second argument to elt_describer.
60a653f1 9282
048addec 9283 * keymap.h (describe_vector): Update prototype.
60a653f1 9284
048addec
JD
9285 * frame.c: Don't include keymap.h any more.
9286 (keys_of_frame): Remove.
60a653f1 9287
048addec 9288 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 9289
048addec 9290 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 9291
048addec 92922001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 9293
048addec
JD
9294 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
9295 if defined, 0 otherwise.
9296 (MAP_FAILED): Define if not defined and use it to test mmap failure.
9297 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 9298
048addec 92992001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 9300
048addec 9301 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 9302
048addec 93032001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 9304
048addec
JD
9305 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
9306 (x_draw_bar_cursor): If the background color of the glyph under
9307 the cursor equals the frame's cursor color, use the glyph's
9308 foreground color for drawing the bar cursor.
9309 (x_after_update_window_line): Clear internal border in different
9310 circumstances.
9311 (w32_set_vertical_scroll_bar): Check for width and height > 0.
9312 (w32_draw_relief_rect): Correct relief by 1 pixel.
9313 (x_set_glyph_string_background_width):
9314 Set extends_to_end_of_line_p if the row's fill_line_p is set and
9315 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
9316 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
9317 if cursor_in_non_selected_windows is false.
9318 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
9319 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
9320 Notice if cursor gets overwritten.
9321 (notice_overwritten_cursor): Renamed from
9322 note_overwritten_text_cursor. Rewritten to take glyph widths
9323 into account, and to take X positions as parameters.
9324 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
9325 around call to x_draw_glyphs.
9326 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
9327 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
9328 color to use for image glyph reliefs.
9329 (x_draw_image_relief): Accept zero tool_bar_button_relief.
9330 (glyph_rect): Remove unused variable `area'.
60a653f1 9331
048addec
JD
9332 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
9333 some items.
9334 (x_set_internal_border_width): Set frame garbaged when window
9335 doesn't exist yet.
9336 (Fx_create_frame): Accept zero tool_bar_button_relief.
9337 (x_clear_image_1, four_corners_best, image_background)
9338 (image_background_transparent): New functions.
9339 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
9340 (gs_format): Add `:background' entry.
9341 (lookup_image): Set IMG's background color if specified.
9342 (pbm_load, xbm_load_image, png_load): Set IMG's background field
9343 when appropriate.
9344 (x_clear_image_1): Reset `background_valid' and
9345 `background_transparent_valid' fields.
9346 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
9347 calculating it here. Set IMG's background_transparent field.
9348 (enum xpm_keyword_index): Add XPM_BACKGROUND.
9349 (enum png_keyword_index): Add PNG_BACKGROUND.
9350 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
9351 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
9352 (enum gif_keyword_index): Add GIF_BACKGROUND.
9353 (enum gs_keyword_index): Add GS_BACKGROUND.
9354 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
9355 Pre-calculate image background color where necessary.
9356 (x_create_x_image_and_pixmap, xbm_load, gs_load):
9357 Use display info's n_cbits entry for screen depth.
9358 (Fx_show_tip): Remove unused variables `buffer', `top',
9359 `left', `max_width' and `max_height'.
60a653f1 9360
048addec 9361 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 9362
048addec 93632001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 9364
048addec 9365 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 9366
048addec 93672001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 9368
048addec 9369 * frame.c (Fframe_live_p): Doc fix.
60a653f1 9370
048addec 93712001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 9372
048addec
JD
9373 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
9374 (message_dolog_marker3): New static variables hold three markers.
9375 (syms_of_xdisp): Initialize and staticpro them.
9376 (message_dolog): Use message_dolog_marker1..3 instead of
9377 allocating markers each time. Unchain them when done.
60a653f1 9378
048addec 93792001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 9380
048addec 9381 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 9382
048addec 93832001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 9384
048addec 9385 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 9386
048addec 93872001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 9388
048addec 9389 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 9390
048addec 93912001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 9392
048addec 9393 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 9394
048addec 93952001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 9396
048addec
JD
9397 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
9398 with invalid position.
60a653f1 9399
048addec 94002001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 9401
048addec 9402 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 9403
048addec
JD
9404 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
9405 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
9406 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 9407
048addec 9408 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 9409
048addec 94102001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9411
048addec
JD
9412 * fileio.c (build_annotations): Split off the tail.
9413 (build_annotations_2): New fun. Extracted from build_annotations.
9414 (Fwrite_region): Split the call to build_annotations into two
9415 calls to build_annotations and build_annotations_2.
077907d4 9416
048addec 94172001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 9418
048addec
JD
9419 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
9420 clear_waiting_for_input with argument.
1756e2fb 9421
048addec 9422 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 9423
048addec 9424 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 9425
048addec 9426 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 9427
048addec 9428 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 9429
048addec 94302001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 9431
048addec
JD
9432 * fileio.c (choose_write_coding_system): New fun, extracted
9433 from Fwrite_region.
9434 (Fwrite_region): Use it.
fa336b91 9435
048addec
JD
9436 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
9437 (funcall_lambda, run_hook_with_args): Make static and add prototype.
9438 (ml_apply, find_handler_clause): Add prototype.
fa336b91 9439
048addec 94402001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 9441
048addec 9442 * config.in: Add #undef HAVE_COFF_H.
fa336b91 9443
048addec
JD
9444 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
9445 Required for ISC 4.1.
fa336b91 9446
048addec 94472001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 9448
048addec
JD
9449 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
9450 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 9451
048addec 94522001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 9453
048addec
JD
9454 The following changes are made to clean up the various internal
9455 references to the fringes to actually use the term `fringe' for
9456 them. Previously, they were called `flags areas', `bitmap areas',
9457 `left/right side of windows', or implicitly as `flags' or
9458 `bitmaps':
fa336b91 9459
048addec
JD
9460 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
9461 Comments fixed. Use renamed symbols.
06e8f738 9462
048addec 9463 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 9464
048addec
JD
9465 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
9466 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
9467 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 9468
048addec 9469 * msdos.c: Comment fix.
9ce647f4 9470
048addec 9471 * w32fns.c: Use renamed symbols.
9b784ab8 9472
048addec
JD
9473 * w32term.c: Comment fixes. Use renamed symbols.
9474 (fringe_bitmap_type): Renamed from bitmap_type.
9475 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
9476 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
9477 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 9478
048addec
JD
9479 * w32term.h: Comment fixes. Use renamed symbols.
9480 (fringes_extra): Renamed from flags_areas_extra.
9481 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
9482 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
9483 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
9484 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
9485 (FRAME_X_LEFT_FRINGE_WIDTH):
9486 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
9487 (FRAME_X_RIGHT_FRINGE_WIDTH):
9488 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 9489
048addec 9490 * widget.c: Use renamed symbols.
9f7e52b4 9491
048addec
JD
9492 * window.c: Comment fixes. Use renamed symbols.
9493 (coordinates-in-window-p): Doc fix.
fa336b91 9494
048addec 9495 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 9496
048addec 9497 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 9498
048addec 9499 * xfns.c: Use renamed symbols.
89512fcd 9500
048addec
JD
9501 * xterm.c: Comment fixes. Use renamed symbols.
9502 (fringe_bitmap_type): Renamed from bitmap_type.
9503 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
9504 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
9505 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 9506
048addec
JD
9507 * xterm.h: Comment fixes. Use renamed symbols.
9508 (fringes_extra): Renamed from flags_areas_extra.
9509 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
9510 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
9511 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
9512 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
9513 (FRAME_X_LEFT_FRINGE_WIDTH):
9514 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
9515 (FRAME_X_RIGHT_FRINGE_WIDTH):
9516 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9517
95182001-11-15 Jason Rumney <jasonr@gnu.org>
9519
9520 * w32menu.c (add-menu-item): Make help_echo and radio buttons
9521 work for most menu items. From David Ponce
9522 <david.ponce@wanadoo.fr>.
9523
95242001-11-15 Gerd Moellmann <gerd@gnu.org>
9525
9526 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
9527 Some x_set_* function expect to be called even if old and new
9528 value are equal.
9529
9530 * xdisp.c (build_desired_tool_bar_string): Accept zero
9531 tool_bar_button_relief.
9532
9533 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
9534
9535 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
9536
9537 * xterm.c (x_draw_bar_cursor): If the background color of the
9538 glyph under the cursor equals the frame's cursor color, use
9539 the glyph's foreground color for drawing the bar cursor.
9540
9541 * dispnew.c (direct_output_forward_char): Fix character/byte
9542 position comparison.
7d18891d 9543
048addec 95442001-11-15 Miles Bader <miles@gnu.org>
d2936d21 9545
048addec
JD
9546 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
9547 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
9548 Update arguments to find_field.
9549 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
9550 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
9551 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
9552 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 9553
048addec 95542001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 9555
048addec 9556 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 9557
048addec
JD
9558 * dispextern.h (image_background, image_background_transparent):
9559 Conditionalize on HAVE_X_WINDOWS.
7d18891d 9560
048addec 95612001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 9562
048addec 9563 * print.c (Fprin1_to_string): Doc fix.
7d18891d 9564
048addec 9565 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 9566
048addec 9567 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 9568
048addec 9569 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 9570
048addec 9571 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 9572
048addec 9573 * eval.c (syms_of_eval): Doc fix.
7d18891d 9574
048addec 9575 * coding.c (syms_of_coding): Doc fix.
7d18891d 9576
048addec 9577 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 9578
048addec 9579 * dispnew.c (syms_of_display): Doc fix.
9474c847 9580
048addec 9581 * category.c (Fget_unused_category): Doc fix.
9474c847 9582
048addec 9583 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 9584
048addec 95852001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 9586
048addec 9587 * print.c (prin1, print): Doc fix.
e3059a5d 9588
048addec 95892001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 9590
048addec
JD
9591 * fontset.h: Remove declarations of variables
9592 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 9593
048addec
JD
9594 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
9595 `Vclip_large_size_font'.
eae936e2 9596
048addec 95972001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 9598
048addec 9599 * w32fns.c: Doc fix.
ddb67bdc 9600
048addec 96012001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 9602
048addec 9603 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 9604
048addec 9605 * fns.c: Doc fix.
6e1b91d7 9606
048addec 9607 * emacs.c: Doc fix.
1c1d3d69 9608
048addec 9609 * coding.c: Doc fix.
1c1d3d69 9610
048addec
JD
9611 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
9612 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
9613 `new style' [w/`doc:' keyword].
b6f4c7ba 9614
048addec 96152001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 9616
048addec
JD
9617 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
9618 LeaveNotify events. Only FocusIn and FocusOut do that now.
9619 (x_display_and_set_cursor): Do display hollow cursors in active
9620 minibuffer windows when they are not selected.
b6f4c7ba 9621
048addec 96222001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 9623
048addec
JD
9624 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
9625 * w32term.c: Change doc-string comments to `new style'.
9626 [w/`doc:' keyword]. Doc fixes.
a89f435d 9627
048addec
JD
9628 * w32fns.c: Don't define max.
9629 (Fx_open_connection): Only execute once.
a4cd0cd7 9630
048addec 96312001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 9632
048addec
JD
9633 * ccl.c: Change macros to use do-while block instead of if-else.
9634 Use braces to follow GNU Coding Standards.
eafb659a 9635
048addec 96362001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 9637
048addec 9638 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 9639
048addec 9640 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 9641
048addec
JD
9642 * insdel.c (replace_range): Use adjust_markers_for_replace
9643 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 9644
048addec 9645 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 9646
048addec
JD
9647 * textprop.c (set_text_properties_1): New subroutine
9648 broken out of set_text_properties.
9649 (set_text_properties): Use set_text_properties_1.
91823618 9650
048addec
JD
9651 * intervals.c (graft_intervals_into_buffer):
9652 Use set_text_properties_1 to clear out properties.
91823618 9653
048addec
JD
9654 * search.c (Freplace_match): Use replace_range to insert
9655 and delete. Don't request property inheritance from
9656 surrounding text.
86928dfb 9657
048addec 96582001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 9659
048addec
JD
9660 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
9661 vertical fonts. Allow them if face name is explicitly specified.
9662 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 9663
048addec 96642001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 9665
048addec
JD
9666 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
9667 instead of malloc/free.
a78e0303 9668
048addec 96692001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 9670
048addec
JD
9671 * xfaces.c (merge_face_vectors): Use braces to follow GNU
9672 Coding Standards.
9673 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 9674
048addec 9675 * buffer.c (Fbury_buffer): Likewise.
0c99b139 9676
048addec 9677 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 9678
048addec
JD
9679 * coding.c (encode_coding): Use precomputed value of `src'.
9680 (encode_coding): Remove unused variable `src_end'.
9681 (code_convert_region): Remove unused variables `count'.
830ddd77 9682
048addec 96832001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 9684
048addec
JD
9685 * w32term.c (x_display_and_set_cursor): Do not move system caret
9686 if cursor_glyph is NULL.
55c6d645 9687
048addec 96882001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 9689
048addec 9690 * keymap.c (access_keymap): Fix compilation error.
5de38842 9691
048addec 96922001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 9693
048addec 9694 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 9695
048addec 96962001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 9697
048addec
JD
9698 * intervals.c (graft_intervals_into_buffer):
9699 Remove #ifdef'd-out code.
9700 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 9701
048addec
JD
9702 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
9703 code (eval-current-buffer).
9704 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 9705
048addec 97062001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 9707
048addec 9708 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 9709
048addec 97102001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 9711
048addec 9712 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 9713
048addec
JD
9714 * keyboard.c (make_lispy_event): Check integerness and fix
9715 Lisp_Object/int mixup.
17893c65 9716
048addec 97172001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 9718
048addec 9719 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 9720
048addec
JD
9721 * fontset.c (fontset_font_pattern): Remove unused variable
9722 `family_registry'.
d5360cc7 9723
048addec 9724 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 9725
048addec 97262001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 9727
048addec 9728 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 9729
048addec
JD
9730 * buffer.c (Fkill_buffer): Don't delete auto save file
9731 if buffer is modified.
d9d54213 9732
048addec 97332001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 9734
048addec
JD
9735 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
9736 CHECK_NUMBER_CDR.
b116830b 9737
048addec 97382001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 9739
048addec 9740 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 9741
048addec 97422001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 9743
048addec 9744 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 9745
048addec 97462001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 9747
048addec 9748 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 9749
048addec 97502001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 9751
048addec
JD
9752 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
9753 the program image directly.
982f6c7e 9754
048addec 97552001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 9756
048addec 9757 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 9758
048addec 97592001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 9760
048addec
JD
9761 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
9762 and CHECK_BUFFER.
d31053f9 9763
048addec
JD
9764 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
9765 (record_char): Likewise.
d31053f9 9766
048addec
JD
9767 * keyboard.c (make_lispy_event): Don't insist a drag event must
9768 move to a different buffer position. Instead, check for moving at
9769 least double_click_fuzz.
982f6c7e 9770
048addec 9771 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 9772
048addec 9773 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 9774
048addec
JD
9775 * indent.c (current_column_1, Fmove_to_column): Separate the code
9776 for display-table glyphs from the code for buffer text, to fix
9777 bugs in the former.
830047fd 9778
048addec 97792001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 9780
048addec
JD
9781 * buffer.c (Fbuffer_local_value): New function.
9782 (syms_of_buffer): Defsubr it.
2df5238c 9783
048addec
JD
9784 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
9785 value of `cursor-in-non-selected-windows'.
4e397688 9786
048addec
JD
9787 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
9788 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
9789 (syms_of_xdisp): Initialize it.
48b0f3ae 9790
048addec 97912001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 9792
048addec 9793 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 9794
048addec
JD
9795 * coding.c: Change doc-string comments to `new style' [w/`doc:'
9796 keyword].
3ecaf7e5 9797
048addec
JD
9798 * eval.c (top_level_value, top_level_set): Remove commented and
9799 #ifdef'd-out code.
9800 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 9801
048addec 98022001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 9803
048addec 9804 * xfns.c: Include unistd.h, if it exists.
8db2e33b 9805
048addec 9806 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 9807
048addec 9808 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 9809
048addec 98102001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 9811
048addec
JD
9812 * lisp.h (CHECK_STRING_CAR): New macro.
9813 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
9814 treating XCAR and XCDR as lvalues.
9815 (openp): Use CHECK_STRING_CAR.
9816 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 9817
048addec 98182001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 9819
048addec
JD
9820 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
9821 (SIGMASKTYPE): Define.
1b1acc13 9822
048addec 9823 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 9824
048addec 98252001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 9826
048addec
JD
9827 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
9828 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
9829 Fix typos in comments.
6cb16f95 9830
048addec
JD
9831 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
9832 and #ifdef'd-out code.
9833 Fix and reindent comments.
6cb16f95 9834
048addec 9835 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 9836
048addec
JD
9837 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
9838 argument `i' in macros.
6cb16f95 9839
048addec
JD
9840 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
9841 `i' in macros.
7e9d3c2f 9842
048addec
JD
9843 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
9844 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
9845 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
9846 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
9847 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
9848 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
9849 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
9850 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
9851 in macros.
7e9d3c2f 9852
048addec
JD
9853 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
9854 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
9855 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
9856 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
9857 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
9858 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
9859 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
9860 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
9861 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
9862 (remove unused second argument).
7e9d3c2f 9863
048addec 98642001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 9865
048addec
JD
9866 * syntax.c (describe_syntax): New wrapper.
9867 (Finternal_describe_syntax_value): Rename from describe_syntax.
9868 Don't insert space at front and \n at the end.
9869 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 9870
048addec
JD
9871 * regex.c (re_wctype): Try to fix some warnings.
9872 (regcomp, regexec): Don't forget the __restrict.
9ba48103 9873
048addec 98742001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 9875
048addec 9876 * textprop.c (Fget_char_property): Doc fix.
9ba48103 9877
048addec 98782001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 9879
048addec 9880 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 9881
048addec 9882 * data.c (Fsetq_default): Ditto.
c22e59e1 9883
048addec 9884 * callint.c (Finteractive): Ditto.
9271ed2c 9885
048addec 98862001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 9887
048addec
JD
9888 * macros.c: Don't include keymap.h any more.
9889
98902001-11-01 Richard M. Stallman <rms@gnu.org>
9891
9892 * data.c (Fmake_local_variable): Doc fix.
9893
9894 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
9895 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 9896
048addec 9897 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
9898 bindings along with or instead of the buffer local map.
9899 Make the overriding maps override what they should.
9900
f00691a3 99012001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
9902
9903 * window.c (grow_mini_window): Fix typo in comment.
9904
27188d11
GM
99052001-11-01 Gerd Moellmann <gerd@gnu.org>
9906
7b49b9d2
GM
9907 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
9908 (XTset_vertical_scroll_bar): Likewise.
9909
43f7c3ea
GM
9910 * xfns.c (x_build_heuristic_mask): Use four_corners_best
9911 instead of IMAGE_BACKGROUND.
c22e59e1 9912
b350c2e5
GM
9913 * xfns.c (four_corners_best): Reindent.
9914
c22e59e1 9915 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
9916 Handle :box so that it is possible to specify sexprs.
9917
bf00d461
EZ
99182001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
9919
9920 * s/hpux11.h: New file.
9921
f00691a3 99222001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 9923
2b209b97
PJ
9924 * emacs.c (USAGE1): Show command line option --no-window-system
9925 instead of --no-windows in usage.
9926 (standard_args): Rename --no-windows to --no-window-system.
9927 (bug_reporting_address): Follow Emacs coding conventions.
9928
9dbc9081
PJ
9929 * eval.c (Fcommandp): Doc fix.
9930 Change doc-string comments to `new style' [w/`doc:' keyword].
9931
4e10df59
PJ
9932 * frame.c (Fframe_live_p): Doc fix.
9933
9934 * buffer.c (selective-display-ellipses): Doc fix.
9935
dd387b25
GM
99362001-10-31 Gerd Moellmann <gerd@gnu.org>
9937
fe957e65
GM
9938 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
9939
dd387b25
GM
9940 * xfaces.c (realize_x_face): If C is not a single-byte character,
9941 set the face's colors_copied_bitwise_p instead of the defaulted_p
9942 members which have a different meaning.
9943 (free_face_colors): Do nothing for a face whose colors have been
9944 copied bitwise.
9945
c22e59e1 9946 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 9947
f00691a3 99482001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 9949
687784e8
PJ
9950 * marker.c, mocklisp.c: Change doc-string comments to `new style'
9951 [w/`doc:' keyword].
2e1280f8 9952
b9d9a9b9
GM
99532001-10-31 Gerd Moellmann <gerd@gnu.org>
9954
9955 * fns.c (require_unwind): Return Lisp_Object.
9956
f00691a3 99572001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 9958
fa1361cb
PJ
9959 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
9960 (last-input-char): Revert doc-string to be the same as the
9961 doc-string of `last-input-event'.
9962
6c465a15 9963 * xdisp.c: Fix typos in comments.
48400103 9964
eafa3196
GM
99652001-10-31 Gerd Moellmann <gerd@gnu.org>
9966
9967 * window.c (grow_mini_window): Handle case that the root
9968 window is already smaller than the nominal mininum height.
9969
747d3f2a
SM
99702001-10-30 Stefan Monnier <monnier@cs.yale.edu>
9971
bf9bb76f
SM
9972 * emacs.c (main): Don't call keys_of_macros any more.
9973
9974 * lisp.h (keys_of_macros): Remove.
9975
9976 * macros.c (keys_of_macros): Remove.
9977
747d3f2a
SM
9978 * xfaces.c (Fface_attribute_relative_p): Declare args.
9979
5e905a57
JR
99802001-10-30 Jason Rumney <jasonr@gnu.org>
9981
9982 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
9983 (enum_font_cb2): Ignore fonts with vertical orientation.
9984
3a426197
RS
99852001-10-30 Richard M. Stallman <rms@gnu.org>
9986
9987 * keyboard.c (Finput_pending_p): Doc fix.
9988
a742d646
GM
99892001-10-30 Gerd Moellmann <gerd@gnu.org>
9990
259cf6bc
GM
9991 * xterm.c (x_after_update_window_line): Don't run the code
9992 clearing in borders for rows whose visible height is 0.
9993
3f99f948
GM
9994 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
9995 resized_p flag is set. If not set, use the much less flickering
9996 method previously used.
9997
9998 * dispnew.c (change_frame_size_1): Set frame's resized_p.
9999
10000 * frame.h (struct frame) <resized_p>: New member.
10001
b4a3be43
GM
10002 * lread.c (to_multibyte): Ensure read_buffer is at least twice
10003 as large as the number of bytes to convert.
747d3f2a 10004
a742d646
GM
10005 * lread.c (to_multibyte): New function.
10006 (read1): Use it.
10007
cacbb9e9
EZ
100082001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
10009
10010 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
10011
99cb6b2f
GM
100122001-10-30 Gerd Moellmann <gerd@gnu.org>
10013
327f42ee 10014 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
10015 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
10016 if the row's fill_line_p is set and drawing the last glyph with
10017 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 10018
99cb6b2f
GM
10019 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
10020
8e8223e2
SM
100212001-10-29 Stefan Monnier <monnier@cs.yale.edu>
10022
10023 * xmenu.c: Include coding.h and charset.h.
10024 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
10025 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
10026 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
10027 Explicitly set wv->help. Use `TRUE' rather than `True'.
10028 (menu_help_callback): Use empty_string.
10029
10030 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
10031 (Fx_popup_dialog): Explicitly init f.
10032 (w32_menu_display_help): Use empty_string.
10033
4d083a8f
RS
100342001-10-29 Richard M. Stallman <rms@gnu.org>
10035
b2304472
RS
10036 * fns.c (Frequire): Detect recursive try to require the same
10037 feature 3 or more levels deep, and get error.
10038 (require_unwind): New subroutine.
10039 (require_nesting_list): New variable.
10040 (syms_of_fns): Init and staticpro it.
10041
4d083a8f
RS
10042 * print.c (print_object): Clarify indication of insertion type.
10043
2fe41216
EZ
100442001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
10045
90480000
EZ
10046 * coding.c (syms_of_coding): Document that locale-coding-system is
10047 used for decoding input on X.
10048
2fe41216
EZ
10049 * window.c (Fscroll_left, Fscroll_right): Doc fix.
10050
f00691a3 100512001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
10052
10053 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
10054 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
10055
60ebcfe8
GM
100562001-10-29 Gerd Moellmann <gerd@gnu.org>
10057
9a7bdceb
GM
10058 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
10059 use NO_CURSOR if cursor_in_non_selected_windows is false.
10060
3f08fcd2
GM
10061 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
10062 the slant attribute if FRAME is t.
10063
0ccfdad2
GM
10064 * xfns.c (x_set_internal_border_width): Set frame garbaged
10065 when X window doesn't exist yet.
10066
ef253080
GM
10067 * xterm.c (x_after_update_window_line): Clear internal border
10068 in different circumstances.
b116830b 10069
60ebcfe8
GM
10070 * xterm.c (XTread_socket) <KeyPress>: Don't use
10071 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
10072 <handa@etl.go.jp>.
10073
73d25f9c
EZ
100742001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
10075
10076 * m/ibms390.h: New file. From Adam Thornton
10077 <athornton@sinenomine.net>.
10078
cac1daf0
GM
100792001-10-28 Gerd Moellmann <gerd@gnu.org>
10080
053b3256 10081 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 10082
cac1daf0
GM
10083 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
10084 a loop counter.
10085
f00691a3 100862001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 10087
186486eb
PJ
10088 * emacs.c: Use argv[0] instead of emacs when -t was specified.
10089
4707d2d0
PJ
10090 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
10091 keyword].
10092 Fix typos in comments.
b116830b 10093
d883731c
PJ
10094 * emacs.c (bug_reporting_address): New function.
10095 Use it when displaying usage message.
10096
04012254
PJ
10097 * minibuf.c (read_minibuf): Remove unused external declaration of
10098 variable `Qread_only'.
10099
13b1a09c
PJ
10100 * keymap.c (access_keymap): Remove unused variable `charset'.
10101
5bbf4378
MB
101022001-10-28 Miles Bader <miles@gnu.org>
10103
10104 * xfaces.c (merge_face_heights): Handle TO being relative as well.
10105 Remove #ifdef'd-out code.
10106 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
10107 (syms_of_xfaces): Initialize them.
10108
1ce1e4ee
JR
101092001-10-27 Jason Rumney <jasonr@gnu.org>
10110
10111 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
10112 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
10113 position using the system caret.
10114
10115 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
10116 (w32_system_caret_height, w32_system_caret_x)
10117 (w32_system_caret_y): New variables for tracking system caret.
10118 (w32_initialize): Initialize them.
c2d53558 10119 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 10120
c2d53558
SM
10121 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
10122 New messages types.
1ce1e4ee
JR
10123
10124 * w32term.c (note_mouse_highlight): Clear old help_echo.
10125
f00691a3 101262001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 10127
bb4600a4
PJ
10128 * xterm.c: Fix typo in a comment.
10129
7db35a48
PJ
10130 * emacs.c: Fix typos in comments.
10131 Remove unnecessary spaces.
10132 Change doc-string comments to `new style' [w/`doc:' keyword].
10133 (USAGE2): Fix typos in usage string.
10134
a7248e4f
PJ
10135 * xterm.c: Fix typo in a comment.
10136
4e30ce42
PJ
10137 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
10138 emacs.c.
10139
62725a92
GM
101402001-10-27 Gerd Moellmann <gerd@gnu.org>
10141
798dbe1f 10142 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 10143 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
10144 farther backward when target_y was not reached.
10145
62725a92
GM
10146 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
10147 Display errno only if non-zero.
10148 (sound_warning): New function.
10149 (vox_configure): Don't treat failing to set sample rate as error.
10150 (various places): Improve error messages.
10151
d4e34d24
EZ
101522001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
10153
944e6f60
EZ
10154 * fileio.c (Faccess_file): Run the argument filename through
10155 Fexpand_file_name, before using it.
10156
d4e34d24
EZ
10157 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
10158 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
10159
38d2af0c
GM
101602001-10-26 Gerd Moellmann <gerd@gnu.org>
10161
da80a8d5
GM
10162 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
10163
38d2af0c
GM
10164 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
10165 Fix clearing in the case of scroll bars on the right.
c2d53558 10166
45de4a6f 101672001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
10168
10169 * w32gui.h (XImage): Add a dummy typedef.
10170
fbd5ceb2
GM
101712001-10-26 Gerd Moellmann <gerd@gnu.org>
10172
c2d53558 10173 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 10174
b23236fb
EZ
101752001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
10176
10177 * frame.c (Fframe_parameter): Fix last change.
10178
5d991fc4
EZ
10179 * fileio.c: Revert last change (which removed old commented-out
10180 version of expand-file-name). Add a comment that explains why
10181 this old version should not be removed.
10182
879eadc3
GM
101832001-10-25 Gerd Moellmann <gerd@gnu.org>
10184
75700ff2
GM
10185 * frame.c (Fframe_parameter): Fix a bug whereby some
10186 ``artificial'' frame parameters, like `minibuffer' were not
10187 obtained by calling Fframe_parameters.
10188
dfe92a6a
GM
10189 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
10190 cursor differently.
10191
879eadc3
GM
10192 * xdisp.c (move_it_vertically_backward): Compute line height
10193 differently. Add heuristic to try to be more compatible to 20.x.
10194
e1010ebe
SM
101952001-10-25 Stefan Monnier <monnier@cs.yale.edu>
10196
d73a471b
SM
10197 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
10198
d6da5a06
GM
10199 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
10200 boolean.
e1010ebe 10201
f66bd220
MB
102022001-10-25 Miles Bader <miles@gnu.org>
10203
10204 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
10205 BG is a pointer to a structure, not a structure.
10206 (gif_format, png_format): Add missing commas.
10207
d436d538
RS
102082001-10-24 Richard M. Stallman <rms@gnu.org>
10209
10210 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 10211 (syms_of_xfaces): Defsubr it.
d436d538 10212
f00691a3 102132001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
10214
10215 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
10216 variable `area'.
10217
f00691a3 102182001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 10219
c2d53558 10220 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 10221
e2a57b34
MB
102222001-10-25 Miles Bader <miles@gnu.org>
10223
10224 * dispextern.h (struct image): Add `background',
10225 `background_valid', and `background_transparent' fields.
10226 (image_background, image_background_transparent): New declarations.
10227 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
10228 * xfns.c (image_background, image_background_transparent)
10229 (four_corners_best): New functions.
c2d53558 10230 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
10231 (gs_format): Add `:background' entry.
10232 (lookup_image): Set IMG's background color if specified.
10233 (pbm_load, xbm_load_image, png_load): Set IMG's background field
10234 when appropriate.
10235 (x_clear_image_1): Reset `background_valid' and
10236 `background_transparent_valid' fields.
10237 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
10238 calculating it here. Set IMG's background_transparent field.
10239 (enum xpm_keyword_index): Add XPM_BACKGROUND.
10240 (enum png_keyword_index): Add PNG_BACKGROUND.
10241 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
10242 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
10243 (enum gif_keyword_index): Add GIF_BACKGROUND.
10244 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 10245 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
10246 Pre-calculate image background color where necessary.
10247 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
10248 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
10249 color to use for image glyph reliefs.
10250
b547b6e8
GM
102512001-10-24 Gerd Moellmann <gerd@gnu.org>
10252
d9e3b8c6
GM
10253 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
10254 in full-width rows.
c2d53558 10255
b547b6e8
GM
10256 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
10257 Fix clearing of area not covered by scroll bar.
10258
f00691a3 102592001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
10260
10261 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
10262 and `real_start'.
c2d53558 10263 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
10264 (glyph_rect): Remove unused variable `area'.
10265
76cb5e06
GM
102662001-10-24 Gerd Moellmann <gerd@gnu.org>
10267
bdbdebff 10268 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
10269
10270 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
10271 (row_containing_pos): Take additional argument DY.
10272 Treat rows ending in middle of char differently.
62e33982
GM
10273 (display_line): Handle tabs on window systems differently.
10274
10275 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
10276 with additional argument.
10277
10278 * dispextern.h (row_containing_pos): Adjust prototype.
10279
76cb5e06
GM
10280 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
10281 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
10282 (try_window_id, try_window_reusing_current_matrix)
10283 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 10284 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 10285
f00691a3 102862001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 10287
c9e60620
PJ
10288 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
10289 gnuemacs).
10290 (HAVE_BOXES): Fix typo in comment.
10291 (push_menu_pane): Fix typo in comment.
10292
3b552d56
PJ
10293 * xdisp.c: (display_prop_string_p): Remove unused local declaration
10294 of `Qwhen'.
10295 (single_display_prop_string_p): Remove unused local declarations
10296 of `Qwhen' and `Qmargin'.
10297 (string_buffer_position): Remove unused variable `around'.
10298 (store_frame_title): Remove unused variable `width'.
10299
15c565ac
PJ
10300 * window.c: Don't define max.
10301 (coordinates_in_window): Remove unused variable `uy'.
10302
a8818eb9
PJ
10303 * widget.c: Don't define max.
10304
996fee11
PJ
10305 * process.c: Don't define max.
10306 (create_process): Remove unused variable `buffer'.
10307
496e1a5b
GM
103082001-10-23 Gerd Moellmann <gerd@gnu.org>
10309
c2d53558 10310 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 10311
5905ae8b
EZ
103122001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
10313
10314 * xfaces.c (Finternal_set_lisp_face_attribute)
10315 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
10316 frame is on a windowed display.
10317
24db49fb
GM
103182001-10-23 Gerd Moellmann <gerd@gnu.org>
10319
c2d53558
SM
10320 * dispnew.c (sync_window_with_frame_matrix_rows):
10321 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
10322 of marginal areas.
10323
c2d53558 10324 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 10325
f0487f05
EZ
103262001-10-23 Andreas Schwab <schwab@suse.de>
10327
10328 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
10329 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
10330
f0a48a01
GM
103312001-10-23 Gerd Moellmann <gerd@gnu.org>
10332
c2d53558 10333 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
10334 REAL_END. Notice if cursor gets overwritten.
10335 (notice_overwritten_cursor): Take X positions as parameters.
10336 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
10337 around call to x_draw_glyphs.
10338
f00691a3 103392001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 10340
fc11dff0
PJ
10341 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
10342 instead of C) and usage.
a50a10a0 10343
fc11dff0
PJ
10344 * editfns.c (char-to-string): Fix argument names (use CHAR instead
10345 of C) and usage.
a50a10a0
PJ
10346
10347 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
10348 `left', `max_width' and `max_height'.
10349
8738febd
GM
103502001-10-23 Gerd Moellmann <gerd@gnu.org>
10351
10352 * xdisp.c (display_line): For a tab continued to the next line,
10353 set row's ends_in_middle_of_char_p.
10354
653c329b
GM
103552001-10-22 Gerd Moellmann <gerd@gnu.org>
10356
10357 * xdisp.c (display_line): Fix computation of continuation lines
10358 width for TABs.
10359
f00691a3 103602001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 10361
7ba51063
PJ
10362 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
10363 `Qlaplace'.
10364
f958c5ac
PJ
10365 * fileio.c: Remove unused code.
10366
eb360291
MB
103672001-10-22 Miles Bader <miles@gnu.org>
10368
10369 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
10370 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
10371 Remove `DOC_STRINGS_IN_COMMENTS' cases.
10372
98515cf0
JR
103732001-10-21 Jason Rumney <jasonr@gnu.org>
10374
10375 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
10376
93026d88
EZ
103772001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
10378
10379 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
10380 (Finsert_string): Avoid the multi-line string literals warning.
10381
c9a95b79
MB
103822001-10-22 Miles Bader <miles@gnu.org>
10383
10384 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
10385 (Fdocumentation): Don't use it.
10386 (syms_of_doc): Don't initialize it.
10387
10388 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
10389 * print.c (Fwith_output_to_temp_buffer): Likewise.
10390 * window.c (Fsave_window_excursion): Likewise.
c2d53558 10391 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 10392 (Fsave_restriction): Likewise.
c2d53558
SM
10393 * eval.c (Frun_hooks, Frun_hook_with_args)
10394 (Frun_hook_with_args_until_failure)
10395 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
10396 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
10397 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
10398 (Funwind_protect, Fcondition_case): Likewise.
10399 * coding.c (Ffind_operation_coding_system): Likewise.
10400 * keyboard.c (Ftrack_mouse): Likewise.
10401
a3b10252
MB
104022001-10-21 Miles Bader <miles@gnu.org>
10403
c2d53558 10404 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
10405 (Fmake_hash_table): Add usage: string to doc string.
10406 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 10407 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
10408 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
10409 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
10410 (Fml_prefix_argument_loop): Likewise.
10411
f00691a3 104122001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 10413
c2d53558 10414 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 10415
c6f73eec
PJ
10416 * sysdep.c (init_sys_modes): Change doc-string comments to `new
10417 style' [w/`doc:' keyword].
10418
10419 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
10420 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
10421 comments to `new style' [w/`doc:' keyword].
10422
3cf3436e
JR
104232001-10-21 Jason Rumney <jasonr@gnu.org>
10424
10425 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
10426
c169b8f1
JR
10427 * w32term.c (remember_mouse_glyph): New function.
10428 (w32_mouse_position): Use it.
10429 (note_mouse_movement): If the mouse moved off the glyph, remember
10430 its new position.
c2d53558 10431
4fdd691b
JR
10432 * w32term.h (struct w32_output): Correct spelling of x_compatible.
10433 (w32_display_info): Add mouse_face_overlay.
10434
c169b8f1
JR
10435 * w32term.c (notice_overwritten_cursor): Renamed from
10436 note_overwritten_text_cursor. Rewritten to take glyph widths into
10437 account.
10438 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
10439 (fast_find_string_pos): New function.
10440 (fast_find_position): Return the correct vpos. Add parameter
10441 STOP. In the final row, stop before glyphs having STOP as object.
10442 Don't consider glyphs that are not from a buffer.
10443 (fast_find_position) [0]: Add a presumably more correct version
10444 for after 21.1.
10445 (expose_window_tree, expose_frame): Don't compute intersections here.
10446 (expose_window): Do it here instead.
10447 (expose_window_tree, expose_window, expose_line): Return 1 when
10448 overwriting mouse-face.
10449 (expose_window): If W is the window currently being updated, mark
10450 the frame garbaged.
10451 (expose_frame): If mouse-face was overwritten, redo it.
10452 (x_use_underline_position_properties): New variable.
10453 (syms_of_xterm): DEFVAR_BOOL it.
10454 (x_draw_glyph_string): Add comment to use it in future.
10455 (x_draw_glyph_string): Restore clipping after drawing box.
10456 Fix a computation of the underline position.
10457 (w32_get_glyph_string_clip_rect): Minor cleanup.
10458 (x_fill_stretch_glyph_string): Remove an assertion.
10459 (x_produce_glyphs): Don't convert multibyte characters
10460 to unibyte characters in unibyte buffers.
10461 (cursor_in_mouse_face_p): New function.
10462 (x_draw_stretch_glyph_string): Use it to choose a different GC
10463 when drawing a cursor within highlighted text. Don't draw
10464 background again if it has already been drawn.
10465 (x_draw_glyph_string_box): Don't draw a full-width
10466 box just because the glyph row's full_width_p flag is set.
10467 (x_draw_glyphs): Fix computation of rightmost x for
10468 full-width rows.
10469 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
10470 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
10471 change bottom shadow accordingly. Some cleanup.
10472 (x_update_window_end): Handle overwritten mouse face
10473 also for tool bar windows.
10474 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
10475 DRAW is DRAW_IMAGE_RAISED.
10476 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
10477 actually redrawn. Make the function static.
10478 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
10479 optimize away highlighting if we pass over that same overlay again.
10480 (note_mouse_highlight): Call mouse_face_overlay_overlaps
10481 to detect a case where we have to highlight a different region
10482 despite not having left the currently highlighted region.
10483 Set mouse_face_overlay in the x_display_info. Avoid changing the
10484 mouse pointer shape when show_mouse_face has already done it, or
10485 there is no need. Handle mouse-face and help-echo in strings.
10486 (glyph_rect): New function.
10487 (w32_mouse_position): Use it to raise the threshold for mouse
10488 movement event generation.
10489 (w32_initialize_display_info): Initialize the x_display_info's
10490 mouse_face_overlay.
10491 (w32_set_vertical_scroll_bar): Don't clear a zero height
10492 or width area.
10493 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
10494 a widget to zero height.
10495
3cf3436e 10496 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 10497 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
10498 equivalents in menu_items.
10499 (w32_menu_show): Don't overwrite an item's name with its key
10500 description in case the description is a multibyte string.
10501 (single_submenu): Some cleanup.
10502
10503 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
10504 (postprocess_image): New function.
10505 (lookup_image): Call it for all image types except PostScript.
10506 (x_kill_gs_process): Call postprocess_image.
10507 (tiff_error_handler, tiff_warning_handler): New functions.
10508 (tiff_load): Install them as handlers.
10509 (x_kill_gs_process): Recognize if someone has cleared the image
10510 cache under us.
10511 (valid_image_p): Protect better against invalid image
10512 specifications. Previous code could signal an error.
10513 (Fx_hide_tip, Fshow_tip): Doc fix.
10514 (Fv_max_tooltip_size): New variable.
10515 (syns_of_xfns): DEFVAR_LISP it.
10516 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
10517 window buffer to *tip* right after creating the frame. Set frame's
10518 window_width. Use a maximum tooltip size specified by
10519 Vx_max_tooltip_size, if that has valid contents.
10520 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
10521 Make sure the tooltip is completely visible.
10522 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
10523 (Fx_create_frame): Adjust the frame's height for presence
10524 of the tool bar before calling x_figure_window_size.
10525 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
10526 when the window gets smaller.
10527 (x_set_foreground_color): Set frame's cursor_pixel.
10528 (x_set_foreground_color, x_set_background_color): Cleaned up.
10529 (x_set_font): Handle case of x_new_fontset returning the same name
10530 as before, although there was a change in fontsets.
10531
386ca361
MB
105322001-10-21 Miles Bader <miles@gnu.org>
10533
c2d53558 10534 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
10535 (Flogxor): Add usage: string to doc string.
10536 * charset.c (Fstring): Likewise.
10537 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
10538 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
10539
f00691a3 105402001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 10541
03be2694
PJ
10542 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
10543
10544 * alloc.c: Reindent DEFUNs with doc: keywords.
10545
10546 * abbrev.c (Finsert_abbrev_table_description): Reindent.
10547
14ff1ee0
PJ
10548 * frame.c: Change doc-string comments to `new style' [w/`doc:'
10549 keyword].
10550
2f147815 10551See ChangeLog.9 for earlier changes.
6922b018
KH
10552
10553;; Local Variables:
49b3bd82 10554;; coding: iso-2022-7bit
6922b018 10555;; End:
2a34a036 10556
2f147815 10557 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
10558 Copying and distribution of this file, with or without modification,
10559 are permitted provided the copyright notice and this notice are preserved.