(__WIN32__) [HAVE_NTGUI]: Define for correct behaviour of JPEG library.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
66354420
JR
12004-12-23 Jason Rumney <jasonr@gnu.org>
2
3 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
4 of JPEG library.
5
55f4edbc
RS
62004-12-22 Richard M. Stallman <rms@gnu.org>
7
8 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
9
10 * lisp.h (Vundo_outer_limit): Fix decl.
11
12 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
13 Uses changed.
14 (syms_of_undo): Initialize appropriately.
15 (truncate_undo_list): If it's nil, there's no limit.
16
7a0ea9e3
KH
172004-12-22 Kenichi Handa <handa@m17n.org>
18
19 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
20
fda2922a
RS
212004-12-21 Richard M. Stallman <rms@gnu.org>
22
23 * eval.c (unwind_to_catch): Clear immediate_quit.
24
25 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
26 specially as `\ ' and `\-'.
27
28 * keyboard.c (kbd_buffer_store_event_hold):
29 In the code for while-no-input, handle immediate_quit.
30
31 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
32 Call that at the very start.
33 (undo_limit, undo_strong_limit, undo_outer_limit): Moved to undo.c.
34 (syms_of_alloc): Don't define undo-limit,
35 undo-strong-limit and undo-outer-limit here.
36
37 * undo.c (truncate_undo_list): Return void.
38 Take just one argument, the buffer.
39 Make it current, and inhibit recursive GC.
40 Access and update the undo list directly; return void.
41 Refer to the undo...limit variables directly.
42 Test undo_outer_limit only after counting the whole current command.
43 When it's exceeded, call the function in undo-outer-limit-function.
44 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
45 (Vundo_outer_limit_function): New variable.
46 (syms_of_undo): Define undo-limit, undo-strong-limit
47 and undo-outer-limit here, and undo-outer-limit-function.
48 Doc fixes.
49
50 * lisp.h (truncate_undo_list): Update decl.
51
522004-12-21 Piet van Oostrum <piet@cs.uu.nl>
53
54 * fileio.c (Fread_file_name): Delete duplicates in
55 file-name-history when history_delete_duplicates is true.
56
68c69027
ST
572004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
58
59 * macterm.c (mac_do_list_fonts): Fix memory leak
60
134579f2
RS
612004-12-20 Richard M. Stallman <rms@gnu.org>
62
63 * regex.c (re_match_2_internal) <symend, wordend>:
64 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
65
fbe6152f
ST
662004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
67
68 * macterm.c (endif, x_font_name_to_mac_font_name): Use
69 maccentraleurroman instead of maccentraleuropean
70 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
71 quickly finding a specific font without needing regexps.
72
fecad3f6
JD
732004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
74
333f1b6f
JD
75 * syssignal.h: Declare main_thread.
76 (SIGNAL_THREAD_CHECK): New macro.
77
78 * keyboard.c (input_available_signal): Move thread checking code
79 to macro SIGNAL_THREAD_CHECK and call that macro.
80 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
81
82 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
83
84 * emacs.c: Define main_thread.
85 (main): Initialize main_thread.
86 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
87 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
88
89 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
90
91 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
92
93 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
94
95 * process.c (send_process_trap, sigchld_handler): Call
96 SIGNAL_THREAD_CHECK.
97
98 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
99
100 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
101
fecad3f6
JD
102 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
103 returning when xg_ignore_gtk_scrollbar is true.
104
2a84c6da
KS
1052004-12-14 Kim F. Storm <storm@cua.dk>
106
107 * keyboard.c (read_char): Save and restore echo_string when
108 handling input method.
109
d9c1ce9d
RS
1102004-12-13 Richard M. Stallman <rms@gnu.org>
111
112 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
113
114 * keyboard.c (Vthrow_on_input): New variable.
115 (syms_of_keyboard): Defvar and initialize it.
116 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
117
118 * lisp.h (QUIT): Check for Vthrow_on_input.
119 (Vthrow_on_input): Declare it.
120
a6495ed5
KS
1212004-12-13 Kim F. Storm <storm@cua.dk>
122
123 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
124 vector.
125
24a0e22f
RS
1262004-12-12 Richard M. Stallman <rms@gnu.org>
127
128 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
129
130 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
131 (Ftry_completion): Really use outer `zero'; eliminate inner one.
132
d6d31e57
KH
1332004-12-12 Kenichi Handa <handa@m17n.org>
134
135 * term.c (encode_terminal_code): Fix previous change.
136
6f8ffb88
SM
1372004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
138
fb6f5cbf
SM
139 * keyboard.c (handle_async_input): Remove pthread mutex handling.
140 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
141
6f8ffb88
SM
142 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
143 in macro arguments.
144
145 * minibuf.c (Ftry_completion, Fall_completions): Don't use
146 XFASTINT blindly.
147
148 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
149
c83c9f9d
JD
1502004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
151
2f25767f
JD
152 * w32term.c (x_calc_absolute_position): Remove calculation of
153 difference between inner and outer window. Don't subtract difference
154 for left and top calculations.
155
c83c9f9d
JD
156 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
157 for left and top calculations. Remove call to x_real_positions.
24a0e22f 158 [Bug report by Drew Adams in November]
c83c9f9d
JD
159 (x_check_expected_move): Do not set change_gravity to 1 when calling
160 x_set_offset.
161
cc1caa4e
RS
1622004-12-08 Richard M. Stallman <rms@gnu.org>
163
164 * xdisp.c (get_next_display_element): Use `escape-glyph' for
165 control chars and escaped octal codes.
166 (Qescape_glyph): New variable.
167 (syms_of_xdisp): Initialize it.
168 (escape_glyph_face): New variable.
169 (redisplay_window): Initialize it.
170
e0e30823
RS
1712004-12-07 Paul Eggert <eggert@cs.ucla.edu>
172
173 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
174 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
175
f415cacd
JD
1762004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
177
cf435f39
JD
178 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
179 reset_malloc_hooks.
180
6f8ffb88
SM
181 * keyboard.c (handle_async_input, input_available_signal):
182 Add ! defined (SYSTEM_MALLOC) around thread code.
cf435f39 183
f415cacd
JD
184 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
185
19b1f29a
SM
1862004-12-07 Stefan <monnier@iro.umontreal.ca>
187
188 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
189
190 * config.in: Regenerate.
191
ded997c1
JD
1922004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
193
453a4f1b
JD
194 * xmenu.c (Fx_popup_menu): Correct documentation about position.
195 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
196 if not given by a mouse click to correspond with x-popup-menu
197 documentation.
198
9a38524c
JD
199 * config.in: Regenerate.
200
aa477689
JD
201 * gtkutil.c: Include signal.h and syssignal.h.
202 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
203
204 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
205 new variables main_thread and alloc_mutex,
206 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
207 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
208 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
209 (UN)BLOCK_INPUT.
210 (emacs_blocked_free, emacs_blocked_malloc)
211 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
212 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
213 (reset_malloc_hooks): New function.
214
215 * lisp.h: Declare reset_malloc_hooks.
216
217 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
218
219 * keyboard.c: Conditionally include pthread.h
6f8ffb88 220 (handle_async_input, input_available_signalt): If not in the main
aa477689
JD
221 thread, block signal, send signal to main thread and return.
222
ded997c1 223 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
6f8ffb88 224 Set current folder in file chooser if default_filename is a directory.
ded997c1 225
c72b0edd
SM
2262004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
227
228 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
229 Remove redundant correctness checks.
230 (regex_compile): Fix up error codes for \{..\} expressions.
231
c721eee5
RS
2322004-12-05 Richard M. Stallman <rms@gnu.org>
233
234 * regex.c (regex_compile): Fix end-of-pattern case for space.
235
d8f96db8
ST
2362004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
237
6108209e
KS
238 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
239 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
d8f96db8 240 crashes with invalid characters.
6108209e
KS
241 * macmenu.c (add_menu_item): Use it.
242 * image.c (image_load_quartz2d): Likewise.
243 * macfns.c (x_set_name, x_set_title): Likewise.
244 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
245 creating them each time for labels.
d8f96db8 246
ab67e8b6
RS
2472004-12-02 Richard M. Stallman <rms@gnu.org>
248
249 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
250 don't use it here.
251
252 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
253 (interactive_p): Skip Scalled_interactively_p frames
254 like Sinteractive_p frames.
b8217ea6 255 (unwind_to_catch): Clear handling_signal.
ab67e8b6
RS
256
257 * data.c (Fmake_variable_buffer_local): Doc fix.
258 (Fmake_local_variable): Doc fix.
259
260 * insdel.c (insert_from_string_before_markers)
261 (insert_from_string): Don't modify buffer on empty insertion.
262
263 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
264
f86bdc80
ST
2652004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
266
267 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
268 menu text as UTF8 fails.
269
1cae6d39
KS
2702004-12-01 Kim F. Storm <storm@cua.dk>
271
272 * alloc.c: Add commentary for last change.
273 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
274 sizeof(size_t) != 4.
275 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
276 Use them. Also clear header and trailer of freed memory.
277 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
278 (string_overrun_cookie): Rename from string_overrun_pattern.
279 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
280
77ea0764
AS
2812004-12-01 Andreas Schwab <schwab@suse.de>
282
283 * lisp.h: Declare string_to_multibyte.
284
2d5cd4e6
KH
2852004-12-01 Kenichi Handa <handa@m17n.org>
286
287 * w32console.c (w32con_write_glyphs): Decide coding here.
288 Adjusted for the change of encode_terminal_code.
289
290 * term.c (encode_terminal_code): Don't make it "static".
291
25a0994a
KH
2922004-11-30 Kenichi Handa <handa@m17n.org>
293
19b1f29a 294 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
25a0994a 295 (encode_terminal_code): Argument changed. Encode all
19b1f29a
SM
296 characters at once, and return a pointer to the result of encoding.
297 (write_glyphs): Decide coding here. Adjusted for the above change.
25a0994a
KH
298 (insert_glyphs): Likewise.
299 (term_init): Initialize encode_terminal_bufsize to 0.
300
301 * coding.c (Vcode_conversion_workbuf_name): New variable.
302 (syms_of_coding): Initialize and staticpro it.
303 (set_conversion_work_buffer): New function.
304 (run_pre_post_conversion_on_str): Use it.
305 (run_pre_write_conversin_on_c_str): New function.
306
307 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
308
fc7a70cc
ST
3092004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
310
311 * keyboard.c: Don't undef SIGIO
312 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
313 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
314 (macfns.o): Don't depend on ccl.h.
315 * macfns.c (mac_frame_parm_handlers): Set handlers for
316 Qleft_fringe and Qright_fringe.
317 * macterm.c (mac_fill_rectangle_to_pixmap)
318 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
319 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
320 Put in #if 0.
321 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
322 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
323 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
324 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
325 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
326 XDrawImageString. Always draw background and foreground separately.
327 (x_draw_image_foreground): Use clipping instead of computing the
328 intersection rectangle.
329 (x_draw_image_glyph_string): Don't draw an image with mask to a
330 pixmap.
331 (x_redisplay_interface): Set flush_display_optional member to 0.
332 (XTread_socket): Correctly reset the TEConverter
333 object.
334
fc368889
KS
3352004-11-30 Kim F. Storm <storm@cua.dk>
336
337 * lisp.h: New defines to enable buffer overrun checking.
338 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
339 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
340
341 * alloc.c: Add more checks for buffer overruns.
342 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
343 xmalloc_overrun_check_trailer, overrun_check_malloc)
344 overrun_check_realloc, overrun_check_free): Add.
345 (GC_STRING_EXTRA, string_overrun_pattern): Add.
346 (check_sblock, allocate_string_data, compact_small_strings):
347 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
348 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
349 (check_string_free_list): Add.
350 (allocate_string, sweep_strings): Call check_string_free_list.
351
352 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
353 XMALLOC_OVERRUN_CHECK to avoid crash during load.
354
0af8cfe1
KS
3552004-11-29 Kim F. Storm <storm@cua.dk>
356
357 * fns.c (concat): Use SAFE_ALLOCA.
358
77220eeb
SM
3592004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
360
361 * sysdep.c (emacs_write): Don't use QUIT.
362
a778cf63
KH
3632004-11-29 Kenichi Handa <handa@m17n.org>
364
365 * buffer.c (init_buffer): Set current_buffer->directory to a
366 multibyte string made by string_to_multibyte.
367
77220eeb 368 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
a778cf63 369
e3177e43
AS
3702004-11-27 Andreas Schwab <schwab@suse.de>
371
372 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
373
374 * s/gnu-linux.h: Enable no-op gcpros on ia64.
375 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
376
77220eeb
SM
377 * filelock.c (lock_file_1): Call get_boot_time early.
378 Increase buffer size.
e3177e43 379
ca5e6fef
EZ
3802004-11-27 Eli Zaretskii <eliz@gnu.org>
381
382 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
383 is not defined.
384
e2811828
KS
3852004-11-27 Kim F. Storm <storm@cua.dk>
386
387 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
388 marker out of doc string.
389
7a262394
SM
3902004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
391
392 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
393 which was not mentioned in the log.
394
f33cc5a9
KS
3952004-11-26 Kim F. Storm <storm@cua.dk>
396
048bb03f
KS
397 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
398 angle bitmaps at top/bottom line.
399
f33cc5a9
KS
400 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
401 set it when it->method is set to next_element_from_display_vector.
402 (setup_for_ellipsis): Add LEN argument. Callers changed.
403 Set it->saved_face_id.
404 (get_next_display_element): Use loop instead of recursion.
405 Set it->saved_face_id. Combine duplicate code for ctr chars.
406 (next_element_from_display_vector): Do not set it->saved_face_id.
407 (next_element_from_ellipsis): Use setup_for_ellipsis.
408
670e8906
EZ
4092004-11-26 Eli Zaretskii <eliz@gnu.org>
410
411 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
412 prevent compiler warnings.
413
275464e7
SM
4142004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
415
1bf0e604
SM
416 * keyboard.c (command_loop_1): Print a message describing the key
417 the user just pressed when this key has no binding.
418
275464e7
SM
419 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
420 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
421
422 * lread.c (readchar): Check QUIT when `getc' is interrupted.
423
261b01c6
RS
4242004-11-24 Richard M. Stallman <rms@gnu.org>
425
426 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
427
428 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
429
a5bd504e
KS
4302004-11-24 Kim F. Storm <storm@cua.dk>
431
432 * xdisp.c (move_it_in_display_line_to, display_line):
433 Restore saved_face_id also when truncate-lines or hscrolled.
434
255e4140
JD
4352004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
436
437 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
438 x-use-old-gtk-file-dialog.
439
440 * xfns.c: Define x_use_old_gtk_file_dialog.
441 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
442 outside ifdef USE_GTK.
443
cab27d04
SM
4442004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
445
446 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
447 Don't use XFASTINT blindly.
448
449 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
450
451 * indent.c (skip_invisible): Avoid non-idempotent side-effects
452 in macro arguments.
453
454 * keymap.c (Flookup_key): Check INTEGERP before XINT.
455
456 * lread.c (oblookup): Don't use XFASTINT blindly.
457
458 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
459 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
460
11e0be49
KS
4612004-11-23 Kim F. Storm <storm@cua.dk>
462
4d721114
KS
463 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
464 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
465
11e0be49
KS
466 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
467 signal_p is zero and face name is unknown.
468 (Fx_list_fonts): Don't signal error in lookup_named_face.
469 (Fface_font): Signal error in lookup_named_face.
470 (ascii_face_of_lisp_face): Likewise.
471
472 * dispextern.h (lookup_named_face): Fix prototype.
473
474 * xdisp.c (handle_single_display_prop): Don't signal error in
475 lookup_named_face for unknown fringe face name.
476 (highlight_trailing_whitespace): Don't signal error in
477 lookup_named_face if trailing-whitespace face unknown.
478 (calc_line_height_property): Don't signal error in
479 lookup_named_face if specified face name is unknown.
480
481 * fringe.c (update_window_fringes): Show top row indicator if
482 window has header-line. Don't show arrow at bob and eob
483 if the boundary indicators are not used.
484 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
485
486 * window.c (set_window_buffer): Clear display_error_modiff.
487
0960a582
KS
4882004-11-22 Kim F. Storm <storm@cua.dk>
489
490 * fringe.c (update_window_fringes): Provide sensible fall-back
491 value for non-nil indicate-buffer-boundaries setting.
492
b0e9bb28
MR
4932004-11-22 Markus Rost <rost@ias.edu>
494
495 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
496
d0bce91e
SM
4972004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
498
499 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
500
e1814672
KS
5012004-11-21 Kim F. Storm <storm@cua.dk>
502
b7fd3518
KS
503 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
504
505 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
506 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
507
508 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
509 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
510
511 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
512 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
513
d0bce91e
SM
514 * xdisp.c (move_it_in_display_line_to, display_line):
515 Restore saved_face_id if overflow-newline-into-fringe is enabled and
516 line is continued before or in middle of element from display vector.
f01d4d05 517
f1a61389
KS
518 * indent.c (Fvertical_motion): Fix last change. Use another
519 method to detect if iterator moved too far ahead after reseat.
520
e1814672
KS
521 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
522 expand matrix width for overflow in zero-width area.
523 (append_glyph, append_composite_glyph, produce_image_glyph)
524 (append_stretch_glyph): Use it to avoid loop in redisplay.
525 (note_mode_line_or_margin_highlight): Don't let help-echo from
526 string override help-echo from image map.
527
2dafe1c9
LT
5282004-11-20 Luc Teirlinck <teirllm@auburn.edu>
529
d0bce91e 530 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
2dafe1c9
LT
531 * callint.c (Fcall_interactively): Ditto.
532
fd6866c8 5332004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
9961365e
RS
534
535 * minibuf.c (Fminibuffer_complete_and_exit):
536 Fixup the case of the completed value, for case-indep completion.
537
dedbac89
RS
5382004-11-20 Richard M. Stallman <rms@gnu.org>
539
fd6866c8
RS
540 * lisp.h (Fread_from_minibuffer): Add arg in decl.
541
9d00469f 542 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
ce8dd7ca 543 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
9d00469f 544
dedbac89 545 * search.c (Vsearch_spaces_regexp):
d0bce91e 546 Rename from Vsearch_whitespace_regexp. All uses changed.
dedbac89 547
2f672bb5
TTN
5482004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
549
550 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
551
f31a9a68
RS
5522004-11-19 Richard M. Stallman <rms@gnu.org>
553
554 * search.c (Vsearch_whitespace_regexp): New variable.
555 (syms_of_search): Defvar it.
556 (compile_pattern_1): Call re_set_whitespace_regexp with it.
557 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
558 is non-nil.
6de891db
RS
559 (struct regexp_cache): New element whitespace_regexp.
560 (syms_of_search): Initialize whitespace_regexp elements.
561 (compile_pattern): Compare whitespace_regexp elements.
562 (compile_pattern_1): Set whitespace_regexp elements.
f31a9a68
RS
563
564 * regex.c (regex_compile): Substitute whitespace_regexp
565 for spaces, if it is nonzero.
566 (whitespace_regexp): New variable.
567 (re_set_whitespace_regexp): New function.
568
cbc34cb3
KS
5692004-11-19 Kim F. Storm <storm@cua.dk>
570
571 * indent.c (Fvertical_motion): Fix last change.
572
b54a7539
KS
5732004-11-18 Kim F. Storm <storm@cua.dk>
574
575 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
576 Instead, move back again if reseating moves too far ahead.
577
5782004-11-17 Luc Teirlinck <teirllm@auburn.edu>
802c6e56
LT
579
580 * xdisp.c (message3): Call clear_message.
581
5ff504fe
KS
5822004-11-17 Kim F. Storm <storm@cua.dk>
583
584 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
585
5ae53dcf
JD
5862004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
587
d0bce91e 588 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
724cde0d 589
6abf3a27 590 * xmenu.c (x_menu_in_use): Remove.
5ae53dcf
JD
591 (x_menu_set_in_use): Also set popup_activated_flag.
592
5ff504fe 593 * xfns.c (Fx_file_dialog): Call popup_activated instead of
5ae53dcf
JD
594 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
595
6abf3a27 596 * xterm.h: (x_menu_in_use): Remove.
5ae53dcf 597
ee31cd78
RS
5982004-11-16 Richard M. Stallman <rms@gnu.org>
599
6abf3a27
SM
600 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
601 Use map-keymap-internal to implement that.
ee31cd78
RS
602
603 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
604
6abf3a27
SM
6052004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
606
607 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
608 a window before using XWINDOW.
609
610 * window.c (make_window, Fselect_window, make_dummy_parent)
611 (save_window_save):
612 * frame.c (make_frame):
613 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
614
615 * lisp.h (NILP): Use EQ rather than XFASTINT.
616
b4d61105
KS
6172004-11-16 Kim F. Storm <storm@cua.dk>
618
6abf3a27 619 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
dda01a4c 620
b4d61105
KS
621 * indent.c (Fvertical_motion): Fix last change. Only reseat when
622 moving backwards.
623
6242004-11-16 Luc Teirlinck <teirllm@auburn.edu>
ce2bbf6a
LT
625
626 * dispextern.h: Extern reseat_at_previous_visible_line_start.
627
ab5b02b0
KH
6282004-11-16 Kenichi Handa <handa@m17n.org>
629
630 * xdisp.c (display_mode_element): Fix previous change (calculate
631 end position of substring to display correctly).
632
c482cf97
KS
6332004-11-16 Kim F. Storm <storm@cua.dk>
634
635 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
636 Reported by Andrew M. Scott.
637
9f89426b
KS
6382004-11-15 Kim F. Storm <storm@cua.dk>
639
640 * fns.c (Fsafe_plist_get): New defun.
641 (syms_of_fns): Defsubr it.
642
643 * lisp.h (Fsafe_plist_get): Add EXFUN.
644
645 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
646 Use Fsafe_plist_get.
647 (note_mode_line_or_margin_highlight, note_mouse_highlight):
648 Fix image map element parsing. Use Fsafe_plist_get.
649
27418463
RS
6502004-11-15 Richard M. Stallman <rms@gnu.org>
651
652 * xdisp.c (get_next_display_element): Fix previous change.
653
a130b901
JD
6542004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
655
ef614e04
JD
656 * window.c (shrink_windows): Handle special case of one window left
657 when trying to shrink the final reminder. Grow windows if
658 total_removed is less than total_shrink.
659
a130b901
JD
660 * xmenu.c (pop_down_menu): Remove global variable current_menu,
661 extract pointer from arg with XSAVE_VALUE.
46303896
KS
662 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
663 Construct arg to record_unwind_protect with make_save_value.
a130b901 664
d9a03ad2
RS
6652004-11-13 Richard M. Stallman <rms@gnu.org>
666
667 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
668 (get_next_display_element): Fix previous change to apply only to \n.
669
670 * indent.c (Fvertical_motion): Scan to PT from start of line to
671 make iterator consistent.
672
673 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
674
b3935289
JD
6752004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
676
677 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
678
679 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
680 Record unwind with clean_up_file_dialog.
681
78819ebb
KS
682 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
683 Declare.
b3935289
JD
684
685 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
686
af89e871
JD
6872004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
688
457a8155 689 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
6abf3a27 690 (xg_file_sel_destroy): Remove.
46303896
KS
691 (xg_file_response_cb, pop_down_file_dialog)
692 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
457a8155 693 New functions.
6abf3a27
SM
694 (xg_get_file_with_chooser, xg_get_file_with_selection):
695 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
457a8155
JD
696 Move common code to xg_get_file_name. Return widget created.
697 (xg_get_file_name): Set name, transient for, modal and destroy
698 with parent here. Connect response signal to xg_file_response_cb,
699 connect delete-event to gtk_true. Record pop_down_file_dialog
700 for unwind. Do event loop and call x_menu_wait_for_event in loop.
701 (xg_create_widget): Make dialogs modal.
702
af89e871
JD
703 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
704 Lisp_Object.
705 (popup_get_selection): Move unwind protect ...
706 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
707 Move destroy of widget to pop_down_menu.
708 (popup_widget_loop): Move unwind protect ...
709 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
710 Move destroy of widget to pop_down_menu.
711 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
6abf3a27 712 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
af89e871
JD
713 x_mouse_leave and grabbed = 0 to pop_down_menu.
714
5596fbf1
KS
7152004-11-13 Kim F. Storm <storm@cua.dk>
716
717 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
718 (syms_of_xdisp): DEFVAR_BOOL it.
719 (make_cursor_line_fully_visible, try_cursor_movement)
720 (try_window_id): Use it.
721
b9de078a
KS
7222004-11-12 Kim F. Storm <storm@cua.dk>
723
381f7091
KS
724 * dispextern.h (struct glyph_row): New member extra_line_spacing.
725 (struct it): New member max_extra_line_spacing.
726 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
727 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
728 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
729 part of last line is only extra line spacing (so the text on the
730 line is fully visible). Use helper macros.
731 Add W arg (to use them). All callers changed.
732 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
733 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
734
6abf3a27
SM
735 * window.c (window_scroll_pixel_based, Frecenter):
736 Use move_it_vertically_backward directly.
381f7091
KS
737 (Frecenter): Fix calculation of new start pos for negative arg.
738 Before, the new start pos was sometimes chosen too far back, so
739 the last line became only partially visible, and thus would be
740 either only semi-visible or automatically scrolled to the middle
741 of the window by redisplay.
742
743 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
744 (move_it_vertically_backward): Don't recure to move further back.
745 (move_it_vertically): Remove superfluous condition.
746 (move_it_by_lines): Clear last_height when moved 0 lines.
6abf3a27 747 (resize_mini_window): Use it.max_extra_line_spacing.
381f7091
KS
748 (display_tool_bar_line): Clear row->extra_line_spacing.
749 (try_scrolling): Use move_it_vertically_backward directly.
750 (redisplay_window): Likewise.
751 (compute_line_metrics): Set row->extra_line_spacing.
752 (display_line, display_string): Likewise.
753 (x_produce_glyphs): Update it->max_extra_line_spacing.
754
b9de078a
KS
755 * xmenu.c (pop_down_menu): Return nil.
756
c3438661
JD
7572004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
758
759 * xmenu.c (x_menu_wait_for_event): New function.
760 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
761 to handle timers.
df00f436
JD
762 (popup_widget_loop): Add argument do_timers.
763 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
764 do_timers to popup_widget_loop.
c3438661
JD
765 (xmenu_show): Call XMenuActivateSetWaitFunction so that
766 x_menu_wait_for_event is called by XMenuActivate.
b9de078a 767 (create_and_show_popup_menu): Pass 1 for do_timers to
df00f436 768 popup_get_selection.
f1d1cd24
JD
769 (pop_down_menu): New function.
770 (popup_get_selection, popup_widget_loop): Unwind protect to
771 pop_down_menu.
772 (popup_widget_loop): Add argument widget.
773 (create_and_show_popup_menu, create_and_show_dialog): Pass new
774 argument widget to popup_widget_loop.
c3438661 775
32e2fb04
SM
7762004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
777
778 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
779
0faf6806
KS
7802004-11-09 Kim F. Storm <storm@cua.dk>
781
782 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
783 Fix various comments referring to XEvents instead of input events.
784 (x_queue_event): Fix format strings.
785 (x_stop_queuing_selection_requests): Likewise.
786
787 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
788 (pint2hrstr): Add extra braces to silence compiler.
789
790 * print.c (print_object): Fix format string.
791
792 * lread.c (read1): Fix next_char matching.
793
794 * lisp.h (Fdelete): Add EXFUN.
795 (replace_range_2): Add prototype.
796
797 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
798
799 * intervals.h (NULL_INTERVAL_P): Add separate version when
800 ENABLE_CHECKING is not defined to silence compiler.
801 (compare_string_intervals): Add prototype.
802
803 * fringe.c (destroy_fringe_bitmap): Fix return type.
804 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
805
806 * emacs.c (Fdump_emacs): Fix format string.
807
808 * doc.c: Include <ctype.h>.
809 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
810
811 * data.c (store_symval_forwarding): Remove unused variables.
812
813 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
814
16bf4e32
JD
8152004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
816
817 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
818 to ${OLDXMENU}.
819
cdb805a9
KS
8202004-11-09 Kim F. Storm <storm@cua.dk>
821
822 * process.c (Fmake_network_process): Remove kludge for interrupted
823 connects on BSD. If connect is interrupted, just close socket and
824 start over rather than sleeping and retry with same socket.
825
d87a9ab8 8262004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
0faf6806 827
a8b16c80
JD
828 * .cvsignore: Add buildobj.lst.
829
d87a9ab8
JD
830 * doc.c: New variable Vbuild_files.
831 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
832 file names from buildobh.lst. Only attach docstrings from files
833 that are in Vbuild_files.
834 (syms_of_doc): Defvar Vbuild_files.
835
836 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
837 and w32*.o.
838 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
6abf3a27 839 (mostlyclean): Rm buildobj.lst
d87a9ab8
JD
840
841 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
842 is linked.
843
b6709e77
KS
8442004-11-09 Kim F. Storm <storm@cua.dk>
845
846 * fringe.c (update_window_fringes): Update fringe bitmaps if
847 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
848 also update previous row to get rid of misc. artifacts.
849
bae9677d
KS
8502004-11-08 Kim F. Storm <storm@cua.dk>
851
852 * xdisp.c (fast_find_position): Fix start pos if header line present.
b7127aa8 853 (note_mouse_highlight): Clear mouse face if we move out of text area.
bae9677d 854
3f8ea68c
EZ
8552004-11-08 Eli Zaretskii <eliz@gnu.org>
856
857 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
858 Don't include <sys/time.h> explicitly.
859 Include <stdio.h> unconditionally, not just on MacOS.
860
a653f812
KH
8612004-11-08 Kenichi Handa <handa@m17n.org>
862
863 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
864 don't pay attention to '\' before '*'.
865 (fontset_pattern_regexp): Change the meaning of the second arg.
866 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
867 (check_fontset_name): Try NAME as literal at first, and if it
868 failes, try NAME as pattern.
869
c37caf9d
JD
8702004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
871
872 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
873
b72915a7
AS
8742004-11-07 Andreas Schwab <schwab@suse.de>
875
78819ebb
KS
876 * lisp.h (Fmsdos_downcase_filename): Declare.
877 * dired.c (Fmsdos_downcase_filename): Don't declare here.
b72915a7
AS
878 * fileio.c: Likewise.
879
238a44a8
JD
8802004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
881
882 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
883 comparisons with integers instead of Lisp_Object address.
884 (Fmsdos_set_keyboard): Declare argument allkeys.
885
886 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
887
78819ebb 888 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
238a44a8
JD
889 int/Lisp_Object mixup.
890
891 * fileio.c: Ditto.
892
31141c13
ST
8932004-11-06 Steven Tamm <steventamm@mac.com>
894
895 * editfns.c: Need to include sys/time.h before resource.h on darwin.
896
f28c1bd9
RS
8972004-11-06 Richard M. Stallman <rms@gnu.org>
898
899 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
900
901 * xfaces.c (merge_named_face): GCPRO the face_name in the
902 named_merge_point struct that we make.
903 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
904
905 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
906 before deciding whether to inactivate mark.
907
59dede22
EZ
9082004-11-06 Lars Brinkhoff <lars@nocrew.org>
909
910 * config.in: Regenerate (add HAVE_GETRUSAGE).
6159c232
EZ
911 * editfns.c (Fget_internal_run_time): New function.
912 (syms_of_data): Defsubr it.
913 * fns.c (sxhash): As far as possible, merge calculation of
914 hash code for symbols and strings.
59dede22 915
27540e81
EZ
9162004-11-06 Eli Zaretskii <eliz@gnu.org>
917
918 * frame.c (syms_of_frame): Fix the example in the doc string.
919
df470e3b
JD
9202004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
921
922 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
923
924 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
925 (create_and_show_dialog): Revert change from 2004-10-31.
bae9677d 926
4cc8522c
LT
9272004-11-05 Luc Teirlinck <teirllm@auburn.edu>
928
929 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
930
d4a42098
KS
9312004-11-05 Kim F. Storm <storm@cua.dk>
932
a8490886
KS
933 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
934
d4a42098
KS
935 * fileio.c (Ffile_modes): Doc fix.
936 (auto_save_1): Check for Ffile_modes nil value.
937
36a2b04c
KS
9382004-11-05 Kim F. Storm <storm@cua.dk>
939
940 * xselect.c (struct selection_event_queue, selection_queue)
941 (x_queue_selection_requests, x_queue_event)
942 (x_start_queuing_selection_requests)
943 (x_stop_queuing_selection_requests): Add new queue for selection
944 input events to replace previous XEvent queue in xterm.c.
945 (queue_selection_requests_unwind): Adapt to new queue.
32e2fb04
SM
946 (x_reply_selection_request): Adapt to new queue.
947 Unexpect wait_object in case of x errors (memory leak).
36a2b04c
KS
948 (x_handle_selection_request, x_handle_selection_clear): Make static.
949 (x_handle_selection_event): New function. May queue selection events.
950 (wait_for_property_change_unwind): Use save_value instead of cons.
951 Clear property_change_reply_object.
952 (wait_for_property_change): Abort if already waiting.
953 Use save_value instead of cons for unwind data.
954 (x_handle_property_notify): Skip events already arrived, but don't
955 free them, as "arrived" field is checked by wait_for_property_change,
956 and it will be freed by unwind or explicit unexpect_property_change.
957 (x_get_foreign_selection): Add to new queue.
958 (receive_incremental_selection): Don't unexpect wait_object when done
959 as it has already been freed by previous wait_for_property_change.
960
961 * xterm.h (x_start_queuing_selection_requests)
962 (x_stop_queuing_selection_requests, x_handle_selection_request)
963 (x_handle_selection_clear): Remove prototypes.
964 (x_handle_selection_event): Add prototype.
965
966 * xterm.c (handle_one_xevent): Don't queue X selection events
967 here, it may be too late if we start queuing after we have already
968 stored some selection events into the kbd buffer.
969 (struct selection_event_queue, queue, x_queue_selection_requests)
970 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
971 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
972 (x_catch_errors_unwind): Block input around final XSync.
973
974 * keyboard.h (kbd_buffer_unget_event): Add prototype.
975
976 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
977 (kbd_buffer_unget_event): New function.
978 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
979 and use x_handle_selection_event.
980 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
981
9c3ad9e1
JD
9822004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
983
984 * xselect.c (TRACE3): New debug macro.
985 (x_reply_selection_request): Use it.
986 (receive_incremental_selection): In call to TRACE0, the name of
987 a symbol is in xname.
988
a33b89de
KS
9892004-11-05 Kim F. Storm <storm@cua.dk>
990
991 * fontset.c (fontset_pattern_regexp): Use unsigned char.
992
a872928c
JD
9932004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
994
88208bb8
JD
995 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
996
78819ebb 997 * gtkutil.h (use_old_gtk_file_dialog): Declare.
0a4f23f3
JD
998
999 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
32e2fb04 1000 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
0a4f23f3
JD
1001 * xfns.c (syms_of_xfns): ... to here.
1002
a872928c
JD
1003 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
1004 it doesn't start with /.
1005
b912921c
KH
10062004-11-04 Kenichi Handa <handa@m17n.org>
1007
1008 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
1009 treat it as a literal character.
1010
c524d9a6
KS
10112004-11-03 Kim F. Storm <storm@cua.dk>
1012
1013 * .gdbinit (ppt): New function.
1014
8cfd0f36
JD
10152004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1016
a11e1dce
JD
1017 * xterm.c (x_window_to_scroll_bar): Only call
1018 xg_get_scroll_id_for_window if toolkit scroll bars are used.
1019
8cfd0f36
JD
1020 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
1021 of save.
1022
a93563fd
AS
10232004-11-02 Andreas Schwab <schwab@suse.de>
1024
1025 * window.c (Fscroll_right): Fix last change.
1026
2b2d59d8
KS
10272004-11-02 Kim F. Storm <storm@cua.dk>
1028
1029 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
1030
10312004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1032
1033 * callproc.c (Fcall_process): Block input around vfork.
1034
ca28104d
KS
10352004-11-02 Kim F. Storm <storm@cua.dk>
1036
1037 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
1038 (syms_of_eval): Defsubr it.
1039
29bb7127
RS
10402004-11-02 Richard M. Stallman <rms@gnu.org>
1041
1042 * insdel.c (replace_range_2): New function.
1043
1044 * casefiddle.c (casify_region): Handle changes in byte-length
1045 using replace_range_2.
1046
1047 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
1048
b6189c3b 1049 * xdisp.c (back_to_previous_visible_line_start):
29bb7127
RS
1050 Subtract 1 from pos when checking previous newline for invisibility.
1051
1052 * window.c (window_scroll_pixel_based): Update preserve_y
1053 for header line if any.
1054 (Fscroll_left, Fscroll_right): Don't call interactive_p;
1055 use a new second argument instead.
1056
1057 * eval.c (Fcall_interactive_p): New function.
1058 (interactive_p): Don't test INTERACTIVE here.
1059 (Finteractive_p): Doc fix.
1060
1061 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
1062
b6189c3b 10632004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
a3fe4aaf
JR
1064
1065 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
b6189c3b 1066 comparing font names.
a3fe4aaf 1067
2a00cdb4
JD
10682004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1069
f9d64bb3
JD
1070 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
1071 Fx_file_dialog if only directories should be read.
1072
1073 * lisp.h: Fx_file_dialog takes 5 parameters.
1074
32e2fb04
SM
1075 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
1076 Add parameter only_dir_p.
f9d64bb3
JD
1077 In Motif version, don't put DEFAULT_FILENAME in filter part of the
1078 dialog, just text field part. Do not add DEFAULT_FILENAME
1079 to list of files if it isn't there.
1080 In GTK version, pass only_dir_p parameter to xg_get_file_name.
1081
32e2fb04
SM
1082 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
1083 Check only_dir_p instead of comparing prompt to "Dired". When using
f9d64bb3
JD
1084 a save dialog, add option kNavDontConfirmReplacement, change title
1085 to "Enter name", change text for save button to "Ok".
1086
32e2fb04
SM
1087 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
1088 Check only_dir_p instead of comparing prompt to "Dired".
f9d64bb3
JD
1089
1090 * gtkutil.c (xg_get_file_with_chooser)
1091 (xg_get_file_with_selection): New functions, only defined ifdef
1092 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
1093 respectively.
1094 (xg_get_file_name): Add parameter only_dir_p.
1095 Call xg_get_file_with_chooser or xg_get_file_with_selection
1096 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
1097 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
1098
1099 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
1100
2a00cdb4
JD
1101 * config.in: Rebuild (added HAVE_GTK_FILE_*).
1102
f6749d5d
KS
11032004-11-01 Kim F. Storm <storm@cua.dk>
1104
32e2fb04
SM
1105 * process.c (connect_wait_mask, num_pending_connects):
1106 Only declare and use them if NON_BLOCKING_CONNECT is defined.
bad49fc7 1107 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
f6749d5d
KS
1108 (IF_NON_BLOCKING_CONNECT): New helper macro.
1109 (wait_reading_process_output): Only declare and use local vars
1110 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
f6749d5d 1111
1a99fe1a
JR
11122004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
1113
1114 * w32term.c (x_scroll_run): Delete region objects after use.
1115
fcdb28b4
JD
11162004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1117
495ef86b
JD
1118 * xmenu.c: Add prototypes for forward function declarations.
1119 (popup_get_selection): Remove parameter do_timers, remove call to
1120 timer_check.
32e2fb04
SM
1121 (create_and_show_popup_menu, create_and_show_dialog):
1122 Remove parameter do_timers from call to popup_get_selection.
495ef86b 1123
12e6566a
JD
1124 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
1125 tool_bar_items and assign the result to f->tool_bar_items if
1126 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
1127 tool_bar_items to assignment of result.
1128
fcdb28b4
JD
1129 * atimer.c (alarm_signal_handler): Do not call set_alarm if
1130 pending_atmers is non-zero.
1131
1a1a0c4c
KS
11322004-10-31 Kim F. Storm <storm@cua.dk>
1133
1134 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
1135
a36f1680
JW
11362004-10-28 Will <will@glozer.net>
1137
1138 * macterm.c: allow user to assign key modifiers to the Mac Option
1139 key via a 'mac-option-modifier' variable.
1140
32e2fb04 11412004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
2d586478
SM
1142
1143 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
1144 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
1145 (x_handle_selection_request, x_handle_selection_clear)
1146 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
1147
4f71c13f
RS
11482004-10-28 Richard M. Stallman <rms@gnu.org>
1149
1150 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
1151
1152 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
1153
068f3848
SM
11542004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
1155
1156 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
1157 comment-starter over a 1-char one.
1158
4660a9e3
RS
11592004-10-27 Richard M. Stallman <rms@gnu.org>
1160
1161 * xdisp.c (get_next_display_element): In mode lines,
1162 treat newline and tab like other control characters.
1163
1164 * editfns.c (Fmessage): Doc fix.
1165
1166 * indent.c (vmotion): When moving up, check the newline before.
1167 Make prevline an int, not a Lisp_Object.
1168
233f3db6
KS
11692004-10-27 Kim F. Storm <storm@cua.dk>
1170
1171 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
1172 Only allocate info and discarded tables once.
1173
1174 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
1175 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
1176 (SAFE_FREE): Test it to determine if we need to unwind to free.
1177 Remove size arg. All users changed.
1178 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
1179
1442465d
JD
11802004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1181
1182 * gtkutil.c: Put empty line between comment and function body.
068f3848
SM
1183 (xg_destroy_widgets): Rename from remove_from_container.
1184 Just destroy all widgets in list. Argument wcont removed.
1442465d
JD
1185 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
1186 instead of remove_from_container.
1187 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
1188 (free_frame_tool_bar): Add comment.
1189
1190 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
1191 is not NULL before strcmp.
1192
c8636435
KS
11932004-10-26 Kim F. Storm <storm@cua.dk>
1194
1195 * callint.c (Fcall_interactively): Add 'U' code to get the
1196 up-event discarded by a previous 'k' or 'K' argument.
1197
5629f29b
DK
11982004-10-26 David Kastrup <dak@gnu.org>
1199
1200 * buffer.c (syms_of_buffer): Fix a few typos.
1201
4f2f546e
JD
12022004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1203
1204 * xsmfns.c: Put empty line between comment and function body.
1205 Use two spaces before comment end.
1206
fc1062f5
KH
12072004-10-25 Kenichi Handa <handa@m17n.org>
1208
1209 * fontset.c (fontset_pattern_regexp): Optimize for the case that
1210 PATTERN is full XLFD.
1211
be13f5e5
KH
12122004-10-24 Kenichi Handa <handa@m17n.org>
1213
1214 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
1215
1216 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
1217 (regex_compile): Return REG_ERANGEX if appropriate.
1218
d0ee2ed3
KH
12192004-10-22 Kenichi Handa <handa@m17n.org>
1220
1221 * editfns.c (Ftranslate_region_internal): New function.
1222 (syms_of_editfns): Defsubr it.
1223
63ea8ea5
JD
12242004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1225
1226 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
1227
c27ed90a
JD
12282004-10-21 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
1229
068f3848
SM
1230 * xterm.h (x_output): New member `xic_base_fontname'.
1231 (FRAME_XIC_BASE_FONTNAME): New macro.
1232 (xic_free_xfontset): Declare.
c27ed90a 1233
068f3848
SM
1234 * xfns.c (xic_create_xfontset): Share fontsets between frames
1235 based on base_fontname.
1236 (xic_free_xfontset): New function.
1237 (free_frame_xic): Use it.
1238 (xic_set_xfontset): Ditto.
c27ed90a 1239
068f3848 1240 * xterm.c (xim_destroy_callback): Ditto.
c27ed90a
JD
1241
1242
59508699
JR
12432004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
1244
1245 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
1246
dede2792
JD
12472004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1248
3aca2078
JD
1249 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
1250 XSync.
1251
dede2792
JD
1252 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
1253 New variables and constant.
1254 (main): Calculate heap_bss_diff. If we are dumping and the
1255 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
1256 and exec ourself again.
1257 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
1258 print a warning.
1259
1260 * lastfile.c: Make my_endbss and my_endbss_static available on all
1261 platforms.
1262
1263 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
1264 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
1265
1dc5ba01
LT
12662004-10-19 Luc Teirlinck <teirllm@auburn.edu>
1267
1268 * data.c (Flocal_variable_if_set_p): Doc fix.
1269
950090be
JR
12702004-10-19 Jason Rumney <jasonr@gnu.org>
1271
1272 * w32.c (init_environment): Set emacs_dir correctly when running
1273 emacs from the build directory.
1274
8550b998
RS
12752004-10-19 Richard M. Stallman <rms@gnu.org>
1276
1277 * editfns.c (Fdelete_and_extract_region):
1278 If region is empty, return null string.
1279
08dedea6
JD
12802004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1281
1dc5ba01 1282 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
08dedea6 1283 and canon_width.
068f3848 1284 (xg_frame_cleared): Remove.
08dedea6 1285
068f3848
SM
1286 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
1287 (xg_find_top_left_in_fixed): Remove.
08dedea6
JD
1288 (xg_create_scroll_bar): Put an event box widget between
1289 the scroll bar widget and the edit widget.
1290 (xg_show_scroll_bar): Show the parent widget (the event box).
1291 (xg_remove_scroll_bar): Destroy parent (the event box) also.
1292 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
1293 Move the parent (the event box) widget inside the fixed widget.
1294 Move window clear to xterm.c.
1295
068f3848 1296 * gtkutil.h (xg_frame_cleared): Remove.
1dc5ba01 1297
08dedea6 1298 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
068f3848
SM
1299 (x_scroll_bar_create, XTset_vertical_scroll_bar):
1300 Remove arguments left and width to xg_update_scrollbar_pos.
08dedea6
JD
1301 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
1302
8550b998 13032004-10-19 Kenichi Handa <handa@m17n.org>
e3e55463
KS
1304
1305 * xdisp.c (display_mode_element): Fix display of wide chars.
e3e55463 1306
84338890
JD
13072004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1308
1309 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
1310 gdk_window_clear and move gdk_window_process_all_updates after
1311 clear so events are sent to the X server in correct order.
1312
6e1b0d8c
KH
13132004-10-18 Kenichi Handa <handa@m17n.org>
1314
1315 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
1316 comparing font names.
8550b998 1317 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6e1b0d8c
KH
1318 (list_fontsets): Likewise.
1319
1320 * search.c (fast_string_match_ignore_case): New function.
1321
1322 * lisp.h (fast_string_match_ignore_case): Extern it.
1323
345e75a8
KS
13242004-10-17 Kim F. Storm <storm@cua.dk>
1325
1326 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
1327 than bitmap if there is not left fringe.
1328 (get_overlay_arrow_glyph_row): Also used on windows system.
1329 (display_line): Display overlay string if no left fringe.
1330
be13cbb7
JR
13312004-10-16 Jason Rumney <jasonr@gnu.org>
1332
1333 * w32fns.c (w32_font_match): Encode font name being matched.
1334
c2e2ede7
RS
13352004-10-16 Richard M. Stallman <rms@gnu.org>
1336
1337 * window.c (Fspecial_display_p): Doc fix.
1338
3584d95d
SM
13392004-10-15 Stefan <monnier@iro.umontreal.ca>
1340
1341 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
1342 Don't ignore menus, because where-is-internal already does it for us.
1343
699a0392
KS
13442004-10-15 Kim F. Storm <storm@cua.dk>
1345
b3c7a89b
KS
1346 * xdisp.c (redisplay_window): Only update fringes and vertical
1347 border on window frames.
699a0392 1348
4e382b0f
AS
13492004-10-14 Andreas Schwab <schwab@suse.de>
1350
1351 * m/ia64.h (DATA_SEG_BITS): Don't define.
1352
329a7be2
KS
13532004-10-14 Kim F. Storm <storm@cua.dk>
1354
1355 * xterm.h: Include Xutil.h after keysym.h to work around bug
dbb37962 1356 in some X versions.
329a7be2 1357
982241b1
SM
13582004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
1359
1360 * fns.c (map_char_table): Add missing gcpros.
1361
9238467d
SM
13622004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
1363
1364 * keymap.c (get_keymap): An autoload form is not a keymap.
1365
1366 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
1367
4440e3ca
KS
13682004-10-13 Kim F. Storm <storm@cua.dk>
1369
7cfdabde
KS
1370 * callproc.c (Fcall_process): Simplify handling of display arg.
1371 Resume `display_on_the_fly' once a coding system is determined.
1372
4440e3ca
KS
1373 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
1374
1c8dec6a
KS
13752004-10-12 Kim F. Storm <storm@cua.dk>
1376
1377 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
1378 caller, such as call-process, is not going to poll for input.
1379 (calc_line_height_property): Handle case where it->object is nil.
1380
1381 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
1382
170b174c
KH
13832004-10-12 Kenichi Handa <handa@m17n.org>
1384
9238467d
SM
1385 * xdisp.c (get_next_display_element):
1386 If unibyte_display_via_language_environment is zero, display 8-bit
170b174c
KH
1387 chars in octal in unibyte buffer.
1388
b583964c
KS
13892004-10-12 Kim F. Storm <storm@cua.dk>
1390
1391 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
1392 are no ordinary bindings.
1393
29fabd8c
JD
13942004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1395
9238467d 1396 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
29fabd8c 1397
c3f4c690
ST
13982004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1399
9238467d
SM
1400 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
1401 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
c3f4c690 1402 (make_mac_frame): Add BLOCK_INPUT around the making of a
9238467d
SM
1403 terminal frame.
1404 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
1405 * macgui.h (mktime): Use emacs_mktime.
c3f4c690
ST
1406 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
1407 Make a cancel file-open dialog be like C-g.
9238467d
SM
1408 * mac.c (mktime): Use emacs_mktime.
1409 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
1410 (Fmac_paste_function): Add better error handling for carbon cut/paste.
c3f4c690 1411
9688f9eb
KS
14122004-10-10 Kim F. Storm <storm@cua.dk>
1413
1414 * keyboard.c (timer_resume_idle): New function to resume idle
1415 timer without resetting timers on the idle list.
1416 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
1417 (timer_start_idle, timer_stop_idle): Declare static.
1418 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
1419
1420 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
1421
f7f3a65f
ST
14222004-10-08 Steven Tamm <steventamm@mac.com>
1423
9238467d 1424 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
f7f3a65f 1425 * macterm.c (mac_check_for_quit_char): Remove warning for using
9238467d 1426 NULL where 0 should be used.
f7f3a65f
ST
1427 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
1428 objc/malloc.h
9238467d 1429 * mac.c: Include time.h for Tiger compatibility.
f7f3a65f 1430
3c7d999a
KS
14312004-10-07 Kim F. Storm <storm@cua.dk>
1432
1433 * xdisp.c (redisplay_window): Fix flicker on vertical line between
1434 windows. Update vertical line after drawing window fringes, but
1435 only if actually drawing any bitmaps--or there is no fringe.
1436
1437 * xterm.c (x_update_window_end): Likewise.
1438 * macterm.c (x_update_window_end): Likewise.
1439 * w32term.c (x_update_window_end): Likewise.
1440
1441 * fringe.c (draw_window_fringes): Return value now indicates if
1442 any fringe bitmaps were redrawn (or there are no fringes).
1443
1444 * dispextern.h (draw_window_fringes): Update prototype.
1445
bf06c82f
ST
14462004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1447
1448 * macfns.c (mac_get_window_bounds): Add extern.
1449 (x_real_positions): Use mac_get_window_bounds.
1450
1451 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
1452 xmenu.c (YAILOM).
3c7d999a 1453
bf06c82f
ST
1454 * macterm.c [!MAC_OSX]: Include Windows.h.
1455 (front_emacs_window): Rename from mac_front_window. All uses
1456 changed. Return the frontmost non-tooltip emacs window.
1457 (mac_get_window_bounds): New function.
1458 (x_calc_absolute_position): Use the difference of width and height
1459 between the inner and outer window.
1460 (x_set_offset): Specify window position by the coordinae of the
1461 outer window. Adjust the position if the title bar is completely
1462 outside the screen.
1463 (app_is_suspended, app_sleep_time): Remove unused variables.
1464 (do_app_resume, do_app_suspend): Remove their contents because
1465 window-activate/deactivate events will do the job.
1466 (do_zoom_window): Remove unused variables. Make compliant to the
1467 standard way of zooming. Set f->left_pos and f->top_pos.
1468 (XTread_socket): Don't use argument `expected'. Don't use
1469 FrontWindow to determine the clicked window. Exclude unprocessed
1470 mouseUp cases in the early stage. Add parentheses to fix operator
1471 precedence.
1472 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
1473
4cbbf6b7 14742004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
d8b43276
JD
1475
1476 * config.in: Regenerate.
1477
1478 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
1479 HAVE_EXECSHIELD.
1480
b90ee8b5
JD
14812004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1482
1483 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
1484 a row if Alt or Meta has been found for that row. Also stop scanning
1485 for Keysyms for that row.
1486
904db1a2
KS
14872004-10-04 Kim F. Storm <storm@cua.dk>
1488
0207b8ad
KS
1489 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
1490 to list. Include overlay arrow bitmap in return value.
1491
25f7220c
KS
1492 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
1493 bars with fractional column width. If scroll bar separates two
1494 windows, move it towards the window it belongs to. Only update
1495 the padding area below the scroll bar widget when necessary,
1496 i.e. when scroll bar widget is created, moved, or resized.
1497
562020fe
KS
1498 * xdisp.c (define_frame_cursor1): Do not change frame cursor
1499 while tracking/dragging mouse.
1500 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
1501
37e34af7
KS
1502 * window.c (coordinates_in_window): Relax check for cursor
1503 on vertial border between mode lines.
1504 (Fset_window_fringes): Do not allow negative widths.
1505 (Fset_window_scroll_bars): Likewise.
1506
904db1a2
KS
1507 * .gdbinit (pp): Shorthand for p ARG + pr.
1508 (ff): New command: flush frame updates (X only).
1509
38fe4f64
MA
15102004-10-03 Michael Albinus <michael.albinus@gmx.de>
1511
1512 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
1513
9de36315
KH
15142004-09-30 Kenichi Handa <handa@m17n.org>
1515
07c381ad 1516 * process.c (send_process): Free composition data.
9de36315 1517
07c381ad 1518 * fileio.c (Finsert_file_contents): Free composition data.
9de36315
KH
1519
1520 * coding.c (code_convert_region): Don't skip ASCIIs if there are
07c381ad
KH
1521 compositions to encode.
1522 (encode_coding_string): Likewise. Free composition data.
1523
b6189c3b 15242004-09-30 Florian Weimer <fw@deneb.enyo.de>
07c381ad
KH
1525
1526 * coding.c (code_convert_region): Free composition data.
9de36315 1527
f2a54fbc
KS
15282004-09-29 Kim F. Storm <storm@cua.dk>
1529
dc5d6435
KS
1530 * fringe.c: Remove limit on number of bitmaps.
1531 (fringe_bitmaps, fringe_faces): Change to pointers.
1532 (max_fringe_bitmaps): New var.
1533 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
1534 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
1535
1536 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
1537 (struct glyph_row): Reorder fringe_bitmap related fields.
1538 (struct it): Likewise.
1539
1540 * w32term.c (fringe_bmp): Change to pointer.
1541 (max_fringe_bmp): New var.
1542 (w32_define_fringe_bitmap): Expand fringe_bmp.
1543 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
1544 (w32_destroy_fringe_bitmap): Likewise.
1545
15462004-09-29 Kim F. Storm <storm@cua.dk>
1547
1548 * fringe.c: Simplify last change.
f2a54fbc
KS
1549 (lookup_fringe_bitmap): New function.
1550 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
1551 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
1552 Keep standard bitmaps in Vfringe_bitmaps.
1553 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
1554 (Fset_fringe_bitmap_face): Likewise.
1555
1556 * dispextern.h (lookup_fringe_bitmap): Add prototype.
1557 (valid_fringe_bitmap_p): Remove prototype.
1558
1559 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
1560
841a8bca
KS
15612004-09-29 Kim F. Storm <storm@cua.dk>
1562
1f2da365
KS
1563 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
1564 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
1565
841a8bca
KS
1566 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
1567
1568 * fringe.c (Vfringe_bitmaps): New variable.
1569 (syms_of_fringe): DEFVAR_LISP it.
1570 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
1571 Change arg to Lisp_Object and fail if not an integer.
1572 (get_fringe_bitmap_name, resolve_fringe_bitmap)
1573 (destroy_fringe_bitmap): New functions.
9238467d
SM
1574 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
1575 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
841a8bca
KS
1576 clear its fringe property.
1577 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
1578 Fdestroy_fringe_bitmap.
1579 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
1580 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
1581 and set fringe property. Signal error if no free slots.
1582 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
1583 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
1584
1585 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
1586 symbols with a fringe property.
1587
4d965590
KS
15882004-09-27 Kim F. Storm <storm@cua.dk>
1589
1590 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
1591 Doc fix. Format may now be a symbol or alist, not a cons.
1592
1593 * fringe.c (update_window_fringes): Handle new formats of
1594 indicate-buffer-boundaries (symbol or alist). No longer
1595 allow a simple cons.
1596 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
1597
e888c2b3
JD
15982004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1599
9238467d 1600 * config.in: Rebuild.
e888c2b3 1601
83f1cb94
JD
16022004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1603
1604 * config.in: Rebuild.
1605
dd3b1d60 1606 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
83f1cb94 1607
2c51754c
SM
16082004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
1609
1610 * xterm.c (x_term_init): Work around a bug in some X servers.
1611
3df5f8aa
RS
16122004-09-18 Richard M. Stallman <rms@gnu.org>
1613
557ca2c1
RS
1614 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
1615
3df5f8aa
RS
1616 * xdisp.c (try_window_reusing_current_matrix):
1617 Handle the case where we reach the old displayed text,
1618 out of sync with the old line boundary.
1619
9238467d 16202004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
4b70e2c9
SM
1621
1622 * fileio.c (Finsert_file_contents): Fix case of replacement in a
1623 narrowed buffer.
1624
bfa02563
KS
16252004-09-14 Kim F. Storm <storm@cua.dk>
1626
a25fe164
KS
1627 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
1628
bfa02563
KS
1629 * xfaces.c (Qface_no_inherit): New var.
1630 (syms_of_xfaces): Intern and staticpro it.
1631 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
1632 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
1633 Don't increment face_change_count when face has non-nil
1634 face-no-inherit property.
1635
126f9c02
SM
16362004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
1637
892a8eb5
SM
1638 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
1639 (Fbyte_code): Remove dead code after `wrong_type_argument'.
1640
126f9c02 1641 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
9238467d 1642 before doing the mark_stack_check_gcpros since they're not on the stack.
126f9c02 1643
c0ad3b38
KS
16442004-09-12 Kim F. Storm <storm@cua.dk>
1645
1646 * editfns.c (Fformat): Handle format strings with multiple text
1647 properties. Reverse text property list from the format string,
1648 so the positions are in increasing order.
1649
844fc085
JD
16502004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1651
1652 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
1653 x_uncatch_errors so that possible protocol errors are delivered.
1654
b106731c
EZ
16552004-09-10 Eli Zaretskii <eliz@gnu.org>
1656
21065c92
EZ
1657 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
1658 blockinput.h.
1659 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
1660 charset.h, and coding.h
9238467d 1661 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
21065c92
EZ
1662 (term.o): Depend on window.h and keymap.h.
1663 (abbrev.o): Depend on syntax.h.
1664 (callint.o): Depend on keymap.h.
1665 (casefiddle.o): Depend on charset.h and keymap.h.
1666 (category.o): Depend on keymap.h.
1667 (coding.o): Depend on dispextern.h.
1668 (cmds.o): Depend on keyboard.h and keymap.h.
1669 (dispnew.o): Depend on indent.h and intervals.h.
1670 (doc.o): Depend on keymap.h.
1671 (editfns.o): Depend on frame.h.
1672 (emacs.o): Depend on dispextern.h.
1673 (fileio.o): Don't depend on ccl.h.
1674 (filelock.o): Depend on charset.h and coding.h.
1675 (frame.o): Depend on w32term.h and macterm.h.
1676 (insdel.o): Depend on region-cache.h.
1677 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
1678 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
1679 (search.o): Depend on $(INTERVALS_SRC).
1680 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
1681 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
1682 xterm.h, w32term.h, and macterm.h.
1683 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
1684 w32term.h, and macterm.h.
1685 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
1686 region-cache.h, xterm.h, w32term.h, and macterm.h.
1687 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
1688 (data.o): Depend on frame.h.
1689 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
1690 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
1691 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
1692 (intervals.o): Depend on keymap.h.
1693
9238467d
SM
1694 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
1695 Add debugging print-out to termscript.
b106731c 1696
64b7122d
RS
16972004-09-09 Richard M. Stallman <rms@gnu.org>
1698
1699 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
1700
5670531e
RS
17012004-09-08 Richard M. Stallman <rms@gnu.org>
1702
6cb4a892
RS
1703 * window.c (Fset_window_buffer): Doc fix.
1704
5670531e
RS
1705 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
1706
7e388eb7
JL
17072004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
1708
1709 * minibuf.c (history_delete_duplicates): New variable.
1710 (read_minibuf): Use it.
1711 (syms_of_minibuf): Create the corresponding lisp variable.
1712
370e3587
KS
17132004-09-08 Kim F. Storm <storm@cua.dk>
1714
1715 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
1716 overlay just before point.
1717
f844ba4e
LT
17182004-09-07 Luc Teirlinck <teirllm@auburn.edu>
1719
1720 * buffer.h (struct buffer): Add auto_save_file_format field.
9238467d
SM
1721 * buffer.c (reset_buffer, init_buffer_once):
1722 Handle auto_save_file_format field.
f844ba4e
LT
1723 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
1724 `buffer-auto-save-file-format'.
f844ba4e
LT
1725 * fileio.c: Delete declaration for removed Vauto_save_file_format.
1726 (build_annotations): Adapt to replacement of
1727 `auto-save-file-format' with the new buffer-local variable
1728 `buffer-auto-save-file-format'.
1729 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
1730
f0f90717
JR
17312004-09-07 Jason Rumney <jasonr@gnu.org>
1732
1733 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
1734
9238467d
SM
1735 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
1736 Handle Unicode menu titles.
f0f90717 1737
4e14f66c
KS
17382004-09-07 Kim F. Storm <storm@cua.dk>
1739
1740 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
1741 property from text property or overlay strings at point.
1742
9238467d 17432004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1806714a
SM
1744
1745 * xmenu.c (update_submenu_strings): YAILOM.
1746 (set_frame_menubar): Make sure last_i is initialized.
1747
1f06d367
JR
17482004-09-03 Jason Rumney <jasonr@gnu.org>
1749
1806714a 1750 * w32menu.c (_widget_value): Add lname and lkey.
1f06d367
JR
1751 (digest_single_submenu): Set lname and lkey in widget_value
1752 instead of name and key.
1753 (update_submenu_strings): New function.
1754 (set_frame_menubar): Remove call to inhibit_garbage_collection,
1755 call update_submenu_strings.
1756
1757 * w32menu.c (globals_of_w32menu): Check for Unicode API.
1758 (digest_single_submenu, w32_menu_show): Encode menu strings as
1759 UTF-8 if Unicode API is available.
1760 (utf8to16): New function.
1761 (add_menu_item): Use it when calling Unicode API.
1806714a 1762
46540080
KS
17632004-09-03 Kim F. Storm <storm@cua.dk>
1764
1765 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
1766 in overlay or text-property strings; set cursor on corresponding
1767 glyph rather than at end of the string.
1768
9277ba61 17692004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
46540080 1770
9277ba61 1771 * macfns.c (x_real_positions): Save the current window port and
1806714a
SM
1772 set a new one before obtaining the global coordinate.
1773 Use FRAME_MAC_WINDOW.
1774 (x_set_name, x_set_title): Encode title to UTF8.
1775 Use SetWindowTitleWithCFString.
9277ba61
ST
1776 (Fx_server_version): Get correct OS version.
1777
1806714a
SM
1778 * macmenu.c (add_menu_item): Remove unused variable `i'.
1779 Don't let separator items destroy refence constants of other menu items.
9277ba61
ST
1780
1781 * macterm.c (x_update_end): Move SetPortWindowPort to inside
1782 BLOCK_INPUT.
1783 (x_set_offset): Use FRAME_MAC_WINDOW.
1784
1785 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
1786 nontext_cursor if it is on a scroll bar.
1787
1788 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
1789 Carbon support.
1806714a
SM
1790 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
1791 Use LIBS_CARBON.
9277ba61 1792
b10daec7
JD
17932004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1794
1795 * xfns.c (x_set_name_internal): New function. Check if we shall call
1796 xfree before ENCODE_UTF_8.
1797 (x_set_name, x_set_title): Call x_set_name_internal.
1798
f7e22385
JR
17992004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
1800
1801 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
1802 reload it.
1803
2bf436c3
JD
18042004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1805
1806714a 1806 * macmenu.c (_widget_value): Add lname and lkey.
16ceacc2
JD
1807 (single_submenu): Set lname and lkey in widget_value
1808 instead of name and key.
1809 (update_submenu_strings): New function.
1810 (set_frame_menubar): Remove call to inhibit_garbage_collection,
1811 call update_submenu_strings.
1812
2bf436c3
JD
1813 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
1814 instead of name and key.
1815 (update_submenu_strings): New function.
1816 (set_frame_menubar): Remove call to inhibit_garbage_collection,
ec867797 1817 call update_submenu_strings.
2bf436c3
JD
1818
1819 * gtkutil.h (_widget_value): Added lname and lkey.
1820
11715f92
ST
18212004-08-30 Steven Tamm <steventamm@mac.com>
1822
1823 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
1824 by using different names for inner loop variables.
1825
5500be54
JD
18262004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1827
059cd329
JD
1828 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
1829 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
1830
5500be54
JD
1831 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
1832 tool bar items is 0.
1833
383418e5
ST
18342004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1835
1836 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
1837 strings in menu items.
1838 (single_submenu): Use ENCODE_MENU_STRING
1839 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
1840 button release isn't passed to event loop
1841 (add_menu_item): Use SetMenuItemWithCFString
1842
6eb3ee72
ST
18432004-08-26 Steven Tamm <steventamm@mac.com>
1844
1845 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
1846 tool-bar/menu click
1847 * macfns.c (Fx_file_dialog): Implemented using NavServices
1848
10b43ac3
JD
18492004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1850
2728b5d0
JD
1851 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
1852
10b43ac3
JD
1853 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1854 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1855 (x_top_window_to_frame): Return 0 if wdesc is None.
1856
2ee3b79e
RS
18572004-08-22 Richard M. Stallman <rms@gnu.org>
1858
1859 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
1860 HAVE_TERMIOS]: If there's no char for this signal, drop through
1861 and use system calls.
1862
1863 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
1864
9a1ba2ea
KS
18652004-08-20 Kim F. Storm <storm@cua.dk>
1866
1867 * process.c (wait_reading_process_output): Rename from
1868 wait_reading_process_input. All uses changed.
1869 (wait_reading_process_output_1): Rename from
1870 wait_reading_process_input_1. All uses changed.
1871
1872 * dispnew.c (Fsleep_for): Remove obsolete code.
1873
295f3b30
KH
18742004-08-20 Kenichi Handa <handa@m17n.org>
1875
1876 * syntax.c (skip_chars): Fix for unibyte case.
1877
27615979
SM
18782004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1879
1880 * syntax.c (char_quoted): Mixup byte/char pos.
1881 (back_comment): Fixup globals in all cases.
1882
00267f94
JD
18832004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1884
1885 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
1886 passing it to gtk_window_set_title.
1887
2439909e
KS
18882004-08-19 Kim F. Storm <storm@cua.dk>
1889
6ba0f14c
KS
1890 * process.c (wait_reading_process_input): Clean up.
1891 Add wait_for_cell, wait_proc, and just_wait_proc args
1892 to avoid overloading `read_kbd' and `do_display' args.
1893 Change read_kbd arg to int. All callers changed.
1894
2439909e
KS
1895 * process.c (process_send_signal): Use CDISABLE.
1896
1897 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
1898
101c421e
KS
18992004-08-18 Kim F. Storm <storm@cua.dk>
1900
1901 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
1902 forward to wait_reading_process_input via DO_DISPLAY arg.
1903 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
1904 object, only process output from that process; also inhibit
1905 running timers if DO_DISPLAY==-2.
1906
c438dc33
KS
19072004-08-17 Kim F. Storm <storm@cua.dk>
1908
1909 * process.c (process_send_signal): Fix last change--use
1910 _POSIX_VDISABLE instead of CVDISABLE when available.
1911
8afc13c6
RS
19122004-08-16 Richard M. Stallman <rms@gnu.org>
1913
1914 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
1915 Set VQUIT and VINTR chars to the standard ones if they are unset.
1916 [AIX]: Don't do that here. And don't force VINTR to standard
1917 when SIGNALS_VIA_CHARACTERS.
1918
c438dc33 1919 * process.c (process_send_signal)
8afc13c6
RS
1920 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
1921 Do nothing if the character is CVDISABLE.
1922
1923 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
1924
c438dc33 1925 * intervals.c (move_if_not_intangible):
8afc13c6
RS
1926 Force POSITION to be between BEGV and ZV.
1927
6dad1714
JPW
19282004-08-14 John Paul Wallington <jpw@gnu.org>
1929
1930 * buffer.c (Frestore_buffer_modified_p): Doc fix.
1931
1932 * fileio.c (Fread_file_name): Doc fix.
1933
1934 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
1935
2bd77330
LT
19362004-08-09 Luc Teirlinck <teirllm@auburn.edu>
1937
1938 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
1939
c90e7e43
LT
19402004-08-08 Luc Teirlinck <teirllm@auburn.edu>
1941
1942 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 1943 Qdisabled_command_hook.
c90e7e43 1944 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 1945 Qdisabled_command_hook.
c90e7e43
LT
1946 (syms_of_keyboard): Ditto.
1947
81909a1a
LT
19482004-08-07 Luc Teirlinck <teirllm@auburn.edu>
1949
1950 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
1951 (syms_of_keymap) <key-translation-map>: Doc fixes.
1952
0cedd530
SM
19532004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
1954
1725a7c9
SM
1955 * window.c (window_list_1): YAILOM.
1956
0cedd530
SM
1957 * fileio.c (make_temp_name): Handle multibyte prefixes.
1958
2515a131
LT
19592004-08-06 Luc Teirlinck <teirllm@auburn.edu>
1960
1961 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
1962 Doc fix.
1963
c8b20fb7
KH
19642004-08-03 Kenichi Handa <handa@m17n.org>
1965
1966 * coding.c (decode_coding_string): Adjust coding->consumed, and
1967 etc. with shrinked_bytes.
1968
fb8b092b
KS
19692004-08-03 Kim F. Storm <storm@cua.dk>
1970
1971 * indent.c (compute_motion): Fix check for full width window
1972 in non-window case. Do not count left truncation glyph on
1973 window systems.
1974
df133612
LT
19752004-08-02 Luc Teirlinck <teirllm@auburn.edu>
1976
1977 * data.c (Finteractive_form): Doc fix.
1978
0f7a93c1
KS
19792004-08-02 Kim F. Storm <storm@cua.dk>
1980
1981 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
1982 properly accounting for continuation glyph on non-window systems.
1983 (Fcompute_motion): Use actual window width if WIDTH is nil, and
1984 actual window width/height if TOPOS is nil, properly accounting for
1985 continuation glyphs on non-window systems, and optional header lines.
1986 (vmotion): Let compute_motion calculate actual window width.
1987
1988 * window.c (window_scroll_line_based): Let compute_motion
1989 calculate actual window width.
1990
f491e1ed
KS
19912004-08-02 Kim F. Storm <storm@cua.dk>
1992
1993 * process.c (read_process_output): Use whole read buffer.
1994 Don't trigger adaptive read buffering on errors.
1995
83f64226
LT
19962004-07-31 Luc Teirlinck <teirllm@auburn.edu>
1997
1998 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
1999
2000 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
2001
2002 * callint.c (Fcall_interactively): Doc fix.
2003
8afc13c6
RS
20042004-07-30 Richard M. Stallman <rms@gnu.org>
2005
2006 * abbrev.c (Fexpand_abbrev): Undo previous change.
2007
7c111482
KS
20082004-07-30 Kim F. Storm <storm@cua.dk>
2009
2010 * editfns.c (Fformat): Allocate extra (dummy) element in info.
2011
ee945d08
LT
20122004-07-28 Luc Teirlinck <teirllm@auburn.edu>
2013
2014 * eval.c (Fdefvar, Fdefconst): Doc fixes.
2015
3f911c94
KS
20162004-07-27 Kim F. Storm <storm@cua.dk>
2017
2018 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
2019 we have ensured that the glyph fits on the current line (or returned
2020 MOVE_LINE_CONTINUED otherwise).
2021
f29ff8c7
KS
20222004-07-26 Kim F. Storm <storm@cua.dk>
2023
2024 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
2025 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
2026 if target position is at end of display line but char is not a newline.
2027
81159bb9
RS
20282004-07-25 Richard M. Stallman <rms@gnu.org>
2029
ab431b61
RS
2030 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
2031 instead of ON_VERTICAL_BORDER, when on scroll bar.
2032 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
2033
2034 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
2035
f29ff8c7 2036 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
2037 Take account of FRAME_INTERNAL_BORDER_WIDTH.
2038
2039 * alloc.c (check_cons_list): New function (contents commented out).
2040
fc820cc5
LT
20412004-07-24 Luc Teirlinck <teirllm@auburn.edu>
2042
2043 * xfaces.c (Fcolor_supported_p): Doc fix.
2044
2045 * frame.c (Fselect_frame, Fset_frame_selected_window)
2046 (Fframe_visible_p, Fraise_frame): Doc fixes.
2047
289978b5
LT
20482004-07-24 Richard M. Stallman <rms@gnu.org>
2049
78819ebb 2050 * keyboard.h (not_single_kboard_state): Declare.
7630911d
RS
2051
2052 * fileio.c (Fwrite_region): Doc fix.
2053
2054 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
2055
2056 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
2057 only when a real abbrev is present.
2058
289978b5
LT
2059 * xfns.c (x_icon_verify): New function.
2060 (Fx_create_frame): Use it.
2061
63cc10ae
KS
20622004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
2063
2064 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
2065
36f826d4
KS
20662004-07-21 Kim F. Storm <storm@cua.dk>
2067
2068 * window.h (struct glyph_matrix): New members nrows_scale_factor
2069 and ncols_scale_factor.
2070
2071 * window.c (make_window): Initialize nrows_scale_factor and
2072 ncols_scale_factor members.
2073
2074 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
2075 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
2076 (required_matrix_height): Apply nrows_scale_factor.
2077 (required_matrix_width): Apply ncols_scale_factor.
2078
2079 * xdisp.c (display_line): Increment nrows_scale_factor and set
2080 fonts_changed_p if past last allocated row.
2081 (append_glyph, append_composite_glyph, produce_image_glyph)
2082 (append_stretch_glyph): Increment ncols_scale_factor and set
2083 fonts_changed_p if current area is full.
2084
5fc1c546
JD
20852004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2086
2087 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
2088
cb7516e5
LT
20892004-07-19 Luc Teirlinck <teirllm@auburn.edu>
2090
2091 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
2092 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
2093 (Fset_window_start, Fscroll_up, Fscroll_down)
2094 (Fother_window_for_scrolling, Fscroll_other_window)
2095 (Fsave_window_excursion, Fset_window_vscroll)
2096 (syms_of_window) <window-size-fixed>: Doc fixes.
2097
b6189c3b 20982004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
dda741ec
JR
2099
2100 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
2101 ENCODE_SYSTEM for filenames.
2102
bfcf6608
ST
21032004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2104
2105 * mac.c (sys_select): Block input around call to
2106 ReceiveNextEvent to prevent breakage. Correctly handle
2107 blocking on event queue only by calling ReceiveNextEvent
2108 instead of select (since GUI events aren't on an fd).
2109 (sys_read): Remove function
2110 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
2111
e082ac9d
ST
21122004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2113
2114 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 2115 polling instead of 1 sec timeouts (like solaris).
e082ac9d 2116
cb7516e5 2117 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
2118 frame creation.
2119
2120 * keyboard.c: Undef SIGIO on Carbon
2121
2122 * atimer.c (alarm_signal_handler): Call alarm handlers after
2123 scheduling.
2124
2125 * eval.c (Feval): Remove quit_char test
2126
2127 * process.c (wait_reading_process_input): Remove clearing
2128 stdin for select call on process input.
2129
4b9da0fb
LT
21302004-07-18 Luc Teirlinck <teirllm@auburn.edu>
2131
1204e81c
LT
2132 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
2133 capitalization error in docstring.
4b9da0fb 2134
26503ad2
JB
21352004-07-17 Juanma Barranquero <lektu@terra.es>
2136
2137 * keyboard.c (not_single_kboard_state): Do nothing unless
2138 MULTI_KBOARD is defined.
2139
3751eb00
RS
21402004-07-17 Richard M. Stallman <rms@gnu.org>
2141
2142 * window.c (coordinates_in_window): Inside the window but outside
2143 its box to the L or R, return ON_VERTICAL_BORDER.
2144 (window_list_1): Rotate the list to start with WINDOW.
2145
2146 * print.c (print_preprocess): Test for print_depth at limit
2147 before entering in being_printed.
2148
2149 * keyboard.c (not_single_kboard_state): New function.
2150 (stuff_buffered_input): Now no-op only if no SIGTSTP.
2151
2152 * frame.c (Fdelete_frame): If we're in single_bboard_state on
2153 this kboard, and we delete its last frame, go to any_kboard_state.
2154
2155 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
2156
b6189c3b 21572004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
62eb6ca9
JR
2158
2159 * w32fns.c (Fx_file_dialog): Encode strings in system coding
2160 system before passing them to OS functions for display.
2161
0f6af254
DK
21622004-07-15 David Kastrup <dak@gnu.org>
2163
f9253326
KS
2164 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
2165 Apparently fixes an abort condition.
0f6af254 2166
386c8f42
LT
21672004-07-14 Luc Teirlinck <teirllm@auburn.edu>
2168
2169 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
2170 instead of a cons.
2171
366511da
MB
21722004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
2173
2174 * keyboard.c (echo_dash): Do nothing if there already is a dash
2175 at the end of the echo string.
2176
f85409d3
KS
21772004-07-12 Kim F. Storm <storm@cua.dk>
2178
2179 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
2180 if GC_MARK_STACK.
2181
0ba2e87b
LT
21822004-07-10 Luc Teirlinck <teirllm@auburn.edu>
2183
da38045d
LT
2184 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
2185
0ba2e87b
LT
2186 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
2187 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
2188 (Freplace_buffer_in_windows, Fset_window_buffer)
2189 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
2190 (syms_of_window): Expand docstring of `display-buffer-function'.
2191
5668fbb8
LT
21922004-07-09 Luc Teirlinck <teirllm@auburn.edu>
2193
2194 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
2195 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
2196 that time values of the type (HIGH . LOW) are considered obsolete.
2197
a085bf9d
LT
21982004-07-06 Luc Teirlinck <teirllm@auburn.edu>
2199
669de2fb
LT
2200 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
2201 docstring.
2202
bac66325 2203 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 2204
8e975df9
JPW
22052004-07-06 John Paul Wallington <jpw@gnu.org>
2206
2207 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
2208
fa164e6a
JPW
2209 * fns.c (Fclear_string): Signal an error if STRING is not a string.
2210
2bac9bb1
JD
22112004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2212
2213 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
2214 instead of CGMainDisplayID (only in OSX 10.2 and later).
2215
316ef0dc
JPW
22162004-07-04 John Paul Wallington <jpw@gnu.org>
2217
2218 * fileio.c (read_file_name_completion_ignore_case): New variable.
2219 (syms_of_fileio): Declare and initialise it.
2220 (Fread_file_name): Bind `completion-ignore-case' to respect it.
2221
2a1a35c6
EZ
22222004-07-03 Eli Zaretskii <eliz@gnu.org>
2223
2224 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
2225 for event.x and event.y.
2226
33a72331
KH
22272004-07-01 Kenichi Handa <handa@m17n.org>
2228
2229 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
2230 after getting a new string by pre-write-conversion.
2231
9238467d 22322004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
07a6ab76
SM
2233
2234 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
2235 (x_calc_absolute_position): Remove unused var `child'.
2236
2237 * xfaces.c (x_supports_face_attributes_p)
2238 (Fdisplay_supports_face_attributes_p): YAILOM.
2239 (tty_supports_face_attributes_p): Remove unused var `i'.
2240
2241 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
2242 back_unibyte_ok.
2243
2244 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
2245
2246 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
2247
2248 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
2249
f96ec754
AS
22502004-06-30 Andreas Schwab <schwab@suse.de>
2251
2252 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
2253 (Finit_image_library): Pass LIBRARIES through to
2254 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
2255 (lookup_image_type): Pass Qnil as second argument to
2256 Finit_image_library.
2257
78819ebb 2258 * lisp.h (Finit_image_library): Declare.
f96ec754 2259
59feca74 22602004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 2261
31983645
AS
2262 * macterm.c (do_window_activate, do_window_deactivate): Remove.
2263 (XTread_socket): Send mouse button events to the toolbox
2264 dispatcher even when the mouse is grabbed. Don't process window
2265 activate events for non-Emacs windows. Replace function calls to
2266 do_window_activate and do_window_deactivate with their contents.
2267 Reset mouse grabbing status when a window is deactivated.
59feca74 2268
c61278bb
ST
22692004-06-29 Steven Tamm <steventamm@mac.com>
2270
2271 * macterm.c (mac_get_emulated_btn)
2272 (mac_event_to_emacs_modifiers): Fix emulated mouse button
2273 support to correctly mask out modifiers.
2274
c3762cbd
DK
22752004-06-29 David Kastrup <dak@gnu.org>
2276
2277 * search.c (Fset_match_data): Allow buffer before end of list
2278 which can happen if set-match-data is using a pre-consed list.
2279
c61278bb 22802004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
2281
2282 * macterm.c (XTread_socket): Correctly set the frame position
2283 after the window is moved.
2284
74cdfe05
JD
22852004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2286
2287 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
2288 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
2289 (xg_get_image_for_pixmap): Add workaround for monochrome displays
2290 so insensitive and activated icons look ok.
74cdfe05 2291
ef544dc8
JR
22922004-06-27 Jason Rumney <jasonr@gnu.org>
2293
2294 * w32fns.c (file_dialog_callback): Disable edit control if set
2295 to directories only on CDN_INITDONE message.
2296 (Fx_file_dialog): Default to directories only when prompt starts
2297 with "Dired".
2298
7b7990cc
KS
22992004-06-25 Kim F. Storm <storm@cua.dk>
2300
2301 * alloc.c (allocate_misc): Update total_free_markers.
2302 (free_misc): New function.
2303 (safe_alloca_unwind, free_marker): Use it.
2304
2305 * lisp.h (free_misc): Add prototype.
2306
2307 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
2308
d8c379f8
RS
23092004-06-24 Richard M. Stallman <rms@gnu.org>
2310
2311 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
2312 (syms_of_emacs): Lisp variables deleted.
2313
559cdd07
DK
23142004-06-23 David Kastrup <dak@gnu.org>
2315
94939b84
DK
2316 * search.c (Freplace_match): Adjust the match-data more thoroughly
2317 when replacing strings in the buffer.
2318 (Fmatch_data): When INTEGERS is non-nil and the last match was in
2319 a buffer, add the buffer as last element to the match data.
2320 (Fset_match_data): If an additional element of the match-data is a
2321 buffer, restore it to last_thing_searched.
c8d09ad8 2322 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
2323 (restore_match_data): Restore it again.
2324
dce417e7
LT
23252004-06-23 Luc Teirlinck <teirllm@auburn.edu>
2326
2327 * keymap.c (Ftext_char_description): Doc fix.
2328 * doc.c (Fsnarf_documentation): Doc fix.
2329
ef54b2d0
KS
23302004-06-22 Kim F. Storm <storm@cua.dk>
2331
b5bc4d05
KS
2332 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
2333
ef54b2d0
KS
2334 * lisp.h (struct Lisp_Save_Value): New member dogc.
2335 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
2336 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
2337 (SAFE_FREE_LISP): New macro.
2338
2339 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
2340 (make_save_value): Init new dogc member.
2341 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
2342
2343 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
2344 SAFE_FREE_LISP macros.
2345
3d33d993
KS
23462004-06-22 Kim F. Storm <storm@cua.dk>
2347
2348 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
2349 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
2350 in that memory area are unknown to GC. Add comments.
2351
2352 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
2353
5c917f98
KS
23542004-06-21 Kim F. Storm <storm@cua.dk>
2355
2356 * lisp.h (MAX_ALLOCA): Define here.
2357 (safe_alloca_unwind): Add prototype.
2358 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
2359
2360 * alloc.c (safe_alloca_unwind): New function.
2361
2362 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
2363
2364 * charset.c (Fstring): Use SAFE_ALLOCA.
2365
2366 * coding.c (MAX_ALLOCA): Remove define.
2367
2368 * data.c (MAX_ALLOCA): Remove define.
2369 (Faset): Use SAFE_ALLOCA.
2370
2371 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
2372
2373 * fns.c (string_make_multibyte, string_to_multibyte)
2374 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
2375 (MAX_ALLOCA): Remove define.
2376 (Fbase64_encode_region, Fbase64_encode_string)
2377 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
2378 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
2379 memory leak if encoding fails.
2380
2381 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
2382
9a09408e
EZ
23832004-06-21 Eli Zaretskii <eliz@gnu.org>
2384
2385 * print.c (Fwith_output_to_temp_buffer): Doc fix.
2386
376de739
RS
23872004-06-20 Richard M. Stallman <rms@gnu.org>
2388
2389 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
2390
2391 * search.c (match_limit): Cleaner err msg when no match data available.
2392
2393 * window.c (syms_of_window): Doc fix.
2394
2395 * keyboard.c (command_loop_1): Handle values `only' and `identity'
2396 for Vtransient_mark_mode.
2397
2398 * buffer.c (syms_of_buffer): Doc fix.
2399
acd81db9
DK
24002004-06-21 David Kastrup <dak@gnu.org>
2401
2402 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
2403 and unbinding of `case-fold-search' according to
2404 `completion-ignore-case' around calls of string-match and
2405 predicates, respectively. Should give satisfactory performance
2406 in all relevant cases.
2407
f303762d
JD
24082004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2409
95911c74
JD
2410 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
2411 clip_x/y_origin.
2412
a6cb6b78
JD
2413 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
2414
f303762d
JD
2415 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
2416
2417 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
2418 on Mac OSX.
2419
bbdb2684
LT
24202004-06-16 Luc Teirlinck <teirllm@auburn.edu>
2421
2422 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
2423
5ea48b1c
KS
24242004-06-16 Kim F. Storm <storm@cua.dk>
2425
2426 * dispextern.h (Vimage_types): Remove extern.
2427
803aac3e
MB
24282004-06-16 Miles Bader <miles@gnu.org>
2429
2430 * image.c (lookup_image_type): Initialize image type if necessary.
2431
cdc97764
KS
24322004-06-15 Kim F. Storm <storm@cua.dk>
2433
c4a5739c
KS
2434 * xdisp.c (try_cursor_movement): Exclude header line from scroll
2435 margin at top of window.
2436 (try_window_reusing_current_matrix): Calculate proper cursor position
2437 after scrolling up with non-zero scroll margin, as the old cursor
2438 position corresponds to value of PT before executing this command.
2439 (try_window_id): Consider scroll margin at bottom of window too;
2440 otherwise we fail to scroll when hl-line-mode is enabled.
2441
cdc97764
KS
2442 * syntax.c (skip_chars): Only recognize [:class:] when it has the
2443 proper format and class is a lower-case word.
2444
5b166323
JD
24452004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2446
2447 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 2448 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
2449 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
2450 xg_get_gdk_pixmap_and_mask.
cdc97764 2451
5b166323
JD
2452 * xterm.h (struct x_display_info): Typo in comment fixed.
2453
1ebd4f78
JB
24542004-06-14 Juanma Barranquero <lektu@terra.es>
2455
2456 * dispextern.h (Vimage_types): Make it conditional on
2457 HAVE_WINDOW_SYSTEM.
2458
2459 * image.c (Vimage_types): Move from xdisp.c.
2460 (Vimage_type_cache): New variable.
2461 (define_image_type): New argument indicating whether an image
2462 library was loaded; cache loaded status and return t on success,
2463 nil otherwise.
2464 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
2465 (w32_delayed_load): New function to load an image library from a
2466 list of possible filenames.
2467 (init_xpm_functions, init_png_functions, init_jpeg_functions)
2468 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 2469 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
2470 (Finit_image_library): New function, extracted from `init_image'.
2471 Try to initialize an image library on demand and cache whether we
2472 were successful or not.
2473 (syms_of_image): Initialize `Vimage_types' and
2474 `Vimage_type_cache'. Add recognized image types to Vimage_types.
2475 Export `init-image-library'.
2476 (init_image): Remove initialization of all image types, except xbm
2477 and pbm.
2478
2479 * xdisp.c (Vimage_types): Delete (moved to image.c).
2480
904ee128
AS
24812004-06-14 Andreas Schwab <schwab@suse.de>
2482
2483 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
2484 Avoid calling specbind when completion-regexp-list is empty.
2485
092de21d
RS
24862004-06-13 Richard M. Stallman <rms@gnu.org>
2487
2488 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
2489 (re_wctype, re_iswctype, re_wctype_to_bit):
2490 Non-function definitions moved here from regex.c.
1ebd4f78 2491
092de21d
RS
2492 * regex.c (re_wctype, re_iswctype): Function defs longer static.
2493 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
2494 (re_wctype, re_iswctype, re_wctype_to_bit):
2495 Non-function definitions moved to regex.h.
2496
2497 * window.c (Fselect_window): Doc fix.
2498
2499 * syntax.c: Include regex.h.
2500 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
2501 If requested, make a list of classes, then check the scanned
2502 chars for membership in them.
2503 (in_classes): New function.
2504 Doc fix.
2505
2506 * keyboard.c (cmd_error): Don't call any_kboard_state
2507 if inside a recursive edit level.
2508
25092004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
2510
2511 * keyboard.c (command_loop): Call any_kboard_state before
2512 command_loop_2 when at top level.
2513
3ebc0939
AS
25142004-06-13 Andreas Schwab <schwab@suse.de>
2515
cea5d0d4
AS
2516 * print.c (print_object): Always use %ld for printing EMACS_INT.
2517
2518 * keyboard.c (cancel_hourglass_unwind): Return a value.
2519 (modify_event_symbol): Always use %ld for printing EMACS_INT.
2520 (Fexecute_extended_command): Likewise.
2521
2522 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
2523 avoid clashes.
2524 (SYNTAX): Likewise.
2525 (SYNTAX_WITH_FLAGS): Likewise.
2526 (SYNTAX_MATCH): Likewise.
2527
2528 * syntax.c (char_quoted): Avoid warning about undefined operation.
2529 (find_defun_start): Likewise.
2530 (scan_lists): Likewise.
2531 (INC_FROM): Likewise.
2532 (scan_sexps_forward): Likewise.
2533
be8c4ce4
AS
2534 * image.c: Include <ctype.h>.
2535
3ebc0939
AS
2536 * xfaces.c (face_attr_equal_p): Declare parameters.
2537
6fb41b5b
KH
25382004-06-13 Kenichi Handa <handa@m17n.org>
2539
2540 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
2541
fc3095ce
EZ
25422004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
2543
2544 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
2545
66189a40
KH
25462004-06-12 Kenichi Handa <handa@m17n.org>
2547
2548 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
2549 ccl_prog_stack_struct and update it.
2550 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
2551 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
2552 ccl->eof_ic on EOF.
2553 (ccl_debug_hook): New function.
2554 (struct ccl_prog_stack): New member eof_ic.
2555 (ccl_driver): Handle EOF in subrountine call correctly.
2556
25572004-06-11 Kenichi Handa <handa@m17n.org>
2558
2559 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
2560
1da71023
KS
25612004-06-11 Kim F. Storm <storm@cua.dk>
2562
2563 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
2564
e9efcef4
JB
25652004-06-11 Juanma Barranquero <lektu@terra.es>
2566
2567 * keyboard.c (Fposn_at_point): Doc fix.
2568
9b9ceb61
DK
25692004-06-11 David Kastrup <dak@gnu.org>
2570
2571 * search.c (match_limit): Don't flag an error if match-data
2572 exceeding the allocated search_regs.num_regs gets requested, just
2573 return Qnil.
2574
6e87ac8f
MB
25752004-06-08 Miles Bader <miles@gnu.org>
2576
2577 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
2578
0b0dea7b
JB
25792004-06-07 Juanma Barranquero <lektu@terra.es>
2580
2581 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
2582 (Fcurrent_time_string, Fcurrent_time_zone)
2583 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
2584
a0a23346
MB
25852004-06-07 Miles Bader <miles@gnu.org>
2586
08384afd 2587 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
2588 (push_named_merge_point): New function.
2589 (merge_named_face): New function.
2590 (merge_face_ref, face_at_buffer_position, face_at_string_position):
2591 Use `merge_named_face'.
2592 (merge_face_inheritance): Function removed.
c8d09ad8 2593 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
2594 Add new `err_msgs' and `named_merge_points' args. Return error
2595 status. Only print error messages if ERR_MSGS is true. Don't try to
2596 do :inherit attribute validation.
2597 (merge_face_heights): Handle `unspecified' in both directions.
2598 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
2599 Call `merge_face_ref' instead of `merge_face_inheritance'.
2600 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
2601 (compute_char_face, face_at_buffer_position)
2602 (face_at_string_position): Call `merge_face_ref' instead of
2603 `merge_face_vector_with_property'.
2604
12d5b185
KH
26052004-06-07 Kenichi Handa <handa@m17n.org>
2606
2607 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
2608 the necessary places.
2609
2e2d7ee6
KS
26102004-06-07 Kim F. Storm <storm@cua.dk>
2611
2612 * process.c (Fdelete_process): Undo 2004-05-28 change.
2613 Instead, call status_notify also for network process.
2614 (status_message): Use process instead of status as arg.
2615 Give messages "deleted" or "connection broken by remote peer" for
2616 an exited network process.
2617 (status_notify): Change call to status_message.
2618 (read_process_output): Increase readmax to 4096. Do not increase
2619 buffer size for datagram channels (default is now large enough).
2620
fcf0d299
ST
26212004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
2622
2623 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
2624 problem due to newly defined variable.
2625
0722292b
MB
26262004-06-06 Miles Bader <miles@gnu.org>
2627
2628 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
2629 immediately if non-interactive or not initialized.
2630
ddfb8369
RS
26312004-06-05 Richard M. Stallman <rms@gnu.org>
2632
2633 * minibuf.c (Fcompleting_read): Doc fix.
2634
57015754
AS
26352004-06-05 Andreas Schwab <schwab@suse.de>
2636
2637 * macfns.c (x_create_tip_frame): Fix declaration after statement.
2638
23715ea6
JB
26392004-06-05 Juanma Barranquero <lektu@terra.es>
2640
2641 * keymap.c (Fdescribe_vector): Fix docstring.
2642 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
2643
8e330b22
MB
26442004-06-05 Miles Bader <miles@gnu.org>
2645
2646 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
2647 attributes have different values than the default face.
2648
9742a3a6
EZ
26492004-06-04 Eli Zaretskii <eliz@gnu.org>
2650
2651 * xfaces.c (x_supports_face_attributes_p): Make this function
2652 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
2653 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
2654 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 2655
9717e36c
MB
26562004-06-04 Miles Bader <miles@gnu.org>
2657
2658 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
2659 from Ftty_supports_face_attributes_p.
2660 (x_supports_face_attributes_p): New function.
2661 (Ftty_supports_face_attributes_p): Function deleted.
2662 (Fdisplay_supports_face_attributes_p): New function.
2663 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 2664 (face_attr_equal_p): New function.
9717e36c
MB
2665 (lface_equal_p): Use it.
2666
52deb19f
JB
26672004-06-03 Juanma Barranquero <lektu@terra.es>
2668
2669 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
2670 (Vw32_color_map): Fix typo in docstring.
2671 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
2672 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
2673 Make argument names match their use in docstring.
2674
86d373e6
JB
26752004-06-02 Juanma Barranquero <lektu@terra.es>
2676
2677 Work around bugs/problems with MinGW builds of graphics libraries
2678 called from MSVC builds of Emacs.
2679
2680 * image.c (lookup_image): Make pointer to img static.
2681 (png_read_from_memory): Disable "global" optimization.
2682
2fb0ce67
SM
26832004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
2684
c8d09ad8
SM
2685 * eval.c (Fcondition_case): Fix usage. Simplify.
2686
2fb0ce67
SM
2687 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
2688
50bf7673
ST
26892004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2690
2691 * macfns.c: Don't include ccl.h.
2692 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
2693 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
2694 TextUtils.h.
c8d09ad8 2695 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
2696 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
2697 display height/width.
2698 (compute_tip_xy, Vx_max_tooltip_size): Declare.
2699 (unwind_create_tip_frame, compute_tip_xy): New functions.
2700 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
2701 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
2702 and last_show_tip_args.
2fb0ce67 2703
50bf7673
ST
2704 * macgui.h [!MAC_OSX]: Include Gestalt.h.
2705 (Cursor, No_Cursor): New defines.
c8d09ad8 2706 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
2707 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
2708
2709 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
2710
2711 * macterm.c: Don't include Gestalt.h.
2712 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
2713 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
2714 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
2715 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
2716 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
2717 (construct_mouse_click, XTmouse_position)
2718 (x_scroll_bar_report_motion, x_calc_absolute_position)
2719 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
2720 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
2721 (note_mouse_movement): Clear the mouse face and reset the pointer
2722 shape when the pointer goes outside the frame without grabbing.
2723 (mac_front_window): New function.
2724 (mac_window_to_frame): New macro.
2725 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
2726 (do_window_activate, do_window_deactivate, do_app_resume)
2727 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
2728 (do_zoom_window, mac_do_receive_drag, XTread_socket)
2729 (mac_check_for_quit_char): Use mac_front_window and/or
2730 mac_window_to_frame.
2731 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
2732 scroll-bar click event.
2733 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 2734 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 2735 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 2736 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
2737 (do_window_update): Don't do anything if the updated window is the
2738 tooltip window.
2739 (do_mouse_moved): Handle mouse movement events here (previously in
2740 XTread_socket). Clear the mouse face if
2741 dpyinfo->mouse_face_hidden is set.
2742 (do_os_event, do_events): Remove (now in XTread_socket).
2743 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
2744 Loop until all the events in the queue are processed.
2745 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
2746 contents of do_os_event and do_events. Remove mouse movement
2747 handling (now in do_mouse_moved). Add the case where
2748 Vmouse_highlight has an integer value.
2749 (NewMacWindow): Remove.
2750 (make_mac_frame): Do what NewMacWindow previously did. Don't do
2751 excess initializations.
2752 (make_mac_terminal_frame): Previous initializations in
2753 make_mac_frame are moved here.
c8d09ad8
SM
2754 (mac_initialize_display_info):
2755 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
2756
2757 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
2758 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
2759
08fd1251
RS
27602004-05-29 Richard M. Stallman <rms@gnu.org>
2761
2762 * lisp.h (truncate_undo_list): Update decl.
2763
2764 * alloc.c (undo_outer_limit): New variable.
2765 (syms_of_alloc): Defvar it.
2766 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
2767
2768 * undo.c (truncate_undo_list): New arg LIMITSIZE.
2769
2770 * alloc.c (lisp_align_malloc): Check for base == 0
2771 regardless of HAVE_POSIX_MEMALIGN.
2772 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
2773
227ef0ff
SM
27742004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
2775
2776 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
2777 (marker_blocks_pending_free): Remove.
2778 (Fgarbage_collect): Sweep after cleaning up undo-lists.
2779 Mark the undo lists after claning them up.
2780 Don't free block in marker_blocks_pending_free.
2781 (mark_buffer): Don't mark undo_list.
2782 (gc_sweep): Sweep hash-tables and strings first.
2783 Do free marker blocks that are empty.
2784
034a6113
SM
27852004-05-28 Jim Blandy <jimb@redhat.com>
2786
2787 * regex.c (print_partial_compiled_pattern): Add missing 'break'
2788 after 'case wordend'. For symbeg and symend, print to stderr,
2789 like the other cases.
2790
33594a8d
NF
27912004-05-28 Noah Friedman <friedman@splode.com>
2792
2793 * process.c (Fdelete_process): Do not call remove_process.
2794
ce50a847
SM
27952004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
2796
2797 * alloc.c (struct backtrace): Remove.
2798 (Fgarbage_collect): Use the new mark_backtrace.
2799
2800 * eval.c (mark_backtrace): New function.
2801
2802 * minibuf.c (run_exit_minibuf_hook): New function.
2803 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
2804 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
2805
1e8dae36
KS
28062004-05-27 Kim F. Storm <storm@cua.dk>
2807
2808 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
2809 over display properties, e.g. images, that replace buffer text.
2810
846faa3b
KS
28112004-05-25 Kim F. Storm <storm@cua.dk>
2812
2813 * alloc.c (marker_blocks_pending_free): New var.
2814 (gc_sweep): Store free marker blocks on that list.
2815 (Fgarbage_collect): Free them after undo-list cleanup.
2816
2817 * process.c (wait_reading_process_input): Check connect_wait_mask
2818 before actually accepting connection in case it has already been
2819 accepted due to recursion.
2820
b6189c3b 28212004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6239a668 2822
ce50a847
SM
2823 * coding.c (Fset_safe_terminal_coding_system_internal):
2824 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 2825
71d5a208
RS
28262004-05-22 Richard M. Stallman <rms@gnu.org>
2827
2828 * alloc.c (Fmake_string): Doc fix.
2829
2830 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
2831 and the alist pairs too.
2832
2833 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
2834
2835 * emacs.c (main): Update copyright year.
2836
2837 * fileio.c (Fread_file_name): Expand DIR if not absolute.
2838
2839 * insdel.c (del_range_2, replace_range): Don't write an anchor
2840 if the gap is empty.
2841
2842 * xdisp.c (try_scrolling): If scroll-up-aggressively or
2843 scroll-down-aggressively is small but positive, put point
2844 near the screen edge.
2845
f63fd14e
JB
28462004-05-22 Juanma Barranquero <lektu@terra.es>
2847
2848 * keymap.c (Fdefine_key): Doc fix.
2849
4d12067c
KS
28502004-05-22 Kim F. Storm <storm@cua.dk>
2851
2852 * alloc.c (struct backtrace): Add debug_on_exit member.
2853 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
2854 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
2855 the removed cons cells.
2856 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
2857 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
2858 any cons cells pointing to unallocated stings.
2859 Do not lisp_free any marker blocks, as there may still be pointers
2860 to them from buffer undo lists at this stage of GC.
2861
2862 * keyboard.c (struct backtrace): Add debug_on_exit member.
2863 (Fcommand_execute): Clear it.
2864
931285e2
LT
28652004-05-20 Luc Teirlinck <teirllm@auburn.edu>
2866
2867 * intervals.c (lookup_char_property): Do not prematurely return nil.
2868
669fa600
SM
28692004-05-19 Jim Blandy <jimb@redhat.com>
2870
2871 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 2872 beginning and end of symbols.
4d12067c 2873
669fa600
SM
2874 * regex.c (enum syntaxcode): Add Ssymbol.
2875 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
2876 (re_opcode_t): New opcodes `symbeg' and `symend'.
2877 (print_partial_compiled_pattern): Print the new opcodes properly.
2878 (regex_compile): Parse the new operators.
ce50a847 2879 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
2880 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
2881 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
2882 (re_match_2_internal): Match symbeg and symend.
2883
2884 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
2885
0d8c2e5c
KS
28862004-05-19 Kim F. Storm <storm@cua.dk>
2887
2888 * .gdbinit (xsymbol): Fix last change.
2889
669fa600
SM
28902004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
2891
2892 * .gdbinit (xprintstr): New fun.
2893 (xstring, xprintsym): Use it.
2894
2895 * w32proc.c (create_child): Use INTMASK.
2896
2897 * alloc.c (Fgarbage_collect): Do all the marking before flushing
2898 unmarked elements of the undo list.
2899
9a6a4c40
DP
29002004-05-18 David Ponce <david@dponce.com>
2901
2902 * print.c (print): Reset print_depth before to call print_object.
2903
f3c4ec74
JR
29042004-05-18 Jason Rumney <jasonr@gnu.org>
2905
2906 * w32console.c: Prefix RIF functions with w32con_ to avoid
2907 namespace clash with functions in term.c and w32term.c.
2908
2909 * w32menu.c (add_menu_item, w32_menu_display_help)
2910 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
2911
0d8c2e5c 2912 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 2913
6be49c3a
EZ
29142004-05-18 Eli Zaretskii <eliz@gnu.org>
2915
4d0b9a0a
EZ
2916 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
2917
6be49c3a
EZ
2918 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
2919 with make_number.
2920 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
2921 with XINT.
2922
0bc90bba
KS
29232004-05-18 Kim F. Storm <storm@cua.dk>
2924
89d19988
KS
2925 * blockinput.h (INPUT_BLOCKED_P): New macros.
2926
2927 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
2928 (Ftop_level): Unblock input if blocked.
2929
0bc90bba
KS
2930 * buffer.h (GET_OVERLAYS_AT): New macro.
2931 * msdos.c (IT_note_mouse_highlight): Use it.
2932 * textprop.c (get_char_property_and_overlay): Use it.
2933 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
2934 * xfaces.c (face_at_buffer_position): Use it.
2935
2936 * print.c (print_object): Increase buf size.
2937
653bd0f6
JR
29382004-05-17 Jason Rumney <jasonr@gnu.org>
2939
2940 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
2941 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
2942 Lisp_Object using i member.
2943 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
2944 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
2945 consistently.
2946
2947 * w32proc.c (create_child): Use make_number instead of masking pid.
2948
2949 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
2950 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
2951 Use EQ to compare Lisp_Objects.
2952 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
2953
2954 * w32term.c (w32_num_mouse_buttons): Rename from
2955 Vw32_num_mouse_buttons and make it an int.
2956
2957 * w32.c (init_environment): Use it.
2958
2959 * w32fns.c (w32_wnd_proc): Likewise.
2960
2961 * w32proc.c (w32_pipe_read_delay): Rename from
2962 Vw32_pipe_read_delay and make it an int.
2963
2964 * w32.c (_sys_read_ahead): Use it.
2965
2966 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
2967
2968 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
2969
2970 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
2971 (key_event): Don't mix Lisp_Object and int.
2972
2973 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
2974
2975 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
2976 modifiers in language change event.
2977
54b53ba7
KS
29782004-05-17 Kim F. Storm <storm@cua.dk>
2979
2980 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
2981 Such objects may be freed markers which still exist on an undo list.
2982
6e86a75d
JB
29832004-05-16 Juanma Barranquero <lektu@terra.es>
2984
2985 * data.c (Fset_default): Make argument names match their use in
2986 docstring.
2987
fc80da24
AS
29882004-05-15 Andreas Schwab <schwab@suse.de>
2989
2990 * emacs.c (gdb_array_mark_flag): Define.
2991 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
2992
c1380aa6
EZ
29932004-05-15 Eli Zaretskii <eliz@gnu.org>
2994
2995 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
2996 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
2997 defined for the MS-DOS build.
2998
89458937
SM
29992004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
3000
3001 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
3002
08020f9a
KH
30032004-05-14 Kenichi Handa <handa@m17n.org>
3004
3005 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
3006
a433994a
ST
30072004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3008
3009 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
3010 section to frame.c section.
3011 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 3012 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 3013
a433994a 3014 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 3015
a433994a 3016 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 3017
a433994a
ST
3018 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
3019 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
3020 (XTread_socket): Fix int/Lisp_Object mixup.
3021 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 3022
a433994a
ST
3023 * macterm.h (struct frame, struct face, struct image)
3024 (display_x_get_resource, Fx_display_color_p)
89458937
SM
3025 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
3026 Add prototypes.
a433994a 3027
b51a51b9
KS
30282004-05-14 Kim F. Storm <storm@cua.dk>
3029
3030 * process.c (wait_reading_process_input): Make reentrant.
3031 Make Available and Connecting non-static. Save and restore value
3032 of waiting_for_user_input_p.
3033
2bde1dd8
KS
30342004-05-13 Kim F. Storm <storm@cua.dk>
3035
3036 * keyboard.c (mark_kboards): Don't mark x and y members
3037 that are overloaded in selection request events.
3038
a267ab4d
SM
30392004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
3040
3041 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
3042
eb15ce9e
GM
30432004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
3044
3045 * window.c (Fdisplay_buffer, Fsplit_window)
3046 (split-height-threshold): Doc fix.
3047
7fc92635
JB
30482004-05-13 Juanma Barranquero <lektu@terra.es>
3049
3050 * xfaces.c (Ftty_supports_face_attributes_p)
3051 (Finternal_copy_lisp_face): Fix typo in docstring.
3052 (Finternal_get_lisp_face_attribute): Fix docstring.
3053
1ec2a572
JD
30542004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3055
3056 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
3057
ae9292e0
ST
30582004-05-11 Steven Tamm <steventamm@mac.com>
3059
3060 * macfns.c (Fx_create_frame): Default to using tool-bar by
3061 setting tool-bar-lines to 1 in default-frame-alist.
3062
30632004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
3064
3065 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
3066 (xpm_get_color_table_v, xpm_make_color_table_h)
3067 (xpm_put_color_table_h, xpm_get_color_table_h)
3068 (xpm_str_to_color_key, xpm_load_image, xpm_load)
3069 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 3070 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 3071
fe97e8df
ST
30722004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3073
a267ab4d 3074 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
3075 instead of FRAME_X_P
3076
b47e779e
KS
30772004-05-11 Kim F. Storm <storm@cua.dk>
3078
3079 * process.c (read_process_output): Grow decoding_buf when needed;
3080 this could cause a crash in allocate_string and compact_small_strings.
3081
cdc9b845
EZ
30822004-04-29 Jim Blandy <jimb@redhat.com>
3083
3084 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
3085 against proper opcode.
3086
aa7094ba
JB
30872004-05-10 Juanma Barranquero <lektu@terra.es>
3088
3089 * process.c (Fstart_process): Fix docstring.
3090
3091 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
3092 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
3093 (Fsplit_char, Fchar_charset): Make argument names match their use
3094 in docstring.
3095
e109331a
RS
30962004-05-10 Richard M. Stallman <rms@gnu.org>
3097
3098 * print.c (print_preprocess): Use being_printed, loop_count and
3099 halftail to detect overdeep nesting and cyclic cdr chains.
3100
9a28b921
AS
31012004-05-10 Andreas Schwab <schwab@suse.de>
3102
78819ebb 3103 * lisp.h (Fmake_symbolic_link): Declare.
9a28b921
AS
3104
3105 * fileio.c (Frename_file): Remove extra argument in call to
3106 Fmake_symbolic_link.
3107
e2c02c1a
KS
31082004-05-10 Kim F. Storm <storm@cua.dk>
3109
3110 * xdisp.c (calc_line_height_property): Use string position when
3111 object is a string.
3112
cfe9d13e
KH
31132004-05-10 Kenichi Handa <handa@m17n.org>
3114
a57e8159
KH
3115 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
3116 inhibit-modification-hooks to t temporarily before calling
3117 Ferase_buffer.
3118
3119 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
3120 inhibit-modification-hooks to t temporarily before calling
3121 Ferase_buffer.
3122
3123 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
3124 inhibit-modification-hooks to t temporarily before calling
3125 Ferase_buffer.
3126
cfe9d13e
KH
3127 * fns.c (count_combining): Delete it.
3128 (concat): Don't check combining bytes.
3129
ceb96489
JR
31302004-05-09 Jason Rumney <jasonr@gnu.org>
3131
3132 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
3133 (globals_of_w32fns): Set it.
3134
b6189c3b 31352004-05-09 Piet van Oostrum <piet@cs.uu.nl>
b1c661c7
JB
3136
3137 * data.c (Fquo): Simplify.
3138
28712a21
JB
31392004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
3140
3141 * data.c (Fquo): If any argument is float, do the computation in
3142 floating point.
3143
0f0af7a8
JB
31442004-05-08 Juanma Barranquero <lektu@terra.es>
3145
88214ef6
JB
3146 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
3147 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
3148 Fix spelling of Emacs on docstring.
3149 (Fset_process_coding_system, Fprocess_coding_system)
3150 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
3151 Make argument names match their use in docstring.
3152 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
3153 Fix docstring.
3154
0f0af7a8
JB
3155 * editfns.c (Finsert_buffer_substring): Make argument names match their
3156 use in docstring.
3157
3158 * syntax.c (Fmodify_syntax_entry): Fix docstring.
3159
2a316a84
ST
31602004-05-07 Steven Tamm <steventamm@mac.com>
3161
3162 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
3163 around call to ReceiveEvent to avoid certain crashes.
3164
31652004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 3166
2a316a84
ST
3167 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
3168 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
3169 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
3170 Save/restore the current graphics port and device handle when
3171 drawing into an offscreen graphics world.
3172
3173 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
3174 (gif_load): Likewise.
3175
ab80314b
JB
31762004-05-07 Juanma Barranquero <lektu@terra.es>
3177
3178 * window.c (Fset_window_buffer): Fix docstring.
3179
70646bb5
TTN
31802004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
3181
3182 * emacs.c (main) [VMS]: Fix var ref.
3183
b6189c3b 31842004-05-06 Romain Francoise <romain@orebokech.com>
b03a4fdd
JB
3185
3186 * data.c (Fsetq_default): Fix docstring.
3187
279d3293
JR
31882004-05-06 Jason Rumney <jasonr@gnu.org>
3189
3190 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
3191 to avoid name clash.
3192
f72b5416
JD
31932004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3194
3195 * fileio.c (barf_or_query_if_file_exists): Use lstat.
3196 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 3197 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 3198
6ab66799
KS
31992004-05-04 Kim F. Storm <storm@cua.dk>
3200
3201 * xdisp.c (Qtotal): New var.
3202 (syms_of_xdisp): Intern and staticpro it.
3203 (calc_line_height_property): New arg total. Set it if
3204 line-spacing property has format (total . VALUE).
3205 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
3206 Handle total line-spacing property.
3207
ab2d724b
JD
32082004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3209
3210 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
3211 "under" scroll bar when size/position changes.
3212
238add5e
JR
32132004-05-03 Jason Rumney <jasonr@gnu.org>
3214
3215 * makefile.nt: Remove.
3216
1644f4e4
EZ
32172004-05-02 Eli Zaretskii <eliz@gnu.org>
3218
a267ab4d
SM
3219 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
3220 Avoid compiler warnings.
05fdbeb8 3221
1644f4e4
EZ
3222 * Makefile.in (region-cache.o): Depend on config.h.
3223
b6189c3b 32242004-05-02 Romain Francoise <romain@orebokech.com>
6cbc951e
SM
3225
3226 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
3227 with continuation lines, too.
3228
2b98b088
TTN
32292004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
3230
3231 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
3232
d9bf7950
SM
32332004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
3234
3235 * xdisp.c (calc_line_height_property): YAILOM (yet another
3236 int/Lisp_Object mixup).
3237
affa509c
EZ
32382004-05-01 Eli Zaretskii <eliz@gnu.org>
3239
3240 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
3241 undo bad effect of pack(4) in some versions of system headers.
3242
07c07cfe
JR
32432004-05-01 Jason Rumney <jasonr@gnu.org>
3244
3245 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
3246
e71caa4e
KS
32472004-04-30 Kim F. Storm <storm@cua.dk>
3248
3249 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 3250 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
3251
3252 * dispextern.h (struct it): Remove member use_default_face.
3253 Add members override_ascent, override_descent, override_boff.
3254
3255 * xdisp.c (init_iterator): Handle line-spacing float value.
3256 Initialize override_ascent member.
3257 (append_space_for_newline): Reset override_ascent.
3258 Remove use_default_face.
3259 (calc_line_height_property): New function to calculate value of
3260 line-height and line-spacing properties. Look at overlays, too.
3261 Set override_ascent, override_descent, override_boff members when
3262 using another face than the current face. Float values are now
3263 relative to the frame default font, by default; accept a cons
3264 of ratio and face name to specify value relative to a specific face.
3265 (x_produce_glyphs): Use calc_line_height_property.
3266 Use override_ascent etc. when set to handle different face heights.
3267 A negative line-spacing property value is interpreted as a total
3268 line height, rather than inter-line spacing.
3269 (note_mouse_highlight): Allocate room for 40 overlays initially.
3270
0fddae66
SM
32712004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
3272
3273 * data.c (Fsubr_name): New fun.
3274 (syms_of_data): Defsubr it.
3275
712d23dc
KS
32762004-04-29 Kim F. Storm <storm@cua.dk>
3277
3278 * xdisp.c (null_glyph_slice): New var.
3279 (append_glyph, append_composite_glyph, append_stretch_glyph):
3280 Use it to initialize glyph slice.
3281
033ad8c6
SM
32822004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
3283
3284 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
3285 (on_hot_spot_p): Make sure we always return a value.
3286 (Flookup_image_map): Remove unused var ix and iy.
3287 (note_mode_line_or_margin_highlight): Remove unused var `image'.
3288
93397360
EZ
32892004-04-27 Eli Zaretskii <eliz@gnu.org>
3290
3291 * msdos.c (init_environment): If one of the TMP... environment
3292 variables is set to a drive letter without a trailing slash,
3293 append a slash.
3294
0c54865e
EZ
32952004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
3296
3297 * editfns.c (lisp_time_argument): Provide externally.
3298
3299 * fileio.c (Fset_file_times): New function.
3300 (syms_of_fileio): Intern and staticpro it.
3301
d3b111bd
KS
33022004-04-27 Kim F. Storm <storm@cua.dk>
3303
07dc1231
KS
3304 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
3305 header line strings.
3306
360fe9d2
KS
3307 * dispextern.h (struct it): New member use_default_face.
3308
d3b111bd
KS
3309 * xdisp.c (Qline_height): New variable.
3310 (syms_of_xdisp): Intern and staticpro it.
3311 (append_space_for_newline): Partially undo 2004-04-25 change;
3312 add default_face_p arg, and restore callers.
3313 Clear it->use_default_face after use.
3314 (x_produce_glyphs): Set default font for ascii char if
3315 it->use_default_font is set. Change line-spacing property to set
3316 just extra line spacing. Handle new line-height property.
3317
0448588b
AS
33182004-04-26 Andreas Schwab <schwab@suse.de>
3319
3320 * print.c (print_object): Print non-ascii characters in bool
3321 vector representation as octal escapes.
3322
3323 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
3324 * print.c (print_object): Use it instead of BITS_PER_CHAR for
3325 bool vectors.
3326 * lread.c (read1): Likewise.
3327 * alloc.c (Fmake_bool_vector): Likewise.
3328 * data.c (Faref, Faset): Likewise.
3329 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
3330 (mapcar1): Likewise.
d3b111bd 3331
536d6baa
ST
33322004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
3333
3334 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
3335
ae11577a
MB
33362004-04-26 Miles Bader <miles@gnu.org>
3337
3338 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
3339
e198ba87
JB
33402004-04-26 Juanma Barranquero <lektu@terra.es>
3341
3342 * buffer.c (Fpop_to_buffer): Fix docstring.
3343
f3d5f92d 33442004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 3345
f3d5f92d
ST
3346 * lread.c (init_lread): Don't display missing lisp directory
3347 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 3348 may be built without correct installation path.
f3d5f92d 3349
03e35edc
KS
33502004-04-25 Kim F. Storm <storm@cua.dk>
3351
9ff3aa31
KS
3352 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
3353
3354 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
3355
03e35edc
KS
3356 * xdisp.c (append_space_for_newline): Rename from append_space.
3357 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
3358 (x_produce_glyphs): Handle line-spacing property on newline char.
3359 If value is t, adjust ascent and descent to fit current row height.
3360 If value is an integer or float, set extra_line_spacing to integer
3361 value, or to float value x current line height.
3362
f24814e0
KH
33632004-04-23 Kenichi Handa <handa@m17n.org>
3364
3365 * fontset.c (Finternal_char_font): If POSITION is nil, return
3366 font for displaying CH with the default face.
3367
d814862a
JB
33682004-04-23 Juanma Barranquero <lektu@terra.es>
3369
3370 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
3371
063a45c5
SM
33722004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
3373
3374 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
3375 Don't make assumptions about the relative place of i and val.
3376 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
3377
ae7ab2d3
KS
33782004-04-21 Kim F. Storm <storm@cua.dk>
3379
3380 * dispextern.h (struct glyph_slice): New struct.
3381 (struct glyph): New member slice.
3382 (GLYPH_SLICE_EQUAL_P): New macro.
3383 (GLYPH_EQUAL_P): Use it.
3384 (struct glyph_string): New member slice.
3385 (struct it_slice): New struct.
3386 (struct it): New member slice, add member to stack too.
3387 New member constrain_row_ascent_descent_p.
3388 (image_ascent): Add prototype.
3389
3390 * dispnew.c (buffer_posn_from_coords): Return full image width
3391 and height even for image slices (posn is relative to full image).
3392 (marginal_area_string): Adjust x0,y0 for image slice.
3393
3394 * image.c (image_ascent): Add slice arg; calculate ascent for
3395 image slice (or full image).
3396
3397 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
3398 (syms_of_keyboard): Defsubr them.
3399
3400 * lisp.h (pos_visible_p): Fix prototype.
3401
c62aec78 3402 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
3403 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
3404 (x_draw_image_foreground, x_draw_image_relief)
3405 (x_draw_image_foreground_1, x_draw_image_glyph_string):
3406 Draw sliced images.
3407
3408 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
3409 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
3410 (x_draw_image_foreground, x_draw_image_relief)
3411 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
3412 Draw sliced images.
3413
3414 * w32term.h (image_ascent): Remove prototype.
3415
3416 * window.c (Fpos_visible_in_window_p): Return pixel position if
3417 PARTIALLY arg is non-nil. Simplify. Doc fix.
3418 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
3419 to return/set vscroll in pixels.
3420
3421 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
3422
3423 * xdisp.c (Qslice): New variable.
3424 (syms_of_xdisp): Intern and staticpro it.
3425 (pos_visible_p): Return pixel position in new x and y args.
3426 (init_iterator): Reset it->slice info.
3427 (handle_display_prop): Parse (slice ...) property.
3428 (push_it, pop_it): Save/restore slice info.
3429 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
3430 force repositioning of tall row if window is vscrolled, as that
3431 would reset vscroll.
3432 (append_space): Set it->constrain_row_ascent_descent_p to avoid
3433 increasing row height if row is non-empty.
3434 (fill_image_glyph_string): Copy slice info.
3435 (take_vertical_position_into_account): Simplify.
3436 (produce_image_glyph): Handle iterator slice info, setup glyph
3437 slice info. Do not force minimum line height.
3438 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
3439 do not increase height (ascent/descent) of non-empty row when
3440 adding normal character glyph; instead reduce glyph ascent/descent
3441 appropriately; if row is higher than current glyph, adjust glyph
3442 descent/ascent to reposition glyph within the existing row.
3443 Likewise, when char is newline, only set ascent/descent if row is
3444 currently empty.
3445 (note_mouse_highlight): Handle hotspots with sliced image.
3446
3447 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
3448 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
3449 (x_draw_image_foreground, x_draw_image_relief)
3450 (x_draw_image_foreground_1, x_draw_image_glyph_string):
3451 Draw sliced images.
3452
3453 * xterm.h (image_ascent): Remove prototype.
3454
d58f8753
SM
34552004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
3456
3457 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
3458
4ce2719d
JPW
34592004-04-20 John Paul Wallington <jpw@gnu.org>
3460
3461 * fns.c (Fassoc, Feql): Fix indentation.
3462
d58f8753 3463 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 3464
95f8c3b9
JPW
34652004-04-19 John Paul Wallington <jpw@gnu.org>
3466
3467 * fns.c (Feql): New function.
d58f8753 3468 (syms_of_fns): Defsubr it.
95f8c3b9 3469
b7e85537
JR
34702004-04-18 Jason Rumney <jasonr@gnu.org>
3471
3472 * w32select.c (Fw32_set_clipboard_data): Get sequence number
3473 after closing the clipboard.
3474
5a72efd4
LT
34752004-04-16 Luc Teirlinck <teirllm@auburn.edu>
3476
3477 * buffer.c (Fbuffer_base_buffer): Doc fix.
3478
20dc8583
KS
34792004-04-17 Kim F. Storm <storm@cua.dk>
3480
60962ec4
KS
3481 * keymap.c (Fkey_description): Add optional PREFIX arg.
3482 Combine prefix with KEYS to make up the full key sequence to describe.
3483 Correlate meta_prefix_char and following (simple) key to describe
3484 as meta modifier. All callers changed.
3485 (describe_map): Rename arg `keys' to `prefix'. Remove local
3486 `elt_prefix' var. Use Fkey_description with prefix instead of
3487 elt_prefix combined with Fsingle_key_description.
3488 (describe_vector): Declare static. Replace arg `elt_prefix' with
3489 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
3490 if !KEYMAP_P. Use Fkey_description with prefix instead of
3491 Fsingle_key_description.
3492
3493 * keymap.h (Fkey_description): Fix prototype.
3494 (describe_vector): Remove prototype.
3495
409368b9
KS
3496 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
3497
20dc8583
KS
3498 * image.c (PNG_BG_COLOR_SHIFT): Remove.
3499 (png_load): Fix calculation of transparent background color on X
3500 and W32 platforms.
3501
75c5501b
JB
35022004-04-16 Juanma Barranquero <lektu@terra.es>
3503
3504 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
3505 not too large before computing how much to scroll.
3506
da879ae8
SM
35072004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
3508
3509 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
3510
d01ca4a8
LT
35112004-04-14 Luc Teirlinck <teirllm@auburn.edu>
3512
3513 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
3514 Add hyperlink to Elisp manual to the docstring.
3515
572943b3
SM
35162004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
3517
3518 * callint.c (fix_command): Use XDCR.
3519
5e30a0fb
NR
35202004-04-14 Nick Roberts <nick@nick.uklinux.net>
3521
3522 * window.c (Fget_lru_window): Doc fix.
3523
a27ddfaf
KS
35242004-04-14 Kim F. Storm <storm@cua.dk>
3525
3526 * editfns.c (Fformat): Fix allocation size of precision array.
3527
3528 * dispnew.c (update_window): Only set changed_p if
3529 scrolling_window actually did scroll.
3530 (scrolling_window): Only return 1 if we actually did scroll.
3531
3532 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
3533 height to glyph height when cursor row is not fully visible.
3534 (make_cursor_line_fully_visible): Add FORCE_P arg to return
3535 failure in case row is higher than window. Callers changed.
3536 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
3537 Try to scroll partially visible, higher-than-window cursor row.
3538 (redisplay_window): Always try to scroll partially visible,
3539 higher-than-window cursor row - both initially and again with
3540 centering_position = 0.
3541 Clear desired matrix before retrying with centering_position = 0.
3542
da879ae8
SM
35432004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
3544
3545 * syntax.c (scan_lists): Simplify backward string scan.
3546 Fix off-by-one boundary check for string and comment fences.
3547
5fc16e8e
SM
35482004-04-13 Joe Buehler <jbuehler@hekimian.com>
3549
3550 * sheap.c, unexcw.c: New files.
3551
c9aac8e6
LT
35522004-04-12 Luc Teirlinck <teirllm@auburn.edu>
3553
3554 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
3555 base buffer has been killed. Correct the error message if the
3556 base buffer does not exist.
3557
1e88a355
SM
35582004-04-12 Joe Buehler <jbuehler@hekimian.com>
3559
3560 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
3561 Cygwin itself. Add support for Xaw3d scrollbars.
3562
3563 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
3564
3565 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
3566
3567 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
3568 before Cygwin unexec.
3569
3570 * Makefile.in: Link changes for Cygwin unexec() support.
3571
8dbff9a0
AS
35722004-04-12 Andreas Schwab <schwab@suse.de>
3573
3574 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
3575
54dffe35
LT
35762004-04-11 Luc Teirlinck <teirllm@auburn.edu>
3577
3578 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
3579 IGNORE argument equals NAME. Doc fix.
3580
99a72bdf
MY
35812004-04-11 Masatake YAMATO <jet@gyve.org>
3582
1e88a355 3583 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
3584 empty if they are backwards.
3585
40899d7b
SM
35862004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
3587
3588 * xfaces.c (face_color_supported_p): Fix compilation without X11.
3589
f8f853de
SM
35902004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
3591
3592 * doc.c (Fsnarf_documentation): Ignore new file name entries.
3593
c953fe1b
KS
35942004-04-06 Kim F. Storm <storm@cua.dk>
3595
661e85c1
KS
3596 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
3597 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
3598
3599 * w32term.c (w32_read_socket): Set mouse_face_hidden after
3600 clearing highlight.
3601
3602 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
3603
3604 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
3605 clearing highlight.
3606
c953fe1b
KS
3607 * indent.c (vmotion): Do not reserve one column for continuation
3608 marks on window frames.
3609
c1994268
EZ
36102004-04-04 Eli Zaretskii <eliz@gnu.org>
3611
3612 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
3613 from GCC.
3614
9f691b0d
SM
36152004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
3616
3617 * .gdbinit-union: Remove.
3618
3619 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
3620 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
3621 ($nonvalbits): Remove.
3622 ($valmask): Set it by calling xreload to avoid redundancy.
3623
3624 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
3625 (gdb_emacs_intbits): Remove.
3626
7a8560d7
JD
36272004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3628
9f691b0d 3629 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 3630
3c8111fc
KH
36312004-03-30 Kenichi Handa <handa@m17n.org>
3632
3633 * editfns.c (Fformat): Fix initialization of the array info.
3634
48a0bce4
KS
36352004-03-30 Kim F. Storm <storm@cua.dk>
3636
3637 * xterm.c (x_mouse_click_focus_ignore_position): New var.
3638 (syms_of_xterm): DEFVAR_BOOL it.
3639 (ignore_next_mouse_click_timeout): New var.
3640 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
3641 Use it to filter mouse clicks following focus event.
3642
1cd0066c
KS
36432004-03-29 David Ponce <david@dponce.com>
3644
3645 * callint.c (Fcall_interactively): Fix last change.
3646
adb3b353
SM
36472004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3648
3649 * eval.c (Fcommandp): Simplify.
3650
3651 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
3652 Extend to handle all kinds of functions.
3653
3654 * lisp.h (Finteractive_form): Declare.
3655
3656 * callint.c (Fcall_interactively): Use it.
3657
6fc4c9c9
KS
36582004-03-26 Kim F. Storm <storm@cua.dk>
3659
3660 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
3661 to catch errors in calc_pixel_width_or_height during redisplay.
3662
abdb9b83
MY
36632004-03-26 Masatake YAMATO <jet@gyve.org>
3664
b17856dd 3665 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 3666
b17856dd 3667 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 3668
b17856dd 3669 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 3670
b17856dd 3671 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 3672
e8a84b6c
JD
36732004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3674
b17856dd 3675 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 3676
36a3fd05
RS
36772004-03-19 Richard M. Stallman <rms@gnu.org>
3678
3679 * s/sol2-6.h: Delete previous change.
3680
ab24c127
KS
36812004-03-19 Kim F. Storm <storm@cua.dk>
3682
3683 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
3684 to_charpos corresponds to newline in right fringe. Use local
3685 BUFFER_POS_REACHED_P macro.
3686
992126de
JD
36872004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3688
3689 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
3690 to compile on non-window system.
3691
45dbfc84
KS
36922004-03-19 Kim F. Storm <storm@cua.dk>
3693
3694 * dispextern.h (calc_pixel_width_or_height): Add prototype.
3695
3696 * image.c (Qcenter): Move to xdisp.c.
3697
3698 * xdisp.c (Qcenter): Declare here.
adb3b353 3699 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
3700 (handle_single_display_prop): Allow space display property on all
3701 platforms.
3702 (display_mode_line): Set mode_line_p before displaying line.
3703 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
3704 handling. Remove complex cases for fringes and scroll-bars.
3705 Add left, right, and center alignment positions. Add text (area)
3706 width/height. Return width or height for image specs.
3707 (produce_stretch_glyph): Improve handling of :align-to. Is now
3708 relative to left of text area by default, but other base offsets
3709 can be specified -- also for text lines.
3710
3711 * term.c (produce_glyphs): Handle IT_STRETCH.
3712 (produce_stretch_glyph): New function to handle space width and
3713 align-to display properties on non-window systems.
3714
37264101
SM
37152004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3716
3717 * fileio.c (Fread_file_name): Set completion-ignore-case for
3718 case-insensitive systems.
3719
73bc43da
MY
37202004-03-14 Masatake YAMATO <jet@gyve.org>
3721
3722 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
3723 when keymap and cursor are setup.
3724
9062aa89
ST
37252004-03-14 Steven Tamm <steventamm@mac.com>
3726
b17856dd 3727 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 3728
e4b1b5ab
KS
37292004-03-14 Kim F. Storm <storm@cua.dk>
3730
3731 * dispextern.h (x_find_image_file): Add prototype.
3732
3733 * image.c (x_find_image_file): Make extern.
3734
3735 * xfns.c (x_find_image_file): Remove prototype.
3736
a6eeaa81 37372004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 3738
37264101 3739 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 3740
37264101 3741 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 3742
e69cfac2
RS
37432004-03-12 Richard M. Stallman <rms@gnu.org>
3744
3745 * fns.c (internal_equal): New arg PROPS controls comparing
3746 text properties. All callers changed.
3747 (Fequal_including_properties): New function.
3748 (syms_of_fns): defsubr it.
3749
45034953
KS
37502004-03-12 Kim F. Storm <storm@cua.dk>
3751
3752 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 3753
45034953
KS
3754 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
3755 (image_background, image_background_transparent): Fix prototypes.
3756
37264101 3757 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
3758
3759 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
3760 (x_query_font, x_find_ccl_program, x_set_window_size)
3761 (x_make_frame_visible, mac_initialize, XCreatePixmap)
3762 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
3763 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
3764
3765 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
3766 (x_query_font, x_find_ccl_program, x_set_window_size)
3767 (x_make_frame_visible, mac_initialize, XCreatePixmap)
3768 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
3769 (mac_draw_line_to_pixmap): Add prototypes.
3770
37712004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3772
3773 * macterm.c (XTread_socket): Fix mouse click on tool bar.
3774
a12d3d87
KS
37752004-03-11 Kim F. Storm <storm@cua.dk>
3776
d3ab1cf1
KS
3777 * dispextern.h: Move image related prototypes from xfns.c section
3778 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
3779 HAVE_X_WINDOWS.
37264101 3780
37de9f51 3781 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 3782 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
3783 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
3784 (GTK_OBJ) [USE_GTK]: New declaration.
3785 (obj): Add $(GTK_OBJ) to list.
3786
5243c06a 37872004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 3788
5243c06a
ST
3789 * image.c [MAC_OSX]: Include sys/stat.h
3790
3791 * macfns.c (syms_of_macfns): Remove definitions of things now
3792 defined in image.c
3793
c0f97789
KS
37942004-03-11 Kim F. Storm <storm@cua.dk>
3795
3796 The following changes consolidates the identical/similar image
3797 support code previously found in xfns.c, w32fns.c, and macfns.c
3798 into a new file image.c.
3799
3800 * makefile.w32-in (OBJ1): Add image.o.
3801 ($(BLD)/image.$(O)): Add dependencies.
3802
3803 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
3804 (image.o): Add dependencies.
37264101 3805
c0f97789
KS
3806 * image.c: New file with consolidated image support code.
3807 (COLOR_TABLE_SUPPORT): New define to control whether
3808 color table support is available (X only).
3809 (Bitmap_Record): Common name for x_bitmap_record,
3810 w32_bitmap_record, and mac_bitmap_record.
3811 (XImagePtr): Common name for pointer to XImage or equivalent.
3812 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
3813 to XImagePtr on X+MAC, and to HDC on W32.
3814 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
3815 (NO_PIXMAP): Common name for "None" or equivalent.
3816 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
3817 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
3818 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
3819 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
3820 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
3821 (XDrawLine): Define on MAC for code sharing.
3822 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
3823 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
3824 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3825 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3826 (x_reference_bitmap, x_create_bitmap_from_data)
3827 (x_create_bitmap_from_file, x_destroy_bitmap)
3828 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3829 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3830 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3831 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3832 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3833 (define_image_type, lookup_image_type, valid_image_p)
3834 (image_error, enum image_value_type, struct image_keyword)
3835 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3836 (make_image, free_image, prepare_image_for_display, image_ascent)
3837 (four_corners_best, image_background, image_background_transparent)
3838 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3839 (make_image_cache, free_image_cache, clear_image_cache)
3840 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3841 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3842 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3843 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
3844 (init_image_func_pointer, image_load_quartz2d)
3845 (struct ct_color, init_color_table, free_color_table)
3846 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3847 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3848 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3849 (x_disable_image, x_build_heuristic_mask)
3850 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3851 (TIFF support, GIF support, Ghostscript support): Consolidate image
3852 code from xfns.c, w32fns.c, and macfns.c.
3853 (syms_of_image): Consolidate image related symbol setup here.
3854 (init_image): Consolidate image related initializations here.
37264101 3855
c0f97789
KS
3856 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
3857 and init_image. Remove call to init_xfns.
3858
37264101
SM
3859 * macterm.h (struct mac_bitmap_record): Add file member.
3860 Not currently used, but simplifies code sharing.
c0f97789
KS
3861
3862 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3863 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3864 (x_reference_bitmap, x_create_bitmap_from_data)
3865 (x_create_bitmap_from_file, x_destroy_bitmap)
3866 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3867 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3868 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3869 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3870 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3871 (define_image_type, lookup_image_type, valid_image_p)
3872 (image_error, enum image_value_type, struct image_keyword)
3873 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3874 (make_image, free_image, prepare_image_for_display, image_ascent)
3875 (four_corners_best, image_background, image_background_transparent)
3876 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3877 (make_image_cache, free_image_cache, clear_image_cache)
3878 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3879 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3880 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3881 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
3882 (init_image_func_pointer, image_load_quartz2d)
3883 (struct ct_color, init_color_table, free_color_table)
3884 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3885 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3886 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3887 (x_disable_image, x_build_heuristic_mask)
3888 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3889 (TIFF support, GIF support, Ghostscript support): Merge with image
3890 code from xfns.c and macfns.c into image.c.
3891 (syms_of_xfns): Move image related symbols to image.c.
3892 (init_external_image_libraries, init_xfns): Remove; initialization
3893 moved to init_image in image.c.
3894
3895 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3896 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3897 (x_reference_bitmap, x_create_bitmap_from_data)
3898 (x_create_bitmap_from_file, x_destroy_bitmap)
3899 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3900 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3901 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3902 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3903 (define_image_type, lookup_image_type, valid_image_p)
3904 (image_error, enum image_value_type, struct image_keyword)
3905 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3906 (make_image, free_image, prepare_image_for_display, image_ascent)
3907 (four_corners_best, image_background, image_background_transparent)
3908 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3909 (make_image_cache, free_image_cache, clear_image_cache)
3910 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3911 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3912 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3913 (struct ct_color, init_color_table, free_color_table)
3914 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3915 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3916 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3917 (x_disable_image, x_build_heuristic_mask)
3918 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3919 (TIFF support, GIF support, Ghostscript support): Merge with image
3920 code from xfns.c and macfns.c into image.c.
3921 (syms_of_xfns): Move image related symbols to image.c.
3922 (init_external_image_libraries, init_xfns): Remove; initialization
3923 moved to init_image in image.c.
3924
3925 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3926 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3927 (x_reference_bitmap, x_create_bitmap_from_data)
3928 (x_create_bitmap_from_file, x_destroy_bitmap)
3929 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3930 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3931 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3932 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3933 (define_image_type, lookup_image_type, valid_image_p)
3934 (image_error, enum image_value_type, struct image_keyword)
3935 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3936 (make_image, free_image, prepare_image_for_display, image_ascent)
3937 (four_corners_best, image_background, image_background_transparent)
3938 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3939 (make_image_cache, free_image_cache, clear_image_cache)
3940 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3941 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3942 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3943 (struct ct_color, init_color_table, free_color_table)
3944 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3945 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3946 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3947 (x_disable_image, x_build_heuristic_mask)
3948 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3949 (TIFF support, GIF support, Ghostscript support): Merge with
3950 w32fns.c and macfns.c image code into image.c.
3951 (syms_of_xfns): Move image related symbols to image.c.
3952 (init_xfns): Remove; initialization moved to init_image in image.c.
3953
3954 * lisp.h (syms_of_image, init_image): Add protoypes.
3955 (init_xfns): Remove prototype.
3956
3957 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3958 (x_reference_bitmap, x_create_bitmap_from_data)
3959 (x_create_bitmap_from_file, x_destroy_bitmap)
3960 (x_create_bitmap_mask): Move prototypes from dispextern.h.
3961 (gamma_correct) [MAC_OS]: Add prototype.
3962
3963 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3964 (x_reference_bitmap, x_create_bitmap_from_data)
3965 (x_create_bitmap_from_file, x_destroy_bitmap)
3966 (x_create_bitmap_mask): Move prototypes to dispextern.h.
3967
6eced09c
KH
39682004-03-09 Kenichi Handa <handa@etlken2>
3969
3970 * coding.c (decode_coding_emacs_mule): Handle insufficent source
3971 correctly.
3972
9a7e95f3
RS
39732004-03-04 Richard M. Stallman <rms@gnu.org>
3974
04a6e76b
RS
3975 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
3976
9a7e95f3
RS
3977 * window.c (Fdisplay_buffer): Doc fix.
3978
3979 * buffer.c (Fpop_to_buffer): Doc fix.
3980
6c2488df
KS
39812004-03-03 Kim F. Storm <storm@cua.dk>
3982
3983 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
3984
d8d95bc7
SM
39852004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
3986
3987 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
3988
357589bf
RS
39892004-03-02 Richard M. Stallman <rms@gnu.org>
3990
3991 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
3992
409949b5
KH
39932004-03-02 Kenichi Handa <handa@m17n.org>
3994
3995 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
3996
d24bc50f
KS
39972004-03-02 Kim F. Storm <storm@cua.dk>
3998
3999 * window.h (struct window): New member overlay_arrow_bitmap.
4000
4001 * window.c (make_window): Initialize overlay_arrow_bitmap.
4002
4003 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
4004 implement and integrate multiple overlay arrows with redisplay.
4005 (syms_of_xdisp): DEFVAR_LISP and initialize it.
4006 (last_arrow_position, last_arrow_string): Replace by properties.
4007 (Qlast_arrow_position, Qlast_arrow_string)
4008 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
4009 (syms_of_xdisp): Intern and staticpro them.
4010 (overlay_arrow_string_or_property, update_overlay_arrows)
4011 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
4012 (overlay_arrow_at_row): New functions for multiple overlay arrows.
4013 (redisplay_internal): Use them instead of directly accessing
4014 Voverlay_arrow_position etc. for multiple overlay arrows.
4015 (mark_window_display_accurate): Use update_overlay_arrows.
4016 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
4017 (try_window_id): Use overlay_arrows_changed_p.
4018 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
4019 (display_line): Use overlay_arrow_at_row to check multiple
4020 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 4021 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
4022 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
4023 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
4024
4025 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
4026 (update_window_fringes): Remove unused code.
4027
c1464661
JR
40282004-03-01 Jason Rumney <jasonr@gnu.org>
4029
4030 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
4031
a64387ee
JB
40322004-03-01 Juanma Barranquero <lektu@terra.es>
4033
4034 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
4035
4036 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
4037
334faa08
JD
40382004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4039
4040 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
4041 how many colors can be displayed.
4042
bb62616f
KH
40432004-03-01 Kenichi Handa <handa@m17n.org>
4044
4045 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
4046 correctly.
4047
0fd16104
KS
40482004-02-28 Kim F. Storm <storm@cua.dk>
4049
4050 * dispnew.c (update_window): Update header line also if there are
4051 no other changes in window (move code after set_cursor label).
4052
4053 * lisp.h (mark_window_display_accurate): Remove prototype.
4054
4055 * window.c (window_loop, Fforce_window_update): Force mode line
4056 updates by setting prevent_redisplay_optimizations_p and
4057 update_mode_lines.
4058
b59dd9c8
JD
40592004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4060
d8d95bc7 4061 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
4062
4063 * xterm.c (x_calc_absolute_position): Call x_real_positions
4064 to get WM window sizes and use those to calculate position.
d8d95bc7 4065 (x_set_offset): Remove code commented out.
b59dd9c8 4066
a874691c
MB
40672004-02-28 Miles Bader <miles@gnu.org>
4068
4069 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
4070
3e0c6482
KS
40712004-02-28 Kim F. Storm <storm@cua.dk>
4072
4073 * keyboard.c (kbd_buffer_store_event_hold): New function to store
4074 an event into kbd fifo, but with special handling of quit event;
4075 a quit event is saved for later, and further events are discarded
4076 until the saved quit event has been processed.
4077 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
4078 (gen_help_event): Store help event in kbd fifo.
4079 (NREAD_INPUT_EVENTS): Remove.
4080 (read_avail_input): Adapt to new read_socket_hook interface.
4081 Remove allocation and initialization of local input_event buffer,
4082 as read_socket_hook stores events directly in fifo. Allocate and
4083 initialize local hold_quit event to handle postponed quit event
4084 (and store it if set by kbd_buffer_store_event_hold).
4085
4086 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
4087 (gen_help_event): Fix prototype.
4088
a64387ee 4089 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 4090 numcharsp args. Add hold_quit arg.
f63fd14e 4091 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
4092 directly in fifo using kbd_buffer_store_event_hold.
4093
4094 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
4095 (read_input_waiting): Adapt to new read_socket_hook interface.
4096 Remove allocation and initialization of local input_event buffer,
4097 as read_socket_hook stores events directly in fifo. Allocate and
4098 initialize local hold_quit event to handle postponed quit event
4099 (and store it if set by kbd_buffer_store_event_hold).
4100
a64387ee 4101 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
4102
4103 * termhooks.h (read_socket_hook): Fix prototype.
4104
4105 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
4106 numcharsp args. Add hold_quit arg.
f63fd14e 4107 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
4108 directly in fifo using kbd_buffer_store_event_hold.
4109
4110 * w32inevt.h (w32_console_mouse_position): Fix prototype.
4111
4112 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
4113 Add hold_quit arg. Rework to use just one, local, inev
4114 input_event. Store inev directly in fifo using
3e0c6482
KS
4115 kbd_buffer_store_event_hold. Update count in one place.
4116 Postpone call to gen_help_event until inev is stored; use new
4117 local do_help for this.
4118 Remove local emacs_event in handing of ButtonPress event; just use
4119 inev instead (so no reason to copy it later).
4120
4121 * xsmfns.c (x_session_check_input): Remove numchars arg.
4122
d8d95bc7
SM
4123 * xterm.c (x_focus_changed, x_detect_focus_change):
4124 Remove numchars arg. Always store event into bufp arg.
4125 Return nothing. Callers changed accordingly.
3e0c6482
KS
4126 (glyph_rect): Simplify.
4127 (STORE_KEYSYM_FOR_DEBUG): New macro.
4128 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
4129 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
4130 (current_hold_quit) [USE_GTK]: Add.
4131 (event_handler_gdk): Adapt to new handle_one_xevent.
4132 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
4133 Add hold_quit arg. Rework to use just one, local, inev
4134 input_event. Store inev directly in fifo using
3e0c6482
KS
4135 kbd_buffer_store_event_hold. Update count in one place.
4136 Postpone call to gen_help_event until inev is stored; use new
4137 local do_help for this.
4138 Simplify handling of keysyms (consolidate common code). Fix bug
4139 where count was updated with nchars instead of nbytes.
4140 Remove local emacs_event in handing of ButtonPress event; just use
4141 inev instead (so no reason to copy it later).
4142 Remove `out' label. Rename label `ret' to `done'; add various
4143 `goto done' to clarify code flow in deeply nested blocks.
4144 (x_dispatch_event): Simplify as handle_one_xevent now calls
4145 kbd_buffer_store_event itself.
f63fd14e 4146 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
4147 arg. Call handle_one_xevent with new arglist. Store event from
4148 x_session_check_input in fifo.
4149 [USE_GTK]: Setup current_hold_quit.
4150 Decrement handling_signal before unblocking input.
4151 (x_initialize) [USE_GTK]: Initialize current_count.
4152
4153 * xterm.h (x_session_check_input): Fix prototype.
4154
e3564461 41552004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 4156
d8d95bc7 4157 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 4158
e3564461
ST
4159 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
4160 macgui.h).
a64387ee 4161
e3564461 4162 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 4163
e3564461
ST
4164 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
4165 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
4166 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
4167 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
4168 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
4169 (Bitmap): Remove typedef.
4170 (Pixmap): Change int to GWorldPtr.
4171
d8d95bc7 4172 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 4173
d8d95bc7
SM
4174 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
4175 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
4176 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
4177 long representation.
4178 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
4179 colors used for masks.
4180 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 4181
e3564461
ST
4182 * macfns.c: Include sys/types.h and sys/stat.h.
4183 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
4184 Include QuickTime/QuickTime.h.
4185 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
4186 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
4187 functions defined in macterm.c.
4188 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
4189 (ZPixmap): New #define for compatibility with xfns.c.
4190 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
4191 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
4192 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
4193 New functions.
e3564461 4194 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
4195 (x_destroy_x_image, unwind_create_frame, x_disable_image)
4196 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
4197 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
4198 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
4199 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
4200 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
4201 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
4202 long mixup.
4203 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
4204 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
4205 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
4206 (x_set_cursor_type, Fxw_color_values, valid_image_p)
4207 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
4208 (x_alloc_image_color, clear_image_cache, lookup_image)
4209 (x_find_image_file, xbm_read_bitmap_file_data)
4210 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
4211 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
4212 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
4213 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
4214 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 4215 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
4216 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
4217 #if 0.
4218 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
4219 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
4220 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
4221 New functions (from xfns.c).
e3564461
ST
4222 (Fx_create_frame): Record unwind_create_frame.
4223 (Fxw_display_color_p): Use dpyinfo->color_p.
4224 (Fx_display_grayscale_p, Fx_display_planes): Don't use
4225 dpyinfo->n_cbits.
4226 (Fx_display_color_cells): Use dpyinfo->n_planes;
4227 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
4228 (Qheuristic, cross_disabled_images, emboss_matrix)
4229 (laplace_matrix): New variables (from xfns.c).
4230 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
4231 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
4232 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
4233 (image_background_transparent): New function (from xfns.c).
4234 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
4235 (image_load_quicktime): Add declaration.
4236 [MAC_OSX] (image_load_quartz2d): Likewise.
4237 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
4238 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 4239 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
4240 (xbm_load_image_from_file, x_laplace_read_row)
4241 (x_laplace_write_row, pbm_read_file): Remove functions.
4242 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
4243 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
4244 (colors_in_color_table): Sync with xfns.c (although not used).
4245 (lookup_rgb_color): Don't lookup color table. Just do gamma
4246 correction.
4247 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
4248 (x_disable_image): New function (from xfns.c).
4249 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
4250 (x_build_heuristic_mask): Sync with xfns.c.
4251 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
4252 (HAVE_PBM): Remove #ifdef.
4253 (pbm_load): Sync with xfns.c. Set img->width and img->height
4254 before IMAGE_BACKGROUND.
d8d95bc7 4255 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
4256 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
4257 Don't enclose with #if HAVE_PNG.
4258 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
4259 symbol _CGImageCreateWithPNGDataProvider is defined.
4260 Otherwise use image_load_quicktime.
e3564461 4261 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
4262 [HAVE_PNG] (png_load): Sync with xfns.c.
4263 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
4264 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
4265 HAVE_JPEG.
4266 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
4267 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
4268 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
4269 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
4270 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
4271 (tiff_image_p, tiff_load): Don't enclose declarations with #if
4272 HAVE_TIFF.
4273 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
4274 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
4275 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
4276 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
4277 New functions (from xfns.c).
e3564461 4278 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 4279 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
4280 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
4281 Don't enclose with #if HAVE_GIF.
4282 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
4283 animated gif. Otherwise use image_load_quicktime.
4284 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
4285 gif_DrawText to avoid conflict with QuickdrawText.h.
4286 [HAVE_GIF] (gif_load): Sync with xfns.c.
4287 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
4288 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
4289 Ghostscript is not supported yet).
4290 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
4291 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
4292 cross_disabled_images (from xfns.c). Remove #if 0 for supported
4293 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
4294 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
4295 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
4296 HAVE_PNG. Call EnterMovies to support animated gifs.
4297 Call init_image_func_pointer to bind a symbol
e3564461 4298 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 4299
d8d95bc7 4300 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
4301 (x_draw_bar_cursor): Sync declaration with xterm.c.
4302 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
4303 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
4304 graphics).
4305 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
4306 (mac_draw_line_to_pixmap, XCreatePixmap)
4307 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
4308 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
4309 New functions.
4310 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
4311 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
4312 Cast bits to char *.
e3564461
ST
4313 (reflect_byte): New function (from w32fns.c).
4314 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
4315 due to byte alignment.
d8d95bc7
SM
4316 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
4317 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
4318 (XSetForeground): Remove static (now used in macfns.c).
4319 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
4320 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
4321 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
4322 (x_draw_glyph_string_box, x_draw_image_foreground)
4323 (x_draw_image_foreground_1, x_draw_image_glyph_string)
4324 (x_draw_stretch_glyph_string, x_draw_glyph_string)
4325 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
4326 Sync with xterm.c.
4327 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
4328 than the xterm.c version when a strictly horizontal or vertical
4329 line is drawn.
4330 (XTset_terminal_window): Add static.
4331 (x_make_frame_visible): Add UNBLOCK_INPUT.
4332 (x_free_frame_resources): New funcion (from xterm.c).
4333 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
4334 occurs in tool bar area.
d8d95bc7
SM
4335 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
4336 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
4337 Initialize image cache.
4338 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
4339 Enclose unused functions with #if 0.
4340 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
4341 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 4342 from a mac font name to an XLFD font name according to its script code.
e3564461 4343 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 4344 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
4345 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
4346 whose name starts with `.'.
4347 (init_font_name_table): Use decode_mac_font_name. Add both
4348 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
4349 of a font is smJapanese.
4350 (mac_do_list_fonts): New function to list fonts that match a given
4351 pattern.
4352 (x_list_fonts, XLoadQueryFont): Use it.
4353 (XLoadQueryFont): Set rbearing field for each variable width
4354 character to avoid needless redraw.
4355 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
4356
446f5f3d
KS
43572004-02-26 Kim F. Storm <storm@cua.dk>
4358
af617d0f
KS
4359 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
4360 as read_socket_hook handler on X aborts if buffer is too small
4361 and W32 handler doesn't always check buffer limit.
4362
446f5f3d
KS
4363 * xdisp.c (handle_single_display_prop): Handle left-fringe and
4364 right-fringe similar to a display margin image. Specifically,
4365 the characters having the fringe prop are no longer shown, and
4366 we use IT_IMAGE/next_element_from_image with image_id = -1 to
4367 do this. Set fringe bitmap face_id in it->face_id.
4368 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
4369 still realize it->face (i.e. the fringe bitmap face).
4370
7d8a0b55
MB
43712004-02-25 Miles Bader <miles@gnu.org>
4372
4373 * xdisp.c (check_it): Check string/string_pos consistency.
4374 (init_iterator): Initialize string-related fields properly.
4375
43762004-02-11 Miles Bader <miles@gnu.org>
4377
4378 * xdisp.c (produce_image_glyph): Force negative descents to zero.
4379
43802004-02-10 Miles Bader <miles@gnu.org>
4381
4382 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
4383 BLOCK_INPUT can be nested, so it doesn't make much sense.
4384
a64387ee 43852004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
4386
4387 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
4388 (xbm_read_bitmap_data): Use unsigned char for image data.
4389
92f5fba2
LT
43902004-02-23 Luc Teirlinck <teirllm@auburn.edu>
4391
4392 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
4393
8565fb3d
JR
43942004-02-22 Jason Rumney <jasonr@gnu.org>
4395
4396 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
4397 correctly over other bitmaps.
4398
a6eeaa81 43992004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
4400
4401 * emacs.c (USAGE1): Split into two halves.
4402 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
4403 (USAGE3): Rename from USAGE2.
4404 (USAGE4): Rename from USAGE3.
f8125c39 4405
4effffca
EZ
44062004-02-21 Juri Linkov <juri@jurta.org>
4407
4408 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
4409 Fix --multibyte. Move --help, --version to USAGE2. Add alias
4410 --file. Fix -f, -l. Sort options. Untabify.
4411 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
4412
923c1e6f
LT
44132004-02-19 Luc Teirlinck <teirllm@auburn.edu>
4414
4415 * category.c (Fdefine_category, Fcategory_docstring)
4416 (Fget_unused_category, Fset_category_table)
4417 (Fcategory_set_mnemonics): Doc fixes.
4418
b0e225fd
KS
44192004-02-20 Kim F. Storm <storm@cua.dk>
4420
4421 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
4422 The following changes are relative to the 2004-01-21 revision.
4423 (NREAD_INPUT_EVENTS): Define as max number of input events to read
4424 in one call to read_socket_hook. Value is 8.
4425 (read_avail_input): Separate and rework handling of read_socket_hook
4426 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
4427 in read_socket_hook case, and repeat if full buffer is read.
4428 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
4429 In non-read_socket_hook case, just use a single input_event, and
4430 call kbd_buffer_store_event on the fly for each character.
4431
b15aa9f9
SM
44322004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
4433
4434 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
4435 Remove unused `gu' alternative.
4436
83c9aa95
AS
44372004-02-19 Andreas Schwab <schwab@suse.de>
4438
4439 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
4440 warning.
4441
cc808173
KS
44422004-02-18 Kim F. Storm <storm@cua.dk>
4443
4444 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
4445 Fix last change.
4446
ab90a54d
KS
44472004-02-17 Kim F. Storm <storm@cua.dk>
4448
b26f249f
KS
4449 * xdisp.c (fast_find_position): Fix return value of new version;
4450 it was inverted compared to the 21.1 version.
4451 (get_window_cursor_type): Don't look at glyph if NULL.
4452 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 4453
ab90a54d
KS
4454 * keyboard.c: Rework previous change; it didn't consider that the
4455 buf array was allocated on the stack.
4456 (prev_read): Remove variable.
4457 (read_avail_input_buf): New static event buffer array.
b9568dfc 4458 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 4459 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
4460 Use in_read_avail_input to handle re-entrance; when re-entered,
4461 fully initialize and use tmp_buf array instead of read_avail_input_buf.
4462 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
4463 is always cleared on entry. To ensure that, we clear (just) the
4464 entries that were used before we return.
4465 (init_keyboard): Initialize read_avail_input_buf here.
4466
b6189c3b 44672004-02-16 Jesper Harder <harder@ifa.au.dk>
4e039f3f
EZ
4468
4469 * cmds.c (Fend_of_line): Doc fix.
4470
7b5368c1
EZ
44712004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
4472
4473 * keyboard.c (prev_read): New static variable.
4474 (read_avail_input): Use it to zero out only those slots in buf[]
4475 that were used last time we were called.
4476
a6eeaa81 44772004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
4478
4479 * Makefile.in (obj): Move fringe.o from here...
4480 (XOBJ, MAC_OBJ): ...to here.
4481
159c348e
SE
44822004-02-16 Stephen Eglen <stephen@gnu.org>
4483
4484 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
4485
d2f14999
SM
44862004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
4487
b15aa9f9
SM
4488 * data.c (Fbyteorder):
4489 * fringe.c (Fdefine_fringe_bitmap):
4490 * xdisp.c (handle_single_display_prop):
d2f14999
SM
4491 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
4492
8d50508a
JR
44932004-02-16 Jason Rumney <jasonr@gnu.org>
4494
4495 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
4496
dd4497dc
ST
44972004-02-15 Steven Tamm <steventamm@mac.com>
4498
4499 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
4500 controlling emulation of a three button mouse with option and
4501 command keys.
4502 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 4503 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 4504
c9159cb3
KS
45052004-02-15 Kim F. Storm <storm@cua.dk>
4506
2cc52658
KS
4507 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
4508
c9159cb3
KS
4509 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
4510 Perform byte-swapping.
4511
12fde2dc
KS
45122004-02-14 Kim F. Storm <storm@cua.dk>
4513
4514 * dispextern.h (struct draw_fringe_bitmap_params): Change member
4515 bits from char to short to facilitate wider bitmaps.
4516 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
4517 member.
4518
4519 * fringe.c (struct fringe_bitmap): Change member bits from char to
4520 short to facilitate 16 bits wide bitmaps. Modify all standard
4521 bitmaps accordingly.
4522 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
4523 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
4524 (draw_fringe_bitmap): Ditto.
4525 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
4526 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
4527 handle up to 16 bits wide bitmaps.
4528 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 4529 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
4530
4531 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
4532 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
4533 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
4534
4535 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
4536 so it is no longer necessary to expand them here.
4537
4538 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
4539
9d7271e8
KS
45402004-02-12 Kim F. Storm <storm@cua.dk>
4541
4542 * window.c (Fwindow_fringes): Doc fix.
4543
706c1e4f
JD
45442004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4545
4546 * xselect.c (x_get_foreign_selection): Add new optional parameter
4547 time_stamp.
4548 (Fx_get_selection_internal): Ditto, pass time_stamp to
4549 x_get_foreign_selection.
4550
4551 * data.c (Fbyteorder): New function.
4552
c2d12b5d
JD
45532004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4554
4555 * atimer.c: Move include stdio.h to same place as in other files.
4556
4557 * region-cache.c: Ditto.
4558
4559 * sysdep.c: Ditto.
4560
4561 * xfaces.c: Ditto.
4562
4c1947b9
SS
45632004-02-09 Sam Steingold <sds@gnu.org>
4564
89458937 4565 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 4566
82722af3
KS
45672004-02-09 Kim F. Storm <storm@cua.dk>
4568
4569 * fringe.c: New file. Move original fringe related declarations
4570 and code from dispextern.h and xdisp.c here.
4571 Rework code to support user defined fringe bitmaps, redefining
4572 standard bitmaps, ability to overlay user defined bitmap with
4573 overlay arrow bitmap, and add faces to bitmaps.
4574 (Voverflow_newline_into_fringe): Declare here.
4575 (enum fringe_bitmap_align): New enum.
4576 (..._bits): All bitmaps are now defined without bitswapping; that
4577 is now done in init_fringe_once (if necessary).
4578 (standard_bitmaps): New array with specifications for the
4579 standard fringe bitmaps.
4580 (fringe_faces): New array.
4581 (valid_fringe_bitmap_id_p): New function.
4582 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
4583 (draw_fringe_bitmap): New function which draws fringe bitmap,
4584 possibly overlaying bitmap with cursor in right fringe or the
4585 overlay arrow in the left fringe.
4586 (update_window_fringes): Do not handle overlay arrow here.
4587 Compare and copy fringe bitmap faces.
4588 (init_fringe_bitmap): New function.
4589 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
4590 define and destroy user defined fringe bitmaps.
4591 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
4592 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
4593 (syms_of_fringe): New function. Defsubr new DEFUNs.
4594 DEFVAR_LISP Voverflow_newline_into_fringe.
4595 (init_fringe_once, init_fringe): New functions.
4596 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 4597
82722af3
KS
4598 * Makefile.in (obj): Add fringe.o.
4599 (fringe.o): New dependencies.
4600
4601 * dispextern.h (FRINGE_ID_BITS): New definition for number of
4602 bits allocated to hold a fringe number. Increase number of bits
4603 from 4 to 8 to allow user defined fringe bitmaps.
4604 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
4605 left_user_fringe_face_id, right_user_fringe_bitmap,
4606 right_user_fringe_face_id.
4607 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
4608 Move to new file fringe.c.
4609 (MAX_FRINGE_BITMAPS): Define here.
4610 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
4611 and overlay_p. Change member which to int.
4612 (struct redisplay_interface): New members define_fringe_bitmap
4613 and destroy_fringe_bitmap.
4614 (valid_fringe_bitmap_id_p): Add prototype.
4615 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
4616
4617 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
4618 arrows.
4619 (update_frame): Do flush_display if force_flush_display_p to
4620 ensure display (specifically fringes) are updated in a timely
4621 manner when resizing the frame by dragging the mouse.
4622 (update_window_line): Update row if overlay arrow changed.
4623 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
4624 or overlay arrow changed.
4625
4626 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
4627 syms_of_fringe, and init_fringe.
4628
4629 * frame.h (struct frame): New member force_flush_display_p.
4630
4631 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
4632 Add prototypes.
4633
a3993cc8 4634 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 4635 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
4636 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
4637 Use cursor color for displaying cursor in fringe.
82722af3
KS
4638 (x_redisplay_interface): Add null handlers for
4639 define_fringe_bitmap and destroy_fringe_bitmap functions.
4640
4641 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
4642 xterm.c to handle overlayed fringe bitmaps and to use cursor color
4643 for displaying cursor in fringe.
4644 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
4645 specific functions to define and destroy fringe bitmaps in fringe_bmp.
4646 (w32_redisplay_interface): Add them to redisplay_interface.
4647 (w32_term_init): Call w32_init_fringe instead of explicitly
4648 defining fringe bitmaps in fringe_bmp array.
4649 (x_delete_display): Call w32_reset_fringes instead of explicitly
4650 destroying fringe bitmaps in fringe_bmp array.
4651
4652 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
4653 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
4654 (continued_bits, continuation_bits, ov_bits, first_line_bits)
4655 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
4656 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
4657 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
4658 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
4659 Move fringe handling vars and code to new file fringe.c.
4660 (handle_display_prop): Handle left-fringe and right-fringe
4661 display properties; store user fringe bitmaps in iterator.
4662 (move_it_in_display_line_to): Handle cursor in fringe at eob.
4663 (clear_garbaged_frames): Set force_flush_display_p if resized.
4664 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
4665 (display_line): Handle cursor in fringe at eob.
4666 (display_line): Set row user fringe bitmaps from iterator.
4667
4668 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
4669 Use cursor color for displaying cursor in fringe.
4670 (x_redisplay_interface): Add null handlers for
4671 define_fringe_bitmap and destroy_fringe_bitmap functions.
4672
030400eb
JD
46732004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4674
4675 * macfns.c (Fx_change_window_property): Make doc string and
4676 parameters same as for X version.
4677
4678 * w32fns.c (Fx_change_window_property): Ditto.
4679
3af55251
KS
46802004-02-07 Kim F. Storm <storm@cua.dk>
4681
ec110e9e
KS
4682 * xdisp.c (hscroll_window_tree): Position cursor near to right
4683 margin in hscrolled window when jumping to end of line (rather
4684 than centering cursor).
4685
3af55251
KS
4686 * process.c (wait_reading_process_input): Don't do adaptive read
4687 buffering if waiting for a specific process.
4688
b0c138ce
LT
46892004-02-05 Luc Teirlinck <teirllm@auburn.edu>
4690
4691 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
4692 (Fread_minibuffer, Feval_minibuffer)
4693 (Fread_string, Fread_no_blanks_input)
4694 (Fcompleting_read): Doc fixes.
4695 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
4696 completion-regexp-list. Define Qcase_fold_search and staticpro it.
4697 (read_minibuf): Fix initial comment.
4698 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 4699 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
4700 checking completion-regexp-list.
4701 (Fdisplay_completion_list): Make it handle arguments that are
4702 symbols. Doc fix.
4703
9676f5ad 47042004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 4705
9676f5ad 4706 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 4707
9676f5ad
JD
4708 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
4709 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 4710 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 4711 format. Remove unused variable cons.
5b698285
JD
4712
4713 * xselect.c: Include stdio,h.
4714
fc1d15f6
KH
47152004-02-05 Kenichi Handa <handa@m17n.org>
4716
ebaff4af
KH
4717 * fns.c (Fset_char_table_range): Fix previous change.
4718
fc1d15f6
KH
4719 * buffer.c (Fset_buffer_multibyte): Fix docstring.
4720
9676f5ad
JD
47212004-02-04 Luc Teirlinck <teirllm@auburn.edu>
4722
4723 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
4724
da75761f
SM
47252004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
4726
4727 * keymap.c (Vmouse_events): Rename from Vmenu_events.
4728 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
4729
13c5d120
KH
47302004-02-04 Kenichi Handa <handa@m17n.org>
4731
4732 * fns.c (Fset_char_table_range): Handle charsets ascii,
4733 eight-bit-control, and eight-bit-graphic correctly.
4734
2883d842
JR
47352004-02-03 Jason Rumney <jasonr@gnu.org>
4736
4737 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
4738
4739 * w32fns.c (x_to_w32_font): Likewise.
4740
69eff41f
JD
47412004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4742
4743 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
4744 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
4745
4746 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
4747 ClientMessages.
4748
4749 * xselect.c: Include termhooks.h and X11/Xproto.h
4750 (x_check_property_data, x_fill_property_data)
4751 (x_property_data_to_lisp, mouse_position_for_drop)
4752 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 4753 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
4754 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
4755
da75761f 4756 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
4757 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
4758 OUTER_P.
4759 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
4760 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
4761 if vector_ret_p is true.
4762 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 4763
a6eeaa81 47642004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
4765
4766 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
4767 basename of FILE relative to it, not FILE itself.
4768
09721b31
KH
47692004-02-02 Kenichi Handa <handa@m17n.org>
4770
4771 * coding.c (coding_restore_composition): Check invalid
4772 composition data more rigidly.
4773
eb996101
LT
47742004-01-30 Luc Teirlinck <teirllm@auburn.edu>
4775
4776 * fileio.c (Fread_file_name_internal): Correctly handle the case
4777 where insert-default-directory is nil.
4778 (Fread_file_name): Always return an empty string if the user exits
4779 with an empty minibuffer. Adapt the docstring accordingly.
4780 (syms_of_fileio): Adapt the docstring of insert-default-directory
4781 to the change in Fread_file_name.
4782
a6eeaa81 47832004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
4784
4785 * alloca.c [!alloca]: Fix the prototype for xfree.
4786
13f52ed8
KH
47872004-01-29 Kenichi Handa <handa@m17n.org>
4788
4789 * fns.c (string_char_to_byte): Optimize for ASCII only string.
4790 (string_byte_to_char): Likewise.
4791
d57625a0
JR
47922004-01-28 Peter Runestig <peter@runestig.com>
4793
4794 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
4795
a64387ee 47962004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
4797
4798 * unexmacosx.c (unexec_copy): Do not copy more than was
4799 requested to prevent overwriting during unexec.
4800
eb37b8fd
JD
48012004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4802
ce38070a
JD
4803 * process.c (sigchld_handler): Add comment about not calling malloc.
4804
eb37b8fd
JD
4805 * process.h: Add extern to synch_process_termsig.
4806
a64387ee 48072004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 4808
da75761f
SM
4809 * macterm.c (make_mac_frame, make_mac_terminal_frame):
4810 Move setting of scroll bars from make_mac_frame to
4811 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 4812
d62a265d
RS
48132004-01-26 Richard M. Stallman <rms@gnu.org>
4814
4815 * search.c (Freplace_match): Handle nonexistent
4816 back-references properly.
4817
48182004-01-03 Richard M. Stallman <rms@gnu.org>
4819
4820 * window.c (decode_any_window): New function.
4821 (Fwindow_height, Fwindow_width, Fwindow_edges)
4822 (Fwindow_pixel_edges, Fwindow_inside_edges)
4823 (Fwindow_inside_pixel_edges): Use decode_any_window.
4824
ff236419
JD
48252004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4826
4827 * process.h: synch_process_termsig new variable.
4828
4829 * callproc.c: Define synch_process_termsig.
4830 (Fcall_process): Initiate synch_process_termsig to zero and
4831 check if non-zero and get signal name after subprocess has ended.
4832
4833 * process.c (sigchld_handler): Set synch_process_termsig
4834 if terminated by a signal. synch_process_death setting removed.
4835
4836 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
4837
41b867ea
AS
48382004-01-26 Andreas Schwab <schwab@suse.de>
4839
4840 * print.c (print_preprocess): Declare size as EMACS_INT to not
4841 lose bits.
4842 (print_object): Likewise.
4843 * alloc.c (Fpurecopy): Likewise.
4844
a08084ff
LT
48452004-01-25 Luc Teirlinck <teirllm@auburn.edu>
4846
4847 * window.c (Fwindow_minibuffer_p): Doc fix.
4848
b19ac475
JY
48492004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
4850
4851 * editfns.c (Fformat): Make both passes accept the same set of flags.
4852
fe905025
KH
48532004-01-23 Kenichi Handa <handa@m17n.org>
4854
4855 * fns.c (Fmd5): If OBJECT is a buffer different from the current
4856 one, set buffer to OBJECT temporarily.
4857
438fc6c0
SM
48582004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
4859
455316e2
SM
4860 * keyboard.c (kbd_buffer_gcpro): Remove.
4861 (kbd_buffer_store_event, clear_event, Fdiscard_input)
4862 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
4863 Don't initialize and/or maintain the variable any more. It was made
4864 redundant by my commit of 2003-06-15.
4865
438fc6c0
SM
4866 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
4867
5335a4ee
JD
48682004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4869
4870 * lisp.h: Add undef DECL_ALIGN.
4871
dcdaeebc
SM
48722004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
4873
4874 * process.c (wait_reading_process_input) [SYNC_INPUT]:
4875 Check interrupt_input_pending explicitly.
4876
4877 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
4878
4879 * keyboard.c (handle_async_input): New fun,
4880 extracted from input_available_signal.
4881 (input_available_signal, reinvoke_input_signal): Use it.
4882
9076a823
SM
48832004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
4884
d7107586
SM
4885 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
4886
4887 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
4888 manipulation macros for when tags are in the lower bits.
4889 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
4890 (DECL_ALIGN): New macro.
4891 (DEFUN): Use it.
4892
4893 * lisp.h [ENABLE_CHECKING]: Don't force union type.
4894
4895 * s/darwin.h (__attribute__): Remove outdated workaround.
4896
4897 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
4898
4899 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
4900 Don't check range of malloc address.
4901 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
4902
9076a823
SM
4903 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
4904
4905 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
4906
ba029065
KH
49072004-01-19 Kenichi Handa <handa@m17n.org>
4908
4909 * fontset.c (fontset_font_pattern): Fix previous change.
4910
7af0e8d7
MB
49112004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
4912
4913 * xdisp.c (Voverflow_newline_into_fringe)
4914 (move_it_in_display_line_to, redisplay_internal)
4915 (update_window_fringes, redisplay_window, display_line, window):
4916 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
4917 that it compiles without a window-system.
4918 * dispnew.c (direct_output_for_insert, update_window): Likewise.
4919
77a9cf69
KS
49202004-01-16 Kim F. Storm <storm@cua.dk>
4921
4922 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
4923
a64387ee 4924 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
4925 buffer_local_flags for indicate_buffer_boundaries.
4926 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
4927 default- variable for it.
4928
4929 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
4930 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 4931 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
4932 overflowing newlines into right fringe.
4933 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
4934 and indicate_bottom_line_p for buffer boundaries and scrolling.
4935 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
4936 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
4937 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
4938 and HOLLOW_SQUARE_BITMAP.
4939 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
4940 Add prototypes.
4941
4942 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
4943 instead of related indicator fields.
4944 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
4945 (direct_output_for_insert): Handle exact width lines like
4946 contined lines. Call update_window_fringes.
4947 (update_window): Call update_window_fringes.
4948 (scrolling_window): Don't skip desired rows with changed bitmaps.
4949 Check if fringe bitmaps changes when assigning scrolled rows.
4950
4951 * xdisp.c (Voverflow_newline_into_fringe): New variable.
4952 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
4953 (move_it_in_display_line_to): Overflow newline into fringe for
4954 rows that are exactly as wide as the window.
4955 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
4956 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
4957 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
4958 (fringe_bitmaps): Add new bitmaps.
4959 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
4960 Select proper bitmap for cursor in fringe when appropriate.
4961 Handle alignment of bitmap to top or bottom of row.
4962 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
4963 done by update_window_fringes.
4964 (update_window_fringes, draw_window_fringes): New functions.
4965 (redisplay_internal): Call update_window_fringes in case only
4966 cursor row is updated.
4967 (redisplay_window): Call update_window_fringes.
4968 Explicitly call draw_window_fringes if redisplay was done using
4969 the current matrix or the overlay arrow is in the window.
4970 (try_window_reusing_current_matrix): Mark scrolled rows for
4971 fringe update (to update buffer-boundaries / scrolling icons).
4972 (find_last_unchanged_at_beg_row): Handle exact width lines line
4973 continued lines.
4974 (display_line): Overflow newline into fringe for rows that are
4975 exactly as wide as the window. Don't append space for newline
d7107586 4976 in this case.
77a9cf69
KS
4977 (notice_overwritten_cursor): Explicitly clear cursor bitmap
4978 in fringe as if it had been overwritten.
4979 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 4980 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
4981 void-text-area-pointer as user options.
4982 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 4983
77a9cf69
KS
4984 * xterm.c (x_update_window_end): Call draw_window_fringes.
4985 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4986 in row instead of actually drawing fringe bitmaps.
4987 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4988 (x_draw_window_cursor): Draw cursor in fringe.
4989
4990 * w32term.c (x_update_window_end): Call draw_window_fringes.
4991 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4992 in row instead of actually drawing fringe bitmaps.
4993 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4994 (w32_draw_window_cursor): Draw cursor in fringe.
4995
4996 * macterm.c (x_update_window_end): Call draw_window_fringes.
4997 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4998 in row instead of actually drawing fringe bitmaps.
4999 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
5000 (mac_draw_window_cursor): Draw cursor in fringe.
5001
a633a954
JD
50022004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5003
5004 * xterm.c (handle_one_xevent): Don't handle characters that are part
5005 of an old style (XLookupString) compose sequence.
5006
80460525
KH
50072004-01-15 Kenichi Handa <handa@m17n.org>
5008
5009 * search.c (Freplace_match): Use make_multibyte_string or
5010 make_unibyte_string according to the buffer multibyteness.
5011
7fc34f85
SM
50122004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
5013
5014 * alloc.c (struct interval_block, struct string_block)
5015 (struct symbol_block, struct marker_block, live_string_p)
5016 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
5017 Better preserve alignment for objects in blocks.
5018 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
5019
5020 * lread.c (defvar_per_buffer): Remove dead declaration.
5021
5022 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
5023 space size.
5024
66070bd1
JD
50252004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5026
5027 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
5028 if a key press should pop down. Only pop down if a key is pressed
5029 outside the menu/dialog.
5030 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
5031 popup_get_selection.
5032 (create_and_show_dialog): Pass 1 for down_on_keypress to
5033 popup_get_selection.
5034
de7515d6
JD
50352004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5036
5037 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
5038 BLOCK/UNBLOCK_INPUT.
5039
160b1b50
JD
50402004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5041
5042 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
5043 specified.
5044
3a9f36e6
KH
50452004-01-08 Kenichi Handa <handa@m17n.org>
5046
5047 * editfns.c (Fformat): Fix '&' to '&&'.
5048
3803eb32
AS
50492004-01-08 Andreas Schwab <schwab@suse.de>
5050
5051 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
5052 size if PSEUDOVECTOR_FLAG is set.
5053
9da88f37
KH
50542004-01-07 Kenichi Handa <handa@m17n.org>
5055
74ac5074
KH
5056 * charset.c (Fdeclare_equiv_charset): Fix docstring.
5057
9da88f37
KH
5058 * fontset.c (fontset_ref_via_base): Fix previous change.
5059
05faee07
KS
50602004-01-07 Kim F. Storm <storm@cua.dk>
5061
5062 * process.c (read_process_output): Only activate adaptive
5063 buffering if we read less than 256 bytes at a time.
5064
634910c8
KS
50652004-01-06 Kim F. Storm <storm@cua.dk>
5066
5067 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
5068 object and image object. Return glyph width and height.
5069 (mode_line_string, marginal_area_string): Ditto.
5070
5071 * dispextern.h (buffer_posn_from_coords, mode_line_string)
5072 (marginal_area_string): Fix prototypes.
5073
5074 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 5075 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
5076 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
5077
5078 * keyboard.c (make_lispy_position): Use modified mode_line_string,
5079 buffer_posn_from_coords, and marginal_area_string functions to
5080 include both string object and image object in the lispy position.
5081 Also add actual glyph width and height to position.
5082 (read_key_sequence): Use real buffer position from mouse
5083 event to find keymap property even when click is in marginal area.
5084
5085 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
5086 mode_line_string and marginal_area_string functions to handle
5087 both string object and image object properties.
d7107586 5088
57951c2e
AS
50892004-01-06 Andreas Schwab <schwab@suse.de>
5090
5091 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
5092 character.
5093
181e6a61
AS
50942004-01-02 Andreas Schwab <schwab@suse.de>
5095
d7107586
SM
5096 * macterm.c (emacs_options, x_initialized, same_x_server):
5097 Remove unused (and duplicated) definitions.
181e6a61 5098
31e0fbdd
KS
50992004-01-02 Kim F. Storm <storm@cua.dk>
5100
5101 * process.h (struct Lisp_Process): New members for adaptive read
5102 buffering: adaptive_read_buffering, read_output_delay, and
5103 read_output_skip.
5104
5105 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
5106 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
5107 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
5108 (process_output_delay_count, process_output_skip): New vars.
5109 (Vprocess_adaptive_read_buffering): New variable.
5110 (make_process): Initialize adaptive read buffering members.
5111 (Fstart_process): Set adaptive_read_buffering member.
5112 (deactivate_process): Cleanup adaptive read buffering.
5113 (wait_reading_process_input): Temporarily omit delayed
5114 subprocesses from the set of file descriptors to read from;
5115 adjust the select timeout if we skipped any subprocesses.
5116 (read_process_output): Increase adaptive read buffering delay if
5117 we read less than a full buffer; reduce delay when we read a
5118 full buffer.
5119 (send_process): Simplify using local Lisp_Process var.
5120 Reset adaptive read buffering delay after write.
5121 (init_process): Initialize process_output_delay_count and
5122 process_output_skip.
5123 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
5124
68c6a789
JR
51252004-01-01 Jason Rumney <jasonr@gnu.org>
5126
d7107586 5127 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 5128
3f70fe82
LT
51292003-12-30 Luc Teirlinck <teirllm@auburn.edu>
5130
5131 * print.c (Ferror_message_string): Add hyperlink in the docstring
5132 to the definition of `signal' in the Elisp manual.
5133 * eval.c (Fsignal): Ditto.
5134
b6189c3b 51352003-12-29 James Clark <jjc@jclark.com>
c2be49ed
EZ
5136
5137 * fns.c (internal_equal): Return t for two NaN arguments.
5138
7abd90ea
RS
51392003-12-29 Richard M. Stallman <rms@gnu.org>
5140
5141 * data.c (store_symval_forwarding): Handle setting
5142 default-fill-column, etc., by changing the value in
5143 buffers that use the default.
5144
5145 * minibuf.c (Fset_minibuffer_window): Doc fix.
5146
5147 * fileio.c (choose_write_coding_system): Ignore auto_saving
5148 if using the visited file for auto saves.
5149 (Fwrite_region): Don't update SAVE_MODIFF
5150 if auto-saving in visited file.
5151
3e7cfcdc
KH
51522003-12-29 Kenichi Handa <handa@m17n.org>
5153
5154 * dispextern.h (face_font_available_p): Extern it.
5155
5156 * fontset.c (Voverriding_fontspec_alist): New variable.
5157 (lookup_overriding_fontspec): New function.
d7107586 5158 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
5159 (fontset_font_pattern): Likewise.
5160 (regulalize_fontname): New function.
5161 (Fset_fontset_font): Call regulalize_fontname.
5162 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
5163 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
5164 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
5165
5166 * xfaces.c (face_font_available_p): New function.
5167
7abd90ea
RS
51682003-12-28 Richard M. Stallman <rms@gnu.org>
5169
5170 * buffer.c (Fother_buffer): Don't crash if BUF is nil
5171 or if its name is nil.
5172
5173 * buffer.c (Fkill_buffer): Don't delete auto-save file
5174 if it's the same as the visited file.
5175
de1d1a40
LT
51762003-12-28 Luc Teirlinck <teirllm@auburn.edu>
5177
5178 * coding.c (Fcheck_coding_system): Doc fix.
5179
204fb75e
KS
51802003-12-28 Kim F. Storm <storm@cua.dk>
5181
5182 * Makefile.in (eval.o): Depend on dispextern.h.
5183
5184 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
5185 image glyph using image's ascent.
5186 (mode_line_string): Return image glyph as object clicked on.
5187 Adjust y0 for image glyph using image's ascent.
5188
5189 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
5190 (struct glyph): New members, ascent and descent. Used to save
5191 this glyph's ascent and descent, instead of having.
5192 (struct glyph): Declare member face_id using FACE_ID_BITS.
5193 (find_hot_spot): Add prototype.
5194
5195 * keyboard.c (Qimage): Remove extern (now in lisp.h).
5196 (QCmap): Declare extern.
5197 (make_lispy_position): When position is inside image hot-spot,
5198 use hot-spot element's id as posn element.
5199
5200 * lisp.h (IMAGEP): New macro to test for image object type.
5201 (Qimage): Declare extern.
5202
5203 * macfns.c (Qimage): Remove extern (now in lisp.h).
5204 (valid_image_p, parse_image_spec): Use IMAGEP macro.
5205
5206 * macterm.c (Qface, Qmouse_face): Remove unused externs.
5207
5208 * w32fns.c (Qimage): Remove extern (now in lisp.h).
5209 (valid_image_p, parse_image_spec): Use IMAGEP macro.
5210
5211 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
5212
5213 * w32term.c (Qface, Qmouse_face): Remove unused externs.
5214
5215 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
5216 pointer types.
5217 (Qrelative_width, Qalign_to): Remove unused variables.
5218 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
5219 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
5220 image maps.
d7107586 5221 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
5222 new dx and dy args.
5223 Remove buffer_only_p arg (always 0). Simplify code accordingly.
5224 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
5225 than row's ascent and height, to get sensible height on tall rows.
5226 (build_desired_tool_bar_string): Remove Qimage extern.
5227 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
5228 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
5229 image glyph is alone on the last line.
5230 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 5231 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 5232 (on_hot_spot_p): New function to check if position is inside an
d7107586 5233 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
5234 (find_hot_spot): New function to search for image hot-spot.
5235 (Flookup_image_map): New defun to search for image hot-spot.
5236 (define_frame_cursor1): New aux function to determine frame pointer.
5237 (note_mode_line_or_margin_highlight, note_mouse_highlight):
5238 Handle `pointer' text property and :pointer image property to
5239 control frame pointer shape. Detect image hot-spots for pointer
5240 and help_echo properties. Use define_frame_cursor1.
5241 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 5242 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
5243 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
5244
5245 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
5246
5247 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
5248 (Qimage): Remove extern (now in lisp.h).
5249 (valid_image_p, parse_image_spec): Use IMAGEP macro.
5250
5251 * xmenu.c (show_help_event): Remove unused code.
5252
5253 * xterm.c (Qface, Qmouse_face): Remove unused externs.
5254 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
5255 row's ascent and descent, to get a sensible height on tall rows.
5256
fc052137
LT
52572003-12-25 Luc Teirlinck <teirllm@auburn.edu>
5258
5259 * minibuf.c (Fcompleting_read): Undo previous change.
5260
a64387ee 52612003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
5262
5263 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
5264 Arguments GCPRO'ed in call to file name handler.
5265
56ffd194
TTN
52662003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
5267
5268 * termcap.c (tgetst1): Scan for "%pN"; if all
5269 N are continuous in [1,9], remove all "%pN".
5270
5202d23d
JD
52712003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5272
f26fab36
JD
5273 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
5274
5202d23d
JD
5275 * xfaces.c (lface_fully_specified_p): Take into account that
5276 MAC OS always have unspecified stipple.
5277
8babaa59
TTN
52782003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
5279
5280 * tparam.c (tparam1): Add handling for `%pN', which
5281 means use param N for the next substitution.
5282
2d176448
TTN
52832003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
5284
5285 * xfaces.c (Fcolor_gray_p): Fix omission bug:
5286 In case `frame' is nil, consult the selected frame.
5287 (Fcolor_supported_p): Likewise.
5288
adb0708c
LT
52892003-12-23 Luc Teirlinck <teirllm@auburn.edu>
5290
000eeb15
LT
5291 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
5292 Doc fixes.
0dc72b11
LT
5293
5294 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
5295 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
5296 (Fread_from_minibuffer): Delete code moved into read_minibuf.
5297 Doc fix.
5298 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
5299 read_minibuf.
5300 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 5301 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 5302
2e4d132b
KH
53032003-12-03 Kenichi Handa <handa@m17n.org>
5304
5305 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
5306 encoding sequence.
5307
3999c705
KH
53082003-12-01 Kenichi Handa <handa@m17n.org>
5309
5310 * composite.c (syms_of_composite): Don't make the compostion hash
5311 table week.
5312
d344ecbb
LT
53132003-11-30 Luc Teirlinck <teirllm@auburn.edu>
5314
5315 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
5316 * textprop.c (Fget_char_property_and_overlay): New function.
5317 (syms_of_textprop): Defsubr it.
5318
03d6484e
JD
53192003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5320
019b1f0e
JD
5321 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
5322 to compile on terminal configuration.
5323
03d6484e
JD
5324 * fileio.c (Fread_file_name): Check use_file_dialog also before
5325 calling Fx_file_dialog.
5326
5327 * fns.c: use_file_dialog: New variable.
5328 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
5329
442d3fd0
KS
53302003-11-29 Kim F. Storm <storm@cua.dk>
5331
5332 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
5333 (syms_of_msdos): Don't intern and staticpro them.
5334
0f6a07a8
KS
53352003-11-27 Kim F. Storm <storm@cua.dk>
5336
5337 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
5338 coordinates relative to glyph at posn. If glyph is an image,
5339 return that as object at posn. Callers changed.
5340 (mode_line_string, marginal_area_string): Calculate and return
5341 pixel coordinates relative to glyph. Callers changed.
5342
5343 * dispextern.h (buffer_posn_from_coords, mode_line_string)
5344 (marginal_area_string): Fix prototypes.
5345 (window_box_left_offset, window_box_right_offset): Add prototypes.
5346
5347 * frame.h (get_specified_cursor_type, get_window_cursor_type):
5348 Remove prototypes.
5349
5350 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
5351
5352 * keyboard.c (make_lispy_position): Add x and y coordinates
5353 relative to the current glyph as 7th element of position.
5354 If glyph is an image, return it in the object element.
5355 (read_key_sequence): Skip checks for keymap property in cases
5356 where POSN_STRING is not a string (e.g. an image).
5357
5358 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
5359 (Vshow_text_cursor_in_void): New variable.
5360 (glyph_to_pixel_coords): Don't use negative hpos.
5361 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
5362 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 5363 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
5364 (calc_pixel_width_or_height): New aux function, implementing
5365 pixel based artihmetic for glyph widths and heights.
5366 (produce_stretch_glyph): Use calc_pixel_width_or_height for
5367 :width, :height, :align-to, and :ascent, thus allowing these to
5368 be specified in pixels as well as multiples of characters.
5369 Don't produce stretch glyphs with zero width or height.
5370 (get_specified_cursor_type): Declare static.
5371 (get_window_cursor_type): Declare static. Add glyph arg to be
5372 able to know when cursor is on an image; always substitute
5373 hollow-box cursor for filled-box cursor on images, to avoid
5374 negative images and flicker when blinking the cursor.
5375 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
5376 (note_mode_line_or_margin_highlight): Use non-text cursor rather
5377 than vertical scroll-bar cursor in display margins.
5378 (note_mouse_highlight): Use non-text cursor rather than text
5379 cursor in fringes and over images in the text area.
5380 Use non-text cursor when mouse pointer is outside editable text,
5381 i.e. in the void after end-of-line or end-of-buffer; this was
5382 already done for W32, but is now standard for all systems --
5383 user can toggle show-text-cursor-in-void to get old behaviour.
5384 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
5385 Vdisplay_pixels_per_inch.
5386
00498bfc
AS
53872003-11-25 Andreas Schwab <schwab@suse.de>
5388
5389 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
5390 EMACS_INT to not lose bits.
5391 (Ffillarray): Don't set bits beyond the size of a bool vector.
5392
edaa824d
KS
53932003-11-25 Kim F. Storm <storm@cua.dk>
5394
5395 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
5396 define this defun on systems that cannot use stderr as lvalue.
5397
74d6f539
GM
53982003-11-24 Gerd Moellmann <gerd@gnu.org>
5399
5400 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
5401 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
5402 ld's default is incompatible with unexec.
5403
6a1ff3ba
KS
54042003-11-23 Kim F. Storm <storm@cua.dk>
5405
63dc7c6b
KS
5406 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
5407 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
5408 (Fforce_window_update): New defun.
5409 (syms_of_window): Defsubr it.
5410 (Fset_window_margins, Fset_window_fringes): Doc fix.
5411
6a1ff3ba
KS
5412 * print.c (Fredirect_debugging_output): New defun.
5413 (syms_of_print): Defsubr it.
5414
aef109b7
LT
54152003-11-22 Luc Teirlinck <teirllm@auburn.edu>
5416
5417 * fns.c (Fset_char_table_parent): Doc fix.
5418
6a1ff3ba 54192003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
5420
5421 * dispnew.c (buffer_posn_from_coords): Return actual row/column
5422 for glyph clicked on, rather than (unused) pixel positions.
5423 (mode_line_string, marginal_area_string): Change X and Y args to
5424 pointers for returning actual row/column for glyph clicked on.
5425 Simplify and optimize loops.
5426
aef109b7
LT
5427 * dispextern.h (mode_line_string, marginal_area_string):
5428 Update prototypes.
63ccbe21
KS
5429
5430 * keyboard.c (make_lispy_position): New function for generating
5431 mouse click positions from frame and pixel coordinates.
5432 Enhanced to return buffer position and actual row/column for
5433 events outside the text area using updated mode_line_string and
5434 marginal_area_string functions.
5435 Return left-fringe and right-fringe clicks as such, rather than
5436 clicks in text area.
5437 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
5438 pixel_to_glyph_coords, as we never use the results.
5439 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
5440 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
5441 Eliminate unused code in WHEEL_EVENT handling.
5442 (make_lispy_movement): Use make_lispy_position.
5443
5444 * window.c (coordinates_in_window): Remove redundant tests.
5445 Fix returned X pixel value for left-margin.
5446
5447 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
5448 mode_line_string and marginal_area_string parameters.
5449
a64387ee 54502003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 5451
d7107586
SM
5452 * w32.c (struct the_group, getgrgid): Add.
5453 * mac.c (struct my_group, getgrgid): Add.
aef109b7 5454
3dbf3426
LT
54552003-11-21 Luc Teirlinck <teirllm@auburn.edu>
5456
5457 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
5458
cae8ddbb 54592003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 5460
d7107586
SM
5461 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
5462 include in call to file name handler. Optionally translate numeric
5463 UID and GID to strings. Update docstring.
5464 (directory_files_internal): Add parameter ID-FORMAT.
5465 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
5466 include in call to file name handler and call to
5467 directory_files_internal. Update Docstring.
5468 (Fdirectory_files): Add dummy parameter in call to
5469 directory_files_internal.
5470 * lisp.h (Qinteger): Add.
5471 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
5472 (Ffile_attributes): Add parameter.
5473 * data.c (Qinteger): Export.
cae8ddbb 5474
2550b848
LT
54752003-11-21 Luc Teirlinck <teirllm@auburn.edu>
5476
3dbf3426 5477 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 5478
88380018
KS
54792003-11-19 Kim F. Storm <storm@cua.dk>
5480
5481 * xdisp.c (init_iterator): Initialize it->start to position
5482 before reseating (in case start position is invisible).
5483 (init_to_row_start): Set it->start to row-start.
5484 (redisplay_window): Accept optional_new_start if start position
5485 is invisible (in which case IT_CHARPOS overshoots PT).
5486 (display_line): Setup row->start from it->start (rather than
5487 it->current which is wrong if first char on line is invisible).
5488 When done, reseat it->start to it->current (= start of next row).
5489 (expose_area): Fix exposure of text area when first char (e.g. TAB)
5490 is only partially visible.
5491
5492 * dispextern.h (struct it): New member start.
5493
854c1a59
SM
54942003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
5495
455316e2
SM
5496 * alloc.c (make_float, Fcons): Clear the markbit at init time.
5497 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
5498 of block_index outside of the macro call.
5499 (Fgarbage_collect): Remove null code.
5500
5501 * m/amdx86-64.h: Don't redefine XPNTR.
5502
854c1a59
SM
5503 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
5504 of VALMASK.
5505
5506 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
5507 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
5508 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
5509
5510 * lisp.h (VALMASK): Only define for non-union type.
5511 (MARKBIT): Remove.
5512 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
5513 (XTYPE): Define unconditionally.
5514 (XSETTYPE): Remove one more remnant.
5515 (EQ): Define differently for the union and non-union cases.
5516 (INTMASK): New bit mask.
5517 (struct Lisp_Marker): Move down to prepare for upcoming patch.
5518 (GC_EQ): Delegate to EQ.
5519
5520 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
5521
a0c6ef2d
JD
55222003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5523
5524 * xterm.c (x_window_to_scroll_bar): Move check of display to
5525 where window_id is compared.
5526
859492c4
KS
55272003-11-17 Kim F. Storm <storm@cua.dk>
5528
5529 * dispextern.h (struct it): New member first_vpos.
5530
5531 * xdisp.c (start_display): Set it->first_vpos.
5532 (try_window_id): Use first_vpos to start display in first _text_
5533 line if no reusable lines at start of window with header line.
5534
810f2256
JD
55352003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5536
7c402969 5537 * w32fns.c (XPutPixel):
854c1a59
SM
5538 * w32bdf.c (w32_init_bdf_font):
5539 * sunfns.c (sel_read):
5540 * process.c (Fmake_network_process):
5541 * frame.c (store_frame_param):
5542 * fontset.c (Fset_fontset_font):
5543 * emacs.c (shut_down_emacs):
a64387ee 5544 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 5545
a32e9bfd
JD
5546 * config.in: Regenerate.
5547
810f2256
JD
5548 * xfns.c (x_window_to_frame, x_any_window_to_frame)
5549 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
5550 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
5551 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
5552 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
5553
5554 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
5555
5556 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
5557 (XTmouse_position, handle_one_xevent): Pass Display* to
5558 x_window_to_scroll_bar.
5559 (x_window_to_scroll_bar): Take a Display* argument.
5560 Check that display for frame is equal to Display* argument.
854c1a59 5561 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
5562 x_display_info_for_display instead. Use Display in xev instead
5563 of GDK_DISPLAY.
5564 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 5565 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
5566 (x_connection_closed): Call xg_display_close for GTK.
5567 (x_term_init): Call xg_display_open for additional displays.
5568 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
5569 for GTK.
5570
5571 * xmenu.c (single_menu_item, mouse_position_for_popup)
5572 (x_activate_menubar): Formatting adjustments.
5573
5574 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
5575 adjustments.
5576
5577 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
5578 (xg_display_close, xg_create_default_cursor)
5579 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
5580 handling.
854c1a59
SM
5581 (xg_left_ptr_cursor): Remove.
5582 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
5583 cursor here.
5584 (xg_win_to_widget): Take Display* argument, call
5585 gdk_xid_table_lookup_for_display.
5586 (xg_create_frame_widgets, xg_get_file_name, create_menus)
5587 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
5588 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
5589 in FRAME_X_DISPLAY_INFO.
5590 (xg_get_scroll_id_for_window): Take Display* argument.
5591 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 5592 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256 5593
78819ebb
KS
5594 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
5595 Display* argument.
5596 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
810f2256 5597
0b03cc78
JD
55982003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5599
5600 * xterm.c (x_detect_focus_change): Do not change focus frame for
5601 Enter/LeaveNotify if the current focus frame has explicit focus.
5602
77e688fa
KS
56032003-11-14 Kim F. Storm <storm@cua.dk>
5604
5605 * dispnew.c (update_text_area): Fix redisplay error when hscroll
5606 is active and first glyph is only partially visible.
854c1a59 5607
dd429b03
KH
56082003-11-13 Kenichi Handa <handa@m17n.org>
5609
5610 * xdisp.c (select_frame_for_redisplay): New function.
5611 (redisplay_internal): Record also selected_frame for
5612 unwind_redisplay. Call select_frame_for_redisplay before
5613 redrawing each frame.
5614 (unwind_redisplay): Argument changed to a cons.
5615
6d9266f4
LT
56162003-11-12 Luc Teirlinck <teirllm@auburn.edu>
5617
5618 * fns.c (Fstring_to_multibyte): Doc fix.
5619
80060eb3
KH
56202003-11-11 Kenichi Handa <handa@m17n.org>
5621
5622 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
5623
74305183
JD
56242003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5625
5626 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
5627 program specified positions.
5628
cfda993e
JD
56292003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5630
5631 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
5632
df211069
KH
56332003-11-08 Kenichi Handa <handa@m17n.org>
5634
5635 * Makefile.in (lisp): Add kannada.el.
5636 (shortlisp): Likewise.
5637
4307d534
KH
56382003-11-07 Kenichi Handa <handa@m17n.org>
5639
854c1a59
SM
5640 * coding.c (coding_allocate_composition_data):
5641 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
5642 (coding_restore_composition): Detect invalid composition data.
5643 Give Fstring and Fvector a Lispy integer, not C int.
5644
854c1a59
SM
56452003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
5646
5647 * floatfns.c (Flogb): Don't use VALMASK.
5648
5649 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
5650 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
5651
5652 * lisp.h (XINT): Move the cast to clarify what is going on.
5653 (GCTYPEMASK, XSETTYPE): Remove.
5654 (XGCTYPE): Make it an alias of XTYPE.
5655
d04103a1
JD
56562003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5657
5658 * xterm.c (x_term_init): Fix formatting.
5659
da18b5ac
JD
56602003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5661
78819ebb
KS
5662 * gtkutil.h (xg_have_tear_offs): Declare.
5663 (xg_keep_popup, xg_did_tearoff): Remove.
da18b5ac
JD
5664
5665 * gtkutil.c: Remove variable xg_did_tearoff.
5666 (xg_have_tear_offs): New function.
5667 (tearoff_remove): Just decrease xg_detached_menus.
5668 (tearoff_activate): Increase xg_detached_menus and call
5669 tearoff_remove when tearoff is removed.
854c1a59 5670 (xg_keep_popup): Remove function.
da18b5ac
JD
5671 (create_menus): Give add_tearoff_p as argument to recursive
5672 call to create_menus.
5673 (xg_create_widget): Use variables instead of multiple
5674 strcmp. Tell create_menus to create tear off only for
5675 menu bar menus.
5676 (xg_update_menubar): Change title for a detached menu also.
5677 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
5678 of deep_p.
5679 (xg_initialize): Initialize xg_detached_menus, remove
5680 initialization of xg_did_tearoff.
5681
5682 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
5683 xg_have_tear_offs returns non-zero.
5684 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
5685 call to xg_keep_popup.
5686
64d4923e
AC
56872003-11-01 Andrew Choi <akochoi@shaw.ca>
5688
5689 * macterm.c (XTread_socket): Handle menubar selection and grow
5690 window only for mouseDown events.
854c1a59 5691
6cc8bc07
JD
56922003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5693
5694 * xterm.c (x_term_init): For GTK part, increase x_initialized
5695 to check for more than one display. Use error instead of return 0.
5696
043131c4
AC
56972003-10-31 Andrew Choi <akochoi@shaw.ca>
5698
854c1a59 5699 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
5700 (copy_dysymtab): Call it.
5701
bdda99a1
LT
57022003-10-31 Luc Teirlinck <teirllm@auburn.edu>
5703
5704 * eval.c (Fdefvaralias): Doc fix.
5705
800f42ff 57062003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
5707
5708 * data.c (Fsetplist): Doc fix.
5709
ef35b389
LK
57102003-10-14 Lute Kamstra <lute@gnu.org>
5711
5712 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 5713
ef35b389 57142003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 5715
07107abc
KS
5716 * window.c (Fset_window_margins): Simplify arg checking.
5717
f7005886
RS
57182003-10-13 Richard M. Stallman <rms@gnu.org>
5719
5720 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
5721 (print_partial_compiled_pattern): Replace assert with a printout.
5722 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
5723
5724 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
5725
5726 * window.c (Fset_window_margins): Allow only integers as args.
5727 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
5728 Doc fixes.
5729
9c0c2af5
LK
57302003-10-13 Lute Kamstra <lute@gnu.org>
5731
5732 * window.c (Fset_window_fringes): Elaborate docstring.
5733
3f080e4e
AC
57342003-10-12 Andrew Choi <akochoi@shaw.ca>
5735
854c1a59 5736 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 5737
3f080e4e
AC
5738 * s/darwin.h (GC_MARK_STACK): Define.
5739
0aa513ed
JD
57402003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5741
5742 * window.c (shrink_windows): New function.
5743 (size_window): Call shrink_windows to calculate window sizes when
5744 shrinking frame with more than one window.
5745
6aa8858a
KS
57462003-10-12 Kim F. Storm <storm@cua.dk>
5747
5748 * xdisp.c (compute_fringe_widths): Doc fix.
5749
c2164d91
KH
57502003-10-08 Kenichi Handa <handa@m17n.org>
5751
854c1a59 5752 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 5753
f82ac129
KH
57542003-10-07 Kenichi Handa <handa@m17n.org>
5755
5756 * coding.c (Qcoding_system_define_form): New variable.
5757 (syms_of_coding): Intern and staticpro it.
5758 (Fcheck_coding_system): Try to autoload the definition of
5759 CODING-SYSTEM.
5760
9296c947
LT
57612003-10-05 Luc Teirlinck <teirllm@auburn.edu>
5762
5763 * fns.c (Frequire): Doc fix.
5764
c1f0671a
JD
57652003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5766
3d8c3826
JD
5767 * xfns.c (Fx_send_client_event): New function as a base for
5768 manipulating extended window manager hints.
6dc15d98 5769 (Fx_send_client_event): Remove unused variable s.
3d8c3826 5770
068ae0fd
JD
5771 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
5772 that function is removed.
5773
5774 * xterm.c (x_set_offset): Use move_offset_left/top instead of
5775 x/y_pixels_outer_diff.
5776 (x_check_expected_move): Calculate move_offset_left/top.
5777
5778 * xterm.h (struct x_output): New members: move_offset_top/left.
5779
854c1a59 5780 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
5781 call x_set_offset directly.
5782
5783 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
5784
96f09305
JD
5785 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
5786
5787 * xterm.c (x_delete_display): Free font names and font_encoder
5788 in dpyinfo->font_table.
5789
854c1a59
SM
5790 * xfns.c (Fx_close_connection): Only call XFreeFont here.
5791 Move xfree of font names to x_delete_display.
96f09305 5792
c1f0671a
JD
5793 * xterm.h (struct x_display_info): New member, wm_type.
5794 (struct x_output): New members, expected_top/left and
5795 check_expected_move.
5796
5797 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
5798 is received.
854c1a59
SM
5799 (handle_one_xevent): Rename x_check_expected_move from
5800 x_check_fullscreen_move.
c1f0671a
JD
5801 (x_set_offset): Only add WM decoration sizes to modified_top/left
5802 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 5803 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
5804 Removed fullscreen specific code. Use check_expected_move,
5805 expected_left/top instead. Also, set wm_type.
5806 (x_term_init): Initialize wm_type to unknown.
5807
5808 * frame.c (x_fullscreen_move): Remove addition of WM decoration
5809 sizes to move_x/y.
5810
be2fdba9
KH
58112003-10-03 Kenichi Handa <handa@m17n.org>
5812
5813 * macterm.c (x_load_font): Clear all members of FONTP before start
5814 filling them.
5815
58162003-10-02 Kenichi Handa <handa@m17n.org>
5817
5818 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
5819 before calling find_ccl_program_func. Call find_ccl_program_func
5820 only when fontp->font_encoder is not NULL.
5821
5822 * xterm.c (x_load_font): Clear all members of FONTP before start
5823 filling them.
5824
26a6e439
JPW
58252003-10-03 John Paul Wallington <jpw@gnu.org>
5826
5827 * keymap.c (map_keymap): Don't abort when binding is a vector.
5828
0d4c2dc2
JR
58292003-10-02 Jason Rumney <jasonr@gnu.org>
5830
854c1a59
SM
5831 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
5832 Sync dependencies with Makefile.in.
a63cf46f
JR
5833 (alloca.o): Remove.
5834
0d4c2dc2
JR
5835 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
5836 filling them.
5837
5838 * w32bdf.c (w32_load_bdf_font): Likewise.
5839
ab8f7d5c
RS
58402003-09-30 Richard M. Stallman <rms@gnu.org>
5841
5842 * term.c (set_tty_color_mode): Calculate current_mode_spec
5843 regardless of value of VAL.
5844
854c1a59 5845 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
5846 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
5847 Handle over_used when splitting UNDER.
5848
a64387ee 58492003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
5850
5851 * regex.c (regex_compile): Free the stack when returning from function.
5852
3413f972
KH
58532003-09-28 Kenichi Handa <handa@m17n.org>
5854
5855 * fontset.c (Finternal_char_font): Change return value to
5856 cons (FONT-NAME . GLYPH-CODE).
5857
a6eeaa81 58582003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
5859
5860 * term.c (tty_setup_colors): Treat any negative argument as -1.
5861
f98ddc99
KH
58622003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
5863
5864 * process.c (send_process): Delete unused temp_buf.
5865
66c8f1a8
DL
58662003-09-26 Dave Love <fx@gnu.org>
5867
5868 * xterm.c (x_bitmap_mask): Declare.
5869
ca716c26
DL
58702003-09-25 Dave Love <fx@gnu.org>
5871
5872 * Makefile.in (fns.o): Depend on md5.h.
5873
fbe57420
KS
58742003-09-25 Kim F. Storm <storm@cua.dk>
5875
5876 * window.c (set_window_buffer): Fix redisplay problems when
5877 switching between buffers with different display margin widths.
5878
ef6ae4ff
KS
58792003-09-23 Kim F. Storm <storm@cua.dk>
5880
5881 * process.c (set_socket_option): Fix :bindtodevice option.
5882 (Fset_network_process_option): Update process contact list when
5883 setting option succeeds.
5884 (Fmake_network_process): Doc fix.
5885
68e03c1c
DL
58862003-09-23 Dave Love <fx@gnu.org>
5887
7146d1c1 5888 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 5889
a6eeaa81 58902003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
5891
5892 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
5893 color mode is an integer number (it could be -1).
5894
8fe7d8c8
RS
58952003-09-22 Richard M. Stallman <rms@gnu.org>
5896
5897 * intervals.c (graft_intervals_into_buffer): Correct the main loop
5898 in the case where OVER is longer than UNDER.
5899
2f71b5ea
MY
59002003-09-22 Masatake YAMATO <jet@gyve.org>
5901
7146d1c1 5902 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 5903 `vertical_type'.
7146d1c1 5904
0c4da023
KS
59052003-09-21 Kim F. Storm <storm@cua.dk>
5906
5907 * frame.c (Vdefault_frame_scroll_bars): New variable.
5908 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
5909 (syms_of_frame): DEFVAR_LISP it, and initialize according to
5910 window-system default scroll bar position.
5911
b648413b
KS
5912 * window.c (Fwindow_scroll_bars): Doc fix.
5913
8f5b9e34
JD
59142003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5915
854c1a59 5916 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 5917
b0f23edf
RS
59182003-09-19 Richard M. Stallman <rms@gnu.org>
5919
5920 * atimer.h: Don't include lisp.h.
5921 (P_): Define it here (as well as elsewhere).
5922
5923 * print.c (Fprin1_to_string): Move the PRINTPREPARE
5924 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
5925
5926 * data.c (Fvariable_binding_locus): New function.
5927 (syms_of_data): defsubr it.
5928 (Flocal_variable_p): Delete duplicate call to indirect_variable.
5929
e1283999
DL
59302003-09-18 Dave Love <fx@gnu.org>
5931
ad5f3636
DL
5932 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
5933
e1283999
DL
5934 * process.c (Fnetwork_interface_info): Fix type error.
5935 (Fnetwork_interface_list): Doc fix.
5936 (read_process_output, read_process_output): Delete unused var.
5937
b8c7fd71
KS
59382003-09-17 Kim F. Storm <storm@cua.dk>
5939
5940 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
5941 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
5942 (Fnetwork_interface_info): Check that ifreq struct has required
5943 fields before accessing them; this requires that those fields are
5944 defined as macros, which may be too restrictive on some platforms,
5945 but it is better than failing on other platforms.
5946 (syms_of_process): Only defsubr above fns when included.
5947
11e0a411
DL
59482003-09-17 Dave Love <fx@gnu.org>
5949
5950 * unexalpha.c: Don't include varargs.h.
5951
e9c50801
KS
59522003-09-17 Kim F. Storm <storm@cua.dk>
5953
5954 * process.c (Fset_process_sentinel): Add sentinel to childp plist
5955 for network process.
5956 (socket_options): Add `:' prefix to option names. Add optbit field.
5957 (set_socket_option): Remove no_error arg and special handling of s < 0.
5958 Return 1<<optbit for known option, 0 for unknown.
5959 Do not interpret 0 as false for boolean option (only nil).
5960 Pass failed option and value to report_file_error.
7146d1c1 5961 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
5962 (Fset_network_process_option): New function to set just one option.
5963 (Fmake_network_process): Allow :coding arg to be a cons.
5964 Allow :server arg to be an integer specifying backlog size.
5965 Remove :options arg, and allow options to be specified directly
5966 as :KEY, VALUE pairs. Parse these options before binding socket.
5967 As before, :reuseaddr t is default for a server process, but this
5968 can now be disabled by specifying :reuseaddr nil.
5969 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
5970 (init_process): Availability of network options is now checked with
5971 simpler syntax (featurep 'make-network-process :OPTION); use loop to
5972 setup features.
5973 (syms_of_process): Fix defsubr's for the replaced functions.
5974
a0fc3644
DL
59752003-09-16 Dave Love <fx@gnu.org>
5976
5977 * Makefile.in: Depend on coding.h.
5978
6df2a645
KS
59792003-09-14 Kim F. Storm <storm@cua.dk>
5980
5981 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
5982 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
5983 (syms_of_process): Defsubr them.
5984
5985 * config.in: Regenerate.
7146d1c1
SM
5986
59872003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5988
5989 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
5990 * m/news-r6.h (XUNMARK): Remove.
5991 * m/mips.h (XUNMARK): Remove.
5992 * m/mips-siemens.h (XUNMARK): Remove.
5993 * m/iris4d.h (XUNMARK): Remove.
5994 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
5995
0930c1a1
SM
59962003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
5997
31003b9e
SM
5998 * lisp.h (VALBITS): Don't remove 1 for the markbit.
5999 (union Lisp_Object): Use unsigned int for types. Remove markbit.
6000 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
6001 (XTYPE): Use unsigned right-shift.
6002 (XMARKBIT, XMARK, XUNMARK): Remove.
6003
0930c1a1
SM
6004 * alloc.c (init_intervals, init_symbol, init_marker):
6005 Don't preallocate anything.
6006 (Fgarbage_collect, mark_object): Ignore the markbit.
6007
6008 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
6009
19bb0fcd 60102003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
6011
6012 * xdisp.c (pint2hrstr): New function.
6013 (decode_mode_spec): Add `%i' and `%I' specs.
6014 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
6015 for `mode-line-format'.
6016
03bb6a06
AS
60172003-09-07 Andreas Schwab <schwab@suse.de>
6018
6019 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
6020 avoid warning.
6021
a6eeaa81 60222003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 6023
0930c1a1 6024 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 6025
ed159bbf
KS
60262003-09-03 Kim F. Storm <storm@cua.dk>
6027
6028 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
6029 change (superseded by 2002-08-30 change); the default blink-off
6030 cursor is now again "no cursor".
6031
fe64a394
JR
60322003-09-01 Jason Rumney <jasonr@gnu.org>
6033
6034 * makefile.w32-in (alloca.o): Remove.
6035 (coding.o): Depend on intervals.h
6036 (emacs.o, bytecode.o): Depend on window.h
6037
c0175e24
DL
60382003-09-01 Dave Love <fx@gnu.org>
6039
6040 * Makefile.in (alloca.o): Remove commands.
6041 (coding.o): Depend on intervals.h composite.h window.h.
6042 (emacs.o): Depend on window.h keyboard.h keymap.h.
6043 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
6044 (bytecode.o): Depend on window.h.
6045
a24d4cb2
JR
60462003-08-31 Jason Rumney <jasonr@gnu.org>
6047
4bc2315e
JR
6048 * w32term.c (w32_per_char_metric): Allow cached metrics to be
6049 returned even when font_type is unknown.
6050
a24d4cb2
JR
6051 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
6052
9d35adc7
JD
60532003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6054
6055 * xterm.c (x_term_init): Initialize new fields in x_display_info.
6056
6057 * xterm.h (struct x_display_info): Add red/green/blue_bits and
6058 *_offset.
6059
6060 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
6061 calculate pixel value.
6062
6f68b035
GM
60632003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
6064
0930c1a1
SM
6065 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
6066 Don't tell redisplay display is accurate when it's actually been
6067 paused for pending input.
6f68b035 6068
4828b4d7
RS
60692003-08-29 Richard M. Stallman <rms@gnu.org>
6070
6071 * dispnew.c (adjust_glyph_matrix): Call window_box
6072 whenever W is nonzero.
6073
6074 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
6075 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 6076 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
6077 Use indirect_variable to trace thru variable aliases.
6078
6079 * config.in: Updated.
6080
6081 * callint.c (Fcall_interactively): Save and restore
6082 Vthis_command, Vthis_original_command, real_this_command,
6083 and current_kboard->Vlast_command.
6084
6085 * abbrev.c (Fexpand_abbrev): Insert before deleting.
6086
e019878d
GM
60872003-08-29 Gerd Moellmann <gerd@gnu.org>
6088
6089 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
6090
85478bc6
KH
60912003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
6092
0930c1a1 6093 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
6094 (decode_coding_sjis_big5): Likewise.
6095
07ce82d3
JR
60962003-08-27 Jason Rumney <jasonr@gnu.org>
6097
d3703de3
JR
6098 * w32.c (sys_pipe): Protect against file descriptor overflow.
6099
ee4a01d1
JR
6100 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
6101
07ce82d3
JR
6102 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
6103
a64387ee 61042003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
6105
6106 * xfns.c (Vgtk_version_string): New variable.
6107 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
6108
a6eeaa81 61092003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 6110
0930c1a1 6111 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 6112
5459e42a
EZ
6113 * Makefile.in (msdos.o): Depend on intervals.h.
6114
0930c1a1 6115 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 6116
231d6cfb
JD
61172003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6118
6119 * xterm.h (struct x_display_info): New fields: client_leader_window
6120 and Xatom_wm_client_leader.
6121
6122 * xterm.c (x_initialize): Move call to x_session_initialize to ...
6123 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
6124
6125 * xsmfns.c (create_client_leader_window): New function.
6126 (x_session_initialize): Call create_client_leader_window, take
6127 dpyinfo as argument.
6128
6129 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
6130
6131 * Makefile.in (xsmfns.o): Add more depenedencies.
6132
afa88464
DL
61332003-08-21 Dave Love <fx@gnu.org>
6134
6135 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
6136
f730033e
KH
61372003-08-21 Kenichi Handa <handa@m17n.org>
6138
6139 * term.c (term_init): Fix previous change; don't rely on the
6140 length of `buffer' if TERMINFO is defined.
6141
6dca786c
DL
61422003-08-20 Dave Love <fx@gnu.org>
6143
6144 * atimer.h: Include lisp.h.
6145
6146 * lisp.h (EMACS_LISP_H): New.
6147 (popup_activated_flag): Don't declare.
6148
6149 * alloca.c: Some merging with gnulib. Change logic and doc
6150 concerning (x)malloc/(x)free -- no longer Emacs-specific.
6151 [DO_BLOCK_INPUT]: Don't include lisp.h.
6152 (xmalloc, xfree): Declare.
6153 (malloc): Don't declare.
6154
0930c1a1 6155 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
6156 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
6157 atimer.h, blockinput.h.
6158
6159 * alloc.c (lisp_align_malloc): Change type of `aligned'.
6160
78819ebb 6161 * alloca.s: Remove.
6dca786c 6162
3a06a6d9
RS
61632003-08-19 Gerd Moellmann <gerd@gnu.org>
6164
6165 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
6166 use -lncurses.
6167
6168 * term.c (term_init): Use a buffer of size 4096 for tgetent since
6169 FreeBSD returns something longer than 2044. Abort if the end of
6170 the buffer is overwritten.
6171
27eeee55
MB
61722003-08-19 Miles Bader <miles@gnu.org>
6173
6174 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
6175
2f297815
GM
61762003-08-19 Gerd Moellmann <gerd@gnu.org>
6177
f4446bbf
GM
6178 * alloc.c (lisp_align_malloc): Check for memory full when
6179 allocating ablocks, which also avoids freeing a pointer into an
6180 ablocks structure.
6181
6182 * puresize.h (BASE_PURESIZE): Increase to 1100000.
6183
0930c1a1 6184 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 6185
0e7d7aae
RS
61862003-08-16 Richard M. Stallman <rms@gnu.org>
6187
6188 * editfns.c (Fencode_time): Doc fix.
6189
61902003-08-16 David Ponce <david@dponce.com>
6191
6192 * fileio.c (Fwrite_region): Fix conditional expression to issue
6193 the right message.
6194
b6189c3b 61952003-08-16 Juri Linkov <juri@jurta.org>
0e7d7aae
RS
6196
6197 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 6198 Set default value to 1.
0e7d7aae 6199
5d551295
KH
62002003-08-15 Kenichi Handa <handa@m17n.org>
6201
6202 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
6203 what autoscaled.
6204 (best_matching_font): Once we find a better scalable font, set
6205 non_scalable_has_exact_height_p to 1.
6206 (try_font_list): Call try_alternative_families to try any family
6207 with the given registry.
6208
1661e56b
AS
62092003-08-09 Andreas Schwab <schwab@suse.de>
6210
f29181dc
AS
6211 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
6212
1661e56b
AS
6213 * print.c (print_string): Fix printing of multibyte string with
6214 nontrivial printcharfun.
6215
465aa50a
JD
62162003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6217
6218 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
6219
6220 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
6221
e430e5ba
KH
62222003-07-31 Kenichi Handa <handa@m17n.org>
6223
6224 * process.c (read_process_output): Return the actually read bytes
6225 instead of the result of decoding.
6226
97e7188e
KH
62272003-07-31 Kenichi Handa <handa@m17n.org>
6228
6229 * xterm.h (struct x_bitmap_record): New member have_mask.
6230
6231 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
6232 to 0.
6233 (x_create_bitmap_from_file): Likewise.
6234 (x_destroy_bitmap): Check have_mask member before freeing a mask.
6235 (x_destroy_all_bitmaps): Likewise.
6236 (x_create_bitmap_mask): Set have_mask member to 1.
6237
b53094d6
RS
62382003-07-30 Richard M. Stallman <rms@gnu.org>
6239
6240 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
6241
631f2082
JD
62422003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6243
6244 * gtkutil.c (xg_mark_data): Update calls to mark_object.
6245
c855f2ca
RS
62462003-07-29 Richard M. Stallman <rms@gnu.org>
6247
6248 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
6249 Conditionalize XIM code on HAVE_XIM.
6250
6251 * fns.c (Fclear_string): New function.
6252 (syms_of_fns): defsubr it.
6253
b6189c3b 62542003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
17e6d491 6255
0930c1a1 6256 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 6257
29ea8ae9
SM
62582003-07-22 Stefan Monnier <monnier@cs.yale.edu>
6259
6260 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
6261
6262 * buffer.c (delete_all_overlays): New function.
6263 * buffer.h (delete_all_overlays): Declare.
6264 * coding.c (run_pre_post_conversion_on_str):
6265 * print.c (temp_output_buffer_setup):
6266 * fileio.c (Finsert_file_contents):
6267 * minibuf.c (get_minibuffer): Use it.
6268
1dd7ccf2
AC
62692003-07-22 Andrew Choi <akochoi@shaw.ca>
6270
6271 * unexmacosx.c (unexec_regions_sort_compare):
6272 (unexec_regions_merge): New functions. Sort and merge unexec
6273 regions before dumping them.
6274
f57bd967
DL
62752003-07-22 Dave Love <fx@gnu.org>
6276
6277 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
6278
7cdee936
SM
62792003-07-21 Stefan Monnier <monnier@cs.yale.edu>
6280
6281 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
6282 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
6283 MARKBIT as the gcmarkbit for strings.
6284
e50886d3
RS
62852003-07-21 Richard M. Stallman <rms@gnu.org>
6286
6287 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
6288
29ea8ae9 6289 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
6290 (syms_of_fns): Corresponding change.
6291
6292 * alloc.c (syms_of_alloc): Doc fixes.
6293
62942003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
6295
6296 * s/netbsd.h: Use -Wl syntax.
6297
fdc39b59
RS
62982003-07-17 Richard M. Stallman <rms@gnu.org>
6299
6300 * xterm.c (xim_initialize): Redo 6/24 change.
6301
9c53385f
SM
63022003-07-15 Stefan Monnier <monnier@cs.yale.edu>
6303
6304 * buffer.c (copy_overlays): Use EMACS_INT for positions.
6305 (Fswitch_to_buffer): Don't signal an error when switching to the same
6306 buffer in a dedicated window.
6307
6308 * alloc.c: Use bitmaps for cons, as was done for floats.
6309 (init_float, init_cons): Let the normal code allocate the first block.
6310 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
6311 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
6312 New macros.
6313 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
6314 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
6315 (live_cons_p): Check the pointer is not past the `conses' array.
6316 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
6317 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
6318 (survives_gc_p): Use CONS_MARKED_P and simplify.
6319 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
6320
dde13196
PE
63212003-07-13 Paul Eggert <eggert@twinsun.com>
6322
6323 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
6324 puts it into BSS instead, at least on Solaris 8 and 9.
6325 This is a valid optimization, and it may occur on other platforms,
6326 so Emacs should not assume that initializing a static variable to
6327 zero puts it into data.
6328 * alloc.c (pure, staticvec):
6329 Initialize these arrays to nonzero, so that they're not
6330 put into BSS by that optimization.
6331
a801bc34
SM
63322003-07-13 Stefan Monnier <monnier@cs.yale.edu>
6333
6334 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
6335 (lisp_align_malloc): Use posix_memalign is available.
6336 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
6337 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
6338 for consistency. Update users.
6339
0c8b2afa
RS
63402003-07-13 Richard M. Stallman <rms@gnu.org>
6341
6342 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
6343
668c2ab0
JB
63442003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
6345
6346 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
6347 and use the Gtk+ function gtk_window_icon_from_file if available.
6348
6349 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
6350 handle mask of bitmaps.
6351 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
6352 mask property.
6353 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
6354
6355 * xterm.h (xg_set_icon): New function.
6356
800bebe3
RS
63572003-07-12 Paul Eggert <eggert@twinsun.com>
6358
6359 * unexelf.c (unexec): Consider a section to precede the .bss
6360 section if its addresses overlap that of .bss.
6361
69e38995
RS
63622003-07-12 Richard M. Stallman <rms@gnu.org>
6363
6364 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
6365
6366 * config.in (HAVE_CRTIN): Add #undef.
6367 (INLINE): Really inline only if OPTIMIZE is defined.
6368
6369 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
6370 END_FILES_1.
6371 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 6372 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
6373
6374 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
6375 (TERMINFO): Define.
6376 (LIBS_TERMCAP): Define.
6377 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
6378
6379 * xfns.c: Include libpng/png.h instead of png.h.
6380
f1d0c238
AS
63812003-07-11 Andreas Schwab <schwab@suse.de>
6382
6383 * buffer.c (modify_overlay): Update prototype.
6384 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
6385 Likewise.
6386
5f6bf5fe
SM
63872003-07-09 Stefan Monnier <monnier@cs.yale.edu>
6388
6389 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
6390 (struct interval): Move to intervals.h.
6391 (struct Lisp_Marker): Use EMACS_INT for position info.
6392 (forward_point): Remove prototype of defunct function.
6393 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
6394 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
6395 (syms_of_textprop, set_text_properties): Remove prototypes that are
6396 already in intervals.h.
6397
6398 * intervals.h (struct interval): Move from lisp.h.
6399 Use EMACS_INT for position and size info.
6400
6401 * coding.c: Include intervals.h for Fset_text_properties.
6402
6403 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
6404 position and length information.
6405
2765b457
SM
64062003-07-09 Stefan Monnier <monnier@cs.yale.edu>
6407
6408 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
6409 position and length information.
6410
2410d73a
SM
64112003-07-09 Stefan Monnier <monnier@cs.yale.edu>
6412
6413 Change overlays_after and overlays_before so the overlays themselves
6414 are linked into lists, rather than using cons cells. After all each
6415 Lisp_Misc already occupies 5 words, so we can add a `next' field to
6416 Lisp_Overlay for free and save up one cons cell per overlay (not
6417 to mention one indirection when traversing the list of overlay).
6418
6419 * lisp.h (struct Lisp_Overlay): New field `next'.
6420
6421 * buffer.h (struct buffer): Change overlays_before and overlays_after
6422 from Lisp lists of overlays to pointers to overlays.
6423
6424 * buffer.c (overlay_strings, recenter_overlay_lists):
6425 Fix typo in eassert in last commit.
6426 (unchain_overlay): New function.
6427 (add_overlay_mod_hooklist): Use AREF.
6428 (copy_overlays, reset_buffer, overlays_at, overlays_in)
6429 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
6430 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
6431 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
6432 (report_overlay_modification, evaporate_overlays, init_buffer_once):
6433 Adjust to new type of overlays_(before|after).
6434
6435 * alloc.c (mark_object): Mark the new `next' field of overlays.
6436 (mark_buffer): Manually mark the overlays_(after|before) fields.
6437
6438 * coding.c (run_pre_post_conversion_on_str):
6439 * editfns.c (overlays_around):
6440 * xdisp.c (load_overlay_strings):
6441 * fileio.c (Finsert_file_contents):
6442 * indent.c (current_column):
6443 * insdel.c (signal_before_change, signal_after_change):
6444 * intervals.c (set_point_both):
6445 * print.c (temp_output_buffer_setup): Use new type for
6446 overlays_(before|after).
6447
04812929
SM
64482003-07-08 Stefan Monnier <monnier@cs.yale.edu>
6449
6450 * buffer.c (report_overlay_modification): Don't run hooks while
6451 traversing the list of overlays.
6452
6453 * buffer.h (struct buffer): Use an int for overlay_center.
6454 (overlays_at, evaporate_overlays, recenter_overlay_lists)
6455 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
6456
6457 * buffer.c (reset_buffer, recenter_overlay_lists)
6458 (adjust_overlays_for_insert, adjust_overlays_for_delete)
6459 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
6460 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
6461 (overlays_at, evaporate_overlays, recenter_overlay_lists)
6462 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
6463
6464 * xdisp.c (fast_find_position): Remove unused var.
6465
6466 * cmds.c (Qexpand_abbrev): New sym.
6467 (syms_of_cmds): Initialize it.
6468 (internal_self_insert): Use it to call expand-abbrev.
6469
2e7ecf15
KS
64702003-07-09 Kim F. Storm <storm@cua.dk>
6471
f9711de4 6472 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 6473 was configured with --without-xim.
42f81f64 6474 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 6475
c6de56a0
RS
64762003-07-07 Richard M. Stallman <rms@gnu.org>
6477
6478 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
6479
6480 * alloc.c (Fgarbage_collect): Doc fix.
6481
b6189c3b 64822003-07-07 Nozomu Ando <nand@mac.com>
b93fb365
KH
6483
6484 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
6485
bfe1a3f7
SM
64862003-07-06 Stefan Monnier <monnier@cs.yale.edu>
6487
04812929
SM
6488 * minibuf.c (read_minibuf): UNGCPRO before returning.
6489 (Ftry_completion, Fall_completions): Doc fix.
6490
bfe1a3f7
SM
6491 * alloc.c (live_float_p): Check that p is not past the `floats' array,
6492 now that `floats' is not the last element of the struct any more.
6493
ee79d1aa
JR
64942003-07-06 Jason Rumney <jasonr@gnu.org>
6495
6496 * w32term.h (ClipboardSequence_Proc): New type.
6497
6498 * w32fns.c (clipboard_sequence_fn): New variable.
6499 (globals_of_w32fns): Initialize it.
6500
6501 * w32select.c (last_clipboard_sequence_number): New variable.
6502 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
6503 number if possible.
6504
49723c04
SM
65052003-07-06 Stefan Monnier <monnier@cs.yale.edu>
6506
4698665f
SM
6507 * m/amdx86-64.h (MARKBIT):
6508 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
6509 MARKBIT and ARRAY_MARK_FLAG any more.
6510
6511 * m/hp800.h (XSETMARKBIT):
6512 * m/sr2k.h (XSETMARKBIT):
6513 * lisp.h (XSETMARKBIT): Remove unused macro.
6514
49723c04
SM
6515 * lisp.h (mark_object): Change prototype.
6516
6517 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
6518 (last_marked): Change accordingly.
6519 (mark_interval, mark_maybe_object, mark_maybe_pointer)
6520 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
6521 (mark_buffer): Update calls to mark_object.
6522
6523 * bytecode.c (mark_byte_stack):
6524 * fns.c (sweep_weak_table):
6525 * keyboard.c (mark_kboards): Update calls to mark_object.
6526
1d660eca
JR
65272003-07-06 Jason Rumney <jasonr@gnu.org>
6528
6529 * alloc.c (struct ablock): Only include padding when there is some.
6530
618b5ae4
SM
65312003-07-04 Stefan Monnier <monnier@cs.yale.edu>
6532
6533 * alloc.c (ALIGN): Add casts to simplify usage.
6534 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
6535 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
6536 (struct ablock, struct ablocks): New types.
6537 (free_ablock): New global var.
6538 (lisp_align_malloc, lisp_align_free): New functions.
6539 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
6540 (struct float_block): Reorder and add gcmarkbits.
6541 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
6542 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
6543 (init_float, make_float): Use lisp_align_malloc.
6544 (free_float, live_float_p): Don't use `type' any more.
6545 (make_float): Use FLOAT_UNMARK to access to mark bit.
6546 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
6547 Use FLOAT_MARKED_P to access the mark bit.
6548 (pure_alloc): Simplify use of ALIGN.
6549 (mark_object): Use FLOAT_MARK to access the mark bit.
6550 (gc_sweep): Use new macros to access the float's mark bit.
6551 (init_alloc_once): Init free_ablock.
6552
6553 * lisp.h (struct Lisp_Float): Remove unused field `type'.
6554
3ef06d12
SM
65552003-06-27 Stefan Monnier <monnier@cs.yale.edu>
6556
6557 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
6558 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
6559 (allocate_buffer): Move.
6560 (string_bytes): Don't mask markbit of `size_byte'.
6561 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
6562 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
6563 Use the `size' field of buffers (rather than the `name' field) for
6564 the mark bit, as is done for all other vectorlike objects.
6565 Use the new macros to access the mark bit of vectorlike objects.
6566
e81043aa
RS
65672003-06-26 Richard M. Stallman <rms@gnu.org>
6568
6569 * puresize.h (BASE_PURESIZE): Increment base size.
6570
6571 * xdisp.c (fast_find_position): Enable Gerd's new definition.
6572
6573 * xterm.c (xim_initialize): Undo previous change.
6574
2d0834cc
SM
65752003-06-26 Stefan Monnier <monnier@cs.yale.edu>
6576
6577 * alloc.c (survives_gc_p): Simplify.
6578
6579 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
6580
6581 * window.c (Fset_window_dedicated_p): Simplify.
6582 (display_buffer_1): Don't raise the win from which minibuf was entered.
6583 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
6584 (Fminibuffer_selected_window): Simplify.
6585
6586 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
6587
6588 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
6589 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
6590
6591 * insdel.c (check_markers, adjust_markers_for_delete)
6592 (adjust_markers_for_insert, adjust_markers_for_replace)
6593 (prepare_to_modify_buffer, RESTORE_VALUE):
6594 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
6595 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
6596 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
6597 * alloc.c (Fmake_marker, free_marker, gc_sweep):
6598 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
6599 * editfns.c (save_excursion_restore, transpose_markers):
6600 * window.c (delete_window):
6601 * xdisp.c (message_dolog): Update for new types.
6602
d54ae3d8
JD
66032003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6604
a5f696ac
JD
6605 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
6606 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 6607 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
6608
6609 * frame.c (make_frame): Initialize default_face_done_p.
6610
6611 * frame.h (struct frame): Add default_face_done_p.
6612
d54ae3d8
JD
6613 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
6614 will be defined.
6615
2336fe58
SM
66162003-06-25 Stefan Monnier <monnier@cs.yale.edu>
6617
6618 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
6619 Initialize the new field `gcmarkbit'.
6620 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
6621 (mark_interval_tree): Don't mark the tree separately from the nodes.
6622 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
6623 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
6624 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
6625
6626 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
6627 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
6628 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
6629 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
6630 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
6631
bcea31c2
DL
66322003-06-24 Dave Love <fx@gnu.org>
6633
6634 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
6635
6636 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
6637 from gnulib.
6638
2601f59e
RS
66392003-06-21 Richard M. Stallman <rms@gnu.org>
6640
6641 * fileio.c (Fwrite_region): Alternate messages
6642 for append and partial write.
6643
6644 * keyboard.c (read_key_sequence): When converting upcase fn key to
6645 downcase, update fkey and keytran so `backspace' gets translated.
6646
6647 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
6648
6649 * process.c (wait_reading_process_input): Don't signal SIGIO
6650 in batch mode.
6651
b5d2c621
KH
66522003-06-17 Kenichi Handa <handa@m17n.org>
6653
6654 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
6655 composite.h.
6656
6657 * xselect.c: Don't include charset.h, coding.h, composite.h.
6658 (Qforeign_selection): New variable.
6659 (syms_of_xselect): Intern and static it.
6660 (selection_data_to_lisp_data): Return a unibyte string made from
6661 data with `foreign-selection' text property.
6662
6793bc63
SM
66632003-06-15 Stefan Monnier <monnier@cs.yale.edu>
6664
6665 * termhooks.h (EVENT_INIT): New macro.
6666
6667 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
6668
6669 * alloc.c (mark_kboards): Move to keyboard.c.
6670
6671 * keyboard.c (record_asynch_buffer_change, read_avail_input):
6672 * xterm.c (x_dispatch_event):
6673 * xmenu.c (find_and_call_menu_selection):
6674 * xdisp.c (handle_tool_bar_click):
6675 * w32menu.c (menubar_selection_callback):
6676 * sysdep.c (kbd_input_ast, read_input_waiting):
6677 * msdos.c (dos_rawgetc):
6678 * macterm.c (mac_check_for_quit_char):
6679 * macmenu.c (menubar_selection_callback):
6680 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
6681 data to kbd_buffer_store_event.
6682
b3ea810c
KS
66832003-06-15 Kim F. Storm <storm@cua.dk>
6684
6685 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 6686 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 6687
b8f75eda
KG
66882003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
6689
6690 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
6691
ba92ce48
KH
66922003-06-12 Kenichi Handa <handa@m17n.org>
6693
6694 * fileio.c (Fwrite_region): Save and restore restriction.
6695
b80263be
DL
66962003-06-12 Dave Love <fx@gnu.org>
6697
6698 * alloca.c (alloca): Declare arg as size_t.
6699
6793bc63
SM
6700 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
6701 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 6702
b23c0a83
DL
67032003-06-11 Dave Love <fx@gnu.org>
6704
6705 * search.c (shrink_regexp_cache): Use xrealloc.
6706 (syms_of_search): Use xmalloc.
6707
700e47c2
KS
67082003-06-10 Kim F. Storm <storm@cua.dk>
6709
6710 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
6711 Adjust phys_cursor.x to be relative to window box, rather than
6712 text area before checking -- to ensure cursor is redrawn when
6713 exposing window.
6714 Note: This also fixes a similar (older) bug if display margins
6715 are present.
6716
f11aa0b2
KH
67172003-06-06 Kenichi Handa <handa@m17n.org>
6718
6719 * coding.c (encoding_buffer_size): If coding->type is
6720 coding_type_ccl, double magnification on CRLF encoding.
6721
3d143690
JR
67222003-06-06 Jason Rumney <jasonr@gnu.org>
6723
6724 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
6725 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
6726
6727 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
6728 Mac too.
6729
f16205ca
DL
67302003-06-05 Dave Love <fx@gnu.org>
6731
b23c0a83
DL
6732 * strftime.c: Merge changes from gnulib.
6733
f16205ca
DL
6734 * mktime.c (__mktime_internal): Merge changes from gnulib
6735 involving year 69 and dst2.
6736
6737 Changes to merge with gnulib version and be consistent with the
6738 autoconf test:
6739
6793bc63
SM
6740 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
6741 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
6742 [HAVE_LOCALE_H]: Include locale.h.
6743 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
6744
9b87a0bc
KS
67452003-06-05 Kim F. Storm <storm@cua.dk>
6746
6747 * window.c (coordinates_in_window): Convert X and Y to window
6748 relative coordinates inside mode-line and header-line parts.
6749 Convert X and Y to margin area relative coordinates inside left
6750 and right display margin parts.
6751
5a8a15ec
JR
67522003-06-05 Jason Rumney <jasonr@gnu.org>
6753
6754 * w32fns.c (add_system_logical_colors_to_map): New function.
6755 (Fx_open_connection): Use it.
6756
01ed8ff1
SM
67572003-06-04 Stefan Monnier <monnier@cs.yale.edu>
6758
6759 * process.c (allocate_pty): Revert part of the previous patch.
6760 (Faccept_process_output): Simplify.
6761
b427b65d
JR
67622003-06-04 Jason Rumney <jasonr@gnu.org>
6763
6764 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
6765
6766 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
6767 (lispy_mouse_wheel_names): Remove.
6768 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
6769 Always define drag_and_drop_syms.
6770
6771 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
6772 WHEEL_EVENT events.
6773
914a8c47
SM
67742003-06-03 Stefan Monnier <monnier@cs.yale.edu>
6775
01ed8ff1
SM
6776 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
6777
914a8c47
SM
6778 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
6779
adcb132c
JD
67802003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6781
6782 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
6783 menu item label.
6784
be781fa7
RS
67852003-06-03 Richard M. Stallman <rms@gnu.org>
6786
6787 * window.c (Fwindow_edges): Doc fix.
6788 (Fwindow_pixel_edges, Fwindow_inside_edges)
6789 (Fwindow_inside_pixel_edges): New functions.
6790 (syms_of_window): defsubr them.
6791
6792 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
6793 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
6794
914a8c47
SM
67952003-06-02 Stefan Monnier <monnier@cs.yale.edu>
6796
6797 * dispnew.c (Fsit_for): Don't lie about the number of args.
6798
5b07197a
DL
67992003-06-02 Dave Love <fx@gnu.org>
6800
6801 * callproc.c: Use HAVE_FCNTL_H, not USG5.
6802 (syms_of_callproc) <process-environment>: Doc fix.
6803
6804 * doc.c: Use HAVE_FCNTL_H, not USG5.
6805
6806 * xfaces.c (font_rescale_ratio): Fix for K&R.
6807
6808 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
6809
6810 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
6811
6812 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
6813
6814 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
6815 (xg_create_frame_widgets): Use ENCODE_UTF_8.
6816
d7107586 6817 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
6818
6819 * xmenu.c (ENCODE_MENU_STRING): New.
6820 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
6821 Use it.
6822
6823 * coding.h (ENCODE_UTF_8): New.
6824 (Qutf_8): Declare.
6825
6826 * coding.c (Qutf_8): New.
6827 (syms_of_coding): Intern it.
6828
6829 * fns.c: Doc fixes.
6830
7335b336
KH
68312003-06-02 Kenichi Handa <handa@m17n.org>
6832
6833 * buffer.c (Fset_buffer_multibyte): Fix previous change.
6834
914a8c47
SM
68352003-06-01 Stefan Monnier <monnier@cs.yale.edu>
6836
6837 * lread.c (openp): Make sure STR is a string.
6838
9862c135
JR
68392003-06-01 David Ponce <david@dponce.com>
6840
cab27d04 6841 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
9862c135
JR
6842 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
6843
6844 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
6845 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
6846 (discard_mouse_events): Discard WHEEL_EVENT events too.
6847 (lispy_wheel_names, wheel_syms): New.
6848 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
cab27d04 6849 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
914a8c47 6850 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
6851
6852 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
6853 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6854 WHEEL_EVENT events.
6855
f984e73e
JPW
68562003-05-31 John Paul Wallington <jpw@gnu.org>
6857
6858 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
6859 timer are in lisp/emacs-lisp.
6860
1efcd78f
KH
68612003-05-31 Kenichi Handa <handa@m17n.org>
6862
458c8af4
KH
6863 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
6864 region when a buffer is changed to unibyte.
6865
1efcd78f
KH
6866 * charset.h (VALID_LEADING_CODE_P): New macro.
6867 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
6868
778e2804
KH
6869 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
6870 is nonzero, accept multibyte form of eight-bit-control chars.
6871 (decode_composition_emacs_mule): Likewise.
6872 (decode_coding_emacs_mule): Likewise.
6873 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
6874 multibyte form of eight-bit-control chars.
6875
6876 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
6877 (Finsert_file_contents): If coding-system-for-read is bound to
6878 Qauto_save_coding, use the coding system emacs-mule with special
6879 setting for recovering a file.
6880 (choose_write_coding_system): On auto saving, use the coding
6881 system emacs-mule with special setting for auto saving.
6882 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
6883
034060e4
KH
68842003-05-30 Kenichi Handa <handa@m17n.org>
6885
6886 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
6887 properly before calling ccl_driver.
6888
778e2804 6889 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4 6890
cab27d04 6891 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
034060e4
KH
6892 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
6893 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
6894
595f5aa5
GM
68952003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
6896
6897 * xfaces.c (realize_default_face): Do not abort if lface is
6898 non-existent - reverts change from 2003-05-19.
6899
103e0180
KH
69002003-05-29 Kenichi Handa <handa@m17n.org>
6901
6902 * coding.c (decode_coding_iso2022): Pay attention to the byte
6903 sequence of CTEXT extended segment, and retain those bytes as is.
6904
69052003-05-28 Kenichi Handa <handa@m17n.org>
6906
cab27d04 6907 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
103e0180
KH
6908 of CODING_REPLACEMENT_CHARACTER.
6909 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
6910 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
6911 check this flag on encoding.
cab27d04
SM
6912 (encode_coding_sjis_big5):
6913 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
6914 (Fset_terminal_coding_system_internal):
6915 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
6916 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
6917
6918 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
103e0180
KH
6919 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
6920 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
6921
ff6a3bfb 69222003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 6923
ff6a3bfb
RS
6924 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
6925
6926 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 6927
1963c428
KS
69282003-05-28 Kim F. Storm <storm@cua.dk>
6929
6930 * xdisp.c (expose_window): Fix error in calculation of
6931 window relative coordinates of area to redisplay.
6932
2b5d4601
JR
69332003-05-27 Jason Rumney <jasonr@gnu.org>
6934
6935 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
6936
1c64a4a2
JB
69372003-05-27 David Ponce <david@dponce.com>
6938
6939 Handle W32 mouse wheel events as mouse click events, like in X.
6940
6941 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
6942 MOUSE_WHEEL_EVENT anymore.
6943
6944 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
6945 Scrolling down/up the mouse wheel is respectively mapped to mouse
6946 button 4 and 5.
6947 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6948 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
6949 WM_MOUSEWHEEL events.
6950
2d031b89
AS
69512003-05-27 Andreas Schwab <schwab@suse.de>
6952
20464fdf
AS
6953 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
6954
2d031b89
AS
6955 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
6956 partially visible line.
6957
6958 * alloc.c (Fgarbage_collect): Fix last change.
6959
97bc76d4
JPW
69602003-05-26 John Paul Wallington <jpw@gnu.org>
6961
6962 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
6963
56613f06
SM
69642003-05-25 Stefan Monnier <monnier@cs.yale.edu>
6965
6966 * window.c (Fset_window_buffer): Add type of `keep_margins'.
6967 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
6968
6969 * window.h (window_box_text_cols): Declare.
6970
6971 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
6972 (x_draw_vertical_border): Remove unused var `f'.
6973
6974 * xfaces.c (build_scalable_font_name): Remove `unused var
6975 pixel_size' warning.
6976
6977 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
6978
6979 * unexelf.c (unexec): Remove `unused var n' warning.
6980
6981 * strftime.c (my_strftime_localtime_r): Remove `defined but
6982 unused' warning.
6983
6984 * process.c (allocate_pty): Remove `unused var stb' and
6985 `cp might be used uninitialized' warnings.
6986
6987 * dispnew.c (mode_line_string): Remove unused var `f'.
6988
6989 * coding.c (find_safe_codings): Remove unused var `i'.
6990
6991 * bytecode.c (Fbyte_code): Remove `unused val' warning.
6992
6993 * buffer.c (Fkill_buffer): Remove unused var `list'.
6994
6995 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
6996
93421a1f
JD
69972003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6998
6999 * frame.c (make_frame): Condition want_fullscreen with
7000 HAVE_WINDOW_SYSTEM.
7001
c4b8aebc
JB
70022003-05-25 Juanma Barranquero <lektu@terra.es>
7003
7004 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
7005 (Fwindow_scroll_bars): Fix typo in docstring.
7006
0416870b
KS
70072003-05-24 Kim F. Storm <storm@cua.dk>
7008
7009 The following changes serve several purposes:
7010
7011 1) Swap the position of fringes and display margins in windows, i.e.
7012 the fringes are now displayed between the margins and the text area
7013 (by default).
7014
7015 2) Allow fringe and scroll bar parameters to be set per-buffer and
7016 per-window (like display margins). Such settings are now stored
7017 in window configurations, preserved when frames are resized, and
9018a88e 7018 copied when windows are split vertically or horizontally.
0416870b
KS
7019 Several bugs related to display margins have been fixed.
7020
7021 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 7022
0416870b
KS
7023 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
7024 rather than FRAME_WIDTH (FRAME_FONT (f)).
7025
7026 5) Introduce a consistent naming of variables, members and macros
7027 depending on whether their value is measured in pixels or in
7028 canonical columns/lines. Pixel dimensions are named *_width and
7029 *_height, while canonical columns/lines are named *_cols and
7030 *_lines. Pixel positions are named *_x and *_y, while column/line
7031 positions are named *_col and *_line.
7032
7033 6) Consolidate more of the X, W32, and MAC gui code by moving
7034 common data into struct frame, and generalize it for the non-gui
7035 case by using suitable defaults.
7036
7037 7) Cleanup and consolidate the macros controlling frame and window
7038 layout into frame.h and window.h, and generalize the use of the
7039 various window_box_* functions (enhanced to handle the new fringe
7040 position and the per-window fringe and scroll bar settings).
7041
7042 * frame.h (struct frame): Rename members height to text_lines,
7043 width to text_cols, window_height to total_lines, window_width to
7044 total_cols, new_height to new_text_lines, new_width to
7045 new_text_cols. All uses changed.
7046 (struct frame): New members which consolidate common members of
7047 x_output, w32_output, and mac_output structures: left_pos,
7048 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
7049 win_gravity, size_hint_flags, border_width, internal_border_width,
7050 line_height, fringe_cols, left_fringe_width, right_fringe_width,
7051 want_fullscreen. All uses changed.
7052 (struct frame): New member column_width contaning the canonical
7053 column width, analogue to line_height. All uses changed.
7054 (struct frame): Rename members scroll_bar_pixel_width to
7055 config_scroll_bar_width, and scroll_bar_cols to
7056 config_scroll_bar_cols. All uses changed.
7057 (struct frame): New member scroll_bar_actual_width which
7058 consolidates and renames the vertical_scroll_bar_extra member of
7059 x_output, w32_output, and mac_output structures. All uses changed.
cab27d04 7060 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
0416870b
KS
7061 from x/w32/macterm.h files. All uses changed. Also change code
7062 which referred to f->output_data...->pixel_height.
cab27d04 7063 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
f63fd14e 7064 from x/w32/macterm.h files. All uses changed. Also change code
0416870b 7065 which referred to f->output_data...->pixel_width.
cab27d04 7066 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
0416870b 7067 Also change code which referred to f->height.
cab27d04 7068 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
0416870b
KS
7069 Also change code which referred to f->width.
7070 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
7071 to update new_text_lines and new_text_cols members directly.
cab27d04 7072 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
0416870b 7073 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
cab27d04 7074 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
0416870b
KS
7075 FRAME_SCROLL_BAR_COLS. All uses changed.
7076 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
cab27d04 7077 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
0416870b
KS
7078 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
7079 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
7080 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
cab27d04
SM
7081 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
7082 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
7083 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
0416870b
KS
7084 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
7085 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
cab27d04
SM
7086 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
7087 Unconditionally return line_height member (it now has proper value
7088 also for non-window frames).
7089 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
0416870b
KS
7090 return new column_width member (rather than the default font width).
7091 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
cab27d04 7092 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
0416870b
KS
7093 from x/w32/macterm.h files. Unconditionally return corresponding
7094 member of frame structure (they now have proper values also for
7095 non-window frames).
cab27d04 7096 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
0416870b
KS
7097 Calculate return value from left and right widths.
7098 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
7099 internal_border_width member (has proper value for non-window frame).
cab27d04
SM
7100 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
7101 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
7102 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
7103 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
7104 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
0416870b 7105 consolidated from xterm.h, macterm.h, and w32term.h.
cab27d04 7106 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
0416870b 7107 consolidated from xterm.h, macterm.h, and w32term.h.
cab27d04 7108 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
0416870b 7109 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
cab27d04 7110 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
0416870b 7111 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
cab27d04 7112 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
0416870b 7113 consolidated from x/mac/w32term.h.
cab27d04 7114 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
0416870b 7115 consolidated from x/mac/w32term.h.
cab27d04 7116 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
0416870b 7117 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
cab27d04 7118 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
0416870b
KS
7119 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
7120
7121 * window.h (struct window): Rename members left to left_col,
7122 top to top_line, height to total_lines, width to total_cols,
7123 left_margin_width to left_margin_cols, right_margin_width to
7124 right_margin_cols, orig_height to orig_total_lines, orig_top to
7125 orig_top_line. All uses changed.
7126 (struct window): New members left_fringe_width, right_fringe_width,
7127 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
7128 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
7129 New macros primarily used to simplify other macros.
7130 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
7131 referred to XINT (w->width).
7132 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
7133 referred to XINT (w->height).
7134 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
7135 referred to XINT (w->width) * canon_x_unit.
7136 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
7137 referred to XINT (w->height) * canon_y_unit.
7138 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
7139 referred to XINT (w->left).
cab27d04 7140 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
0416870b
KS
7141 all uses and code that referred to XINT (w->left) + XINT (w->width).
7142 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
7143 referred to XINT (w->top).
7144 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
7145 referred to XINT (w->top) + XINT (w->height).
7146 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
7147 referred to XINT (w->left) * canon_x_unit.
7148 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
7149 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
7150 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
7151 referred to XINT (w->top) * canon_y_unit.
7152 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
7153 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
7154 (WINDOW_LEFTMOST_P): New macro.
cab27d04 7155 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
0416870b 7156 All uses changed.
cab27d04 7157 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
0416870b 7158 All uses changed.
cab27d04 7159 (WINDOW_BOX_LEFT_EDGE_X): Rename from
0416870b
KS
7160 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
7161 Do not exclude left fringe width.
cab27d04 7162 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
0416870b
KS
7163 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
7164 Do not exclude fringe widths.
7165 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
7166 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
7167 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
7168 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
7169 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
7170 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
7171 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
7172 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
7173 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
7174 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
7175 New macros. Change code which referenced corresponding
7176 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
7177 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
7178 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
7179 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
7180 allow per-window scroll-bar settings.
7181 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
7182 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
7183 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
7184 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
7185 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
7186 FRAME_SCROLL_BAR_WIDTH.
7187 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 7188 (WINDOW_SCROLL_BAR_AREA_X): New macros.
cab27d04 7189 (WINDOW_HEADER_LINE_HEIGHT): Rename from
0416870b 7190 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
cab27d04 7191 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
0416870b 7192 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
cab27d04 7193 (WINDOW_BOX_TEXT_HEIGHT): Rename from
0416870b
KS
7194 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
7195 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
7196 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
cab27d04
SM
7197 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
7198 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
0416870b 7199 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
cab27d04 7200 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
0416870b
KS
7201 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
7202 (window_from_coordinates): Update prototype.
7203 (Fset_window_buffer): Update EXFUN.
7204 (set_window_buffer): Update prototype.
9018a88e 7205
0416870b 7206 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 7207 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
7208 changed.
7209 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
7210 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
7211 internal_border_width is now set to 0 for non-window frames.
7212 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
7213 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
7214 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
7215 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
7216 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
7217 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
7218 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
7219 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
7220 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 7221 Move to window.h and renamed [see window.h changes].
0416870b
KS
7222 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
7223 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
7224 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
7225 Use WINDOW_TOTAL_LINES.
0416870b
KS
7226 (frame_update_line_height): Remove prototype.
7227
7228 * buffer.h (struct buffer): Rename members measured in columns:
7229 left_margin_width to left_margin_cols, right_margin_width to
7230 right_margin_cols. All uses changed.
7231 New members left_fringe_width, right_fringe_width,
7232 fringes_outside_margins for per-buffer fringe settings.
7233 New members scroll_bar_width and vertical_scroll_bar_type for
7234 per-buffer scroll bar settings.
7235
7236 * buffer.c (init_buffer_once): Set buffer_defaults and
7237 buffer_local_flags for new buffer-local variables
7238 left_fringe_width, right_fringe_width, fringes_outside_margins,
7239 scroll_bar_width, and vertical_scroll_bar_type.
7240 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
7241 default-* variables for them.
7242
7243 * dispnew.c: Make (many) trivial substitutions for renamed and
7244 new macros in dispextern.h, frame.h and window.h.
7245 (mode_line_string): No need to adjust width for mode lines, as it
7246 is already adjusted by the caller.
7247 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 7248
0416870b
KS
7249 * frame.c: Make (many) trivial substitutions for renamed and
7250 new macros in dispextern.h, frame.h and window.h.
7251 (make_frame): Initialize left_fringe_width, right_fringe_width,
7252 fringe_cols, scroll_bar_actual_width, border_width,
7253 internal_border_width, column_width, line_height, x_pixels_diff,
7254 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
7255 members with values suitable for a non-window frames.
7256
7257 * gtkutil.c: Make (many) trivial substitutions for renamed and
7258 new macros in dispextern.h, frame.h and window.h.
9018a88e 7259
0416870b
KS
7260 * indent.c: Make (few) trivial substitutions for renamed and
7261 new macros in dispextern.h, frame.h and window.h.
7262
7263 * keyboard.c: Make (many) trivial substitutions for renamed and
7264 new macros in dispextern.h, frame.h and window.h.
7265 (make_lispy_event): Use window positions returned from
7266 window_from_coordinates when constructing the lisp event for
7267 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
7268 (incorrect) values locally.
7269 (make_lispy_movement): Use window positions returned from
7270 window_from_coordinates when constructing the lisp event, rather
7271 than calculating (incorrect) values locally.
7272
7273 * scroll.c: Make (some) trivial substitutions for renamed and
7274 new macros in dispextern.h, frame.h and window.h.
7275
7276 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
7277 scroll-bars.
7278
7279 * sysdep.c: Make (few) trivial substitutions for renamed and
7280 new macros in dispextern.h, frame.h and window.h.
7281
7282 * term.c: Make (some) trivial substitutions for renamed and
7283 new macros in dispextern.h, frame.h and window.h.
7284
7285 * widget.c: Make (few) trivial substitutions for renamed and
7286 new macros in dispextern.h, frame.h and window.h.
7287
7288 * window.c: Make (many) trivial substitutions for renamed and
7289 new macros in dispextern.h, frame.h and window.h.
7290 (make_window): Initialize new members
7291 left_margin_cols, right_margin_cols, left_fringe_width,
7292 right_fringe_width, fringes_outside_margins, scroll_bar_width,
7293 and vertical_scroll_bar_type.
cab27d04 7294 (coordinates_in_window): Adapt to new fringe/margin positions
9018a88e 7295 and per-window fringes and scroll-bars.
0416870b 7296 Fix bug related to incorrectly adjusting coordinates by
9018a88e 7297 frame's internal_border_width (the effect normally negible since
0416870b
KS
7298 the internal_border_width is typically 0 or 1 pixel, but very
7299 noticeable for an internal_border_width of e.g. 25 pixels).
7300 Upon successful return (other than ON_NOTHING), the coordinates
7301 are now always properly converted to window relative for the
7302 given display element.
7303 (window_from_coordinates): Add new parameters wx and wy to
7304 return the window relative x and y position in the returned
7305 window and part. A null arg means, don't return the position.
7306 All callers changed.
7307 (adjust_window_margins): New function which may reduce the width
7308 of the display margins if a window's text area is too small after
7309 resizing or splitting windows.
7310 (size_window): Fix bug that did not account for display margin
7311 widths when checking the minimum width of a window; use
7312 adjust_window_margins.
7313 (set_window_buffer): Call Fset_window_fringes and
7314 Fset_window_scroll_bars to setup per-window elements.
7315 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
7316 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
7317 (e.g. after splitting a window or resizing the frame).
7318 All callers changed.
0416870b
KS
7319 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
7320 (Fsplit_window): Duplicate original window's display margin,
7321 fringe, and scroll-bar settings; then call Fset_window_buffer with
7322 KEEP_MARGINS non-nil. This fixes a bug which caused a split
7323 window to only preserve the display margins in one of the windows.
c4b8aebc 7324 When splitting horizontally, call adjust_window_margins on both
0416870b 7325 windows to ensure that the text area of the new windows is non too
f9711de4 7326 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
7327 width of the split window was less than the width of the display
7328 margins.
cab27d04 7329 (window_box_text_cols): Rename from window_internal_width.
9018a88e 7330 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
7331 Fix bug that caused vertical separator to be subtracted also on
7332 window frames. Fix another bug that did not reduce the returned
7333 value by the columns used for display margins.
7334 (window_scroll_line_based): Fix bug related to scrolling too much
7335 when display margins are present (implicitly fixed by the fix to
7336 window_box_text_cols).
7337 (scroll_left, scroll_right): Fix bug related to scrolling too far
7338 by default when display margins are present (implicitly fixed by
7339 the fix to window_box_text_cols).
7340 (struct saved_window): Rename members left to left_col, top to
7341 top_line, width to total_cols, height to total_lines, orig_top to
7342 orig_top_line, orig_height to orig_total_lines. All uses changed.
7343 New members left_margin_cols, right_margin_cols,
7344 left_fringe_width, right_fringe_width, fringes_outside_margins,
7345 scroll_bar_width, and vertical_scroll_bar_type for saving
7346 per-window display elements.
7347 (Fset_window_configuration): Restore display margins, fringes,
7348 and scroll bar settings. This fixes a bug which caused display
7349 margins to be discarded when saving and restoring a window
7350 configuration.
7351 (save_window_save): Save display margins, fringes, and scroll bar
7352 settings. This fixes a bug which caused display margins to be
7353 discarded when saving and restoring a window configuration.
7354 (Fset_window_margins): Do nothing if display margins are not
7355 really changed. Otherwise, call adjust_window_margins to ensure
7356 the text area doesn't get too narrow. This fixes a bug which
f9711de4 7357 could cause Emacs to trap if setting display margins wider than
0416870b
KS
7358 the width of the window.
7359 (Fset_window_fringes): New defun to allow user to specifically set
7360 this window's fringe widths and position vs. display margins.
cab27d04 7361 (Fwindow_fringes): New defun to return window's actual fringe settings.
0416870b
KS
7362 (Fset_window_scroll_bars): New defun to allow user to specifically
7363 set this window's scroll bar width and position.
7364 (Fwindow_scroll_bars): New defun to return window's actual scroll
7365 bar settings.
7366 (compare_window_configurations): Also compare display margins,
7367 fringes, and scroll bar settings.
7368 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
7369
7370 * xdisp.c: Make (many) trivial substitutions for renamed and
7371 new macros in dispextern.h, frame.h and window.h.
7372 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 7373 and new fringe vs. display margin position. Note that returned
0416870b
KS
7374 value is no longer guaranteed to be a whole multiple of the frame
7375 column width, since per-window fringes may now be any width.
7376 (window_box_left_offset): New function like window_box_left, but
7377 value is relative to left border of window (rather than frame).
7378 (window_box_right_offset): New function like window_box_right,
7379 but value is relative to left border of window.
7380 (window_box_left): Adapt to per-window fringes and scroll bars,
7381 and new fringe vs. display margin position. Simplify by using
7382 WINDOW_LEFT_EDGE_X and window_box_left_offset.
7383 (window_box): Allow null args for unnecessary return values;
7384 change/simplify relevant callers.
7385 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
7386 and new fringe vs. display margin position.
7387 Use window_box_left_offset and window_box_right_offset
0416870b 7388 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
7389 scroll bars, and new fringe vs. display margin position.
7390 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
7391 (draw_fringe_bitmap): Rework to handle per-window fringes and new
7392 fringe vs. display margin position.
7393 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
7394 (redisplay_window): Adapt to per-window scroll bars.
7395 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
7396 bars, and new fringe vs. display margin position.
7397 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 7398 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
7399 bars, and new fringe vs. display margin position. Fix bug which
7400 increased total width of full_width rows by width of scroll bars
7401 although window's total width already includes that.
7402 (x_fix_overlapping_area): Simplify using window_box_left_offset.
7403 (expose_area): Simplify using window_box_left_offset.
7404 (x_draw_vertical_border): Handle per-window scroll bar settings,
7405 mixing windows with left, right and no scroll bars.
7406
7407 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
7408 where it's used in x_list_fonts (for clarity).
7409 (frame_update_line_height): Remove unused function; functionality
7410 is now done directly when setting the default font in x_set_font.
7411
7412 * xfns.c: Make (many) trivial substitutions for renamed and
7413 new macros in dispextern.h, frame.h and window.h.
7414
7415 * xmenu.c: Make (some) trivial substitutions for renamed and
7416 new macros in dispextern.h, frame.h and window.h.
7417
7418 * xterm.h (struct x_output): Move members left_pos, top_pos,
7419 border_width, pixel_height, pixel_width, line_height,
7420 internal_border_width, vertical_scroll_bar_extra,
7421 left_fringe_width, right_fringe_width, fringe_cols,
7422 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
7423 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
7424 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
7425 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
7426 (PIXEL_WIDTH, PIXEL_HEIGHT)
7427 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 7428 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
7429 frame.h and renamed [see frame.h changes].
7430 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
7431 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 7432 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 7433 and renamed [see frame.h changes].
9018a88e 7434
0416870b
KS
7435 * xterm.c: Make (several) trivial substitutions for renamed and
7436 new macros in dispextern.h, frame.h and window.h.
cab27d04 7437 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
7438 (scroll_run): Adapt to new fringe position.
7439 (glyph_rect): Use window coordinates returned from
7440 window_from_coordinates rather than frame_to_window_pixel_xy.
7441 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
7442 scroll-bars.
7443 (handle_one_xevent): Simplify a USE_GTK conditional.
7444 (x_clip_to_row): Remove superfluous whole_line_p arg and code
7445 (fringes are now inside margins, i.e. always in the clipping area).
7446 All callers changed.
7447 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
7448 directly, then call compute_fringe_widths. Don't call
7449 frame_update_line_height.
7450
7451 * w32term.h (struct w32_output): Move members left_pos, top_pos,
7452 border_width, pixel_height, pixel_width, line_height,
7453 internal_border_width, vertical_scroll_bar_extra,
7454 left_fringe_width, right_fringe_width, fringe_cols,
7455 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
7456 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
7457 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
7458 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
7459 (PIXEL_WIDTH, PIXEL_HEIGHT)
7460 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 7461 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
7462 frame.h and renamed [see frame.h changes].
7463 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
7464 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 7465 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 7466 and renamed [see frame.h changes].
9018a88e 7467
0416870b
KS
7468 * w32term.c: Make (several) trivial substitutions for renamed and
7469 new macros in dispextern.h, frame.h and window.h.
cab27d04 7470 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
7471 (glyph_rect): Use window coordinates returned from
7472 window_from_coordinates rather than frame_to_window_pixel_xy.
7473 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
7474 scroll-bars.
7475 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
7476 (fringes are now inside margins, i.e. always in the clipping area).
7477 All callers changed.
7478 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
7479 directly, then call compute_fringe_widths. Don't call
7480 frame_update_line_height.
7481
7482 * w32console.c: Make (few) trivial substitutions for renamed and
7483 new macros in dispextern.h, frame.h and window.h.
7484
7485 * w32fns.c: Make (many) trivial substitutions for renamed and
7486 new macros in dispextern.h, frame.h and window.h.
7487
7488 * w32menu.c: Make (few) trivial substitutions for renamed and
7489 new macros in dispextern.h, frame.h and window.h.
7490
7491 * macterm.h (struct mac_output): Move members left_pos, top_pos,
7492 border_width, pixel_height, pixel_width, line_height,
7493 internal_border_width, vertical_scroll_bar_extra,
7494 left_fringe_width, right_fringe_width, fringe_cols,
7495 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
7496 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
7497 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
7498 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
7499 (PIXEL_WIDTH, PIXEL_HEIGHT)
7500 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 7501 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
7502 frame.h and renamed [see frame.h changes].
7503 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
7504 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 7505 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 7506 and renamed [see frame.h changes].
9018a88e 7507
0416870b
KS
7508 * macterm.c: Make (several) trivial substitutions for renamed and
7509 new macros in dispextern.h, frame.h and window.h.
cab27d04 7510 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
7511 (glyph_rect): Use window coordinates returned from
7512 window_from_coordinates rather than frame_to_window_pixel_xy.
7513 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
7514 scroll-bars.
7515 (x_clip_to_row): Remove superfluous whole_line_p arg and code
7516 (fringes are now inside margins, i.e. always in the clipping area).
7517 All callers changed.
7518 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
7519 directly, then call compute_fringe_widths. Don't call
7520 frame_update_line_height.
7521
7522 * macfns.c: Make (several) trivial substitutions for renamed and
7523 new macros in dispextern.h, frame.h and window.h.
9018a88e 7524 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
7525
7526 * macmenu.c: Make (few) trivial substitutions for renamed and
7527 new macros in dispextern.h, frame.h and window.h.
7528
7529 * msdos.h (struct x_output): Remove members left_pos, top_pos,
7530 and line_height, and use corresponding new members in struct
7531 frame. All uses changed.
7532 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
7533 superseeded by corresponding macros in frame.h.
7534
7535 * msdos.c: Make (several) trivial substitutions for renamed and
7536 new macros in dispextern.h, frame.h and window.h.
7537 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 7538 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
7539 (internal_terminal_init): No need to initialize line_height here;
7540 it now defaults to 1.
7541
9018a88e
SM
75422003-05-24 Stefan Monnier <monnier@cs.yale.edu>
7543
7544 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
7545 dropping `down' events.
7546
016bd3c0
AS
75472003-05-24 Andreas Schwab <schwab@suse.de>
7548
7549 * coding.c (find_safe_codings): Fix last change.
7550
4dacadcc
TTN
75512003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
7552
7553 * xfns.c (x_window): Fix typo from 2003-05-21 change.
7554
319830ce
SM
75552003-05-23 Stefan Monnier <monnier@cs.yale.edu>
7556
9018a88e
SM
7557 * xdisp.c (display_mode_element): Increase max depth.
7558 Simplify the error handling code. Use a different error string
7559 for the case where we hit the depth limit.
7560
319830ce
SM
7561 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
7562
7563 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
7564
75652003-05-21 Stefan Monnier <monnier@cs.yale.edu>
7566
7567 * intervals.c (get_local_map): Don't get char-property of previous
7568 point any more: get_pos_property already does it and better.
7569
c67de8ba
DL
75702003-05-21 Dave Love <fx@gnu.org>
7571
7572 [Merged from unicode branch.]
7573
7574 * xfns.c (x_window, x_window): Use use_xim.
7575
7576 * xterm.c (use_xim): Initialize.
7577 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
7578 (x_term_init): Maybe set use_xim.
7579
7580 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
7581
edd3ff1d
JR
75822003-05-21 Jason Rumney <jasonr@gnu.org>
7583
7584 * unexw32.c (_start): Remove _fmode initialization.
7585
7586 * emacs.c (main) [WINDOWSNT]: Move it here.
7587
463f55ee
DL
75882003-05-20 Dave Love <fx@gnu.org>
7589
7590 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
7591
af253914
RS
75922003-05-19 Richard M. Stallman <rms@gnu.org>
7593
7594 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
7595 as value for QCfont attribute.
7596 (realize_default_face): lface should already exist; crash if not.
7597 Specify 0 for FORCE_P when calling set_lface_from_font_name.
7598
7599 * frame.c (Fignore_event): Doc fix.
7600
1d211019
KH
76012003-05-19 Kenichi Handa <handa@m17n.org>
7602
7603 * coding.c (decode_coding_string): Handle post-read-conversion
7604 even if the coding doesn't require decoding.
7605
4dd68254
RS
76062003-05-18 Richard M. Stallman <rms@gnu.org>
7607
7608 * callproc.c (Fcall_process_region): Doc fix.
7609
14d87dc9
SM
76102003-05-17 Stefan Monnier <monnier@cs.yale.edu>
7611
deca5d96
SM
7612 * lread.c (Fload): Print a message if package is obsolete.
7613
14d87dc9
SM
7614 * window.c (Fselect_window): Add optional `norecord' arg.
7615 (select_window_1): Fold into Fselect_window.
7616 (select_window_norecord): New function.
7617 (temp_output_buffer_show): Use it. Preserve current buffer.
7618
7619 * window.h (Fselect_window): Update declaration.
7620
7621 * window.c (delete_window, Fother_window, Fset_window_configuration):
7622 * minibuf.c (read_minibuf):
7623 * macterm.c (x_new_focus_frame):
7624 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
7625 * callint.c (Fcall_interactively):
7626 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
7627
7628 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
7629
78f52183
DK
76302003-05-17 David Kastrup <dak@gnu.org>
7631
7632 * process.c (read_process_output): Back out change from 2003-03-09.
7633
14d87dc9
SM
76342003-05-17 Stefan Monnier <monnier@cs.yale.edu>
7635
7636 * editfns.c (get_pos_property): Don't assume that `object' = nil.
7637
7638 * textprop.c (text_property_stickiness): New arg `buffer'.
7639
7640 * intervals.h (text_property_stickiness): New arg `buffer'.
7641 (get_pos_property): Declare.
7642
7643 * intervals.c (get_local_map): Use get_pos_property, to obey
7644 stickiness and empty overlays.
7645 (create_root_interval, graft_intervals_into_buffer): Use BEG.
7646 (merge_properties, intervals_equal, merge_properties_sticky):
7647 Use XCAR, XCDR.
7648 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
7649
1fd1cc2f
RS
76502003-05-17 Richard M. Stallman <rms@gnu.org>
7651
4f9f637a
RS
7652 * minibuf.c (read_minibuf): If buffer is empty, record the default
7653 in the history.
7654 (Fminibuffer_complete_word): When deleting the overlap, take account
7655 of its real position.
7656
7657 * fns.c (map_char_table): Fix previous change.
7658
1fd1cc2f
RS
7659 * syntax.c (find_defun_start):
7660 When open_paren_in_column_0_is_defun_start,
7661 return beginning of buffer.
7662
7663 * lisp.h (map_char_table): Declare added arg.
7664
7665 * fns.c (map_char_table): New arg TABLE gets the master table.
7666 All calls changed.
7667 Process default and inheritance, resorting to Faref if necessary.
7668
7669 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
7670 (Faccessible_keymaps): Pass new arg to map_char_table.
7671
7672 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
7673
7674 * casetab.c (set_case_table): Pass new arg to map_char_table.
7675
7676 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
7677
7678 * lisp.h (specbinding_func): New typedef.
7679 (struct specbinding): Use specbinding_func, to put the `volatile'
7680 in the right place.
7681
7682 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
7683 to avoid GCC warning.
14d87dc9 7684
b6189c3b 76852003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
b4bd27c5 7686
14d87dc9 7687 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 7688
35fb885d
SM
76892003-05-15 Stefan Monnier <monnier@cs.yale.edu>
7690
7691 * keyboard.c (apply_modifiers): Don't fill the other cache.
7692
9a274fbd
SM
76932003-05-14 Stefan Monnier <monnier@cs.yale.edu>
7694
c55b5fad
SM
7695 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
7696
9a274fbd
SM
7697 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
7698 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
7699 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
7700 (Fset_window_configuration, Fcurrent_window_configuration)
7701 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
7702 (Fpos_visible_in_window_p, mark_window_cursors_off)
7703 (window_internal_height, window_internal_width, Frecenter)
7704 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
7705 (replace_buffer_in_all_windows, init_window_once, init_window)
7706 (syms_of_window, keys_of_window): Move from lisp.h.
7707 * lisp.h: Move window.c declarations to window.h.
7708
7709 * bytecode.c: Include window.h.
7710 * emacs.c: Include window.h.
7711
14d87dc9 7712 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
7713 (keyremap): Add `parent' field.
7714 (keyremap_step): Use it. Remove `parent' argument.
7715 (read_key_sequence): Setup and use the new `parent' field.
7716
fd93e331
SM
77172003-05-11 Stefan Monnier <monnier@cs.yale.edu>
7718
7719 * keyboard.c (adjust_point_for_property): Ensure termination.
7720
1c4001a1
SM
77212003-05-10 Stefan Monnier <monnier@cs.yale.edu>
7722
7723 * keyboard.c (follow_key): Remove dead variable `did_meta'.
7724 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
7725 duplicated handling of function-key-map and key-translation-map
7726 in read_key_sequence.
7727 (read_key_sequence): Use them.
7728
7729 * keyboard.c (adjust_point_for_property): Try harder to move point
7730 to the non-sticky end of an invisible property.
7731
7732 * xdisp.c (single_display_prop_intangible_p): Make `space' display
7733 property intangible as well.
7734
780379b1
AS
77352003-05-10 Andreas Schwab <schwab@suse.de>
7736
7737 * xmenu.c (single_menu_item): Change last parameter to void* to
7738 avoid warning.
7739
ca2de342
RS
77402003-05-09 Richard M. Stallman <rms@gnu.org>
7741
7742 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
7743 Bind Qinhibit_modification_hooks to t so there will be no GC.
7744 Rename local `tem' to `save_deactivate_mark'.
7745
7746 * eval.c (specpdl_ptr): Declare volatile.
7747 (unbind_to): Copy the whole binding and decrement specpdl_ptr
7748 before doing the work of unbinding it.
7749
7750 * lisp.h (struct specbinding): Declare elements volatile.
7751 (specpdl_ptr): Declare volatile.
7752
7753 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
7754
7755 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
7756 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
7757
347003be
DL
77582003-05-08 Dave Love <fx@gnu.org>
7759
7760 * coding.c (Vlast_coding_system_used): Doc fix.
7761
5adcec23
JR
77622003-05-07 Jason Rumney <jasonr@gnu.org>
7763
7764 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
7765 when system does not support them.
7766
5fe3b8a4
SM
77672003-05-05 Stefan Monnier <monnier@cs.yale.edu>
7768
7769 * fileio.c (Qwrite_region_annotate_functions): New var.
7770 (build_annotations): Use it to process the global part of the hook.
7771 (syms_of_fileio): Init and staticpro it.
7772
7773 * keyboard.c (safe_run_hooks_error): Display a message instead of
7774 silently ignoring the error.
7775
77762003-05-03 Stefan Monnier <monnier@cs.yale.edu>
7777
7778 * keyboard.c (input_available_signal): Mark static.
7779 (menu_bar_items): Use map_keymap.
7780 (menu_bar_one_keymap): Remove.
7781 (menu_bar_item): Adjust arglist (for use in map_keymap).
7782 Properly hide a second binding when not both are keymaps.
7783
7784 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
7785 (single_keymap_panes): Use it and map_keymap.
7786 (single_menu_item): Use skp as well.
7787
7788 * keymap.h (map_keymap_function_t): New type.
7789 (map_keymap): Declare.
7790
7791 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
7792 (map_keymap_call, Fmap_keymap): New functions.
7793 (syms_of_keymap): Defsubr map-keymap.
7794
4b1b4443
JD
77952003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7796
7797 * gtkutil.c (create_dialog, make_widget_for_menu_item)
7798 (make_menu_item, create_menus, xg_update_menu_item): Don't call
7799 ..._with_mnemonic functions for menu items.
7800
1f816871
KH
78012003-05-01 Kenichi Handa <handa@m17n.org>
7802
7803 * coding.c (coding_system_accept_latin_extra_p): Delete this
7804 function.
7805 (find_safe_codings): Pay attention to
7806 the property tranlsation-table-for-encode of each codings.
7807 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
7808
5ed6ba5b
SM
78092003-05-01 Stefan Monnier <monnier@cs.yale.edu>
7810
7811 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
7812
32c06229
SM
78132003-04-30 Stefan Monnier <monnier@cs.yale.edu>
7814
7815 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
7816
7817 * lisp.h (CHECK): Wrap args in parenthesis.
7818 (specbind): Fix doc: symbol = Qnil is not supported any more.
7819
7820 * bytecode.c (Fbyte_code) <unwind-protect>:
7821 Use Fprogn rather than 0 and Qnil.
7822
7823 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
7824 `double', and `triple' modifiers as well.
7825
ed3c3314
RS
78262003-04-30 Richard M. Stallman <rms@gnu.org>
7827
7828 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
7829
7830 * alloc.c (abort_on_gc): New variable.
7831 (Fgarbage_collect): Abort if abort_on_gc is set.
7832
7833 * lisp.h (abort_on_gc): Add decl.
7834
7835 * eval.c (Fsignal): Clear abort_on_gc.
7836
7837 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 7838 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
7839
7840 * xdisp.c (move_it_vertically_backward): Do the final big else
7841 even if nlines is 0.
7842
7843 * xdisp.c (redisplay_internal): Finish the per-frame loop
7844 even if redisplay is suspended by input.
7845
0b325c12
AC
78462003-04-24 Andrew Choi <akochoi@shaw.ca>
7847
7848 * macterm.c (x_list_fonts): Return all fonts that match if
7849 maxnames = -1.
7850
4e837cd0
KH
78512003-04-25 Kenichi Handa <handa@m17n.org>
7852
7853 * syntax.c (skip_chars): Fix previous change.
7854
9af7511a
KH
78552003-04-24 Kenichi Handa <handa@m17n.org>
7856
7857 * syntax.c (skip_chars): Make the code faster by using the common
7858 technique of *p, *stop, and *endp.
7859
e3b2c21f
JD
78602003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7861
7862 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 7863 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
7864 being updated.
7865
32c06229
SM
78662003-04-19 Stefan Monnier <monnier@cs.yale.edu>
7867
7868 * eval.c (Fapply): Undo last change and add a comment about why.
7869
c6464167
MB
78702003-04-18 Miles Bader <miles@gnu.org>
7871
7872 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
7873 pickier PARSE_MULTIBYTE_SEQ.
7874
e509f168
SM
78752003-04-17 Stefan Monnier <monnier@cs.yale.edu>
7876
7877 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
7878 Use XCDR, XCAR, CONSP.
7879 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
7880 (Fapply): Remove unnecessary GCPRO.
7881
7882 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
7883
7884 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
7885
7886 * buffer.h: Don't hardcode BEG==1.
7887
7888 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
7889
5ceea398
RS
78902003-04-16 Richard M. Stallman <rms@gnu.org>
7891
7892 * xdisp.c (try_window, try_window_reusing_current_matrix):
7893 When at end of window, set window_end_pos to Z-ZV.
7894
7895 * buffer.c (Foverlay_recenter): Doc fix.
7896
e509f168
SM
78972003-04-14 Stefan Monnier <monnier@cs.yale.edu>
7898
7899 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
7900
d243e605
AC
79012003-04-14 Andrew Choi <akochoi@shaw.ca>
7902
7903 * macterm.c (mac_check_for_quit_char): Don't check more often than
7904 once a second.
7905
6901b111
SM
79062003-04-11 Stefan Monnier <monnier@cs.yale.edu>
7907
7908 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
7909 specially, so that they can't hide an implicit switch-frame event.
7910 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
7911 (head_table): Use switch-frame as event_kind for select-window.
7912 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
7913
7914 * editfns.c (Fformat): Lisp_Object/int mixup.
7915 (format2): Remove unused var numargs.
7916
e301806f 79172003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 7918
6901b111 7919 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
7920 (Qafter_insert_file_set_coding): New variable.
7921 (syms_of_fileio): Initialize and staticpro it. Delete declaration
7922 for after-insert-file-adjust-coding-function.
7923 (Finsert_file_contents): Call Qafter_insert_file_set_coding
7924 instead of Vafter_insert_file_adjust_coding_function.
7925
38914424
KH
79262003-04-11 Kenichi Handa <handa@m17n.org>
7927
7928 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
7929
7930 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
7931 string. Callers changed.
7932
79332003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 7934
6901b111 7935 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 7936 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
7937 (Finsert_file_contents):
7938 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
7939 decode-format.
7940
f979dc05
JD
79412003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7942
7943 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
7944 get GtkAdjustment as widget now is a GtkRange.
7945
7946 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
7947 GtkRange to avoid memory leak.
7948
f8c6b4c2 79492003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 7950
50ebc53d
KH
7951 * xfaces.c (Vface_font_rescale_alist): New variable.
7952 (struct font_name): New member rescale_ratio.
7953 (font_rescale_ratio): New function.
6901b111 7954 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
7955 (better_font_p): On comparing point sized, pay attention to
7956 recale_ratio member of fonts.
7957 (build_scalable_font_name): Reflect font->rescale_ratio in the
7958 font name.
6901b111 7959 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 7960
cb98871c
KH
7961 * lread.c (read1): Before calling index, check if the 2nd
7962 arguemnt is in ASCII range.
7963
4773b8ca
RS
79642003-04-08 Richard M. Stallman <rms@gnu.org>
7965
b0ada147
RS
7966 * fileio.c (Ffile_symlink_p): Doc fix.
7967
7968 * editfns.c (Fformat): Translate positions of text properties
7969 in the format string to apply them to the result.
7970
4773b8ca
RS
7971 * fileio.c (Finsert_file_contents): Doc fix.
7972 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
7973
79742003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 7975
4773b8ca
RS
7976 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
7977
e8f25745 79782003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 7979
e8f25745
ST
7980 * mac.c (init_mac_osx_environment): Switch libexec and bin so
7981 that self-contained application finds libexec files.
7982
f8c6b4c2 79832003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 7984
6901b111
SM
7985 * coding.c (code_convert_region_unwind):
7986 Set Vlast_coding_system_used to the argument.
2310d84c
KH
7987 (code_convert_region): If post-read-conversion function changed
7988 the value of last-coding-sytem, keep the new value in
7989 coding->symbol so that it won't be overridden.
7990 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
7991 (coding_system_accept_latin_extra_p): New function.
7992 (find_safe_codings): Pay attention to characters registered in
7993 latin-extra-code-table.
2310d84c 7994
39c9a034
TTN
79952003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
7996
7997 * Makefile.in (md5.o): Add missing dependency info.
7998
eb67c5d6
RS
79992003-04-06 Richard M. Stallman <rms@gnu.org>
8000
8001 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
8002
8003 * marker.c (verify_bytepos): New function.
8004
8005 * intervals.c (set_intervals_multibyte_1): When becoming
8006 multibyte, adjust right and left child sizes to a whole set of
8007 characters. If an interval gets zero total-length, delete it.
8008 If an interval consists of just its children, delete one of them.
8009
8010 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
8011 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 8012
eb67c5d6
RS
8013 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
8014 All calls deleted.
8015 (lisp_malloc): Do the work here directly.
8016
b1f81fc5
JB
80172003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
8018
8019 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
8020 char tables.
8021
80222003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
8023
8024 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
8025 destructively change "%S" to "%s".
8026
774666fb
MB
80272003-04-03 Miles Bader <miles@gnu.org>
8028
8029 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
8030 always set.
8031
19c37f01
DL
80322003-04-01 Dave Love <fx@gnu.org>
8033
8034 * xfns.c (xpm_lookup_color): Grok "opaque".
8035
2f4b24c3
AC
80362003-03-31 Andrew Choi <akochoi@shaw.ca>
8037
8038 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
8039 parent window ID.
8040
8041 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
8042
8043 * macterm.h (struct mac_output): Define x_pixels_diff and
8044 y_pixels_diff.
b1f81fc5 8045
9443fcf6
JB
80462003-03-31 Juanma Barranquero <lektu@terra.es>
8047
8048 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
8049 blockinput.h and files included from it.
8050
e072891b
KS
80512003-03-31 Kim F. Storm <storm@cua.dk>
8052
8053 The following changes consolidates the common code related to
8054 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
8055 files into frame.c.
9443fcf6 8056
e072891b
KS
8057 * frame.c: Include blockinput.h.
8058 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
8059 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
8060 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
8061 related vars here.
8062 (struct frame_parm_table, frame_parms): New table for describing
8063 frame parameters and their associated Q-variable.
8064 The order of the parameters corresponds to the sequence of the
8065 frame_parm_handlers table in redisplay_interface.
8066 (x_fullscreen_move, x_set_frame_parameters)
8067 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
8068 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
8069 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
8070 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
8071 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
8072 Generic functions for processing of frame parameters.
8073 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
8074 (display_x_get_resource, x_get_resource_string): Functions for
8075 generic access to X resources.
8076 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
8077 (x_default_parameter, Fx_parse_geometry): Functions for generic
8078 access to frame parameters.
6901b111
SM
8079 (x_figure_window_size): Generic calculation of frame size.
8080 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
8081 (syms_of_frame): Intern and staticpro frame parameter variables.
8082 Defvar_lisp Vx_resource_class and Vx_resource_name here.
8083 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 8084
e072891b
KS
8085 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
8086 parameter related vars defined in frame.c.
8087 (EMACS_CLASS): Define here.
8088 (enum FULLSCREEN_*): Define here.
8089 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
8090 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
8091 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
8092 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
8093 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
8094 (x_set_visibility, x_set_autoraise, x_set_autolower)
8095 (x_set_unsplittable, x_set_vertical_scroll_bars)
8096 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
8097 (x_figure_window_size): Add prototypes.
8098
8099 * dispextern.h (frame_parm_handler): New typedef.
8100 (struct redisplay_interface): New member frame_parm_handlers.
8101 (enum resource_types): Move declaration here.
8102 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
8103 (x_default_parameter): Add prototypes.
8104
8105 * window.c: Remove extern decl for frame parameter vars.
8106 (change_window_heights): New generic function;
8107 replaces x_change_window_heights. All users changed.
8108
8109 * window.h (change_window_heights): Add prototype.
8110
8111 * xfaces.c: Remove extern decl for frame parameter vars.
8112
8113 * xterm.h (EMACS_CLASS): Remove. Use generic define.
8114 (struct w32_display_info): Fix type of xrdb member.
8115 (enum FULLSCREEN_*): Remove.
8116 Remove prototypes for generic functions (in frame.h).
8117
8118 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
8119 parameters now defined in frame.h and frame.c.
f63fd14e 8120 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
8121 (enum x_frame_parms): Remove (bogus, unused enum).
8122 (check_x_display_info): Make non-static (for frame.c).
8123 (struct x_frame_parm_table, x_frame_parms): Remove.
8124 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
8125 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
8126 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
8127 (x_change_window_heights, x_set_autoraise, x_set_autolower)
8128 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
8129 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
8130 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
8131 Remove. Use generic functions instead.
8132 (enum resource_types): Remove.
8133 (x_set_scroll_bar_default_width): New global function (for frame.c).
8134 (Fx_create_frame): Depend on x_figure_window_size to add space for
8135 toolbar and setup size_hint_flags.
8136 (x_frame_parm_handlers): New table for redisplay_interface.
8137 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 8138
e072891b 8139 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 8140 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
8141 (x_redisplay_interface): Add x_frame_parm_handlers member.
8142
8143 * w32gui.h (XrmDatabase): New (dummy) typedef.
8144
8145 * w32term.h (EMACS_CLASS): Remove. Use generic define.
8146 (struct w32_display_info): Fix type of xrdb member.
8147 (enum FULLSCREEN_*): Remove.
8148 (x_fullscreen_adjust): Remove prototype.
8149
8150 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
8151 parameters now defined in frame.h and frame.c.
f63fd14e 8152 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
8153 (enum x_frame_parms): Remove (bogus, unused enum).
8154 (check_x_display_info): Make non-static (for frame.c).
8155 (struct x_frame_parm_table, x_frame_parms): Remove.
8156 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
8157 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
8158 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
8159 (x_change_window_heights, x_set_autoraise, x_set_autolower)
8160 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
8161 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
8162 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
8163 Remove. Use generic functions instead.
8164 (enum resource_types): Remove.
8165 (x_set_scroll_bar_default_width): New global function (for frame.c).
8166 (Fx_create_frame): Depend on x_figure_window_size to add space for
8167 toolbar and setup size_hint_flags.
8168 (w32_frame_parm_handlers): New table for redisplay_interface.
8169 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 8170
e072891b
KS
8171 * w32term.c: Remove unnecessary extern declarations.
8172 (x_fullscreen_adjust): Remove. Use generic instead.
8173 (x_redisplay_interface): Add w32_frame_parm_handlers member.
8174
8175 * w32reg.c (x_get_string_resource): Use XrmDatabase.
8176
8177 * macgui.h (XrmDatabase): New (dummy) typedef.
8178
8179 * macterm.h (EMACS_CLASS): Remove.
8180 (struct mac_display_info): Add xrdb member.
8181 (struct mac_output): Add want_fullscreen member.
8182
8183 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
8184 parameters now defined in frame.h and frame.c.
f63fd14e 8185 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
8186 (check_x_display_info): Make non-static (for frame.c).
8187 (struct x_frame_parm_table, x_frame_parms): Remove.
8188 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
8189 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
8190 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
8191 (x_change_window_heights, x_set_autoraise, x_set_autolower)
8192 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
8193 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
8194 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
8195 Remove. Use generic functions instead.
8196 (enum resource_types): Remove.
8197 (x_set_scroll_bar_default_width): New global function (for frame.c).
8198 (mac_frame_parm_handlers): New table for redisplay_interface.
8199 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 8200
e072891b
KS
8201 * macterm.c: Remove unnecessary extern declarations.
8202 (x_redisplay_interface): Add mac_frame_parm_handlers member.
8203
3e6a560b
KS
8204 * Makefile.in (frame.o): Add dependency on blockinput.h and files
8205 included from it (atimer.h and systime.h).
8206
7b7b454e
AS
82072003-03-30 Andreas Schwab <schwab@suse.de>
8208
8209 * xdisp.c (x_insert_glyphs): Fix swapped width and height
8210 parameters for shift_glyphs_for_insert.
8211
8212 * macterm.c (x_redisplay_interface): Add missing entry for
8213 draw_vertical_window_border.
8214
beb402de
KG
82152003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
8216
8217 * fileio.c (Fexpand_file_name): In the no-handler case, after
8218 expanding, look again for a handler and invoke it. This is needed
8219 for filenames like "/foo/../user@host:/bar/../baz" -- the first
8220 expansion produces "/user@host:/bar/../baz" which needs to be
8221 expanded again for the finame result "/user@host:/baz".
8222
b676f356
JD
82232003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8224
8225 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
8226 of area to be redrawn for better performance.
8227
3c671a56
SM
82282003-03-28 Stefan Monnier <monnier@cs.yale.edu>
8229
8230 * xterm.c (take_vertical_position_into_account): Remove.
8231 (xt_action_hook): Call set_vertical_scroll_bar if needed.
8232 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
8233 (xm_scroll_callback, x_create_toolkit_scroll_bar)
8234 (x_set_toolkit_scroll_bar_thumb): Simplify.
8235 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
8236 (XTread_socket): Remove unused var.
8237 (x_make_frame_invisible): Replace goto with else.
8238
8239 * xdisp.c (set_vertical_scroll_bar): New fun.
8240 (redisplay_window): Use it.
8241
84f2e615
RS
82422003-03-26 Richard M. Stallman <rms@gnu.org>
8243
8244 * xdisp.c (update_tool_bar): Recompute tool bar if
8245 update_mode_lines is set. Set w->update_mode_line
8246 only if the tool bar contents actually change.
8247 (update_menu_bar): Undo previous change.
8248
70b6104c
JD
82492003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8250
5fd6f727
JD
8251 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
8252 (xg_frame_set_char_size): Calculate scroll bar width before frame
8253 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
8254 (xg_separator_p): Check for all documented separator types.
8255 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
8256 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
8257
70b6104c
JD
8258 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
8259 so tool bar gets updated.
8260
d9b36d19
SM
82612003-03-26 Stefan Monnier <monnier@cs.yale.edu>
8262
8263 * data.c (store_symval_forwarding): Re-instate part of the code
8264 that was deleted with too much enthusiasm.
8265
82662003-03-25 Stefan Monnier <monnier@cs.yale.edu>
8267
8268 * data.c (store_symval_forwarding): Delete special read-only
8269 hack for type == -1, since we now use ->constant instead.
8270 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
8271
8272 * buffer.c (overlays_in): Declare static.
8273 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
8274 `constant' field rather than the variable's `type' field.
8275
365fa1b3
AC
82762003-03-24 Andrew Choi <akochoi@shaw.ca>
8277
8278 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
8279
8280 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
8281
8282 * fns.c [MAC_OSX]: Do not redefine vector.
8283
8284 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
8285
8286 * macgui.h: Remove definition of No_Cursor.
8287
d9b36d19 8288 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
8289
8290 * xdisp.c: Define No_Cursor.
8291 (x_write_glyphs, notice_overwritten_cursor)
8292 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
8293 (note_mouse_highlight): Remove Mac-specific code.
8294 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 8295
c0bcce6f
JPW
82962003-03-24 John Paul Wallington <jpw@gnu.org>
8297
8298 * xdisp.c (redisplay_window): If mini window's buffer is not
8299 empty, then redisplay it like other windows.
8300
a526b96c
KS
83012003-03-23 Kim F. Storm <storm@cua.dk>
8302
8303 * w32term.c (w32_draw_window_cursor): Fix last change.
8304
37ab321e
KH
83052003-03-23 Kenichi Handa <handa@m17n.org>
8306
a526b96c
KS
8307 * alloc.c (make_string_from_bytes, make_specified_string):
8308 Add `const' for the arg CONTENTS.
37ab321e
KH
8309
8310 * lisp.h (make_string_from_bytes, make_specified_string):
8311 Prototypes adjusted.
8312
7863d625
JD
83132003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8314
a526b96c 8315 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 8316
7863d625
JD
8317 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
8318 (XG_SB_RANGE): New define.
8319
8320 * gtkutil.c (xg_fixed_handle_expose): New function.
8321 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
8322 expose events.
8323 (xg_update_scrollbar_pos): Take two more arguments, left and width
8324 of scroll bar including borders.
8325 Clear left and right part outside scroll bar separately as some
8326 themes have bars that are not an even number of pixels.
d9b36d19 8327 Don't set reallocate_redraws, don't call
7863d625
JD
8328 gdk_window_process_all_updates.
8329 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
8330 so no need to change it. Calculate size and value with XG_SB_RANGE.
8331
d9b36d19
SM
8332 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
8333 Pass left and width of scroll bar including borders to
7863d625
JD
8334 xg_update_scrollbar_pos.
8335
af0ad939
TTN
83362003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
8337
8338 * Makefile.in: Make sure space precedes end-of-line backslashes.
8339
b22139fd
KS
83402003-03-22 Kim F. Storm <storm@cua.dk>
8341
8342 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
8343 Add generic versions here. Remove system specific versions
8344 defined elsewhere.
8345
8346 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
8347 Add prototypes.
8348
6e6410cf
KS
8349 * xterm.h (STORE_NATIVE_RECT): New macro.
8350
5c9cc435
KS
83512003-03-21 Kim F. Storm <storm@cua.dk>
8352
00c64fab
SM
8353 * xdisp.c (get_glyph_string_clip_rect):
8354 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
8355
8356 * dispextern.h (struct redisplay_interface): Add active_p
8357 argument to draw_window_cursor member. All uses changed.
8358
acd37560
KS
83592003-03-21 Kim F. Storm <storm@cua.dk>
8360
8361 The following changes consolidate code related to writing and
8362 inserting glyphs, exposing frame, the tool bar, the mouse face,
8363 the output cursor, and help echo from xterm.c, w32term.c and
8364 macterm.c into xdisp.c. It also generalizes the use of the
8365 window_part enum instead of using numeric values throughout.
af0ad939 8366
acd37560
KS
8367 * xdisp.c: Consolidate gui-independent code here.
8368 Include keymap.h.
8369 (Qhelp_echo): Import.
8370 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
8371 (help_echo_string, help_echo_window, help_echo_object)
8372 (previous_help_echo_string, help_echo_pos): Declare here.
8373 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
8374 (estimate_mode_line_height): Define here. Handle windowing
8375 systems directly (without using estimate_mode_line_height_hook).
8376 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
8377 (update_window_cursor, update_cursor_in_window_tree)
8378 (fast_find_position, fast_find_string_pos)
8379 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
8380 (expose_area, expose_line, expose_overlaps, expose_window)
8381 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
8382 declared static as they are only used locally in xdisp.c.
8383 (draw_glyphs): Rename from x_draw_glyphs and make static.
8384 (tool_bar_item_info, notice_overwritten_cursor): Make static.
8385 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
8386 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 8387 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
8388 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
8389 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
8390 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
8391 (note_mouse_highlight, x_clear_window_mouse_face)
8392 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
8393 (x_intersect_rectangles): New generic functions for use by xdisp.c
8394 and GUI front-ends.
8395 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
8396 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
8397
8398 * dispextern.h (Display_Info): Generic typedef for *_display_info.
8399 (NativeRectangle): Generic typedef for rectangle type.
8400 (enum window_part): Move here from window.c.
8401 (struct redisplay_interface): New members flush_display_optional,
8402 define_frame_cursor, clear_frame_area, draw_window_cursor,
8403 draw_vertical_window_border, shift_glyphs_for_insert.
8404 Rename member clear_mouse_face to clear_window_mouse_face.
8405 (estimate_mode_line_height_hook): Remove hook.
8406 (auto_raise_tool_bar_buttons_p): Don't declare extern.
8407 (tool_bar_item_info): Remove prototype.
8408 (help_echo_string, help_echo_window, help_echo_object)
8409 (previous_help_echo_string, help_echo_pos)
8410 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
8411 (x_stretch_cursor_p, output_cursor): Declare extern.
8412 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
8413 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
8414 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
8415 (display_and_set_cursor, set_output_cursor, x_cursor_to)
8416 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
8417 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
8418 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
8419 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
8420 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
8421 Add prototypes.
8422 (mode_line_string, marginal_area_string): Fix prototypes.
8423
8424 * window.c (enum window_part): Move to dispextern.h.
8425 (coordinates_in_window): Use enum window_part member names
8426 instead of numbers to describe return value.
8427 (struct check_window_data): Change part member to window_part.
8428 (check_window_containing): Return window_part unaltered.
8429 (window_from_coordinates): Change part arg from int to enum
8430 window_part. Allow part arg to be null. All users changed.
8431
8432 * window.h (window_from_coordinates): Fix prototype.
8433
8434 * term.c (estimate_mode_line_height): Move to xdisp.c.
8435
8436 * keyboard.c (make_lispy_event): Use enum window_part.
8437
8438 * dispnew.c (mode_line_string, marginal_area_string): Use enum
8439 window_part instead of int in arg list. Users changed.
8440
8441 * xterm.h (No_Cursor): Declare as None for X.
8442 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 8443
acd37560
KS
8444 * xterm.c: Remove consolidated defines and code.
8445 (BETWEEN): Remove unused macro.
8446 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
8447 (x_define_frame_cursor, x_clear_frame_area)
8448 (x_draw_window_cursor): New X-specific functions for RIF.
8449 (x_redisplay_interface): Add new members.
8450
8451 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
8452
8453 * w32term.h (struct w32_output): Remove cross_cursor member.
8454
8455 * w32term.c: Remove consolidated defines and code.
8456 (BETWEEN): Remove unused macro.
8457 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
8458 (w32_define_frame_cursor, w32_clear_frame_area)
8459 (w32_draw_window_cursor): New W32-specific functions for RIF.
8460 (w32_redisplay_interface): Add new members.
8461
a64387ee 8462 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
8463 (XRectangle): Add X compatible rectangle type.
8464 (NativeRectangle): Declare as RECT for W32.
8465 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
8466
8467 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
8468
8469 * w32console.c: Remove consolidated defines and code.
af0ad939 8470
acd37560
KS
8471 * msdos.h (Display_Info): Add generic typedef.
8472
8473 * msdos.c: Remove consolidated defines and code.
8474 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
8475
8476 * macterm.h (struct mac_output): Replace member cross_cursor by
8477 hand_cursor.
8478 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
8479
8480 * macterm.c: Remove consolidated defines and code.
8481 (BETWEEN): Remove unused macro.
8482 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
8483 (mac_define_frame_cursor, mac_clear_frame_area)
8484 (mac_draw_window_cursor): New Mac-specific functions for RIF.
8485 (x_redisplay_interface): Add new members.
8486
8487 * macgui.h (No_Cursor): Define as 0 for Mac.
8488 (XRectangle): Add X compatible rectangle type.
8489 (NativeRectangle): Declare as Rect for Mac.
8490 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
8491
204ccab1
KS
8492 * macfns.c (x_set_mouse_color): Setup hand_cursor.
8493 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 8494
9443fcf6 8495 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
8496 included from it. Add dependency on keymap.h.
8497
8498 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
8499
8ba01a70 85002003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
8501
8502 * fileio.c (Fexpand_file_name): Fix previous change.
8503
8ba01a70 85042003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
8505
8506 * fileio.c (Ffile_name_directory): Reconstruct file name by
8507 make_specified_string.
8508 (Ffile_name_nondirectory, Ffile_name_as_directory)
8509 (Fdirectory_file_name, Fexpand_file_name)
8510 (Fsubstitute_in_file_name): Likewise.
8511 (Fread_file_name): Compare decoded homedir with DIR and
8512 DEFAULT_FILENAME.
8513
8514 * alloc.c (make_specified_string): If NCHARS is negative, count
8515 the number of characters.
8516
19536747
JD
85172003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8518
de38ae5a
JD
8519 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
8520 all widgets.
8521
19536747
JD
8522 * gtkutil.h: Removed xg_ignore_next_thumb.
8523
37ab321e 85242003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
8525
8526 * coding.c (Vchar_coding_system_table): Remove this variable.
8527 (Vcoding_system_safe_chars): New variable.
8528 (intersection): Remove this function.
8529 (find_safe_codings): Don't use Vchar_coding_system_table, but try
8530 all codings in SAFE_CODINGS.
00c64fab 8531 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
8532 find_safe_codings. Get generic coding systems from
8533 Vcoding_system_safe_chars.
8534 (Fdefine_coding_system_internal): New function.
8535 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
8536 Initialize and staticpro Vcoding_system_safe_chars.
8537
17097258
JD
85382003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8539
2a2071c3
JD
8540 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
8541 equal old values before updating.
8542
17097258
JD
8543 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
8544
8545 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
8546
85472003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8548
8549 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
8550 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
8551 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
8552 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
8553 (xg_create_scroll_bar): Pass bar to button event callback.
8554 (xg_find_top_left_in_fixed): New function.
8555 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
8556 whole scroll bar area. Get old position with
8557 xg_find_top_left_in_fixed, calculate and only clear needed areas.
8558 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
8559 dragging is in progress. Calculate whole as for Motif.
8560 Remove code that saved last values. Call gtk_range functions to
8561 set scroll bar sizes.
8562
8563 * gtkutil.h: Removed xg_ignore_next_thumb.
8564
8cb9dfbf
JB
85652003-03-17 Juanma Barranquero <lektu@terra.es>
8566
8567 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
8568 and files included from it.
8569
00c64fab
SM
85702003-03-18 Stefan Monnier <monnier@cs.yale.edu>
8571
8572 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
8573 multiple occurrences of the same keymap under different prefixes.
8574 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
8575
c45bb3b2
JR
85762003-03-16 Jason Rumney <jasonr@gnu.org>
8577
8578 * w32gui.h: Use HDC for Display.
8579
8580 * w32term.c (w32_encode_char): Prevent double-byte chars from
8581 crashing Emacs.
8582
8583 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
8584 as binary.
8585
2a6d0874
JB
85862003-03-16 Juanma Barranquero <lektu@terra.es>
8587
8588 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
8589
03eb5fab
KS
85902003-03-16 Kim F. Storm <storm@cua.dk>
8591
8592 The following changes consolidate some of the gui-independent
8593 parts of the processing and drawing of "glyph strings" from
8594 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 8595
03eb5fab
KS
8596 * dispextern.h (struct glyph): Reduce face_id member from 22 to
8597 21 bits (this reduces number of faces from 4M to 2M).
8598 Replace W32 specific w32_font_type member (2 bits) by generic
8599 font_type member (3 bits) for portability.
8600 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
8601 (enum draw_glyphs_face): Define here.
8602 (struct glyph_string): Define here. Merge W32 and X versions.
8603 (struct redisplay_interface): New members per_char_metric,
8604 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
8605 (VCENTER_BASELINE_OFFSET): Define here.
8606 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
8607 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
8608
8609 * xdisp.c: Consolidate gui-independent "glyph string" code here.
8610 (dump_glyph_string): Moved here.
8611 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
8612 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
8613 (fill_composite_glyph_string, fill_glyph_string)
8614 (fill_image_glyph_string, fill_stretch_glyph_string)
8615 (left_overwritten, left_overwriting, right_overwritten)
8616 (right_overwriting, get_char_face_and_encoding)
8617 (set_glyph_string_background_width, compute_overhangs_and_x)
8618 (append_glyph, append_composite_glyph, produce_image_glyph)
8619 (take_vertical_position_into_account, append_stretch_glyph)
8620 (produce_stretch_glyph): New generic functions (based on X version).
8621 Call platform specific functions through rif.
8622 (INIT_GLYPH_STRING): New macro, hides W32 details.
8623 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
8624 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
8625 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
8626 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
8627 (notice_overwritten_cursor):
8628 Generic functions exported to platform modules. Users changed.
8629
8630 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
8631 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
8632 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 8633 New macros for consolidated code.
2a6d0874 8634
03eb5fab
KS
8635 * xterm.c: Remove consolidated defines and code.
8636 (x_per_char_metric, x_encode_char)
8637 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
8638 (x_redisplay_interface): Add new members.
8639
8640 * w32gui.h (Display): Add dummy typedef for consolidation.
8641 (XChar2b): Define alias for wchar_t for consolidation.
8642 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
8643
8644 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 8645 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
8646 New macros for consolidation.
8647
fad49844 8648 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
8649 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
8650 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
8651 (w32_per_char_metric): Change font_type arg to int for RIF.
8652 (w32_encode_char): Return int according to RIF requirements.
8653 (w32_compute_glyph_string_overhangs): Adapt to RIF.
8654 (w32_get_glyph_overhangs): New function for RIF. Uses generic
8655 x_get_glyph_overhangs.
8656 (w32_redisplay_interface): Add new members.
8657
8658 * macgui.h (XChar2b): Move typedef here for consolidation.
8659 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
8660
8661 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
8662 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
8663 consolidation.
8664
8665 * macterm.c: Remove consolidated defines and code.
8666 (mac_per_char_metric): New function for RIF.
00c64fab 8667 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
8668 (mac_compute_glyph_string_overhangs): Adapt for RIF.
8669 (x_redisplay_interface): Add new members.
8670
00c64fab
SM
86712003-03-15 Stefan Monnier <monnier@cs.yale.edu>
8672
8673 * keymap.c (Vmenu_events): New var.
8674 (syms_of_keymap): Initialize it.
8675 (where_is_internal): Check more carefully what is a menu event.
8676
225c7a07
RS
86772003-03-14 Richard M. Stallman <rms@gnu.org>
8678
8679 * lread.c (read1): After #!, exit loop on eof.
8680
cea9be54
JD
86812003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8682
9ea0e54d
JD
8683 * gtkutil.h: Add declaration for xg_frame_cleared.
8684
0cb35f4e
JD
8685 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
8686
cea9be54
JD
8687 * gtkutil.c (struct xg_last_sb_pos): New structure.
8688 (handle_fixed_child): New function.
8689 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
8690 and force a redraw on them.
8691 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
8692 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
8693 so we can avoid unneeded redraws.
8694 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
8695 and force a redraw on the scroll bar.
8696 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
8697 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 8698 (xg_frame_cleared): New function.
cea9be54 8699
20b853f3
KH
87002003-03-13 Kenichi Handa <handa@m17n.org>
8701
8702 * coding.c (Fdetect_coding_region): Fix docstring.
8703 (Fdetect_coding_string): Fix docstring.
8704
7a555aff
AS
87052003-03-13 Andreas Schwab <schwab@suse.de>
8706
25cc0080
AS
8707 * gtkutil.c: Add prototype for create_menus.
8708
30225431
AS
8709 * data.c (long_to_cons): Fix type of top.
8710
8711 * xselect.c (selection_data_to_lisp_data): Use int instead of
8712 long for an integer of size 4.
8713
7a555aff 8714 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 8715 (xg_tool_bar_help_callback): Likewise.
7a555aff 8716
a3e4741f
AS
87172003-03-12 Andreas Schwab <schwab@suse.de>
8718
8719 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
8720
9668be7c
KS
87212003-03-12 Kim F. Storm <storm@cua.dk>
8722
03eb5fab 8723 The following changes consolidate the fringe handling from
9668be7c 8724 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 8725
9668be7c
KS
8726 * xdisp.c: Consolidate fringe handling code here.
8727 (left_bits, right_bits, continued_bits, continuation_bits)
8728 (ov_bits, zv_bits): Define fringe bitmaps.
8729 (fringe_bitmaps): New array holding fringe bitmaps.
8730 (draw_fringe_bitmap): Draw a specific bitmap; call display
8731 specific drawing routine via rif->draw_fringe_bitmap.
8732 (draw_row_fringe_bitmaps): Generic replacement for
8733 x_draw_row_fringe_bitmaps; all callers changed.
8734 (compute_fringe_widths): Generic replacement for
8735 x_compute_fringe_widths; all callers changed.
8736
8737 * dispextern.h (enum fringe_bitmap_type): Define here.
8738 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
8739 (fringe_bitmaps): Declare extern.
8740 (struct redisplay_interface): New member draw_fringe_bitmap.
8741 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
8742
8743 * xterm.c: Remove generic fringe code.
8744 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
8745 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
8746
8747 * w32term.c: Remove generic fringe code.
8748 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
8749 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 8750
9668be7c
KS
8751 * macterm.c: Remove generic fringe code.
8752 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
8753 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
8754
00a88f32
SM
87552003-03-11 Stefan Monnier <monnier@cs.yale.edu>
8756
8757 * print.c (Fprin1_to_string): Return unibyte string if possible.
8758
1d1de695
DK
87592003-03-09 David Kastrup <dak@gnu.org>
8760
8761 * process.c (read_process_output): We have allocated enough space
8762 for readmax and carryover, so actually use the alloted space.
8763
257f40f2
JD
87642003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8765
8766 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
8767 toolkit scrollbar click.
8768
8769 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
8770 for USE_GTK.
8771 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
8772 also.
8773 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
8774 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 8775
78819ebb 8776 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
257f40f2
JD
8777
8778 * gtkutil.c (xg_get_scroll_id_for_window): New function.
8779 (xg_tool_bar_item_expose_callback): New function.
8780 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
8781 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
8782 on the tool bar widget.
8783 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
8784 to expose on the tool bar item widgets.
8785
15213141
JD
87862003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8787
26b74a0b 8788 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 8789 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
8790 deleted from the image cache).
8791
15213141
JD
8792 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
8793 the event isn't for a frame (i.e. for dialogs).
8794
20b853f3 87952003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
8796
8797 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
8798 composition components reaches the limit, terminate composing.
8799 (COMPOSITION_OK): New macro.
00a88f32 8800 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
8801 composition is found.
8802 (coding_restore_composition): Adjust the number of composition
8803 components if it is not sane.
8804
c9029fe5
JB
88052003-03-06 Juanma Barranquero <lektu@terra.es>
8806
8807 * w32term.h (struct w32_display_info): Add xrdb member to support
8808 passing resources via -xrm on Windows.
8809
8810 * w32term.c (w32_make_rdb): New function.
8811 (w32_term_init): Use it to initialize xrdb member of w32_display_info
8812 struct. Delete leftover code.
8813
8814 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
8815 for resources passed on the command line.
8816
8817 * w32reg.c (w32_get_rdb_resource): New function.
8818 (x_get_string_resource): Use it, so resources passed with -xrm
8819 supercede the ones in the registry.
8820
9d00001f
JD
88212003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8822
8823 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
8824 instead of x_top_window_to_frame.
8825
ca2417b9
JD
88262003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8827
8828 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
8829 when restarting Emacs.
8830
5b20caf0
RS
88312003-03-03 Richard M. Stallman <rms@gnu.org>
8832
8833 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
8834 to run kill-buffer-query-functions.
8835 (Qkill_buffer_query_functions): New var.
8836 (syms_of_buffer): Init and staticpro it.
8837
58e91b77
JD
88382003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8839
8840 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
8841
932357b4
KS
88422003-02-25 Kim F. Storm <storm@cua.dk>
8843
8844 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
8845 If centering point failed to make whole line visible and vscroll
8846 is non-zero, disable vscroll and try centering point again.
8847
8848 * lread.c (read1): Accept `single space' syntax like (? x).
8849
bb8db7e1
JD
88502003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8851
8852 * keyboard.c (cancel_hourglass_unwind): Surround with
8853 #ifdef HAVE_X_WINDOWS
8854
47d77aab
KH
88552003-02-25 Kenichi Handa <handa@m17n.org>
8856
8857 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
8858 process only when "subprocesses" is defined.
8859
6a097c0c
SM
88602003-02-24 Stefan Monnier <monnier@cs.yale.edu>
8861
8862 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
8863
0b063c27
JB
88642003-02-24 Juanma Barranquero <lektu@terra.es>
8865
d1135afc
JB
8866 * callint.c (fix_command): Declare as static void and move before
8867 Fcall_interactively.
8868
0b063c27
JB
8869 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
8870 (syms_of_xdisp): Don't initialize Qwhen.
8871
0af912f0
JD
88722003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8873
8874 * keyboard.c (cancel_hourglass_unwind): New function.
8875 (command_loop_1): Cancel hourglass with unwind-protect.
8876
120d0a23
RS
88772003-02-23 Richard M. Stallman <rms@gnu.org>
8878
8879 * callint.c (fix_command): New subroutine, from Fcall_interactively.
8880 Detect (when ... (region-beginning)) etc.
8881 (Fcall_interactively): Call fix_command.
8882 (Qif, Qwhen): New variables.
8883 (syms_of_callint): Init and staticpro them.
0b063c27 8884
120d0a23
RS
8885 * regex.c (print_partial_compiled_pattern): Output to stderr.
8886
4ece81a6
KG
88872003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8888
8889 * dired.c (directory_files_internal): Don't expand directory.
8890 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
8891 instead. From Lars Hansen <larsh@math.ku.dk>.
8892
e52bd6b7
SM
88932003-02-22 Stefan Monnier <monnier@cs.yale.edu>
8894
8895 * fns.c (string_to_multibyte): Remove unused var i.
8896 (Flanginfo): Fix int/Lisp_Object mixup.
8897 (void_call2): New fun.
8898 (Fmap_char_table): Use it in place of call2.
8899
8900 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
8901
8902 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
8903
8904 * keymap.c (copy_keymap_1): Make it static.
8905
8906 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
8907
c33ef7c4
JB
89082003-02-22 David Ponce <david@dponce.com>
8909
8910 * lread.c (Fload): Don't check STRING_MULTIBYTE.
8911
16782258
JD
89122003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8913
8914 * process.h: Removed subtty field from struct Lisp_Process.
8915
8916 * process.c (create_process): Remove setting of subtty.
8917 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
8918 (Fprocess_running_child_p, process_send_signal):
8919 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
8920 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
8921
3abeca61
KG
89222003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8923
8924 * keymap.c (Fdefine_key): Doc fix.
8925
92a8ce63
JB
89262003-02-21 Juanma Barranquero <lektu@terra.es>
8927
8928 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
8929
8930 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
8931 POLLING_PROBLEM_IN_SELECT.
8932
8933 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
8934 Delete #undef of POLLING_PROBLEM_IN_SELECT.
8935
8936 * s/hpux10-20.h: New file.
8937
e52bd6b7
SM
8938 * process.c (wait_reading_process_input):
8939 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 8940
20f1ef2e
KH
89412003-02-20 Kenichi Handa <handa@m17n.org>
8942
32d0a9dc
KH
8943 * fontset.c (check_fontset_name): If NAME is nil, return the
8944 default fontset.
8945 (override_font_info): New function.
e52bd6b7 8946 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
8947 (Ffontset_info): If FONTSET is not the default fontset, merge
8948 FONTSET onto the copy of the default fontset, and work on that
8949 copy. Document that NAME nil means the default fontset.
8950 (Ffontset_font): Document that NAME nil means the default fontset.
8951
20f1ef2e
KH
8952 * process.c (setup_process_coding_systems): If the process's
8953 in/out descriptor is -1, do nothing.
8954
77d1daf2
AS
89552003-02-19 Andreas Schwab <schwab@suse.de>
8956
e52bd6b7
SM
8957 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
8958 Add prototypes.
77d1daf2 8959
f9a45bb3
KH
89602003-02-19 Kenichi Handa <handa@m17n.org>
8961
8962 * xfaces.c (try_alternative_families): Try all scalable fonts if
8963 Vscalable_fonts_allowed is not Qt.
8964
72ecb43c
JD
89652003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8966
8967 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
8968
ee5be7c3
JD
89692003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8970
8971 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
8972 names.
8973
8974 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 8975 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
8976 x_face_list_fonts.
8977 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
8978 (Fx_list_fonts): Set maxnames to -1 to get all font names.
8979
4cd519a7
KS
89802003-02-18 Kim F. Storm <storm@cua.dk>
8981
068f9882
KS
8982 * lread.c (read1): Fix last change.
8983 "`" is not always special. Allow "?" after a character constant.
4cd519a7 8984
7290a344
AC
89852003-02-18 Andrew Choi <akochoi@shaw.ca>
8986
8987 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
8988
1f7fa69b
AS
89892003-02-18 Andreas Schwab <schwab@suse.de>
8990
8991 * window.c (window_scroll_pixel_based): Move outside a
8992 multi-glyph character before setting new window start.
8993
8994 * xdisp.c (in_display_vector_p): New function.
8995 * dispextern.h (in_display_vector_p): Declare.
8996
23e21195
KS
89972003-02-18 Kim F. Storm <storm@cua.dk>
8998
8999 * lread.c (read1): Fix and relax read syntax.
9000 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
9001 Only recognize "," after dotted-pair dot if inside backquote.
9002 Never include "`" or "," (inside backquote) in a symbol.
9003 Allow dotted-pair dot after a character constant.
9004 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 9005
f098b121
JD
90062003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9007
9008 * gtkutil.c (xg_tool_bar_expose_callback): New function.
9009 (xg_create_tool_bar): Force style of tool bar to be horizontal with
9010 icons. Set name of tool bar to emacs-toolbar.
9011 (update_frame_tool_bar): Connect expose event to
9012 xg_tool_bar_expose_callback.
9013
63020c46
RS
90142003-02-17 Richard M. Stallman <rms@gnu.org>
9015
9016 * keyboard.c (this_command_key_count_reset): New variable.
9017 Initiatize to 0 where this_command_key_count is set.
9018 (read_char): Save and restore this_command_key_count_reset
9019 around input method code.
9020 (read_char): If this_command_key_count_reset, echo reread commands.
9021 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
9022
fb4452cc
KH
90232003-02-17 Kenichi Handa <handa@m17n.org>
9024
9025 * fns.c (string_to_multibyte): Always return a multibyte string.
9026
bd11cc09
JR
90272003-02-16 Jason Rumney <jasonr@gnu.org>
9028
e52bd6b7
SM
9029 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
9030 Negative max_fonts parameter means list all.
bd11cc09 9031
4cdf4bde
DL
90322003-02-14 Dave Love <fx@gnu.org>
9033
9034 * fns.c (Flanginfo): Doc fix.
9035
023b93f6
KS
90362003-02-13 Kim F. Storm <storm@cua.dk>
9037
37cd4238
KS
9038 * lread.c (read_escape): Interpret \s as a SPACE character, except
9039 for \s-X in a character constant which still is the super modifier.
9040 (read1): Signal an `invalid read syntax' error if a character
9041 constant is immediately followed by a digit or symbol character.
9042
140a6b7e
KS
9043 * search.c (Fmatch_data): Doc fix. Explicitly state that
9044 match-data is undefined if last search failed.
9045
023b93f6
KS
9046 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
9047 All uses changed.
9048
7d5c86e5
JB
90492003-02-12 Juanma Barranquero <lektu@terra.es>
9050
9051 * eval.c (Fdefmacro): Fix typo.
9052
295fff2c
KS
90532003-02-12 Kim F. Storm <storm@cua.dk>
9054
9055 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
9056 macro is a string, convert meta modifiers in string when copying
9057 the string into a vector.
9058
60f3202d
KS
90592003-02-11 Kim F. Storm <storm@cua.dk>
9060
9061 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
9062
61cb0b53
KH
90632003-02-11 Kenichi Handa <handa@m17n.org>
9064
9065 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
9066
7392e23c
KS
90672003-02-10 Kim F. Storm <storm@cua.dk>
9068
9069 * process.c: Doc fixes.
9070 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
9071
ce4254bd
KH
90722003-02-10 Kenichi Handa <handa@m17n.org>
9073
9c7a329a
KH
9074 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
9075
ce4254bd
KH
9076 * process.c (QCfilter_multibyte): New variable.
9077 (setup_process_coding_systems): New function.
e52bd6b7
SM
9078 (Fset_process_buffer, Fset_process_filter):
9079 Call setup_process_coding_systems.
ce4254bd
KH
9080 (Fstart_process): Initialize the member `filter_multibyte' of
9081 struct Lisp_Process.
9082 (create_process): Call setup_process_coding_systems.
9083 (Fmake_network_process): New keyward `:filter-multibyte'.
9084 Initialize the member `filter_multibyte' of struct Lisp_Process.
9085 Call setup_process_coding_systems.
9086 (server_accept_connection): Call setup_process_coding_systems.
9087 (read_process_output): If the process has a filter, decide the
9088 multibyteness of a string to given to the filter by
9089 `filter_multibyte' member of the process. If the process doesn't
9090 have a filter and the result of conversion is unibyte, use
9091 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
9092 multibyte form.
9093 (Fset_process_coding_system): Call setup_process_coding_systems.
9094 (Fset_process_filter_multibyte): New function.
9095 (Fprocess_filter_multibyte_p): New function.
9096 (syms_of_process): Intern and staticpro QCfilter_multibyte.
9097 Defsubr Sset_process_filter_multibyte and
9098 Sprocess_filter_multibyte_p.
9099
9100 * process.h (struct Lisp_Process): New member filter_multibyte.
9101
9102 * lisp.h (setup_process_coding_systems): Add prototype.
9103
9104 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
9105 process, update coding systems for the process.
9106
b08d5f59
KH
91072003-02-09 Kenichi Handa <handa@m17n.org>
9108
9109 * fns.c (string_to_multibyte): New function.
9110 (Fstring_to_multibyte): New function.
9111 (syms_of_fns): Defsubr it.
9112
0dfd93c0
AS
91132003-02-08 Andreas Schwab <schwab@suse.de>
9114
9115 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
9116 instead of the substitution.
9117
7b76ca1c
JD
91182003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9119
9120 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
9121
9122 * xmenu.c (menu_position_func): Adjust menu popup position so that
9123 the menu is fully visible.
7b76ca1c 9124
2436a4e4
JD
91252003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9126
9127 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
9128 (x_make_frame_invisible, x_wm_set_icon_position):
9129 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
9130
9131 * xfns.c (x_set_name, x_set_title): Ditto.
9132
37d1e680
RS
91332003-02-04 Richard M. Stallman <rms@gnu.org>
9134
9135 * keyboard.c (echo_now): Update before_command_echo_length.
9136 (Freset_this_command_lengths): Reset this_command_key_count etc.
9137 immediately rather than arranging to do it later.
9138 (before_command_key_count_1, before_command_echo_length_1)
9139 (before_command_restore_flag): Vars deleted.
9140 (add_command_key): Don't handle before_command_restore_flag.
9141 (read_char, record_menu_key): Don't update before_command_key_count or
9142 before_command_echo_length.
9143 (read_char): Don't handle before_command_restore_flag.
9144
9145 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
9146 in direct-output clauses if it wouldn't be called in the ordinary case.
9147
578846a3
KS
91482003-02-04 Kim F. Storm <storm@cua.dk>
9149
9150 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
9151
49853a4d
JD
91522003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9153
9154 * gtkutil.c (remove_from_container): Copying list is not needed.
9155 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
9156 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
9157 on list returned from gtk_container_get_children to avoid memory leak.
9158
8b53dc06
JR
91592003-02-01 Jason Rumney <jasonr@gnu.org>
9160
5d54d177
JR
9161 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
9162 local malloc.
9163 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
9164 definitions in xpm.h.
9165 (init_xpm_functions): New function.
f63fd14e 9166 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
9167 (init_external_image_libraries): Try to load libXpm.dll.
9168
8b53dc06
JR
9169 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
9170 timestamp.
9171
b222e415
DL
91722003-01-31 Dave Love <fx@gnu.org>
9173
9174 * syntax.c (Fskip_chars_forward)
9175 (open-paren-in-column-0-is-defun-start): Doc fix.
9176
c60ee5e7
JB
91772003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
9178
9179 * fileio.c: Support // at start of name for Cygwin (just added proper
9180 preprocessor tests).
9181
9182 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
9183
9184 * Makefile.in: Use @EXEEXT@ for Cygwin.
9185
9186 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
9187
9188 * s/cygwin.h: Added for Cygwin port.
9189
53b37591
JB
91902003-01-31 Juanma Barranquero <lektu@terra.es>
9191
9192 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
9193 when including gif_lib.h.
fe929957 9194 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
9195 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
9196 Windows. Disable color table lookups. Call library functions
53b37591 9197 through pointers determined at runtime.
fe929957
JB
9198 (init_external_image_libraries): Try to load libungif.dll and
9199 libtiff.dll.
53b37591 9200
45415a8f
KH
92012003-01-31 Kenichi Handa <handa@m17n.org>
9202
9203 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 9204 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 9205
a97e4138
JD
92062003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9207
e52bd6b7 9208 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 9209
6eed9bed
DL
92102003-01-30 Dave Love <fx@gnu.org>
9211
9212 * alloc.c (Vgc_elapsed, gcs_done): New variables.
9213 (Fgarbage_collect): Use them.
9214 (init_alloc, syms_of_alloc): Set them up.
9215
100dcd40
JB
92162003-01-30 Juanma Barranquero <lektu@terra.es>
9217
9218 * w32fns.c (init_external_image_libraries): Add missing operator.
9219
fbd852af
JR
92202003-01-29 Jason Rumney <jasonr@gnu.org>
9221
9222 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
9223 an alternative name for jpeg.dll.
9224
8a2d8020
KH
92252003-01-29 Kenichi Handa <handa@m17n.org>
9226
9227 * xdisp.c (set_cursor_from_row): Pay attention to string display
9228 properties.
9229
058c18c7
AC
92302003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
9231
9232 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
9233 <escape>.
9234 (keycode_to_xkeysym_table): Reformat and add more comments.
9235 (XTread_socket): Drop special case for backspace.
9236
385f11cf
AC
92372003-01-28 Andrew Choi <akochoi@shaw.ca>
9238
9239 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
9240 values in old-style RGB specs.
9241
c922a224
JB
92422003-01-27 Juanma Barranquero <lektu@terra.es>
9243
9244 * w32fns.c (init_external_image_libraries): Try alternate names for the
9245 jpeg dll.
9246
0a1d6de0
JD
92472003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9248
9249 * gtkutil.c (create_dialog, xg_separator_p)
9250 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
9251 before calling strcmp or strlen.
9252
a97e4138 92532003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
9254
9255 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
9256 and handle image load failure.
9257
28908312
JR
92582003-01-26 Jason Rumney <jasonr@gnu.org>
9259
9260 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
9261 New functions.
f63fd14e
JB
9262 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
9263 Disable color table lookups. Call jpeg library functions
28908312
JR
9264 through pointers determined at runtime.
9265 (init_external_image_libraries): Try to load jpeg.dll.
9266
84e47416
RS
92672003-01-25 Richard M. Stallman <rms@gnu.org>
9268
9269 * lisp.h: Declare format2 instead of format1.
9270
9271 * fileio.c (barf_or_query_if_file_exists):
9272 Call format2 instead of format1.
9273
9274 * editfns.c (format2): New function, replaces format1
9275 but takes exactly two Lisp Objects as format args.
9276
9277 * buffer.c (Fkill_buffer): Call format2 instead of format1.
9278
a97e4138 92792003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
9280
9281 * xterm.h: Change to return value of x_dispatch_event to int.
9282
9283 * xterm.c (x_filter_event): New function.
9284 (event_handler_gdk, XTread_socket): Call x_filter_event.
9285 (x_dispatch_event): Change to return value of finish.
9286 (event_handler_gdk): Use return value from x_dispatch_event.
9287
9288 * xfns.c (x_window): Call create_frame_xic for GTK version to
9289 initialize input methods.
9290
9291 * gtkutil.h: Add (void) prototypes.
9292
9293 * gtkutil.c (create_menus): Remove code that puts the help menu to
9294 the right.
9295
54eefef1
JR
92962003-01-25 Jason Rumney <jasonr@gnu.org>
9297
9298 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
9299 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
9300 (png_load): Adjust colors for Windows. Use Windows
9301 bitmaps. Disable color table lookups.
c262430d
JR
9302 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
9303 (init_png_functions): New function.
9304 (png_read_from_memory, png_load): Call png library functions
9305 through pointers determined at runtime.
9306 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
9307 (init_external_image_libraries): New function.
9308 (init_xfns): Call it.
54eefef1 9309
1a9e275b
AS
93102003-01-24 Andreas Schwab <schwab@suse.de>
9311
9312 * minibuf.c (Fminibuffer_message): Verify type of parameter.
9313
a97e4138 93142003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
9315
9316 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
9317 of static initializer.
9318
422eec7e
DL
93192003-01-24 Dave Love <fx@gnu.org>
9320
9321 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
9322 architectures.
9323
9324 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
9325 Use __alignof__.
9326
2a026b04
KH
93272003-01-24 Kenichi Handa <handa@m17n.org>
9328
9329 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 9330 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
9331 (command_loop_1): Call adjust_point_for_property with proper
9332 second arg.
9333
a18bb28d
JR
93342003-01-22 Jason Rumney <jasonr@gnu.org>
9335
9336 Sync changes with xterm.c and xfns.c.
9337
9338 * w32term.c (x_draw_glyph_string_foreground)
9339 (x_draw_composite_glyph_string_foreground): Implement overstriking.
9340
9341 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
9342 phys_cursor's hpos is overwritten. This is still not completely
9343 correct, as it doesn't really make sense to use hpos at all to
9344 get the cursor glyph (as that is relative to the width of the
9345 characters on the line, which may have changed during the update).
9346
9347 * w32term.c (notice_overwritten_cursor): Handle the special case
9348 of the cursor being in the first blank non-text line at the
9349 end of a window.
9350
9351 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
9352 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
9353 Compute from the x position returned by x_draw_glyphs.
9354
9355 (x_display_and_set_cursor): Don't set phys_cursor_width here,
9356 except for NO_CURSOR and system caret, to make phys_cursor_width
9357 contain what its name suggests.
9358 (notice_overwritten_cursor): Consider the cursor image erased if
9359 the output area intersects the cursor image in y-direction.
9360
6a097c0c
SM
9361 * w32term.c (note_mode_line_or_margin_highlight): Rename from
9362 note_mode_line_highlight and extend.
a18bb28d
JR
9363
9364 * w32term.c (last_window): New variable.
9365 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
9366 (note_mouse_movement): Remove reimplemented code in #if 0.
9367
9368 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
9369 not update_mode_lines, and always set it to 1.
9370
ac6e47ef
JR
93712003-01-21 Jason Rumney <jasonr@gnu.org>
9372
9373 * w32fns.c (IDC_HAND): Define it if system headers don't.
9374
93752003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
9376
9377 * w32term.h (struct w32_output): New member hand_cursor.
9378 (WM_EMACS_SETCURSOR): New message definition.
9379
9380 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
9381 function w32_define_cursor.
9382 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
9383 position, change member name output_data.x to output_data.w32 and
9384 add function w32_define_cursor.
9385 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
9386 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
9387 (w32_initialize_display_info):
9388 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
9389
9390 * w32fns.c (Vx_hand_shape): New variable.
9391 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
9392 WM_EMACS_SETCURSOR.
9393 (x-create-frame): Setup Cursor types.
9394
ceb39a17
JB
93952003-01-21 David Ponce <david@dponce.com>
9396
ac6e47ef 9397 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 9398 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 9399 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 9400 2002-09-30.)
ac6e47ef
JR
9401 (w32_draw_relief_rect): Declare all args.
9402 (w32_define_cursor): New.
9403
9404 * w32fns.c (w32_load_cursor): New function.
9405 (w32_init_class): Use it.
9406 (x_put_x_image): Declare all args.
9407
b6189c3b 94082003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
46cf0bed
JB
9409
9410 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
9411
a97e4138 94122003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
9413
9414 * gtkutil.c: Must include stdio.h before termhooks.h
9415
83fc9c63
DL
94162003-01-21 Dave Love <fx@gnu.org>
9417
9418 * alloc.c (Fgc_status): Print zombie list.
9419 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
9420 Fix assignment of zombies.
9421 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
9422 Don't take car of non-cons.
9423
9424 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
9425
9426 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
9427
fe04b8c8
JR
94282003-01-20 David Ponce <david@dponce.com>
9429
9430 * w32menu.c (digest_single_submenu): Declare all args.
9431
9432 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
9433 changes in xmenu.c:
9434
9435 (parse_single_submenu): Use individual keymap's prompt
9436 string as pane name, if there is one.
9437 (set_frame_menubar): Save menu_items_n_panes from each call to
9438 parse_single_submenu and use it when calling digest_single_submenu.
9439
539e69a9
ST
94402003-01-20 Steven Tamm <steventamm@mac.com>
9441
9442 * macterm.c (XTread_socket): Checks for valid, visible window
9443 before sending a scroll-wheel event.
9444
675d000f
RS
94452003-01-20 Richard M. Stallman <rms@gnu.org>
9446
9447 * xdisp.c (redisplay_window): If mini window's buffer is not
9448 a minibuffer, then redisplay it like other windows.
9449
a97e4138 94502003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
9451
9452 * gtkutil.c (xg_create_frame_widgets): Check if there is an
9453 external tool bar before setting tool bar height.
9454
048addec
JD
94552003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9456
9457 * xterm.c (handle_one_xevent): Surround popup_activated
9458 with #ifdef:s for non-toolkit version.
9459
9460 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
9461 (gtkutil.o): New file.
9462 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
9463 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
9464
9465 * gtkutil.c: New file for GTK version.
9466
9467 * gtkutil.h: New file for GTK version.
9468
9469 * xterm.h: Add xt_or_gtk_widget.
9470 Include gtk files for USE_GTK.
9471 (struct x_output): Add toolbar_height.
9472 (struct x_output): Add GTK widgets and Gdk size_hints.
9473 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
9474 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
9475 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
9476
9477 * xterm.c: Include gtkutil.h for USE_GTK.
78819ebb 9478 (free_frame_menubar): Declare extern void for USE_GTK.
048addec
JD
9479 (note_mouse_highlight): Check popup_activated for USE_GTK.
9480 (xt_action_hook): Don't compile if USE_GTK.
9481 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
9482 (xg_scroll_callback): New function.
9483 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
9484 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
9485 for USE_GTK.
9486 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
9487 xg_show_scroll_bar for USE_GTK.
9488 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
9489 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
9490 (event_handler_gdk): New function for USE_GTK.
9491 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
9492 (handle_one_xevent): Make sure widget is mapped before
9493 calling x_real_positions for USE_GTK.
9494 (XTread_socket): Add GTK event loop for USE_GTK.
9495 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
9496 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
9497 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
9498 (x_iconify_frame): Add code for USE_GTK.
9499 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
9500 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
9501 is in gtkutil.c.
9502 (x_term_init): Add initialization for GTK.
9503 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
9504
9505 * xmenu.c: Include gtkutil.h for USE_GTK.
9506 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
9507 (single_menu_item, single_menu_item, Fx_popup_dialog):
9508 Check for USE_GTK.
048addec
JD
9509 (popup_widget_loop): New function for USE_GTK.
9510 (x_activate_menubar): Add code for USE_GTK.
9511 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
9512 (menu_highlight_callback, menubar_selection_callback):
9513 Add USE_GTK versions.
048addec
JD
9514 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
9515 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
9516 (free_frame_menubar): Only compile if not USE_GTK. GTK version
9517 is in gtkutil.c.
9518 (popup_selection_callback): New version for USE_GTK.
9519 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 9520 one USE_X_TOOLKIT version.
048addec
JD
9521 (xmenu_show): Call create_and_show_popup_menu.
9522 (dialog_selection_callback): New version for USE_GTK.
9523 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 9524 one USE_X_TOOLKIT version.
048addec
JD
9525 (xdialog_show): Call create_and_show_dialog.
9526
9527 * xfns.c: Include gtkutil for USE_GTK.
9528 (x_window_to_frame, x_any_window_to_frame)
9529 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
9530 (x_top_window_to_frame): Add code for USE_GTK.
9531 (x_set_background_color): Call xg_set_background_color for GTK.
9532 (x_set_menu_bar_lines): Check for USE_GTK.
9533 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
9534 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
9535 (x_window): Call xg_create_frame_widgets for USE_GTK.
9536 (Fx_create_frame): Check for USE_GTK
9537 (Fx_file_dialog): New implementation for USE_GTK.
9538
9539 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
9540 (update_menu_bar): Add check for USE_GTK.
9541 (update_tool_bar): Add check for USE_GTK and external tool bar.
9542 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
9543 (redisplay_internal): Add check for USE_GTK and popup_activated.
9544 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
9545 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
9546 (display_menu_bar): Add check for USE_GTK
9547
78819ebb 9548 * lisp.h (Vx_resource_name): Declare extern.
048addec 9549
a64387ee 9550 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
9551 for USE_GTK.
9552 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
9553
9554 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
9555 (FRAME_EXTERNAL_TOOL_BAR): New macro.
9556 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
9557
9558 * fileio.c (Fread_file_name): Add check for USE_GTK.
9559
6bdb309a
SM
9560 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
9561 Add check for USE_GTK.
048addec
JD
9562
9563 * config.in: Added HAVE_GTK
9564
9565 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
9566
95672003-01-18 Stefan Monnier <monnier@cs.yale.edu>
9568
9569 * charset.h (Funibyte_char_to_multibyte): Export.
9570
95712003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9572
9573 * xmenu.c (mouse_position_for_popup): New function.
9574 (Fx_popup_menu): Call mouse_position_for_popup for X and
9575 mouse_position_hook for others.
9576
95772003-01-17 Kim F. Storm <storm@cua.dk>
9578
9579 * editfns.c (Finsert): Mention `string-make-multibyte' and
9580 `string-as-multibyte' in doc string.
9581
95822003-01-17 Kenichi Handa <handa@m17n.org>
9583
9584 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 9585
048addec
JD
9586 * editfns.c (Fformat): Convert an unibyte char argument that is
9587 formatted by "%c" to multibyte if the total result must be a
9588 multibyte string.
cd7df9c0 9589
048addec 95902003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 9591
048addec
JD
9592 * process.c (set-process-filter): Document unibyte/multibyte-ness
9593 of string argument.
56210ecd 9594
048addec 95952003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 9596
048addec 9597 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 9598
048addec
JD
9599 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
9600 (re_search_2): Likewise.
6df8b9fe 9601
048addec 96022003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 9603
048addec
JD
9604 * xdisp.c (message_dolog): Fix bug of the case that *Message*
9605 buffer is unibyte.
292ddc31 9606
048addec 96072003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 9608
048addec 9609 * fns.c (Fsubstring): Clarify doc string.
292ddc31 9610
048addec
JD
9611 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
9612 (Fprevious_char_property_change)
9613 (Fnext_single_char_property_change)
9614 (Fprevious_single_char_property_change, Fnext_property_change)
9615 (Fnext_single_property_change, Fprevious_property_change)
9616 (Fprevious_single_property_change, Fadd_text_properties)
9617 (Fput_text_property, Fset_text_properties)
9618 (Fremove_text_properties, Fremove_list_of_text_properties)
9619 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 9620
048addec 96212003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 9622
048addec
JD
9623 * process.h (struct Lisp_Process): New member plist replaces old
9624 member private_vars. All uses changed.
63e4e4c6 9625
048addec 9626 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 9627 (QCplist): Rename from QCvars. Change all uses.
048addec 9628 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 9629 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 9630 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 9631 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 9632
048addec 96332003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 9634
6bdb309a 9635 * m/delta.h: Remove (obsolete).
e833850f 9636
048addec 96372003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 9638
048addec
JD
9639 * fileio.c (Fdelete_directory, Fdelete_file): Document the
9640 behaviour in front of symlinks.
9641 (Fdelete_file): Raise an error on directories.
817cb127 9642
048addec 96432003-01-13 Dave Love <fx@gnu.org>
817cb127 9644
048addec 9645 * fns.c (Freverse): Use QUIT.
3e8cf2ea 9646
048addec 96472003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 9648
048addec
JD
9649 * minibuf.c (minibuffer_completion_contents):
9650 Error if point is inside prompt.
3e8cf2ea 9651
048addec
JD
9652 * keyboard.c (command_loop_1): Don't redisplay directly
9653 if there's a post-command-hook.
3e8cf2ea 9654
048addec
JD
9655 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
9656 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 9657
048addec 96582003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 9659
048addec 9660 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 9661
048addec
JD
9662 * process.c (QCvars): New variable.
9663 (syms_of_process): Intern and staticpro it.
9664 (Fset_process_contact): Removed function.
9665 (Fprocess_variable, Fset_process_variable): New functions.
9666 (syms_of_process): Defsubr them.
9667 (Fstart_process): Initialize private_vars plist to nil.
9668 (Fmake_network_process): New arg :vars to setup the private
9669 variables for new network process.
9670 (server_accept_connection): Copy server's private variables to
9671 client process.
2c10f029 9672
048addec
JD
9673 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
9674 crashes). Code rewritten and simplified. Now directly aligns the
9675 pointer and recalculates pure_bytes_used, rather than aligning the
9676 size and adjusting the pointer.
b8a76c6c 9677
048addec 96782003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 9679
048addec
JD
9680 * process.c (Fset_process_contact): New function.
9681 (syms_of_process): defsubr it.
9682 (make-network-process): Update doc.
3a8d0899 9683
048addec 96842003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 9685
048addec
JD
9686 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
9687 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 9688
048addec 96892003-01-10 Dave Love <fx@gnu.org>
4abc7470 9690
048addec 9691 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 9692
048addec 96932003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 9694
048addec
JD
9695 * process.c (Fmake_network_process): Convert new port number
9696 to host byte order for `:service t' case. From Mario Lang.
bf338245 9697
048addec 96982003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 9699
048addec
JD
9700 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
9701 instead of XtAppProcessEvent.
bf338245 9702
048addec
JD
9703 * xterm.c (handle_one_xevent): New function.
9704 (x_dispatch_event): New function.
9705 (XTread_socket): Call handle_one_xevent.
bf338245 9706
048addec 9707 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 9708
048addec
JD
9709 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
9710 call XQueryPointer to get coordinates.
9711 (popup_get_selection): Do not set popup_activated_flag to zero,
9712 let popup_deactivate_callback do that. Needed for Motif.
9713 Call x_dispatch_event instead of XtDispatchEvent.
9714 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 9715
048addec 97162003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 9717
6bdb309a 9718 * process.c (server_accept_connection): Fix recording of new
048addec
JD
9719 connection's local address in :local property of contact info.
9720 (Fmake_network_process): Record local network address for new
9721 client processes in :local property of contact info.
6bdb309a 9722 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 9723
048addec 97242003-01-07 Dave Love <fx@gnu.org>
00e3ab56 9725
048addec 9726 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 9727
048addec 97282003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 9729
048addec 9730 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 9731
048addec
JD
9732 * eval.c (Fuser_variable_p): Doc change. For custom variables,
9733 use the same test as for custom-variable-p.
8c6d74c6 9734
048addec 97352003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 9736
048addec
JD
9737 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
9738 Count LAST_LINE_MISFIT in scroll margin for end of window.
9739 Move label too_near_end before setting SCROLL_MARGIN_POS.
9740 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 9741
048addec
JD
9742 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
9743 scroll_conservatively case. If scrolling that much doesn't change
9744 STARTP, move it down one line.
e833850f 9745
048addec
JD
9746 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
9747 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 9748
048addec
JD
9749 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
9750 selected frame.
8c6d74c6 9751
048addec
JD
9752 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
9753 (syms_of_keymap): staticpro them.
9754 (Fapropos_internal): Initialize them and clear them out.
9755 Don't GCPRO them.
8c6d74c6 9756
048addec
JD
9757 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
9758 Doc fixes.
8c6d74c6 9759
048addec
JD
9760 * lisp.h: New misc type Lisp_Save_Value.
9761 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
9762 (XSAVE_VALUE): New macro.
9763 (struct Lisp_Save_Value): New data type.
9764 (union Lisp_Misc): Add u_save_value alternative.
78819ebb 9765 (make_save_value): Declare.
8c6d74c6 9766
048addec 9767 * alloc.c (make_save_value): New function.
8c6d74c6 9768
048addec
JD
9769 * xterm.c (x_catch_errors): Save dpy using make_save_value.
9770 (x_catch_errors_unwind): Call XSync.
8c6d74c6 9771
048addec 97722003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 9773
048addec 9774 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 9775
048addec
JD
9776 * keyboard.c (command_loop_1): Call adjust_point_for_property
9777 in direct action cases for Qforward_char and Qbackward_char.
9778 Set already_adjusted so it won't be done twice.
8c6d74c6 9779
b6189c3b 97802002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
8c6d74c6 9781
048addec
JD
9782 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
9783 type definition of size_t.
8c609cff 9784
048addec 97852003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 9786
048addec
JD
9787 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
9788 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 9789
048addec 97902002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 9791
048addec
JD
9792 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
9793 to default to t.
fa634a5e 9794
048addec 97952002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 9796
048addec 9797 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 9798
048addec 97992002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 9800
048addec
JD
9801 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
9802 allow building in a different directory than source. Uses some
9803 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 9804
048addec 98052002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 9806
048addec
JD
9807 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
9808 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
9809 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
9810 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 9811
048addec 98122002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 9813
048addec
JD
9814 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
9815 <scroll-down-aggressively>: Doc fix.
2155ecf3 9816
048addec
JD
9817 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
9818 string as pane name, if there is one.
9819 (set_frame_menubar): Save menu_items_n_panes from each call to
9820 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 9821
048addec
JD
9822 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
9823 Don't try to make last line fully visible if it is past end of window.
61f1d295 9824
048addec 98252002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 9826
048addec
JD
9827 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
9828 (mac_menu_show): Add support for hierarchical popup menus.
9829 (add_menu_item): Remove indentation support.
9830 (fill_submenu, fill_menu): Create hierarchical menus
9831 instead of using indentation.
0b17a217 9832
048addec 98332002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 9834
048addec
JD
9835 * xdisp.c (try_cursor_movement): Don't call try_window here.
9836 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 9837
048addec 9838 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 9839
048addec 98402002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 9841
048addec
JD
9842 * macterm.c (XTread_socket): Call KeyTranslate for control and
9843 meta to deal correctly shifted non-alpha characters, like C-S-5
9844 being treated like C-%. Does not look for shift key to deal
9845 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 9846
048addec 98472002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 9848
048addec
JD
9849 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
9850 If it is non-nil, run timers. Use an unwind-protect to requeue
9851 the events that were read ahead.
9852 (popup_get_selection_unwind): New subroutine.
9853 (popup_get_selection_queue): File-scope variable now holds that queue.
9854 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
9855 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
9856 Use an unwind-protect to pop down the dialog box.
9857 (xdialog_show_unwind): New subroutine implements that.
f02cac82 9858
048addec
JD
9859 * xdisp.c (row_containing_pos): Change exit test using last_y.
9860 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 9861
048addec
JD
9862 * lread.c (load_error_handler): New function.
9863 (Fload): Handle errors in Fsubstitute_in_file_name.
9864 Don't expect Fsignal to return.
f02cac82 9865
048addec
JD
9866 * eval.c: Errors and throws work right with interrupt blocking.
9867 (struct catchtag): New elt interrupt_input_blocked.
9868 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
9869 (internal_catch, Fcondition_case, internal_condition_case)
9870 (internal_condition_case_1, internal_condition_case_2): Save it.
9871 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 9872
048addec 9873 * editfns.c (Fformat): Add parens.
f02cac82 9874
048addec
JD
9875 * dired.c (file_name_completion): Fix that change.
9876 Delete special quit-handling code; just use QUIT.
f02cac82 9877
b6189c3b 98782002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
f02cac82 9879
048addec
JD
9880 * dired.c (file_name_completion): Close directory on error
9881 just as in directory_files_internal.
1a590729 9882
048addec 98832002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 9884
048addec
JD
9885 * window.c (Fset_window_configuration): Set old_point to correct
9886 value when new_current_buffer == current_buffer.
f02cac82 9887
048addec 98882002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 9889
048addec
JD
9890 Revisited my earlier fix for the following entry in etc/PROBLEMS:
9891 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9892 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 9893
048addec
JD
9894 These changes were in part based upon suggestions made by Peter
9895 'Luna' Runestig [peter@runestig.com].
9785d95b 9896
048addec
JD
9897 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
9898 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 9899 g_b_init_get_sid_identifier_authority ): Add several static
048addec 9900 global variables.
9785d95b 9901
048addec
JD
9902 * w32.c (globals_of_w32): New function. Used to initialize those
9903 global variables that must always be initialized on startup even
9904 when the global variable initialized is non zero. Its primary
9905 purpose at this time is to set the global variables
9906 g_b_init_is_windows_9x, g_b_init_open_process_token,
9907 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
9908 g_b_init_get_sid_identifier_authority to 0 on startup.
9909 Called from main.
9785d95b 9910
048addec
JD
9911 * w32.c (is_windows_9x): Perform initialization only if
9912 g_b_init_is_windows_9x is equal to 0. On initialization set
9913 g_b_init_is_windows_9x equal to 1.
2308af15 9914
048addec
JD
9915 * w32.c (open_process_token): Perform initialization only if
9916 g_b_init_open_process_token is equal to 0. On initialization set
9917 g_b_init_open_process_token equal to 1.
2308af15 9918
048addec
JD
9919 * w32.c (get_token_information): Perform initialization only if
9920 g_b_init_get_token_information is equal to 0. On initialization
9921 set g_b_init_get_token_information equal to 1.
9785d95b 9922
048addec
JD
9923 * w32.c (lookup_account_sid): Perform initialization only if
9924 g_b_init_lookup_account_sid is equal to 0. On initialization
9925 set g_b_init_lookup_account_sid equal to 1.
9785d95b 9926
048addec
JD
9927 * w32.c (get_sid_identifier_authority): Perform initialization
9928 only if g_b_init_get_sid_identifier_authority is equal to 0.
9929 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 9930
f63fd14e 9931 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
9932 those global variables that must always be initialized on startup
9933 even when the global variable initialized is non zero.
9934 Its primary purpose at this time is to initialize the global variable
9935 track_mouse_event_fn.
9785d95b 9936
a64387ee 9937 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 9938 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 9939
048addec 9940 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 9941
f63fd14e 9942 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
9943 initialize those global variables that must always be initialized
9944 on startup even when the global variable initialized is non zero.
9945 Its primary purpose at this time is to initialize the global
9946 variables get_menu_item_info and set_menu_item_info.
9785d95b 9947
048addec
JD
9948 * w32menu.c (initialize_frame_menubar): Remove initialization of
9949 get_menu_item_info and set_menu_item_info.
9785d95b 9950
048addec 9951 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 9952
048addec
JD
9953 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
9954 Declare them.
9785d95b 9955
048addec
JD
9956 * emacs.c (main): Call globals_of_w32 prior to calling
9957 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
9958 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
9959 is defined.
9785d95b 9960
048addec
JD
9961 * w32term.c (x_update_window_begin): Fix Windows API error
9962 detected by BoundsChecker. Test to determine if
9963 w32_system_caret_hwnd is NULL prior to attempting to use
9964 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 9965
048addec
JD
9966 * w32term.c (x_update_window_end): Fix Windows API error
9967 detected by BoundsChecker. Test to determine if
9968 w32_system_caret_hwnd is NULL prior to attempting to use
9969 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 9970
048addec 99712002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 9972
048addec
JD
9973 * coding.c (coding_system_require_warning): New variable.
9974 (syms_of_coding): DEFVAR it.
b6da19ef 9975
048addec 9976 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 9977
048addec
JD
9978 * fileio.c (choose_write_coding_system): Even if
9979 Vcoding_system_for_write is non-nil, if
9980 coding_system_require_warning is nonzero, call
9981 Vselect_safe_coding_system_function.
bfcf6dbe 9982
048addec 99832002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 9984
048addec
JD
9985 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
9986 (lisp): Add font-core.
2c568af5 9987
048addec 99882002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 9989
048addec
JD
9990 * textprop.c (text_read_only): New arg `propval'.
9991 (get_char_property_and_overlay): Remove unused var `next_overlay'.
9992 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 9993
048addec 99942002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 9995
048addec 9996 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 9997
048addec 99982002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 9999
048addec
JD
10000 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
10001 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
10002 Be more careful about when help_events are generated.
96720f09 10003
048addec 100042002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 10005
048addec
JD
10006 * macterm.c (mac_check_for_quit_char): Correctly set the
10007 modifiers of the event to 0.
10008 * mac.c (sys_select): Duplicate rfds before calling select to
10009 ensure that rfds survive the while loop.
e5ae1c49 10010
048addec 100112002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 10012
048addec
JD
10013 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
10014 row_containing_pos returned NULL.
2eb46b2d 10015
048addec 100162002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 10017
6bdb309a 10018 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 10019 non-blocking.
6bdb309a 10020 (sys_select): Fix sys_select to not use a timeout larger than
048addec 10021 the one given.
b11f1d8a 10022
048addec 100232002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 10024
048addec 10025 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 10026
048addec 100272002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 10028
048addec
JD
10029 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
10030 as the last thing.
a4ac5b17 10031
048addec 100322002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 10033
048addec 10034 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 10035
048addec 100362002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 10037
048addec
JD
10038 * editfns.c (Fformat): Handle precision in string conversion
10039 specifiers like libc functions do (ie, print at most that many
10040 characters).
85cce843 10041
048addec 100422002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 10043
048addec
JD
10044 * xdisp.c (row_containing_pos): Check more carefully
10045 whether charpos is really in the row before returning it.
0d4d26a7 10046
048addec 100472002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 10048
048addec 10049 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 10050
048addec
JD
10051 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
10052 each stack frame. This may change as it could be time consuming.
0d4d26a7 10053
048addec
JD
10054 * macterm.c (mac_check_for_quit_char, quit_char_comp)
10055 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 10056 (mac_initialize): Add code to check for pressing of quit_char
048addec 10057 in the OS event queue.
b11f1d8a 10058
048addec
JD
10059 * mac.c (sys_select): Call mac_check_for_quit_char every second
10060 while blocking on select.
0d4d26a7 10061
048addec
JD
10062 * mac.c (sys_read): Use sys_select to test for input first
10063 before calling read, to allow C-g to break.
9252f7bc 10064
048addec 100652002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 10066
048addec 10067 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 10068
048addec 10069 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 10070
048addec 10071 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 10072
048addec
JD
10073 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
10074 autoload.
9252f7bc 10075
048addec 10076 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 10077
048addec 10078 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 10079
048addec 100802002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 10081
048addec 10082 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 10083
048addec 100842002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 10085
048addec 10086 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 10087
048addec 10088 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 10089
048addec 10090 * alloca.c: Don't use #error.
02d588e2 10091
048addec 100922002-12-03 Dave Love <fx@gnu.org>
02d588e2 10093
048addec
JD
10094 * buffer.c (Qucs_set_table_for_input): New.
10095 (Fget_buffer_create): Use it.
10096 (Qset_buffer_major_mode_hook): Deleted.
10097 (Fset_buffer_major_mode): Revert previous change.
10098 (init_buffer_once): Intern ucs-set-table-for-input.
10099 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
10100 Add &Qucs_set_table_for_input.
451e2697 10101
048addec 101022002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 10103
048addec
JD
10104 * callint.c (Fcall_interactively): Use next_event only if less
10105 than key_count.
72742a99 10106
048addec 101072002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 10108
048addec
JD
10109 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
10110 names to 255 characters.
72742a99 10111
048addec
JD
10112 * macterm.c (XTread_socket): If all frames have been collapsed,
10113 expand the first one before handling drag-and-drop events.
72742a99 10114
048addec
JD
10115 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
10116 which is detected by autoconf.
40e6ff95 10117
048addec 101182002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 10119
048addec
JD
10120 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
10121 offset in two hints table to allow prebinding to be redone and
10122 allow the executable to be stripped.
c02138c6 10123
048addec 101242002-11-29 Dave Love <fx@gnu.org>
c02138c6 10125
048addec
JD
10126 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
10127 already provided.
0e47bbf7 10128
048addec 101292002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 10130
048addec
JD
10131 * xdisp.c (start_display): Check more intelligently for
10132 whether the line is continued.
10133 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 10134
048addec 101352002-11-28 Dave Love <fx@gnu.org>
44129dcb 10136
048addec
JD
10137 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
10138 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 10139
048addec 101402002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 10141
048addec
JD
10142 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
10143 more descriptive error output from lread.c:Fload upon most require
10144 cycles during boostrapping.
1637fd2c 10145
048addec 101462002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 10147
048addec
JD
10148 * fileio.c (Finsert_file_contents): Give a more appropriate error
10149 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 10150
048addec
JD
10151 * dired.c (Ffile_attributes): Don't return negative file sizes for
10152 files bigger than 2Gb when off_t is 32 bit.
540c2788 10153
048addec 101542002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 10155
048addec 10156 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 10157
048addec
JD
10158 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
10159 Test GETPGRP_VOID instead.
10160 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 10161
048addec
JD
10162 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
10163 Don't define.
10164 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 10165
048addec 10166 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 10167
048addec 101682002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 10169
048addec
JD
10170 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
10171 supported.
4042a81a 10172
048addec 101732002-11-25 Dave Love <fx@gnu.org>
4042a81a 10174
048addec 10175 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 10176
048addec 10177 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 10178
048addec 101792002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 10180
048addec 10181 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 10182
048addec 101832002-11-24 Steven Tamm <steventamm@mac.com>
82122254 10184
048addec
JD
10185 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
10186 determine the size of pointers alloced in unexed space instead
10187 of using possibly invalid emacs_zone pointers. This fixes the
10188 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 10189
048addec 101902002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 10191
048addec 10192 * search.c (Fstring_match): Doc fix.
c1ee53bc 10193
048addec
JD
10194 * callint.c (Fcall_interactively): If a command fails because
10195 `*' detects a read-only buffer, but RECORD_FLAG is set,
10196 record it anyway if the args don't actually do tty input.
5598c32e 10197
048addec 101982002-11-22 Dave Love <fx@gnu.org>
5598c32e 10199
048addec 10200 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 10201
048addec
JD
10202 * keyboard.c (interrupt_signal): Provide forward declaration.
10203 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 10204
048addec 10205 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 10206
048addec 102072002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 10208
048addec
JD
10209 * eval.c (interactive_p): Skip any number of bytecode
10210 and special form frames, in any order.
516eea8e 10211
048addec 102122002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 10213
048addec
JD
10214 * w32fns.c (convert_mono_to_color_image): New function.
10215 (xbm_load, xbm_load_image): Use it when foreground or background
10216 is explicitly set.
04dbfa08 10217
048addec 102182002-11-19 Dave Love <fx@gnu.org>
04dbfa08 10219
048addec 10220 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 10221
048addec 102222002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 10223
048addec
JD
10224 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
10225 (XPutPixel): Swap blue and red.
10226 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
10227 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
10228 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
10229 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 10230
048addec 102312002-11-18 Dave Love <fx@gnu.org>
d824beee 10232
048addec 10233 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 10234
048addec 10235 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 10236
048addec 10237 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 10238
048addec
JD
10239 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
10240 malloc, realloc, calloc.
d824beee 10241
048addec
JD
10242 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
10243 (bcmp): Don't define.
d824beee 10244
048addec 10245 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 10246
048addec 10247 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 10248
048addec 10249 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 10250
048addec 10251 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 10252
048addec
JD
10253 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
10254 Don't include alloca.h.
d824beee 10255
048addec 10256 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 10257
048addec 10258 * regex.c (_GNU_SOURCE): Don't define.
1998560a 10259
048addec 10260 * process.c (_GNU_SOURCE): Don't define.
1998560a 10261
048addec 10262 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 10263
048addec 102642002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 10265
048addec 10266 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 10267
048addec 102682002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 10269
048addec
JD
10270 * dispextern.h (struct face): Add `overstrike' field.
10271 * xterm.c (x_draw_glyph_string_foreground)
10272 (x_draw_composite_glyph_string_foreground): Implement overstriking.
10273 * xfaces.c (load_face_font): Set `face->overstrike' based on
10274 result from choose_face_font.
10275 (best_matching_font, choose_face_font): Add `needs_overstrike'
10276 argument, and use it to return whether overstriking is desirable
10277 for this face/font combo.
10278 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 10279
048addec 102802002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 10281
048addec
JD
10282 This change is my fix for the following entry in etc/PROBLEMS:
10283 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
10284 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 10285
048addec
JD
10286 * w32.c: Added wrapper functions around the win32 API functions
10287 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
10288 GetSidIdentifierAuthority. These wrapper functions serve two
10289 purposes:
10290 1. They ensure that the wrapped function can never be called
10291 when Emacs is running on an operating system on which they are
10292 not supported (Microsoft Windows 95 / 98 / ME).
10293 2. They call the wrapped functions via function pointers rather
10294 than calling them directly. This avoids taking advantage of the
10295 undocumented fact that although these functions are not supported
10296 in the 9x branch of Microsoft Windows, the functions do exist in
10297 the version of advapi32.dll that is found in the 9x branch of
10298 Microsoft Windows.
f60ae425 10299
6bdb309a 10300 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
10301 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
10302 and GetSidIdentifierAuthority with calls to the newly added
10303 wrapper functions.
f60ae425 10304
048addec
JD
10305 * w32.h: Added extern declarations for the following functions:
10306 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
10307 syms_of_w32menu, and void syms_of_fontset.
f60ae425 10308
6bdb309a 10309 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
10310 function pointer track_mouse_event_fn in the handler for the
10311 WM_SETFOCUS message.
3582b6a3 10312
6bdb309a 10313 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
10314 reinitialize the function pointers set_menu_item_info and
10315 get_menu_item_info.
f60ae425 10316
048addec 103172002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 10318
048addec
JD
10319 * sound.c: Added a partial implementation of play-sound-internal
10320 for Microsoft Windows. Added various #ifdef / #else / #endif
10321 code blocks to separate the code that will compile under
10322 Microsoft Windows from the code that is specific to Gnu/Linux.
10323 Moved several blocks of code around to make this separation of code
10324 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 10325
048addec 10326 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 10327
048addec
JD
10328 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
10329 added support for play-sound-internal under Windows would be
10330 included in the build of Emacs.
517f42a0 10331
048addec 103322002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 10333
048addec 10334 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 10335
048addec 10336 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 10337
048addec 103382002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 10339
048addec
JD
10340 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
10341 (adjust_point_for_property): Move out of display and invisible even if
10342 we were already inside before (in case a property was added while
10343 we weren't looking). Be more careful when handling invisible props.
10344 Skip invisible text as if it really wasn't there at all.
aab83f91 10345
048addec 103462002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 10347
048addec
JD
10348 * w32term.c (x_draw_image_foreground)
10349 (w32_draw_image_foreground_1): Use standard copy and invert
10350 operations to draw images.
aab83f91 10351
048addec
JD
10352 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
10353 depth of 1.
10354 (xbm_read_bitmap_data): Invert bits as xbm is read in.
10355 (XPutPixel): Don't invert bits here.
a4478a76 10356
048addec 103572002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 10358
048addec
JD
10359 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
10360 (w32_draw_image_foreground_1): Handle image masks.
10361 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 10362
048addec
JD
10363 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
10364 (x_from_xcolors): Adjust RGB values for W32.
10365 (image_background, image_background_transparent)
10366 (postprocess_image, x_to_xcolors, x_disable_image)
10367 (x_build_heuristic_mask): Adapt for W32 and enable.
10368 (x_create_x_image_and_pixmap): Mark images with palettes as such.
10369 (xbm_load): Remove unused variable.
03670a65 10370
048addec 103712002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 10372
048addec 10373 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 10374
048addec 103752002-11-14 Dave Love <fx@gnu.org>
59daa29a 10376
048addec 10377 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 10378
048addec
JD
10379 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
10380 * xmenu.c (unuse_menu_items, digest_single_submenu):
10381 * xfns.c (x_put_x_image):
10382 * xdisp.c (message2_nolog, set_message):
10383 * undo.c (record_point):
10384 * terminfo.c (tparam):
10385 * syntax.c (scan_sexps_forward):
10386 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
10387 * composite.c (update_compositions):
10388 * cm.c (calccost, cmgoto):
10389 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 10390
048addec 10391 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 10392
048addec
JD
10393 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
10394 Don't declare.
59daa29a 10395
048addec 10396 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 10397
048addec
JD
10398 * fns.c (Fcopy_sequence): Doc fix.
10399 (Fmap_char_table): Cast `call2'.
3947677c 10400
048addec
JD
104012002-11-14 Francesco Potorti` <pot@gnu.org>
10402
10403 * s/sol2-8.h: New file.
10404
104052002-11-14 Kim F. Storm <storm@cua.dk>
10406
10407 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
10408 dependency on `risky-local-variable' and the :propertize form.
10409
104102002-11-12 Stefan Monnier <monnier@cs.yale.edu>
10411
10412 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
10413
10414 * syntax.c (scan_sexps_forward): Undo last patch.
10415 Use a more obvious fix: check eob before updating the syntax table.
10416
104172002-11-09 Stefan Monnier <monnier@cs.yale.edu>
10418
10419 * syntax.c (scan_sexps_forward): Update syntax table before reading
10420 a char rather than after so we don't update the table past eob.
10421
104222002-11-09 Dave Love <fx@gnu.org>
10423
10424 * buffer.c (Fset_buffer_major_mode): Fix last change.
10425
10426 * regex.c (regexec): Fix pmatch declaration.
10427
10428 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
10429
10430 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
10431 to self-inserting characters.
10432 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
10433
10434 * coding.c (Vtranslation_table_for_input): New.
10435 (syms_of_coding): DEFVAR it.
10436
104372002-11-08 Juanma Barranquero <lektu@terra.es>
10438
10439 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
10440 window.
10441
104422002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10443
6bdb309a 10444 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
10445 cp, and i.
10446
104472002-11-06 Dave Love <fx@gnu.org>
10448
10449 * buffer.c (Qset_buffer_major_mode_hook): New.
10450 (Fset_buffer_major_mode): Use it.
10451
104522002-11-06 Richard M. Stallman <rms@gnu.org>
10453
10454 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
10455 and stop_polling.
10456
10457 * process.c (wait_reading_process_input):
10458 Test POLLING_PROBLEM_IN_SELECT, not hpux.
10459 Avoid initialization for auto Lisp_Object var.
10460
10461 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
10462
10463 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
10464
104652002-11-05 Richard M. Stallman <rms@gnu.org>
10466
10467 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
10468
10469 * callint.c (Fcall_interactively): New local filter_specs.
10470 (Fcall_interactively): Check for progn as well as let.
10471 Add a gcpro.
10472 (Qprogn): New variable.
10473 (syms_of_callint): Staticpro and init Qprogn.
10474
104752002-11-04 John Paul Wallington <jpw@shootybangbang.com>
10476
10477 * lread.c (Feval_buffer): Doc fix.
10478
104792002-11-04 Dave Love <fx@gnu.org>
10480
10481 * keyboard.c (read_char): Always translate iff
10482 Vkeyboard_translate_table is a char table and c is valid.
10483
10484 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
10485 and fix C types.
10486
104872002-11-03 Stefan Monnier <monnier@cs.yale.edu>
10488
10489 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
10490
10491 * editfns.c (get_pos_property): Don't hardcode Qfield.
10492
10493 * keyboard.c (adjust_point_for_property): Handle `display' prop on
10494 overlays. Also handle `invisible' prop.
10495
104962002-11-02 Stefan Monnier <monnier@cs.yale.edu>
10497
10498 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
10499 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
10500
105012002-11-01 Andreas Schwab <schwab@suse.de>
10502
10503 * editfns.c (Fmessage): Revert last change to properly handle %%.
10504
105052002-11-01 Stefan Monnier <monnier@cs.yale.edu>
10506
10507 * xmenu.c (unuse_menu_items): New fun.
10508 (menu_items_inuse): New var.
10509 (syms_of_xmenu): Initialize it.
10510 (init_menu_items): Use it to detect re-entrance.
10511 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
10512 (Fx_popup_menu): Remove spurious XSETFRAME.
10513
10514 * editfns.c (find_field): Make an exception for nil fields.
10515
105162002-11-01 Dave Love <fx@gnu.org>
10517
10518 * m/gec63.h: Deleted.
10519
105202002-10-31 Dave Love <fx@gnu.org>
10521
10522 * xterm.c (XTread_socket): Fix last change.
10523 (xaw_scroll_callback): Cast call_data to long to avoid warning.
10524
105252002-10-31 Stefan Monnier <monnier@cs.yale.edu>
10526
10527 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
10528
105292002-10-30 Stefan Monnier <monnier@cs.yale.edu>
10530
10531 * editfns.c (overlays_around, get_pos_property): New funs.
10532 (find_field): Use them.
10533 Also be careful not to modify POS before its last use.
10534 (Fmessage): Don't Fformat if there's nothing to format.
10535
105362002-10-30 Dave Love <fx@gnu.org>
10537
10538 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
10539 [HAVE_PTY_H]; Include pty.h.
10540
10541 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
10542
10543 * xterm.c (Qeql): Declare.
10544 (Vx_keysym_table): New.
10545 (syms_of_xterm): Initialize it.
10546 (XTread_socket): Use it. Deal with ASCII keysyms.
10547 (XSetIMValues) [HAVE_X11R6]: Prototype.
10548
10549 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
10550 (lispy_kana_keys): Comment out.
10551 (make_lispy_event) [XK_kana_A]: Comment out.
10552 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
10553 Fix sprintf call.
10554
10555 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
10556 regexp.h change).
10557 (TERMINFO, LIBS_TERMCAP): Define.
10558
10559 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
10560 (bcmp): Define conditional on HAVE_BCMP.
10561 (NO_SIOCTL_H): Don't define.
10562 (TIOCSIGSEND): Don't make conditional on IRIX6.
10563
10564 * s/sol2-5.h: Don't include strings.h.
10565 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
10566
10567 * s/irix6-0.h (IRIX6): Don't define.
10568 (bcopy, bcmp, bzero): Don't undef.
10569
10570 * s/irix6-5.h: Don't include strings.h.
10571 (IRIX6): Don't define.
10572 (bcopy, bcmp, bzero): Don't undef.
10573
10574 * syntax.c (Fforward_comment): Doc fix.
10575
105762002-10-29 Kim F. Storm <storm@cua.dk>
10577
10578 * process.c (Fsignal_process): Allow PROCESS to be specified by
10579 name in addition to pid (as integer or string).
10580
105812002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
10582
10583 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
10584 environments.
10585
105862002-10-27 Kim F. Storm <storm@cua.dk>
10587
10588 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
10589
10590 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
10591
10592 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
10593
10594 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
10595
105962002-10-26 Richard M. Stallman <rms@gnu.org>
10597
10598 * editfns.c (Fformat): Detect invalid format letters for floats.
10599
106002002-10-25 Kenichi Handa <handa@m17n.org>
10601
10602 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
10603 (x_set_title): Likewise.
10604
106052002-10-25 Juanma Barranquero <lektu@terra.es>
10606
10607 * macgui.h:
10608 * w32gui.h: Remove definition of XColor.
10609
10610 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
10611
106122002-10-24 Kim F. Storm <storm@cua.dk>
10613
10614 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
10615 Callers changed (supply dummy arg).
10616
10617 * lisp.h (get_window_cursor_type): Update prototype.
10618
10619 * w32term.c (x_display_and_set_cursor): Get active_cursor from
10620 get_window_cursor_type to track system caret.
10621
106222002-10-24 Kim F. Storm <storm@cua.dk>
10623
10624 * process.c (Fformat_network_address): New function.
10625 (syms_of_process): Defsubr it.
10626 (list_processes_1): Use it to format :local/:remote address if
f9711de4 10627 service/host is not set; before Emacs would crash in that case.
048addec
JD
10628 (Fmake_network_process): Don't use Ffind_operation_coding_system
10629 to setup coding system if host or service is not set.
10630
106312002-10-23 Juanma Barranquero <lektu@terra.es>
10632
10633 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
10634
10635 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
10636 COLORREF.
10637
10638 * macgui.h:
10639 * w32gui.h: Add definition of XColor.
10640
10641 * macfns.c:
10642 * w32fns.c:
10643 * xfaces.c: Remove definition of XColor.
10644
106452002-10-22 Stefan Monnier <monnier@cs.yale.edu>
10646
10647 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
10648
10649 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
10650 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
10651 window if it is dedicated.
10652 (Fshrink_window): Add preserve_before as was done for enlarge_window.
10653 (Vspecial_display_function): Update docstring.
10654
10655 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
10656 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
10657 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
10658
106592002-10-21 Stefan Monnier <monnier@cs.yale.edu>
10660
10661 * casefiddle.c (casify_region): Don't treat a prefix char as part
10662 of a word when at the beginning.
10663
106642002-10-17 Juanma Barranquero <lektu@terra.es>
10665
10666 * lread.c (syms_of_lread): Fix typos.
10667
106682002-10-17 Dave Love <fx@gnu.org>
10669
10670 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
10671
106722002-10-16 Richard M. Stallman <rms@gnu.org>
10673
10674 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
10675
106762002-10-14 Juanma Barranquero <lektu@terra.es>
10677
10678 * w16select.c (syms_of_win16select): Fix docstring for
10679 `selection-coding-system'.
10680
10681 * w32select.c (syms_of_w32select): Likewise.
10682
106832002-10-14 Stefan Monnier <monnier@cs.yale.edu>
10684
10685 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
10686 a backslash-quoted char.
10687 (scan_lists, scan_sexps_forward): Pacify the compiler.
10688
106892002-10-13 Richard M. Stallman <rms@gnu.org>
10690
10691 * window.c (window_scroll): Set immediate_quit.
10692
10693 * print.c (print): When backquote form is the car of a list,
10694 output in old style. Use old_backquote_output to output all
10695 comma forms inside it in old style too.
10696
10697 * buffer.h (struct buffer): Move `undo_list' down below `name'.
10698
106992002-10-11 Markus Rost <rost@math.ohio-state.edu>
10700
10701 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
10702 batch mode).
10703
10704 * lread.c (Fload): Doc fix (load-suffixes).
10705
107062002-10-10 Steven Tamm <steventamm@mac.com>
10707
10708 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
10709 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
10710 Also switch the default to Qnil from Qt.
10711
107122002-10-08 Kenichi Handa <handa@m17n.org>
10713
10714 * coding.c (code_convert_region): When we need more GAP for
10715 conversion, pay attention to the case that coding->produced is not
10716 greater than coding->consumed.
10717
107182002-10-07 Richard M. Stallman <rms@gnu.org>
10719
10720 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
10721
107222002-10-06 Andrew Choi <akochoi@shaw.ca>
10723
10724 * macmenu.c (mac_menu_show): Add j to count menu items; match
10725 menu_item_selection to it to find selected item.
10726
107272002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10728
10729 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
10730 cases. The correct fix is to pass ReparentNotify to Xt.
10731 The shell widget interprets ConfigureNotify differently depending
10732 on if it has been reparented or not.
10733
107342002-10-05 Markus Rost <rost@math.ohio-state.edu>
10735
10736 * editfns.c (Fformat_time_string): Doc fix.
10737
107382002-10-05 John Paul Wallington <jpw@shootybangbang.com>
10739
10740 * fns.c (Flength): Doc fix.
10741
107422002-10-04 Stefan Monnier <monnier@cs.yale.edu>
10743
10744 * keyboard.c (keyremap): New struct.
10745 (read_key_sequence): Use it: globally replace keytran_foo with
10746 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
10747 keytran_next and fkey_next to just `next'.
10748
107492002-10-04 Steven Tamm <steventamm@mac.com>
10750
10751 * macterm.c (keycode_to_xkeysym_table): Change return to be
10752 treated like an X keysym.
10753
107542002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10755
10756 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
10757 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
10758 This is to also handle x/y changes that occur because of a resize.
10759
107602002-10-02 John Paul Wallington <jpw@shootybangbang.com>
10761
10762 * frame.c (Vdelete_frame_functions): New variable.
10763 (syms_of_frame): Initialize and defvar it.
10764 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
10765 it when frame's `tooltip' parameter is non-nil.
10766
10767 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
10768
10769 * w32fns.c (x_create_tip_frame): Likewise.
10770
10771 * macfns.c (x_create_tip_frame): Likewise.
10772
107732002-09-30 Kenichi Handa <handa@m17n.org>
10774
10775 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
10776 -1 before calling ccl_driver.
10777
10778 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
10779 Only when it is non-nil, handle composition sequence.
10780 (setup_coding_system) <0>: Don't force composition handling.
10781
10782 * Makefile.in (lisp, shortlisp): Add utf-16.elc
10783
107842002-09-29 Richard M. Stallman <rms@gnu.org>
10785
10786 * search.c (Freplace_match): Adjust match data for the substitution
10787 just made in the buffer.
10788
10789 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
10790 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
10791
107922002-09-27 Richard M. Stallman <rms@gnu.org>
10793
10794 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
10795 (read_char): Use them. Do all exits thru the end of the function.
10796
107972002-09-27 Kenichi Handa <handa@etl.go.jp>
10798
10799 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
10800 is nil.
10801
108022002-09-26 Richard M. Stallman <rms@gnu.org>
10803
10804 * regex.h (__restrict_arr): Don't define if already defined.
10805
10806 * coding.c (run_pre_post_conversion_on_str):
10807 Save and restore Vdeactivate_mark.
10808
108092002-09-26 John Paul Wallington <jpw@shootybangbang.com>
10810
10811 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
10812
108132002-09-26 Kenichi Handa <handa@etl.go.jp>
10814
10815 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
10816 nonzero, try face's family at first. Otherwise try FAMILY at first.
10817 (choose_face_font): If C is a single byte char or latin-1, call
10818 try_font_list with PREFER_FACE_FAMILY 1.
10819
108202002-09-21 Richard M. Stallman <rms@gnu.org>
10821
10822 * window.c (select_window_1): Don't select frame.
10823 Set frame's selected window only when frame itself is selected.
10824 (Fselect_window): Doc fix.
10825
108262002-09-18 Kim F. Storm <storm@cua.dk>
10827
10828 * process.c (make-network-process): Doc fix (there is no
10829 network-server-log-function hook).
10830
108312002-09-18 Richard M. Stallman <rms@gnu.org>
10832
10833 * print.c (print): Clear out the unused parts of Vprint_number_table.
10834 (syms_of_print): Doc fix for `print-number-table'.
10835
10836 * unexelf.c (unexec): Undo previous change.
10837
108382002-09-17 Andreas Schwab <schwab@suse.de>
10839
10840 * m/alpha.h [LINUX]: Don't define DATA_START.
10841
108422002-09-16 Dave Love <fx@gnu.org>
10843
10844 * unexelf.c (unexec): Deal with .got, reinstating change from
10845 25-08-1999.
10846
108472002-09-13 Richard M. Stallman <rms@gnu.org>
10848
10849 * s/sol2-6.h (UNEXEC): Comment out definition.
10850
10851 * unexsol.c (unexec): Don't downcase first letter of error msg.
10852
10853 * xfaces.c (Fcolor_supported_p): Just one arg is required.
10854
108552002-09-12 Markus Rost <rost@math.ohio-state.edu>
10856
10857 * unexsol.c: Include buffer.h, charset.h, coding.h.
10858
108592002-09-11 Richard M. Stallman <rms@gnu.org>
10860
10861 * unexsol.c: Don't use report_file_error; do it by hand
10862 using dlerror.
10863
10864 * process.c (wait_reading_process_input, both versions):
10865 Before calling turn_on_atimers, call stop_polling.
10866
10867 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
10868
10869 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
10870 we go to too_near_end, call clear_glyph_matrix.
10871 (redisplay_window): After make_cursor_line_fully_visible,
10872 call clear_glyph_matrix and bypass `goto done'.
10873
10874 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
10875 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
10876
108772002-09-10 Richard M. Stallman <rms@gnu.org>
10878
10879 * fileio.c (Fdo_auto_save): Catch error making directory.
10880 Only call push_message if we need to.
10881 At the same time, make an unwind-protect to pop it.
10882 Rename local message_p to old_message_p.
10883 (do_auto_save_make_dir, do_auto_save_eh): New functions.
10884 (do_auto_save_unwind): Don't call pop_message.
10885
10886 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
10887
10888 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
10889
10890 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
10891
10892 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
10893
108942002-09-10 Stefan Monnier <monnier@cs.yale.edu>
10895
10896 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
10897 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
10898 (re_match_2_internal): Be more careful with infinite loops.
10899
109002002-09-10 Kim F. Storm <storm@cua.dk>
10901
10902 * macros.c (end_kbd_macro): New function.
10903 (Fend_kbd_macro): Use it.
10904
10905 * macros.h (end_kbd_macro): Declare extern.
10906
10907 * keyboard.c (Fdiscard_input): If defining keyboard macro,
10908 end and save it instead of discarding it.
10909
109102002-09-09 Markus Rost <rost@math.ohio-state.edu>
10911
10912 * s/sol2-6.h: Fix typo. Add comment.
10913
109142002-09-09 Richard M. Stallman <rms@gnu.org>
10915
10916 * regex.c (regnum_t): Use signed int, not unsigned int.
10917
10918 * s/sol2-6.h: New file.
10919
10920 * s/sol2-5.h (UNEXEC): Definition deleted.
10921
109222002-09-08 Kim F. Storm <storm@cua.dk>
10923
10924 * macros.c (executing_macro_index): Change type to EMACS_INT.
10925 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
10926
10927 * macros.h (executing_macro_index): Change type to EMACS_INT.
10928
109292002-09-06 Richard M. Stallman <rms@gnu.org>
10930
10931 * casetab.c (set_case_table): Make canon table point to eqv table.
10932
109332002-09-06 Juanma Barranquero <lektu@terra.es>
10934
10935 * coding.c (syms_of_coding): Fix spacing.
10936
10937 * composite.c (Fcompose_region_internal)
10938 (Fcompose_string_internal): Likewise.
10939
10940 * data.c (Flsh): Likewise.
10941
10942 * fontset.c (Fset_fontset_font): Likewise.
10943
10944 * macfns.c (Fx_server_max_request_size): Likewise.
10945
10946 * w16select.c (syms_of_win16select): Likewise.
10947
10948 * w32select.c (syms_of_w32select): Likewise.
10949
10950 * xselect.c (syms_of_xselect): Likewise.
10951
109522002-09-05 Richard M. Stallman <rms@gnu.org>
10953
10954 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
10955 call EXTEND_RANGE_TABLE and return a proper value.
10956 (set_image_of_range): Don't call set_image_of_range_1
10957 if no TRANSLATE or if range includes all of Latin-1.
10958 Only call it for the Latin-1 part of the range.
10959 For other cases, make two separate ranges,
10960 one for the original specified characters and one for
10961 their case-conversions.
10962
109632002-09-04 Richard M. Stallman <rms@gnu.org>
10964
10965 * s/sol2-5.h (UNEXEC): Use unexsol.o.
10966
10967 * window.c (displayed_window_lines): Correct for one-off bug
10968 in HEIGHT on non-window displays.
10969
10970 * regex.c (set_image_of_range_1): New function.
10971 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
10972 Return a value to indicate running out of memory.
10973 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
10974 (extend_range_table_work_area): New subroutine.
10975 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
10976 Different calling conventions, and used from set_image_of_range{,_1}.
10977 (IMMEDIATE_QUIT_CHECK): Definitions moved.
10978
109792002-09-04 Juanma Barranquero <lektu@terra.es>
10980
10981 * makefile.w32-in: All dependencies updated.
10982
109832002-09-01 Richard M. Stallman <rms@gnu.org>
10984
10985 * unexsol.c: New file.
10986
10987 * xfns.c (Qbox): Declare external, don't define.
10988
10989 * xdisp.c (redisplay_window) <force-start case>:
10990 If point is on semi-visible last line, reposition
10991 it at previous line.
10992
10993 * alloc.c (display_malloc_warning): Use display-warning.
10994 (malloc_warning_1): Function deleted.
10995
10996 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
10997
10998 * lread.c (read1): Handle #! by skipping the line.
10999
110002002-08-31 Richard M. Stallman <rms@gnu.org>
11001
11002 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
11003 Don't include LDFLAGS.
11004 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
11005
110062002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
11007
11008 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
11009 member of x_display_info unless we compile for some window system.
11010
110112002-08-31 Kim F. Storm <storm@cua.dk>
11012
11013 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
11014 (get_window_cursor_type): Don't use them.
11015 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
11016
110172002-08-30 Kenichi Handa <handa@etl.go.jp>
11018
11019 * xdisp.c (get_next_display_element): Fix previous change.
11020
110212002-08-30 Andrew Choi <akochoi@shaw.ca>
11022
11023 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
11024 (expose_window): Use it to fix the display of overlapping
11025 rows (merge code from xterm.c).
11026
11027 * macfns.c (Qbox): Add extern declaration.
11028
110292002-08-30 Juanma Barranquero <lektu@terra.es>
11030
11031 * w32fns.c (Qbox): Make extern.
11032 (syms_of_w32fns): Remove initialization of Qbox.
11033
110342002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
11035
11036 * xfns.c (Fx_open_connection): Fix error message.
11037
110382002-08-30 Kim F. Storm <storm@cua.dk>
11039
11040 The following changes consolidates the handling of the cursor
11041 type in xdisp.c, moving duplicate code and functionality from
11042 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
11043
11044 * frame.h (enum text_cursor_kinds): Consolidated here.
11045 Added DEFAULT_CURSOR value.
11046 (struct frame) <desired_cursor, cursor_width>
11047 <blink_off_cursor, blink_off_cursor_width>: New fields.
11048 Consolidated from output_x, output_w32 and output_mac structs.
11049 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
11050 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
11051
11052 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
11053 Variables consolidated here.
11054 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
11055 (Vcursor_in_non_selected_windows): Renamed from
11056 cursor_in_non_selected_windows and changed to Lisp_Object.
11057 (syms_of_xdisp): Define and staticpro new and moved variables.
11058 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
11059 consolidated here. Recognize Qhollow setting.
11060 (set_frame_cursor_types): New function to set frame cursor types
11061 based on the frame parameters.
11062 (get_window_cursor_type): New function to calculate new cursor
11063 type and width for the specified window. Based on duplicated
11064 code consolidated here.
11065 Enhancements: cursor-in-non-selected-windows may be a cursor type,
11066 check buffer-local alternate-cursor-type and blink-cursor-alist
11067 before using built-in blink off methods.
11068
11069 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
11070
11071 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
11072 (get_specified_cursor_type, get_window_cursor_type)
11073 (set_frame_cursor_types): Added prototypes.
11074
11075 * macfns.c (x_specified_cursor_type): Removed.
11076 (x_set_cursor_type): Use set_frame_cursor_types.
11077 (Qbar, Qbox): Removed.
11078 (syms_of_macfns): Don't intern or staticpro them.
11079
11080 * macterm.c (x_specified_cursor_type): Remove prototype.
11081 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
11082 (x_display_and_set_cursor): Use get_window_cursor_type.
11083 Remove unused local variables cursor_non_selected, active_cursor.
11084 Redraw cursor if hbar cursor width changes.
11085 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
11086
11087 * macterm.h (enum text_cursor_kinds): Removed.
11088 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
11089 <blink_off_cursor, blink_off_cursor_width>: Members removed.
11090 (FRAME_DESIRED_CURSOR): Macro removed.
11091
11092 * w32fns.c (Vblink_cursor_alist): Removed.
11093 (Qbar, Qhbar, Qbox, Qhollow): Removed.
11094 (syms_of_w32fns): Don't intern, staticpro, or define them.
11095 (x_specified_cursor_type): Removed.
11096 (x_set_cursor_type): Use set_frame_cursor_types.
11097
11098 * w32term.c (x_specified_cursor_type): Remove prototype.
11099 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
11100 (x_display_and_set_cursor): Use get_window_cursor_type.
11101 Remove unused local variables cursor_off_state.
11102 Redraw cursor if hbar cursor width changes.
11103 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
11104
11105 * w32term.h (enum text_cursor_kinds): Removed.
11106 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
11107 <blink_off_cursor, blink_off_cursor_width>: Members removed.
11108 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
11109 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
11110 (struct w32_display_info) <x_highlight_frame>: Renamed member from
11111 w32_highlight_frame.
11112
11113 * xfns.c (Vblink_cursor_alist): Removed.
11114 (Qbar, Qhbar, Qbox, Qhollow): Removed.
11115 (syms_of_xfns): Don't intern, staticpro, or define them.
11116 (x_specified_cursor_type): Removed.
11117 (x_set_cursor_type): Use set_frame_cursor_types.
11118
11119 * xterm.c (x_specified_cursor_type): Remove prototype.
11120 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
11121 (x_display_and_set_cursor): Use get_window_cursor_type.
11122 Remove unused local variables cursor_off_state.
11123 Redraw cursor if hbar cursor width changes.
11124
11125 * xterm.h (enum text_cursor_kinds): Removed.
11126 (struct output_x) <current_cursor, desired_cursor, cursor_width>
11127 <blink_off_cursor, blink_off_cursor_width>: Members removed.
11128 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
11129 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
11130 (x_specified_cursor_type): Remove prototype.
11131
111322002-08-28 Richard M. Stallman <rms@gnu.org>
11133
11134 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
11135 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
11136 (Vblink_cursor_alist): New variable.
11137 (syms_of_w32fns): Initialize and defvar it.
11138 (x_specified_cursor_type): Recognize Qbox for filled box.
11139 Exceptions are hollow boxes.
11140 (Qbox, Qhollow): New variables.
11141 (syms_of_w32fns): Initialize and staticpro them.
11142
11143 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
11144 New macros.
11145 (struct w32_output): New fields blink_off_cursor,
11146 blink_off_cursor_width.
11147 (FRAME_CURSOR_WIDTH): New macro.
11148
11149 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
11150 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
11151
11152 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
11153 for bar cursor.
11154
11155 * w32term.c (expose_overlaps): New function.
11156 (expose_window): Use it to fix the display of overlapping rows.
11157
111582002-08-28 Simon Josefsson <jas@extundo.com>
11159
11160 * xfns.c (Fx_open_connection): Improve help when X connection
11161 fails, xhost is insecure and xauth is better.
11162
111632002-08-28 Juanma Barranquero <lektu@terra.es>
11164
11165 * makefile.w32-in: Add missing dependencies on w32term.h and
11166 composite.h.
11167
11168 * emacs.c (USAGE1): Add missing newline.
11169
111702002-08-27 Andrew Choi <akochoi@shaw.ca>
11171
11172 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
11173
111742002-08-27 Richard M. Stallman <rms@gnu.org>
11175
11176 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
11177 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
11178 (Vblink_cursor_alist): New variable.
11179 (syms_of_xfns): Initialize and defvar it.
11180 (x_specified_cursor_type): Recognize Qbox for filled box.
11181 Exceptions are hollow boxes.
11182 (Qbox, Qhollow): New variables.
11183 (syms_of_xfns): Initialize and staticpro them.
11184
11185 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
11186 New macros.
11187 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
11188
11189 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
11190 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
11191
11192 * emacs.c (main): Handle --script.
11193 (USAGE1): Mention --script.
11194 (standard_args): Define sort order for --script.
11195
111962002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
11197
11198 * xdisp.c (redisplay_updating_p): Variable removed.
11199 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
11200 New variables.
11201 (init_iterator): Don't free realized faces if
11202 inhibit_free_realized_faces is set.
11203 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
11204 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
11205 initialize Qinhibit_free_realized_faces.
11206
11207 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
11208 when iterator is adding glyphs to a glyph matrix.
11209
112102002-08-27 Kenichi Handa <handa@etl.go.jp>
11211
11212 * xdisp.c (get_next_display_element): In unibyte case, don't use
11213 octal form for such eight-bit characters that can be converted to
11214 multibyte char.
11215
112162002-08-26 Kim F. Storm <storm@cua.dk>
11217
b6189c3b
KS
11218 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
11219 foreground and background colors. From Joe Buehler.
048addec
JD
11220
112212002-08-26 Miles Bader <miles@gnu.org>
11222
11223 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
11224
112252002-08-25 Andrew Choi <akochoi@shaw.ca>
11226
11227 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
11228 defined instead of MAC_OSX.
11229
11230 * s/darwin.h (select): Define select to sys_select only if
11231 HAVE_CARBON is defined.
11232 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
11233 (DONT_REOPEN_PTY): #def it.
11234
11235 * macterm.c (XTread_socket): Remove code to call
11236 SendEventToEventTarget for keys with command modifiers when
11237 mac_command_key_is_meta is nil.
11238
112392002-08-24 Andreas Schwab <schwab@suse.de>
11240
11241 * eval.c (Fdefvar): Fix last change.
11242
112432002-08-23 Richard M. Stallman <rms@gnu.org>
11244
11245 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
11246 Record variables in load history as (defvar . VAR).
11247 (Fdefvar): Don't record in load history if no initial value.
11248 (Qdefvar): New variable.
11249 (syms_of_eval): Init and staticpro it.
11250
11251 * lread.c (syms_of_lread): Doc fix.
11252 (build_load_history): Use Fmember to see if a definition
11253 is already in the Vload_history element.
11254
11255 * process.c (Fstart_process): Remove /: from program name.
11256
11257 * emacs.c (decode_env_path): Don't add /: if file name handler
11258 has a `safe-magic' property.
11259
11260 * callproc.c (Fcall_process): Remove /: from program name.
11261
112622002-08-23 Stefan Monnier <monnier@cs.yale.edu>
11263
11264 * regex.c (PATFETCH): Remove the translating fetch.
11265 (PATFETCH_RAW): Rename to PATFETCH.
11266 (set_image_of_range): New fun.
11267 (SET_RANGE_TABLE_WORK_AREA): Use it.
11268 (regex_compile): Don't translate the pattern chars so eagerly.
11269 Only do it when inserting an `exactn' bytecode or when handling
11270 a char-range.
11271 (mutually_exclusive_p): Avoid empty statement.
11272
112732002-08-22 Kim F. Storm <storm@cua.dk>
11274
11275 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
11276 end up on a partially visible line; this reverts a specific part
11277 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
11278 display error which has been reported several times now.
11279 However it introduces the problem that changes was supposed to fix.
11280 See my comments in the source if you want to debug this further.
11281
112822002-08-20 Kenichi Handa <handa@etl.go.jp>
11283
11284 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
11285
112862002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
11287
11288 * msdos.c (croak): Add `void' to definition.
11289
c1380aa6 11290 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
11291 Don't define them, they are defined in msdos.c.
11292
11293 * mem-limits.h [MSDOS]: Declare etext.
11294
11295 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
11296 `const' since CORRECT_DIR_SEPS modifies its target.
11297
112982002-08-19 Kim F. Storm <storm@cua.dk>
11299
2fb0ce67 11300 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
11301 KEEP-RECORD to avoid clearing lossage when we just want to clear
11302 the current key sequence (kmacro needs this).
11303
113042002-08-19 Kenichi Handa <handa@localhost>
11305
11306 * composite.c (run_composition_function): Call FUNC if it is fboundp.
11307
11308 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
11309 cons, return Qnil.
11310
113112002-08-17 Richard M. Stallman <rms@gnu.org>
11312
11313 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
11314
11315 * sysdep.c [!VMS]: Include sys/files.h.
11316
11317 * editfns.c (save_restriction_restore): Defend from unchained marker.
11318
11319 * buffer.c (overlays_at): Handle extending vec uniformly.
11320 (overlays_in): Handle extending vec from length 0 as in overlays_at.
11321
113222002-08-15 Andrew Choi <akochoi@shaw.ca>
11323
11324 * mac.c (init_mac_osx_environment): New function.
11325
11326 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
11327
113282002-08-14 Kim F. Storm <storm@cua.dk>
11329
11330 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
11331 executing macro before appending to it (when used from Lisp).
11332 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
11333 which is called prior to each iteration of macro (for kmacro.el).
11334 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
11335
11336 * lisp.h (Fexecute_kbd_macro): Update prototype.
11337
11338 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
11339
113402002-08-14 Kenichi Handa <handa@etl.go.jp>
11341
11342 * xselect.c (QUTF8_STRING): New variable.
11343 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
11344 (x_atom_to_symbol): Likewise.
11345 (x_get_local_selection): New argument local_request. If it is
11346 nonzero, call handler_fn with the second arg nil.
11347 (x_handle_selection_request): Call x_get_local_selection with
11348 local_request 0.
11349 (lisp_data_to_selection_data): Don't encode the string here.
11350 (Fx_get_selection_internal): Call x_get_local_selection with
11351 local_request 1.
11352 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
11353
11354 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
11355
11356 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
11357
113582002-08-13 Richard M. Stallman <rms@gnu.org>
11359
11360 * minibuf.c (Fminibufferp): New function.
11361 (syms_of_minibuf): Defsubr it.
11362 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
11363
113642002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
11365
11366 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
11367
113682002-08-12 Richard M. Stallman <rms@gnu.org>
11369
11370 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
11371 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
11372 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
11373 already.
11374
11375 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
11376
113772002-08-11 Andrew Choi <akochoi@shaw.ca>
11378
11379 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
11380 (Vmac_pass_command_to_system): New variable.
11381 (Vmac_pass_control_to_system): New variable.
11382 (do_mouse_moved): Check wp with is_emacs_window.
11383 (XTread_socket): Check window_ptr with is_emacs_window.
11384 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
11385 events back to Mac Toolbox for processing, depending on values of
11386 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
11387 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
11388 Vmac_pass_control_to_system.
11389
113902002-08-10 Kenichi Handa <handa@etl.go.jp>
11391
11392 * coding.c (unencodable_char_position): New function.
11393 (Funencodable_char_position): New function.
11394 (syms_of_coding): Defsubr Funencodable_char_position.
11395
113962002-08-10 Andrew Choi <akochoi@shaw.ca>
11397
11398 * mac.c (sys_select) [MAC_OSX]: New function.
11399
11400 * macterm.c (MakeMeTheFrontProcess): New function.
11401 (mac_initialize): Call MakeMeTheFrontProcess.
11402
11403 * s/darwin.h: Define select to sys_select.
11404
114052002-08-09 Richard M. Stallman <rms@gnu.org>
11406
11407 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
11408
114092002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
11410
11411 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
11412 end of the buffer.
11413
114142002-08-08 Ken Raeburn <raeburn@mit.edu>
11415
11416 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
11417
11418 * puresize.h (BASE_PURESIZE): Increase to 910000.
11419
114202002-08-08 Kenichi Handa <handa@etl.go.jp>
11421
11422 * coding.c (Ffind_operation_coding_system): For write-region, if
11423 VISIT is a filename, make it the target.
11424
114252002-08-07 Richard M. Stallman <rms@gnu.org>
11426
11427 * alloc.c (mark_object): Detect long lists for debugging.
11428 (mark_object_loop_halt): New variable.
11429
11430 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
11431
11432 * data.c (Fmake_variable_frame_local): Doc fix.
11433
114342002-08-01 David Ponce <david@dponce.com>
11435
11436 * w32menu.c (local_heap, local_alloc, local_free): New macros.
11437 (malloc_widget_value, free_widget_value)
11438 (w32_free_submenu_strings): Use them.
11439
11440 (push_submenu_start, push_submenu_end, push_left_right_boundary)
11441 (push_menu_pane, push_menu_item, single_keymap_panes)
11442 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
11443 (single_submenu, set_frame_menubar)
11444 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
11445
11446 (Fx_popup_menu): Don't show pop up menu until preceding one is
11447 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
11448
11449 * w32menu.c: Changes adapted from xmenu.c
11450 (set_frame_menubar): First parse all submenus,
11451 then make widget_value trees from them.
11452 Don't allocate any widget_value objects
11453 until we are done with the parsing.
11454 (parse_single_submenu): New function.
11455 (digest_single_submenu): New function.
11456 (single_submenu): Function deleted, replaced by those two.
11457
114582002-08-04 Andrew Choi <akochoi@shaw.ca>
11459
11460 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
11461 returns a valid window pointer before proceeding for keyDown and
11462 autoKey events.
11463
114642002-08-03 Andrew Choi <akochoi@shaw.ca>
11465
11466 * macterm.c (USE_CARBON_EVENTS): New macro.
11467 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
11468 (x_iconify_frame): Call CollapseWindow.
11469 (Vmac_reverse_ctrl_meta): New variable.
11470 (Vmac_wheel_button_is_mouse_2): New variable.
11471 (init_mac_drag_n_drop): New function.
11472 (mac_do_receive_drag): New function.
11473 (mac_handle_service_event): New function.
11474 (init_service_handler): New function.
11475 (mac_to_emacs_modifiers): New function.
11476 (mac_event_to_emacs_modifiers): New function.
11477 (mac_get_mouse_btn): New function.
11478 (mac_convert_event_ref): New function.
11479 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
11480 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
11481 mac_get_mouse_btn.
11482 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
11483
11484 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
11485 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
11486 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
11487 TOOL_BAR_EVENT for MAC_OS as well.
11488 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
11489 as for WINDOWS_NT.
11490 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
11491
11492 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
11493
114942002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
11495
11496 * xdisp.c (forward_to_next_line_start): Fix a condition that
11497 lead to a newline being skipped.
11498
114992002-08-02 Andrew Choi <akochoi@shaw.ca>
11500
11501 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
11502
115032002-08-01 Richard M. Stallman <rms@gnu.org>
11504
11505 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
11506
115072002-07-31 Andrew Choi <akochoi@shaw.ca>
11508
11509 * macfns.c: #undef init_process before #define-ing it.
11510
11511 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
11512 HAVE_CARBON is defined.
11513
115142002-07-31 Richard M. Stallman <rms@gnu.org>
11515
11516 * xmenu.c (set_frame_menubar): First parse all submenus,
11517 then make widget_value trees from them.
11518 Don't allocate any widget_value objects
11519 until we are done with the parsing.
11520 (parse_single_submenu): New function.
11521 (digest_single_submenu): New function.
11522 (single_submenu): Function deleted, replaced by those two.
11523
115242002-07-30 Juanma Barranquero <lektu@terra.es>
11525
11526 * w32proc.c (syms_of_ntproc): Fix docstring of
11527 `w32-get-true-file-attributes'.
11528
115292002-07-28 Richard M. Stallman <rms@gnu.org>
11530
11531 * s/hpux8.h (HPUX8): Define this before including hpux.h.
11532 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
11533
11534 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
11535
11536 * keyboard.c (make_lispy_event):
11537 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
11538 Explicitly clear up_modifier in event->modifiers.
11539
115402002-07-27 Richard M. Stallman <rms@gnu.org>
11541
11542 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
11543
11544 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
11545 for bar cursor.
11546
115472002-07-26 Kenichi Handa <handa@etl.go.jp>
11548
11549 * coding.c (detect_coding_iso2022): While checking a byte sequence
11550 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
11551 it in the normal loop.
11552
115532002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
11554
11555 * xterm.c (expose_overlaps): New function.
11556 (expose_window): Use it to fix the display of overlapping rows.
11557
11558 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
11559
115602002-07-23 Ken Raeburn <raeburn@gnu.org>
11561
11562 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
11563 since it only depends on XUINT.
11564
11565 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
11566 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
11567 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
11568 Macros deleted.
3947677c 11569
77d1daf2
AS
11570 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
11571 its value over other approaches.
11572 * sysdep.c (start_of_data): Don't define the function if a macro
11573 form has been defined.
8a8e19a3 11574
048addec
JD
115752002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
11576
11577 * xdisp.c (redisplay_updating_p): New variable.
11578 (init_iterator): Don't free realized faces when
11579 redisplay_updating_p is set.
11580 (redisplay_internal): Set redisplay_updating_p while updating
11581 the display.
11582
115832002-07-23 Richard M. Stallman <rms@gnu.org>
11584
11585 * editfns.c (Fmessage): Treat "" like nil.
11586
115872002-07-23 Kenichi Handa <handa@etl.go.jp>
11588
11589 * xdisp.c (face_before_or_after_it_pos):
11590 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
11591
115922002-07-22 Juanma Barranquero <lektu@terra.es>
11593
11594 * callproc.c (init_callproc) [DOS_NT]:
11595 Initialize Vshared_game_score_directory to nil.
11596 (syms_of_callproc) [DOS_NT]: Likewise.
11597
115982002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
11599
11600 * xdisp.c (display_line): Replace an abort with xassert.
11601
116022002-07-21 Richard M. Stallman <rms@gnu.org>
11603
11604 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
11605 and END_UNCHANGED when setting buffer_unchanged_p.
11606 Use current_matrix_up_to_date_p to decide whether to use
11607 try_cursor_movement.
11608
11609 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
11610
11611 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
11612
11613 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
11614 Set to nil if dir does not exist.
11615 (syms_of_callproc): Init unconditionally and simply.
11616
11617 * buffer.c (Fbuffer_list): Doc fix.
11618
116192002-07-21 Ken Raeburn <raeburn@gnu.org>
11620
11621 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
11622
11623 * buffer.c (mmap_realloc): When shrinking, make sure number of
11624 pages to unmap is rounded towards zero.
11625
11626 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
11627 (XSETINT): Deleted.
11628
11629 * m/att3b.h (XINT): Don't define.
11630 (VALBITS, VALMASK, XTYPE): Deleted.
11631 (DATA_SEG_BITS): Define.
11632 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
11633 ARRAY_MARK_FLAG): Deleted.
11634 (DATA_SEG_BITS): Define.
11635 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
11636 (DATA_SEG_BITS): Define.
11637
116382002-07-20 Richard M. Stallman <rms@gnu.org>
11639
11640 * print.c (print_error_message): New args CONTEXT and CALLER.
11641 Calls changed.
11642
11643 * lisp.h (print_error_message): Declare new args.
11644
11645 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
11646 and CONTEXT to print_error_message, don't print them here.
11647 For a Quit, don't use Vsignaling_function.
11648 Call message_log_maybe_newline.
11649
11650 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
11651
116522002-07-20 Kim F. Storm <storm@cua.dk>
11653
11654 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
11655
116562002-07-19 Ken Raeburn <raeburn@gnu.org>
11657
11658 * bytecode.c (struct byte_stack): Pointers into byte string now
11659 point to const.
11660 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
11661 const.
11662 * charset.h (BCOPY_SHORT): Source pointer now points to const.
11663 * coding.c (encode_eol, detect_coding, detect_eol):
11664 (decode_coding, encode_coding, detect_coding_system):
11665 Source strings now treated as const.
11666 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
11667 modify Lisp string contents.
11668 * coding.h (decode_coding, encode_coding, detect_coding,
11669 detect_eol): Declarations updated.
11670 * composite.c (compose_chars_in_text): Treat Lisp string contents
11671 as const.
11672 * dispnew.c (safe_bcopy): Source pointer now points to const.
11673 * lisp.h (STRING_COPYIN): New macro.
11674 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
11675 (internal_with_output_to_temp_buffer): Declarations updated.
11676 * print.c (temp_output_buffer_setup):
11677 (internal_with_output_to_temp_buffer): Buffer name argument is now
11678 pointer to const.
11679 * sound.c (struct sound_device): Function pointer field "write"
11680 buffer argument now points to const.
11681 (vox_write): Buffer argument points to const.
11682 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
11683 contents as const.
11684 * sysdep.c (emacs_write): Buffer pointer now const.
11685 * term.c (encode_terminal_code): Buffer pointer now const.
11686 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
11687 (x_face_list_fonts, x_update_menu_appearance):
11688 (hash_string_case_insensitive): Treat Lisp string contents as const.
11689
116902002-07-19 Juanma Barranquero <lektu@terra.es>
11691
048addec
JD
11692 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
11693
11694 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
11695 (Ffile_name_as_directory): Fix argument name in docstring.
11696 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
11697
116982002-07-18 Richard M. Stallman <rms@gnu.org>
11699
11700 * data.c (Fdefalias): Doc fix.
11701
117022002-07-17 Dave Love <fx@gnu.org>
11703
11704 * intervals.h (text_property_stickiness): Use P_.
11705
11706 * ccl.c: Remove `emacs' conditionals.
11707 (ccl_backtrace_table): Fix size spec.
11708 (ccl_driver): Fix type errors.
11709
117102002-07-16 Ken Raeburn <raeburn@gnu.org>
11711
11712 * alloc.c (xstrdup, make_string, make_unibyte_string)
11713 (make_multibyte_string, build_string): String pointer args now
11714 point to const.
11715 * charset.c (find_charset_in_text, c_string_width):
11716 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
11717 * fileio.c (report_file_error):
11718 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
11719 (count_combining_before, count_combining_after, insert_1_both):
11720 (insert, insert_and_inherit, insert_string):
11721 (insert_before_markers, insert_before_markers_and_inherit):
11722 * lread.c (intern, oblookup, hash_string):
11723 * minibuf.c (temp_echo_area_glyphs):
11724 * search.c (fast_c_string_match_ignore_case):
11725 * sysdep.c (emacs_open, set_file_times):
11726 * xfaces.c (xstricmp):
11727 * xdisp.c (store_frame_title, string_char_and_length):
11728 (message_dolog, message2, message2_nolog, set_message): Likewise.
11729 (set_message_1): Cast message string argument to const pointer.
11730 * editfns.c (general_insert_function): Insertion function now
11731 takes pointer to const for input data.
11732 * charset.h (find_charset_in_text, c_string_width):
11733 (parse_str_as_multibyte): Declarations updated.
11734 * dispextern.h (xstricmp): Declaration updated.
11735 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
11736 (count_size_as_multibyte, count_combining_before):
11737 (count_combining_after, insert_1, insert_1_both, message_dolog):
11738 (insert, insert_and_inherit, insert_before_markers)
11739 (insert_before_markers_and_inherit, set_message, message2):
11740 (message2_dolog, build_string, make_string, make_unibyte_string):
11741 (make_multibyte_string, intern, oblookup, report_file_error):
11742 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
11743 (emacs_open, xstrdup): Declarations updated.
11744 * systime.h (set_file_times): Declaration updated.
11745
11746 * charset.c (find_charset_in_text, lisp_string_width): Use const
11747 for pointer to lisp string data.
11748 * charset.h (FETCH_STRING_CHAR_ADVANCE):
11749 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
11750 * coding.c (Ffind_coding_systems_region_interval):
11751 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
11752 (Fmake_directory_internal, Fdelete_directory):
11753 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
11754 * fontset.c (font_family_registry, fs_query_fontset):
11755 (list_fontsets):
11756 * frame.c (Fframe_parameter):
11757 * keyboard.c (cmd_error_internal):
11758 * keymap.c (Fdescribe_buffer_bindings):
11759 * lread.c (complete_filename_p, openp):
11760 * minibuf.c (Fminibuffer_complete_word):
11761 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
11762 (face_before_or_after_it_pos, next_element_from_string):
11763 (get_overlay_arrow_glyph_row, display_mode_element):
11764 (decode_mode_spec_coding):
11765 * xterm.c (same_x_server): Likewise.
11766
11767 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
11768 settings of non-existent fields.
11769
11770 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
11771 copy a lisp value.
11772
11773 * lread.c (Fintern_soft): Use string macros instead of
11774 Lisp_String fields.
11775 * keyboard.c (echo_char, parse_modifiers_uncached):
11776 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
11777 * textprop.c (validate_interval_range, interval_of): Likewise.
11778
11779 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
11780
11781 * charset.h (FETCH_STRING_CHAR_ADVANCE)
11782 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
11783 XSTRING()->size_byte.
11784
11785 * lisp.h (SDATA, SREF): Produce rvalue.
11786 (SSET): New macro.
11787 * alloc.c (make_event_array): Use SSET for storing into a string.
11788 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
11789 a string.
11790 * casefiddle.c (casify_object): Use SSET.
11791 * charset.h (FETCH_STRING_CHAR_ADVANCE)
11792 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
11793 address of string contents.
11794 * data.c (Faref): Use SDATA.
11795 (Faset): Use SDATA, SSET.
11796 * dired.c (directory_files_internal): Use SSET.
11797 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
11798 (Fread_file_name): Use SREF, SSET.
11799 * fns.c (concat): Use SSET.
11800 (concat, Fdelete): Use SDATA.
11801 * insdel.c (insert_from_string_1): Use SDATA.
11802 * keyboard.c (Fevent_convert_list): Use SREF.
11803 * lread.c (Fload): Use SDATA, SSET.
11804 * macfns.c (validate_x_resource_name): Use SSET.
11805 * process.c (status_message): Use SSET.
11806 * search.c (wordify): Use SDATA.
11807 (Freplace_match): Use SREF.
11808 * w32fns.c (validate_x_resource_name): Use SSET.
11809 * xfns.c (validate_x_resource_name): Use SSET.
11810 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
11811
118122002-07-16 Richard M. Stallman <rms@gnu.org>
11813
11814 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
11815
11816 * xdisp.c (reconsider_clip_changes):
11817 Don't test prevent_redisplay_optimizations_p.
11818 (redisplay_internal): Test prevent_redisplay_optimizations_p
11819 along with clip_changed in some cases.
11820 (try_window_id): Likewise.
11821 (redisplay_window): New local var buffer_unchanged_p.
11822
11823 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
11824
11825 * process.c (create_process): Test USG_SUBTTY_WORKS.
11826 (process_send_signal): Clean up handling of GID.
11827 Detect errors in ioctls meant to set GID.
11828
11829 * window.c (temp_output_buffer_show):
11830 Don't set prevent_redisplay_optimizations_p.
11831
118322002-07-15 Juanma Barranquero <lektu@terra.es>
11833
11834 * eval.c (Fdefvaralias): Add docstring argument.
11835
118362002-07-15 Ken Raeburn <raeburn@gnu.org>
11837
11838 * lisp.h (STRING_INTERVALS): Produce rvalue.
11839 (STRING_SET_INTERVALS): New macro.
11840 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
11841 * fns.c (Fstring_as_multibyte): Likewise.
11842 * intervals.c (balance_possible_root_interval, delete_interval)
11843 (create_root_interval, copy_intervals_to_string): Likewise.
11844 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
11845 instead of 0.
11846
118472002-07-14 Ken Raeburn <raeburn@gnu.org>
11848
11849 * lisp.h (STRING_SET_CHARS): New macro.
11850 (SCHARS, SBYTES): Produce rvalues.
11851 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
11852 * fns.c (concat): Likewise.
11853 * lread.c (read_vector): Likewise.
11854
11855 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
11856 (STRING_SET_UNIBYTE): New macro.
11857 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
11858 length of -1) changed to use STRING_SET_UNIBYTE.
11859 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
11860 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
11861 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
11862 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
11863 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
11864 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
11865 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
11866 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
11867 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
11868 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
11869 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
11870 STRING_BYTES or indirection changed to SCHARS, SBYTES,
11871 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
11872 unchanged for now.
11873
118742002-07-13 Kim F. Storm <storm@cua.dk>
11875
11876 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
11877
118782002-07-12 Richard M. Stallman <rms@gnu.org>
11879
11880 * fileio.c (Fwrite_region): Doc fix.
11881
11882 * print.c (print_error_message): Don't handle Vsignaling_function here.
11883
11884 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
11885 (command_loop_1): Avoid certain actions after memory-full error.
11886
11887 * eval.c (Fsignal): Don't call cancel_hourglass.
11888 For a memory-full error, don't call Vsignal_hook_function
11889 and don't set Vsignaling_function.
11890
11891 * process.c (process_send_signal): Add abort call.
11892
118932002-07-11 Markus Rost <rost@math.ohio-state.edu>
11894
11895 * keymap.c (Fkey_binding): Fix typo.
11896
118972002-07-11 Richard M. Stallman <rms@gnu.org>
11898
11899 * alloc.c (Vmemory_full): New variable.
11900 (Vmemory_signal_data): Renamed from memory_signal_data.
11901 Uses changed.
11902 (syms_of_alloc): Defvar them.
11903 (memory_full, buffer_memory_full): Set Vmemory_full.
11904
11905 * lisp.h (Vmemory_full): Add declaration.
11906 (current_column, indented_beyond_p): Change declaration.
11907
11908 * indent.c (last_known_column): Declare as double, not float.
11909 (current_column, current_column_1, string_display_width)
11910 (position_indentation): Return `double'.
11911 (indented_beyond_p): Arg `column' is `double'. Callers changed.
11912
11913 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
11914 (back_to_previous_visible_line_start)
11915 (reseat_at_next_visible_line_start, next_element_from_buffer):
11916 Use `double', not `float', when calling indented_beyond_p.
11917
11918 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
11919
11920 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
11921
119222002-07-11 Juanma Barranquero <lektu@terra.es>
11923
11924 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
11925 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
11926 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
11927 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
11928 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
11929 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
11930
119312002-07-10 Juanma Barranquero <lektu@terra.es>
11932
d814862a
JB
11933 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
11934 All callers changed.
048addec
JD
11935
119362002-07-09 Stefan Monnier <monnier@cs.yale.edu>
11937
11938 * data.c (Fdefalias): Add an optional `docstring' argument.
11939 (set_internal, Fsetq_default): Use XCAR/XCDR.
11940
11941 * composite.c (HASH_VALUE, HASH_KEY):
11942 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
11943
119442002-07-09 Kenichi Handa <handa@etl.go.jp>
11945
11946 * callproc.c (Fcall_process): Fix previous change.
11947
119482002-07-07 Stefan Monnier <monnier@cs.yale.edu>
11949
11950 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
11951 Add support for hash-tables.
11952 (Ftry_completion): Return t even if the string appears multiple times.
11953
11954 * fns.c (Fnconc): Use XCDR.
11955 (Fprovide): Use CONSP and XCDR.
11956 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11957 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
11958 (Fmake_hash_table): Accept `:size nil'.
11959 (Fmakehash): Delete: moved to subr.el.
11960 (syms_of_fns): Don't defsubr makehash.
11961
11962 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11963 (HASH_TABLE_SIZE): Move from fns.c.
11964
119652002-07-07 Richard M. Stallman <rms@gnu.org>
11966
11967 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
11968 Instead just return 0 when there is something to be done.
11969 (try_scrolling): If make_cursor_line_fully_visible returns 0,
11970 retry scrolling as if cursor were off the bottom.
11971 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
11972 return CURSOR_MOVEMENT_MUST_SCROLL.
11973 (redisplay_window): If make_cursor_line_fully_visible returns 0,
11974 go to try_to_scroll.
11975
11976 * buffer.c (Fbuffer_local_value): Store current value into its binding
11977 so we get the up-to-date value for the binding that is loaded.
11978
11979 * eval.c (Fdefmacro): Doc fix.
11980
119812002-07-05 Dave Love <fx@gnu.org>
11982
11983 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
11984 correctly.
11985
11986 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
11987 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
11988 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
11989 CCL_LookupCharConstTbl.
11990 (syms_of_ccl): Defvar translation-hash-table-vector.
11991
119922002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11993
11994 * xdisp.c: Remove unused variable `face'.
11995
119962002-07-04 Juanma Barranquero <lektu@terra.es>
11997
11998 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
11999 obsolescence information.
12000
120012002-07-03 Andrew Choi <akochoi@shaw.ca>
12002
12003 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
12004 pattern. Search cache first.
12005 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
12006 for Japanese font.
12007 (XLoadQueryFont): Use it.
12008
120092002-07-02 Richard M. Stallman <rms@gnu.org>
12010
12011 * keymap.c (Fdefine_key): Doc fix.
12012
12013 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
12014
120152002-07-02 Juanma Barranquero <lektu@terra.es>
12016
12017 * keymap.c (syms_of_keymap): Fix typo.
12018
120192002-07-01 Andrew Choi <akochoi@shaw.ca>
12020
12021 * s/darwin.h: Define POSIX_SIGNALS.
12022
12023 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
12024 and FSRefMakePath to convert FSSpec returned with Apple Event to
12025 Posix pathname.
12026 (mac_initialize) [TARGET_API_MAC_CARBON]:
12027 Call init_required_apple_events and disable the `Quit' menu item
12028 provided automatically by the Carbon Toolbox.
12029
120302002-07-01 Dave Love <fx@gnu.org>
12031
12032 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
12033 for K&R.
12034
12035 * xterm.c: Fix prototype for K&R.
12036
12037 * term.c (costs_set): Declare static, non-initialized for pcc.
12038
120392002-07-01 Richard M. Stallman <rms@gnu.org>
12040
12041 * keyboard.c (timer_last_idleness_start_time): New variable.
12042 (timer_start_idle): Set that.
12043 (read_key_sequence): Use that to reset timer_idleness_start_time
12044 to previous value.
12045
12046 * window.c (Frecenter): With arg, set optional_new_start.
12047
12048 * xdisp.c (redisplay_internal): Make optional_new_start really work.
12049
12050 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
12051 buffer for completion.
12052
120532002-06-29 Ken Raeburn <raeburn@gnu.org>
12054
12055 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
12056
120572002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12058
12059 * keyboard.c (readable_filtered_events): New function that filters
12060 FOCUS_IN_EVENT depending on parameter.
12061 (readable_events): Calls readable_filtered_events, not filtering
12062 FOCUS_IN_EVENT.
12063 (get_filtered_input_pending): New function, filtering parameter passed
12064 to readable_filtered_events.
12065 (get_input_pending): Calls get_filtered_input_pending, not filtering
12066 FOCUS_IN_EVENT.
12067 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
12068 FOCUS_IN_EVENT.
12069
12070 * xterm.h (struct x_output): Add focus_state.
12071
12072 * xterm.c (x_focus_changed): New function.
12073 (x_detect_focus_change): New function.
12074 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
12075 EnterNotify and LeaveNotify to track X focus changes.
12076
120772002-06-28 Andreas Schwab <schwab@suse.de>
12078
12079 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
12080
120812002-06-27 Kim F. Storm <storm@cua.dk>
12082
12083 * xdisp.c: (mode_line_string_list, mode_line_string_face)
12084 (mode_line_string_face_prop): New variables.
12085 (store_mode_line_string): New function.
12086 (display_mode_element): Use store_mode_line_string to
12087 add mode-line string elements to mode_line_string_list
12088 when mode_line_string_list is non-nil.
12089 (Fformat_mode_line): Now returns propertized string by
12090 default. New arg NO-PROPS to ignore properties.
12091 (decode_mode_spec): Only add two dashes for %- in propertized
12092 mode-line string.
12093 (syms_of_xdisp): Init and staticpro mode_line_string_list.
12094
120952002-06-27 Stefan Monnier <monnier@cs.yale.edu>
12096
12097 * minibuf.c (minibuffer_completion_contents): Add return type.
12098
120992002-06-27 Juanma Barranquero <lektu@terra.es>
12100
12101 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
12102
121032002-06-26 Juanma Barranquero <lektu@terra.es>
12104
12105 * fileio.c (read_file_name_cleanup): Add missing return.
12106
121072002-06-26 Richard M. Stallman <rms@gnu.org>
12108
12109 * window.c (Frecenter): Don't set force_start flag.
12110
12111 * minibuf.c (do_completion, Fminibuffer_complete_word)
12112 (Fminibuffer_completion_help): Complete just the text before point.
12113 (minibuffer_completion_contents): New function.
12114
12115 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
12116
12117 * frame.c (frames_bury_buffer): Function deleted.
12118
121192002-06-25 Miles Bader <miles@gnu.org>
12120
12121 * callint.c (Fcall_interactively): When checking to see if doprnt hit
12122 the end of callint_message, allow for a terminating '\0'.
12123
121242002-06-24 Juanma Barranquero <lektu@terra.es>
12125
12126 * w32select.c: Include composite.h
12127
12128 * w16select.c: Likewise.
12129
121302002-06-24 Kenichi Handa <handa@etl.go.jp>
12131
12132 * callproc.c (Fcall_process): If code detection is necessary,
12133 call detect_coding directly here.
12134
12135 * coding.c (detect_eol): Preserve coding->cmp_data.
12136
12137 * w16select.c (Fw16_get_clipboard_data):
12138 * w32fns.c (w32_to_x_font):
12139 * w32select.c (Fw32_get_clipboard_data):
12140 * xselect.c (selection_data_to_lisp_data):
12141 * xterm.c (XTread_socket): Disable composition handling.
12142
121432002-06-24 Stefan Monnier <monnier@cs.yale.edu>
12144
12145 * print.c (temp_output_buffer_setup): Kill all local variables.
12146
121472002-06-22 Stefan Monnier <monnier@cs.yale.edu>
12148
12149 * lread.c (Fread): Remove redundant and imprecise declaration.
12150
12151 * xfns.c (check_x_display_info): Use check_x_frame.
12152
12153 * .gdbinit (xprintsym): Use the new `xname' field.
12154 (xsymbol): Use it.
12155
121562002-06-22 Jason Rumney <jasonr@gnu.org>
12157
12158 * w32fns.c (file_dialog_callback): New function.
12159 (Fx_file_dialog): Allow selecting directories as well as files.
12160
121612002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12162
12163 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 12164 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
12165
121662002-06-17 Andrew Choi <akochoi@shaw.ca>
12167
12168 * macterm.c (mac_scroll_area): Set foreground and backcolor to
12169 black and white before scrolling. Restore frame background and
12170 foreground color after scrolling.
12171 (do_window_update): Call XClearWindow before calling expose_frame.
12172 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
12173 FRAME_FOREGROUND_PIXEL of frame.
12174
12175 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
12176 test Mac command key as <ALT> key.
12177
121782002-06-17 Stefan Monnier <monnier@cs.yale.edu>
12179
12180 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
12181
12182 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
12183 Lookup keys in function-key-map immediately so that key-translation-map
12184 can be applied earlier.
12185 Remove function_key_possible and key_translation_possible, replaced
12186 by checking `keytran_start < t'.
12187
12188 * .gdbinit (xsymbol): Use the new `xname' field.
12189
121902002-06-17 Andrew Choi <akochoi@shaw.ca>
12191
12192 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
12193 test Mac command key as <ALT> key.
12194
12195 * mac.c (do_applescript): Call initialize_applescript if necessary
12196 when first called. Dispose of result_desc only when there is no error.
12197 (Fdo_applescript): Use %d format specifier instead of %ld.
12198
121992002-06-16 Andrew Choi <akochoi@shaw.ca>
12200
12201 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
12202 of FrontWindow for cases keyDown and autoKey.
12203
12204 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
12205 Vdefault_fontset to Monaco with mac-roman coding.
12206
12207 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
12208 init_process before and after inclusion of Carbon/Carbon.h, resp.
12209
12210 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
12211 cursor_gc.
12212 (add_font_name_table_entry): New function.
12213 (init_font_name_table): Use add_font_name_table_entry; add italic,
12214 bold, and bold-italic entries for truetype fonts.
12215
12216 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
12217 for Mac too.
12218 (try_font_list) [MAC_OS]: If no font matches given registry, try
12219 fonts with any registry matching face_family.
12220 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
12221
12222 * s/darwin.h: If autoconf detects the Ncurses library, define
12223 LIBS_TERMCAP to -lncurses to use it.
12224
122252002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
12226
12227 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
12228
122292002-06-15 Richard M. Stallman <rms@gnu.org>
12230
12231 * window.c (Fset_window_configuration): Explicitly preserve
12232 the point value that new_current_buffer had at the start.
12233
122342002-06-14 Juanma Barranquero <lektu@terra.es>
12235
12236 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
12237 Fix typos.
12238
122392002-06-14 Kim F. Storm <storm@cua.dk>
12240
12241 * insdel.c (insert_1_both, insert_from_string_1)
12242 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
12243 insert happened in the end_unchanged region. Otherwise, the
12244 redisplay may be confused and duplicate the last line in the
12245 buffer [seen after save-buffer when require-final-newline==t].
12246
122472002-06-13 Jason Rumney <jasonr@gnu.org>
12248
12249 * w32.c (init_environment): Remove EMACSLOCKDIR.
12250 (stat): Swap _S_IFDIR and _S_IFREG.
12251
122522002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12253
12254 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
12255 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
12256 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
12257 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
12258 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
12259 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
12260 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
12261 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
12262 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
12263 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
12264 SELECTION_REQUEST_EVENT, selection_clear_event to
12265 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
12266 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
12267 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
12268 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
12269 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
12270 no_event to NO_EVENT.
12271
122722002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12273
12274 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
12275
122762002-06-12 Stefan Monnier <monnier@cs.yale.edu>
12277
12278 * intervals.c (textget): Don't forget to `return'.
12279 (lookup_char_property): Use XCAR/XCDR.
12280
122812002-06-12 Juanma Barranquero <lektu@terra.es>
12282
12283 * xdisp.c (Fformat_mode_line): Fix typo.
12284
122852002-06-12 Kim F. Storm <storm@cua.dk>
12286
12287 * xdisp.c (Fformat_mode_line): New function.
12288 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
12289 (store_frame_title_char, store_frame_title): Use unconditionally.
12290 (init_xdisp): Defsubr Fformat_mode_line.
12291 Initialize frame_title_buf etc. unconditionally.
12292
122932002-06-11 Stefan Monnier <monnier@cs.yale.edu>
12294
12295 * keyboard.c (read_key_sequence):
12296 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
12297 things through those maps after downcasing events.
12298 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
12299 applies after function-key-map.
12300 Make sure that keytran can be done in the middle in the sequence.
12301 Be careful not to throw away events past the one we downcase.
12302
12303 * lread.c (read_integer): Remove unused var `tem'.
12304 (read1): Fix int/Lisp_Object mixup.
12305
12306 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
12307
123082002-06-11 Richard M. Stallman <rms@gnu.org>
12309
12310 * keyboard.c (readable_events): Ignore any number of
12311 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
12312
123132002-06-09 Miles Bader <miles@gnu.org>
12314
12315 * xfaces.c (Ftty_supports_face_attributes_p): New function.
12316 (parse_rgb_list, tty_lookup_color): New functions.
12317 (tty_defined_color): Use `tty_lookup_color' to do all the work.
12318 (color_distance, Fcolor_distance): New functions.
12319 (TTY_SAME_COLOR_THRESHOLD): New macro.
12320 (Qtty_color_standard_values): New variable.
12321 (syms_of_xfaces): Initialize new vars & functions.
12322
123232002-06-08 Colin Walters <walters@verbum.org>
12324
12325 * textprop.c (Vchar_property_alias_alist): New variable.
12326 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
12327
12328 * intervals.c (lookup_char_property): New function for looking up
12329 overlay and text properties, created from textget.
12330 (textget): Use it.
12331
12332 * intervals.h (lookup_char_property): Declare.
12333 (Vchar_property_alias_alist): Declare.
12334
12335 * buffer.c (Foverlay_get): Use lookup_char_property.
12336
123372002-06-07 Sam Steingold <sds@gnu.org>
12338
12339 * xselect.c (lisp_data_to_selection_data): Fix last change:
12340 *data_ret is not a Lisp string, while unibyte_string is.
12341
123422002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
12343
12344 * xselect.c (lisp_data_to_selection_data): Fix last change:
12345 set size_ret.
12346
123472002-06-07 Andreas Schwab <schwab@suse.de>
12348
12349 * m/amdx86-64.h: New file.
12350
123512002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
12352
12353 * fns.c (Fstring_make_unibyte): Doc fix.
12354
12355 * xselect.c (lisp_data_to_selection_data): If the requested type
12356 is STRING, call string_make_unibyte to encode the selected text
12357 as a string.
12358
12359 * window.c (Fset_window_hscroll): Doc fix.
12360
123612002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12362
12363 * fileio.c (choose_write_coding_system):
12364 Call select-safe-coding-system properly.
12365
123662002-06-03 Richard M. Stallman <rms@gnu.org>
12367
12368 * xdisp.c (message_with_string): Error if STRING is not a string.
12369
12370 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
12371
12372 * fileio.c (choose_write_coding_system): Pass FILE arg to
12373 Vselect_safe_coding_system_function.
12374
123752002-06-03 Ken Raeburn <raeburn@gnu.org>
12376
12377 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
12378
123792002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
12380
12381 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
12382 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
12383 * keymap.c (describe_command): Likewise.
12384 * minibuf.c (read_minibuf): Likewise.
12385
12386 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
12387 Cast `current_column' return value to int.
12388 (back_to_previous_visible_line_start)
12389 (reseat_at_next_visible_line_start, next_element_from_buffer):
12390 Cast `indented_beyond_p' 3rd arg to float.
12391
12392 * indent.c (last_known_column): Now a float.
12393 (current_column_1, position_indentation, current_column)
12394 (string_display_width): Return float.
12395 (Fcurrent_column): Cast `current_column' return value to int.
12396 (Fcurrent_indentation): Cast `position_indentation' retval to int.
12397 (indented_beyond_p): Third arg now a float.
12398 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
12399
12400 * lisp.h (current_column): Now returns float.
12401 (indented_beyond_p): 3rd arg now a float.
12402
124032002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
12404
12405 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
12406 is Qcompound_text_with_extensions.
12407
12408 * xselect.c (lisp_data_to_selection_data): Always set selection
12409 type as string if x_encode_text returns streingp non-NULL.
12410
12411 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
12412
124132002-05-30 Richard M. Stallman <rms@gnu.org>
12414
12415 * window.c (Fset_window_configuration): Correct the handling
12416 of point in current buffer, to work with multiple windows.
12417
124182002-05-29 Colin Walters <walters@verbum.org>
12419
12420 * lread.c (Fread_from_string): Don't depend on order of evaluation
12421 for C function parameters.
12422
124232002-05-28 Richard M. Stallman <rms@gnu.org>
12424
12425 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
12426 way for blinked-off state and for a nonselected window.
12427
12428 * window.c (window_scroll_pixel_based): Don't call Fbolp;
12429 instead, see if the new start pos is at beginning of line.
12430
12431 * fileio.c (Fwrite_region): If START is a string, don't
12432 make any annotations.
12433
12434 * eval.c (syms_of_eval): Doc fix.
12435
124362002-05-28 Colin Walters <walters@debian.org>
12437
12438 * emacs.c (USAGE1): Add --no-splash.
12439 (standard_args): Ditto.
12440
124412002-05-28 Colin Walters <walters@gnu.org>
12442
12443 * lread.c (readchar_count): New variable.
12444 (readchar): Increment it.
12445 (unreadchar): Decrement it.
12446 (read_multibyte): Decrement it.
12447 (Vread_with_symbol_positions): New variable.
12448 (Vread_symbol_positions_list): New variable.
12449 (read_internal_start): New function, created from Fread and
12450 Fread_from_string. Handle Vread_symbol_positions_list and
12451 Vread_with_symbol_positions.
12452 (readevalloop, Fread, Fread_from_string): Use it.
12453 (read1): Use readchar_count to add symbol positions to
12454 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
12455 (syms_of_lread): DEFVAR_LISP and initialize them.
12456
12457 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
12458 (substitute_object_recurse, substitute_object_in_subtree)
12459 (substitute_in_interval): Prototype.
12460 (read_multibyte): Return c if it's less than zero.
12461
124622002-05-28 Kim F. Storm <storm@cua.dk>
12463
12464 * fileio.c (Fread_file_name_internal): Added brute-force
12465 speed up for using predicate file-directory-p.
12466
124672002-05-28 Kim F. Storm <storm@cua.dk>
12468
12469 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
12470 New variables.
12471 (syms_of_fileio): DEFVAR_LISP them.
12472 (read_file_name_cleanup): New unwind function.
12473 (Fread_file_name_internal): Only return completions satifying
12474 Vread_file_name_predicate. Temporarily unwind protect and rebind
12475 default-directory while checking completions against the predicate.
12476 (Fread_file_name): Added PREDICATE argument. Specbind it to
12477 Vread_file_name_predicate during completion.
12478 Call Vread_file_name_function to read the file name if non-nil.
12479
12480 * lisp.h (Fread_file_name): Now has 6 args.
12481
12482 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
12483 predicate for Fread_file_name when reading directory name.
12484 Supply Qnil for predicate in other calls to Fread_file_name.
12485
124862002-05-26 Miles Bader <miles@gnu.org>
12487
12488 * term.c (tty_capable_p): New function.
12489 * dispextern.h (tty_capable_p): New function declaration.
12490 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
12491 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
12492
124932002-05-23 Stefan Monnier <monnier@cs.yale.edu>
12494
12495 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
12496 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
12497 (Vwrite_region_annotate_functions): Docstring fix.
12498
124992002-05-23 Kim F. Storm <storm@cua.dk>
12500
12501 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
12502 phys_cursor's hpos is overwritten. This is still not completely
12503 correct, as it doesn't really make sense to use hpos at all to
12504 get the cursor glyph (as that is relative to the width of the
12505 characters on the line, which may have changed during the update).
12506
125072002-05-22 Jason Rumney <jasonr@gnu.org>
12508
12509 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
12510 Lisp_Object.
12511 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
12512 Use modified enumfont_t struct.
12513
12514 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
12515
12516 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
12517 Handle the `hbar' cursor type.
12518 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
12519
12520 * w32fns.c (Qhbar): New variable.
12521 (x_specified_cursor_type): Use it.
12522
125232002-05-21 Ken Raeburn <raeburn@gnu.org>
12524
12525 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
12526 now, when the address is needed.
12527
125282002-05-21 Colin Walters <walters@gnu.org>
12529
12530 * Makefile.in (shortlisp): Add font-core.el.
12531
125322002-05-20 Richard M. Stallman <rms@gnu.org>
12533
12534 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
12535
12536 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
12537 equivalent key bindings here.
12538
125392002-05-20 Ken Raeburn <raeburn@gnu.org>
12540
12541 Change symbol structure to contain a lisp object for the symbol
12542 name:
12543 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
12544 object field named "xname".
12545 (SYMBOL_NAME): New macro.
12546 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
12547 name field.
12548 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
12549 (mark_object, gc_sweep): Use symbol xname field and XSTRING
12550 instead of name field.
12551 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
12552 SYMBOL_NAME instead of XSYMBOL and name field.
12553 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
12554 instead of XSYMBOL and name field.
12555 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
12556 and SYMBOL_NAME instead of XSYMBOL and name field.
12557 * coding.c (Fread_coding_system, code_convert_region1)
12558 (code_convert_string1, code_convert_string_norecord)
12559 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
12560 XSYMBOL and name field.
12561 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
12562 (Fmake_variable_buffer_local, Fmake_local_variable)
12563 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
12564 of XSYMBOL and name field.
12565 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
12566 XSYMBOL and name field.
12567 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
12568 instead of XSYMBOL and name field.
12569 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
12570 XSYMBOL and name field.
12571 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
12572 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
12573 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
12574 instead of XSYMBOL and name field.
12575 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
12576 (parse_modifiers, apply_modifiers, Fevent_convert_list)
12577 (parse_solitary_modifier, Fexecute_extended_command):
12578 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
12579 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
12580 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
12581 of XSYMBOL and name field.
12582 (describe_command, describe_translation): Use SYMBOL_NAME and
12583 assignment instead of XSYMBOL and name field and XSETSTRING.
12584 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
12585 instead of XSYMBOL and name field.
12586 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
12587 name field and XSETSTRING.
12588 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
12589 of XSYMBOL and name field.
12590 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
12591 assignment instead of XSYMBOL and name field and XSETSTRING.
12592 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
12593 XSTRING instead of XSYMBOL and name field.
12594 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
12595 and XSTRING instead of XSYMBOL and name field.
12596 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
12597 and XSTRING instead of XSYMBOL and name field.
12598 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
12599 XSTRING instead of XSYMBOL and name field.
12600 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
12601 of XSYMBOL and name field.
12602 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
12603 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
12604
126052002-05-19 Ken Raeburn <raeburn@gnu.org>
12606
12607 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
12608 and XCDR real rvalues in most configurations.
12609
12610 * buffer.c (fix_overlays_in_range, fix_overlays_before):
12611 Don't take the address of the cdr part of a cons cell; instead, track
12612 the parent cell and call XSETCDR, or set the variable for the head
12613 of the list if we haven't started down the list yet.
12614
126152002-05-19 Richard M. Stallman <rms@gnu.org>
12616
12617 * doc.c (reread_doc_file): Don't ask for confirmation.
12618
126192002-05-18 Jason Rumney <jasonr@gnu.org>
12620
12621 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
12622 (xbm_load_image): Use it.
12623 (xbm_load): Ditto.
12624 (xbm_read_bitmap_data): Reverted to xfns.c version.
12625 From David Ponce <david@dponce.com>.
12626
126272002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
12628
12629 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
12630 2.02 and later.
12631
126322002-05-16 Juanma Barranquero <lektu@terra.es>
12633
12634 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
12635
126362002-05-15 Stefan Monnier <monnier@cs.yale.edu>
12637
12638 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
12639 meaningful test.
12640 (read_char_minibuf_menu_prompt): Fix typo.
12641
126422002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
12643
12644 * eval.c (Fcommandp): Doc fix.
12645
126462002-05-13 Stefan Monnier <monnier@cs.yale.edu>
12647
12648 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
12649 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
12650 (Fset_keymap_parent): Gcpro a bit more.
12651 (access_keymap): Gcpro around meta_map call and around the main loop.
12652 (get_keyelt): Gcpro when following indirect references.
12653 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
12654 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
12655 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
12656 Remove useless ad-hoc remap code.
12657
126582002-05-13 Richard M. Stallman <rms@gnu.org>
12659
12660 * search.c (search_buffer): Give up boyer moore search if inverse
12661 translation change charset_base.
12662
126632002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
12664
12665 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
12666 characters is carried over from the previous block of text, adjust
12667 coding->produced to account for the extra character.
12668
126692002-05-11 Andreas Schwab <schwab@suse.de>
12670
12671 * coding.c (intersection): Keep the elements of the returned list
12672 in the same order as in the first list.
12673
126742002-05-11 Kim F. Storm <storm@cua.dk>
12675
12676 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
12677 only update cmm_size if realloc actually succeeds.
12678 Testing with initial size of 2 elements revealed that using
12679 realloc on GNU/Linux would cause a random trap in xmalloc
12680 later on, so I rewrote the code to use malloc/bcopy/free instead
12681 of realloc.
12682
126832002-05-10 Jason Rumney <jasonr@gnu.org>
12684
12685 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
12686
126872002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
12688
12689 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
12690 parens, to ensure correct evaluation order.
12691
126922002-05-10 Kim F. Storm <storm@cua.dk>
12693
12694 * keymap.c (Vemulation_mode_map_alists): New variable.
12695 (syms_of_keymap): DEFVAR_LISP it.
12696 (current_minor_maps): Process keymap alists in that list before
12697 minor-mode-overriding-map-alist and minor-mode-map-alist.
12698
126992002-05-09 Richard M. Stallman <rms@gnu.org>
12700
12701 * search.c (Freplace_match): Doc fix.
12702
127032002-05-09 Kim F. Storm <storm@cua.dk>
12704
12705 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
12706 Enlarge cursor rectangle drawn around image with non-zero relief.
12707
12708 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
12709 Enlarge cursor rectangle drawn around image with non-zero relief.
12710
12711 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
12712 Enlarge cursor rectangle drawn around image with non-zero relief.
12713
127142002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
12715
12716 * xselect.c (lisp_data_to_selection_data): Don't set selection
12717 type if comes from the Lisp object's car. If the selection
12718 contains a pure ASCII text, always return QSTRING as its type.
12719
127202002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12721
12722 * mac.c (mac-cut-function): Doc fix.
12723
127242002-05-05 Richard M. Stallman <rms@gnu.org>
12725
12726 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
12727
127282002-05-04 Jason Rumney <jasonr@gnu.org>
12729
12730 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
12731 for event-click-count.
12732
12733 * process.c (init_process): Only add server subfeature if we can
12734 use non-blocking I/O.
12735
127362002-05-04 Andrew Choi <akochoi@shaw.ca>
12737
12738 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
12739 repeatedly.
12740
127412002-05-03 Jason Rumney <jasonr@gnu.org>
12742
12743 * process.c (Fmake_network_process): Only support server sockets
12744 when we can make them non-blocking.
12745
12746 * s/ms-w32.h (HAVE_SELECT): Define.
12747
12748 * w32.h (FILE_NDELAY): New flag.
12749
12750 * w32.c (sys_getpeername, fcntl): New functions.
12751 (_sys_read_ahead): Temporarily block on non-blocking sockets.
12752
12753 * w32proc.c: include sys/file.h.
12754
127552002-05-03 Colin Walters <walters@verbum.org>
12756
12757 * callproc.c (Vgame_score_directory): Renamed to
12758 Vshared_game_score_directory.
12759
127602002-04-30 Richard M. Stallman <rms@gnu.org>
12761
12762 * s/gnu.h [emacs]: Include stdio.h.
12763 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
12764
12765 * eval.c (do_autoload): Error if called while preparing to dump.
12766
12767 * fns.c (Frequire): Error if need to load while preparing to dump.
12768
127692002-04-28 Colin Walters <walters@verbum.org>
12770
12771 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
12772 Default to "~/.emacs.d/games".
12773
127742002-04-29 Stefan Monnier <monnier@cs.yale.edu>
12775
12776 * lread.c (openp): Change arg exec_only to predicate.
12777 (build_load_history): Use XCAR/XCDR.
12778 (Flocate_file_internal): New fun.
12779 (syms_of_lread): Defsubr it.
12780 (Fload): Update call to openp.
12781
12782 * lisp.h (openp): Update prototype.
12783
12784 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
12785 * w32proc.c (sys_spawnve):
12786 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
12787 * w32.c (check_windows_init_file):
12788 * sound.c (Fplay_sound_internal):
12789 * process.c (Fstart_process):
12790 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
12791 * mac.c (run_mac_command):
12792 * emacs.c (init_cmdargs):
12793 * callproc.c (Fcall_process): Update call to openp.
12794
12795 * textprop.c (remove_properties): Don't use XCAR without CONSP.
12796
12797 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
12798
127992002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12800
12801 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
12802 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
12803
128042002-04-28 Richard M. Stallman <rms@gnu.org>
12805
12806 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
12807
12808 * eval.c (Fcommandp): New arg for_call_interactively.
12809 * lisp.h (Fcommandp): Declare new arg.
12810
128112002-04-28 Jason Rumney <jasonr@gnu.org>
12812
12813 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
12814
12815 * w32.c (stat, fstat): Use file index information to generate
12816 inodes for directories where available.
12817
128182002-04-26 Andrew Choi <akochoi@shaw.ca>
12819
12820 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
12821 [HAVE_CARBON]: Include Mac object files.
12822
12823 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
12824 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
12825 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
12826 MAC_OSX, and MAC_OS instead of macintosh.
12827
12828 * editfns.c [MAC_OS8]: Include stdio.h.
12829
12830 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
12831
12832 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
12833 Apple Monaco.
12834
78819ebb 12835 * process.c (QCfamily, QCfilte): Declare extern.
048addec
JD
12836 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
12837 calling select.
12838
12839 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
12840
12841 * tparam.c [MAC_OSX]: Don't define BC and UP.
12842
12843 * config.in [HAVE_CARBON]: Add.
12844
12845 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
12846 Move here from mac/src and mac/inc.
12847
12848 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
12849
128502002-04-26 Gerd Moellmann <gerd@gnu.org>
12851
12852 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
12853 Compute phys_cursor_width from the x position returned
12854 by x_draw_glyhs, which is cheaper.
12855 (x_display_and_set_cursor): Compute the buffer-local value
12856 of `cursor-in-non-selected-windows' only when needed.
12857
128582002-04-25 Gerd Moellmann <gerd@gnu.org>
12859
12860 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
12861 cursor on a stretch glyph has a width that depends on
12862 x_stretch_cursor_p.
12863
128642002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12865
12866 * abbrev.c (abbrev-start-location): Doc fix.
12867
12868 * indent.c (Fvertical_motion): Fix last change.
12869
128702002-04-25 Gerd Moellmann <gerd@gnu.org>
12871
12872 * indent.c (Fvertical_motion): Move to the start of the line
12873 containing PT before moving up or down.
12874
128752002-04-24 Gerd Moellmann <gerd@gnu.org>
12876
12877 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
12878 case of writing a whole row, more or less analogous to the case of
12879 writing only parts of a row.
12880
12881 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
12882 0 for NO_CURSOR.
12883
12884 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
12885
128862002-04-23 Colin Walters <walters@verbum.org>
12887
12888 * buffer.c (syms_of_buffer): Doc fix.
12889
128902002-04-23 Gerd Moellmann <gerd@gnu.org>
12891
12892 * xterm.c (notice_overwritten_cursor): Handle the special case
12893 of the cursor being in the first blank non-text line at the
12894 end of a window.
12895
12896 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
12897 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
12898 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
12899 bar cursors only, to make phys_cursor_width contain what its name
12900 suggests.
12901 (notice_overwritten_cursor): Consider the cursor image erased if
12902 the output area intersects the cursor image in y-direction.
12903
129042002-04-23 Simon Marshall <simon@gnu.org>
12905
12906 * xfns.c (x_set_mouse_color): Change default for cross_cursor
12907 to XC_hand2.
12908
129092002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12910
12911 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
12912
129132002-04-22 Kim F. Storm <storm@cua.dk>
12914
12915 * textprop.c (remove_properties): Fixed trap for malformed plist.
12916
129172002-04-22 Richard M. Stallman <rms@gnu.org>
12918
12919 * cmds.c (Fend_of_line): Handle intangible text in mid line.
12920
12921 * window.c (make_window): Initialize height_fixed_p,
12922 last_cursor_off_p, and p->cursor_off_p slots.
12923
129242002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12925
12926 * fns.c (use-dialog-box): Doc fix.
12927
129282002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12929
12930 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
12931 variables `row', `i' and `area'.
12932 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
12933 toolkit library.
12934
129352002-04-19 Stefan Monnier <monnier@cs.yale.edu>
12936
12937 * xfaces.c (clear_font_table): Don't free the default font of
12938 a frame even if it's on another display.
12939 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
12940 that could be Qt.
12941
129422002-04-19 Juanma Barranquero <lektu@terra.es>
12943
12944 * indent.c (Fmove_to_column): Remove unused local variable
12945 `next_boundary_byte'.
12946 (current_column_1): Likewise.
12947
129482002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
12949
12950 * msdos.c (Qhbar): New variable.
12951 (syms_of_msdos): Intern and staticpro it.
12952 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
12953 cursor type.
12954
129552002-04-19 Dave Lambert <dlambert@acm.org>
12956
12957 Theses change implement an underscore-like (`hbar') cursor.
12958
12959 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
12960
12961 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
12962 Handle the `hbar' cursor type.
12963 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
12964
12965 * xfns.c (Qhbar): New variable.
12966 (syms_of_xfns): Intern and staticpro it.
12967 (x_specified_cursor_type): Handle `hbar' cursor.
12968
12969 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
12970 not defined.
12971
129722002-04-18 Richard M. Stallman <rms@gnu.org>
12973
12974 * textprop.c (remove_properties): New arg LIST allows scanning
12975 either a list or a plist.
12976 (interval_has_some_properties_list): New function, like
12977 interval_has_some_properties using list instead of plist.
12978 All callers changed.
12979 (Fremove_list_of_text_properties): New function.
12980 (syms_of_textprop): Defsubr it.
12981
129822002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12983
12984 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
12985
129862002-04-17 Juanma Barranquero <lektu@terra.es>
12987
12988 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
12989
129902002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12991
12992 * window.c (coordinates_in_window): Don't report on margin area
12993 if its width is zero.
12994
129952002-04-16 Jason Rumney <jasonr@gnu.org>
12996
12997 * w32fns.c (Fx_file_dialog): Decode file name before using.
12998
12999 * w32term.c (construct_drag_n_drop): Likewise.
13000
130012002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
13002
13003 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
13004 store load-history in pure space.
13005
13006 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
13007
130082002-04-16 Stefan Monnier <monnier@cs.yale.edu>
13009
13010 * xterm.c (Qlatin_1, Qutf_8): New vars.
13011 (syms_of_xterm): Initialize them.
13012 (XTread_socket): Eliminate incorrect optimization that tried to avoid
13013 decoding the output of X*LookupString.
13014 Always use latin-1 to decode the output of XLookupString.
13015 Try Xutf8LookupString if XmbLookupString failed.
13016
13017 * region-cache.c (new_region_cache): Use BEG.
13018
130192002-04-16 Gerd Moellmann <gerd@gnu.org>
13020
13021 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
13022 configuration files.
13023 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
13024 returns 0.
13025
130262002-04-15 Andreas Schwab <schwab@suse.de>
13027
13028 * config.in: Regenerated using autoheader.
13029
13030 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
13031 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
13032 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
13033 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
13034 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
13035 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
13036 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
13037 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
13038 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
13039 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
13040 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
13041 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
13042 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
13043 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
13044 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
13045 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
13046 STACK_DIRECTION, now set by autoconf.
13047
130482002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13049
13050 * dispnew.c (marginal_area_string): Sort arguments.
13051
13052 * dispextern.h (marginal_area_string): Add prototype.
13053
130542002-04-13 Richard M. Stallman <rms@gnu.org>
13055
13056 * fileio.c (Finsert_file_contents):
13057 Don't call temp_output_buffer_setup--do just part, by hand.
13058
13059 * coding.c (run_pre_post_conversion_on_str):
13060 Don't call temp_output_buffer_setup--do just part, by hand.
13061
13062 * keyboard.c (command_loop_1): Don't call start_hourglass
13063 or cancel_hourglass when executing a macro.
13064
13065 * marker.c (count_markers): New function.
13066
13067 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
13068 grow without limit. Move recently used elements to the front.
13069
130702002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
13071
13072 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
13073
130742002-04-12 Gerd Moellmann <gerd@gnu.org>
13075
13076 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
13077 rows marginal areas.
13078 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
13079 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
13080
13081 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
13082
130832002-04-12 Dave Love <fx@gnu.org>
13084
13085 * dispnew.c (marginal_area_string): New.
13086
13087 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
13088 (Qleft_margin, Qright_margin): Declare.
13089 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
13090
13091 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
13092 note_mode_line_highlight and extended.
13093
13094 * keyboard.c (Qleft_margin, Qright_margin): Declare.
13095 (make_lispy_event): Deal with mouse events in margins.
13096
130972002-04-12 Stefan Monnier <monnier@cs.yale.edu>
13098
13099 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
13100
13101 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
13102 than deactivating the mark if tmm is set to `lambda'.
13103 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
13104 Use a single event for HELP_EVENT.
13105 (Fexecute_extended_command): Save last_point_position.
13106
131072002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13108
13109 * lisp.h (Fpropertize): Add prototype.
13110
13111 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
13112
131132002-04-10 Colin Walters <walters@verbum.org>
13114
13115 * config.in: Add HAVE_SHARED_GAME_DIR.
13116
13117 * callproc.c: (Vgame_score_directory): New variable.
13118 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
13119
131202002-04-10 Richard M. Stallman <rms@gnu.org>
13121
13122 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
13123
131242002-04-09 Stefan Monnier <monnier@cs.yale.edu>
13125
13126 * minibuf.c (read_minibuf): Use empty_string.
13127 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
13128 Short-circuit the search as soon as it "failed".
13129 (Fall_completions): Allow lambda forms and lists of strings for alist.
13130 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
13131 when require_match is nil.
13132 (Ftest_completion): Rename from `test_completion' and export to elisp.
13133 Call the predicate also when alist is a list.
13134 Obey Vcompletion_regexp_list.
13135 (do_completion, Fminibuffer_complete_and_exit): Use it.
13136 (Fassoc_string): Rename from `assoc_for_completion'.
13137 Allow list of strings as well and export to elisp.
13138
131392002-04-08 Stefan Monnier <monnier@cs.yale.edu>
13140
13141 * puresize.h (BASE_PURESIZE): Increase to 900KB.
13142
131432002-04-08 Juanma Barranquero <lektu@terra.es>
13144
13145 * w32.c (sys_accept): Don't hide variable `s'.
13146
131472002-04-05 Gerd Moellmann <gerd@gnu.org>
13148
13149 * callint.c (Fcall_interactively): Use INTEGERP instead of
13150 NUMBERP for checking Vhistory_length.
13151
131522002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13153
13154 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
13155 Doc fix to reflect it.
13156
131572002-04-04 Richard M. Stallman <rms@gnu.org>
13158
13159 * xdisp.c (display_mode_element): New arg RISKY.
13160 Disregard text props found or specified within a variable
13161 that isn't marked risky-local-variable.
13162 (Qrisky_local_variable): New variable.
13163 (syms_of_xdisp): Init and staticpro it.
13164
131652002-04-04 Stefan Monnier <monnier@cs.yale.edu>
13166
13167 * undo.c (record_point): New fun.
13168 (record_delete, record_insert): Use it.
13169
131702002-04-03 Juanma Barranquero <lektu@terra.es>
13171
13172 * doc.c (Fdocumentation): Add missing parentheses.
13173 (Fdocumentation_property): Likewise.
13174
131752002-04-03 Stefan Monnier <monnier@cs.yale.edu>
13176
13177 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
13178 data is 0, just return nil.
13179
131802002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
13181
13182 * msdos.c (syms_of_msdos): Fix last change with
13183 mouse_autoselect_window.
13184
131852002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13186
13187 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
13188 mouse_autoselect_window.
13189
131902002-04-02 Stefan Monnier <monnier@cs.yale.edu>
13191
13192 * keyboard.c (make_lispy_event): Handle unknown keysyms together
13193 with system-specific keysyms. Use it also for unknown function keys.
13194
13195 * doc.c (reread_doc_file): Return whether reload was attempted.
13196 (Fdocumentation, Fdocumentation_property): Don't try to reload
13197 if the doc is 0 and only ask once.
13198
13199 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
13200
132012002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
13202
13203 * keyboard.c (read_char): If the event was Qselect_window,
13204 restore timer_idleness_start_time to its previous value.
13205
13206 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
13207
132082002-04-01 Stefan Monnier <monnier@cs.yale.edu>
13209
13210 * region-cache.c (new_region_cache): Use BEG.
13211
13212 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
13213 Use BEG and BEG_BYTE.
13214
13215 * doc.c (get_doc_string): Return nil if the location is wrong.
13216 (reread_doc_file): New fun.
13217 (Fdocumentation, Fdocumentation_property):
13218 Call it if get_doc_string fails.
13219 (Fsnarf_documentation): Make it work for a dumped Emacs.
13220
13221 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
13222 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
13223
13224 * charset.c (Fstring): Allow 0 arguments.
13225
13226 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
13227
13228 * process.c (DATAGRAM_CONN_P, list_processes_1)
13229 (Fprocess_datagram_address, Fset_process_datagram_address)
13230 (Fset_network_process_options, server_accept_connection):
13231 Fix some int/Lisp_Object confusions (thank you union types).
13232
132332002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13234
13235 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
13236
13237 * w32term.c: Likewise.
13238 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
13239
13240 * keyboard.c (Qselect_window): New symbol.
13241 (head_table): Use it.
13242 (keys_of_keyboard): Bound select-window event to handle-select-window.
13243 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
13244
13245 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
13246 (last_window): New variable.
13247 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
13248 (note_mouse_movement): Remove reimplemented code in #if 0.
13249 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
13250 Emacs windows.
13251
13252 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
13253
132542002-03-31 Gerd Moellmann <gerd@gnu.org>
13255
13256 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
13257 Callers changed.
13258
132592002-03-30 Richard M. Stallman <rms@gnu.org>
13260
13261 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
13262 loop whenever it stops making progress.
13263
13264 * widget.c (set_frame_size): Don't call change_frame_size.
13265
132662002-03-30 Gerd Moellmann <gerd@gnu.org>
13267
13268 * dispnew.c (direct_output_for_insert):
13269 Call mark_window_display_accurate.
13270
132712002-03-29 Jason Rumney <jasonr@gnu.org>
13272
13273 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
13274
132752002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
13276
13277 * Makefile.in (lread.o): Depend on coding.h.
13278
13279 * lread.c (openp, Fload): Encode the file name before passing it
13280 to `stat', `access', and `emacs_open'.
13281 (openp): GCPRO the encoded file name. Don't recompute Lisp
13282 strings unnecessarily.
13283
132842002-03-29 Kim F. Storm <storm@cua.dk>
13285
13286 * fns.c (Flax_plist_put): Doc fix.
13287
132882002-03-28 Miles Bader <miles@gnu.org>
13289
13290 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
13291
132922002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13293
13294 * process.c (set-network-process-options): Add usage.
13295 (make-network-process): Doc fix.
13296
132972002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
13298
13299 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
13300
133012002-03-26 Richard M. Stallman <rms@gnu.org>
13302
13303 * fns.c (Fsubstring_no_properties): New function.
13304 (Flax_plist_get, Flax_plist_put): New functions.
13305 (syms_of_fns): defsubr them.
13306
13307 * xdisp.c (update_menu_bar): Test only update_mode_lines;
13308 don't test or alter w->update_mode_line.
13309
13310 * window.c (Fdisplay_buffer): Doc fix.
13311
133122002-03-24 Richard M. Stallman <rms@gnu.org>
13313
13314 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
13315
133162002-03-24 Gerd Moellmann <gerd@gnu.org>
13317
13318 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
13319 (Fdefmacro): Handle `(declare ...)'.
13320 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
13321 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
13322
133232002-03-24 Jason Rumney <jasonr@gnu.org>
13324
13325 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
13326 (xbm_file_p): Add prototypes.
13327 (xbm_format, xbm_image_p): Sync with xfns.c.
13328 (reflect_byte): New function.
13329 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
13330 (xbm_load_image): Create bitmaps with a depth of 1.
13331 (init_xfns): Enable XBM images.
13332
133332002-03-23 Jason Rumney <jasonr@gnu.org>
13334
13335 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
13336 correctly. Do not pass up_modifier to keyboard buffer.
13337
13338 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
13339
133402002-03-22 Stefan Monnier <monnier@cs.yale.edu>
13341
13342 * Makefile.in (bootstrapclean): New target.
13343 (bootstrap-temacs, bootstrap-doc): Remove.
13344 (bootstrap-emacs): Use a bog-standard `temacs'.
13345 Don't bother to build a DOC file.
13346
13347 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
13348
13349 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
13350 in temacs even if !CANNOT_DUMP.
13351 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
13352
13353 * alloc.c (check_pure_size): Only output a warning.
13354
133552002-03-22 Jason Rumney <jasonr@gnu.org>
13356
13357 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
13358 supported.
13359
13360 * w32term.c (zv_bits): Declare as short, for word alignment.
13361 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
13362 (syms_of_w32term): Define x-use-underline-position-properties.
13363
13364 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
13365 (clear_image_cache): Block input, fix logic, clear matrices in
13366 all frames that share this cache.
13367
133682002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
13369
13370 * emacs.c (main): Update the Copyright year in the blurb printed
13371 by "emacs --version".
13372
13373 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
13374
13375 * xterm.c (XTread_socket): If XK_ISO_Lock and
13376 XK_ISO_Last_Group_Lock are defined, handle keysyms between
13377 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
13378
133792002-03-21 Kim F. Storm <storm@cua.dk>
13380
13381 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
13382 menu-bar bindings in keymap and local-map properties _are_ used.
13383 But try keymap property first in accordance with 2002-01-03 patch.
13384 Added comment describing why this is not always reliable.
13385 (tool_bar_items): Ditto for tool-bar.
13386
133872002-03-21 Jason Rumney <jasonr@gnu.org>
13388
13389 * w32fns.c (x_clear_image_1): Disable color table code.
13390
133912002-03-21 Kim F. Storm <storm@cua.dk>
13392
13393 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
13394 removed the wrong version of the DEFUN macro; fixed it.
13395
13396 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
13397 Fmember rather than Fmemq).
13398 (Fprovide): Check that subfeatures is a list.
13399
13400 * process.c (QCfeature, QCdatagram): Removed variables.
13401 (QCtype, Qdatagram): New variables.
13402 (network_process_featurep): Removed function.
13403 (Fmake_network_process): Removed :feature check.
13404 Use :type 'datagram instead of :datagram t to create a datagram
13405 socket. This allows us to add other connection types (e.g. raw
13406 sockets) later in a consistent manner.
13407 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
13408 supported subfeatures for feature make-network-process.
13409 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
13410 Intern and staticpro QCtype and Qdatagram.
13411 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
13412
13413 * xfns.c: (QCtype): Remove duplicate declaration and
13414 initialization (is now declared in process.c).
13415
13416 * w32fns.c: (QCtype): Remove duplicate declaration and
13417 initialization (is now declared in process.c).
13418
134192002-03-21 Richard M. Stallman <rms@gnu.org>
13420
13421 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
13422 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
13423 when jumping to `fail' to avoid undoing reg changes in the
13424 last iteration of the loop.
13425 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
13426
13427 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
13428 Depend on process.h.
13429
134302002-03-20 Jason Rumney <jasonr@gnu.org>
13431
13432 Most of the following changes are still conditional on HAVE_IMAGES
13433 which is not set by default on Windows.
13434
13435 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
13436
13437 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
13438 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
13439 (four_corners_best, x_clear_image_1, x_clear_image)
13440 (x_alloc_image_color, postprocess_image)
13441 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
13442 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
13443 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
13444
13445 * w32gui.h (struct XImage): Define.
13446
13447 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
13448 extract mouse co-ordinates.
13449
134502002-03-20 Jason Rumney <jasonr@gnu.org>
13451
13452 * w32.c (init_winsock): Dynamically load new server and UDP
13453 socket functions.
13454 (socket_to_fd): New function.
13455 (sys_socket): Use it.
13456 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
13457 (sys_recvfrom, sys_sendto): New wrapper functions.
13458
13459 * process.c (QCfamily, QCfilter): Remove duplicate declaration
13460 and initialization.
13461
13462 * makefile.w32-in (LIBS): Remove $(WSOCK32).
13463
134642002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
13465
13466 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
13467 Don't use "sun" as a variable, it's a predefined constant on Sun
13468 machines.
13469
134702002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13471
13472 * bytecode.c (Fbyte_code): Revert last change.
13473
134742002-03-19 Kim F. Storm <storm@cua.dk>
13475
13476 * makefile.w32-in (LIBS): Add $(WSOCK32).
13477 From David Ponce <dponce@voila.fr>.
13478
134792002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13480
13481 * process.c (wait_reading_process_input): Move variables `pname'
13482 and `pnamelen' down where they are used.
13483
13484 * bytecode.c (Fbyte_code): Discard unused computed value to
13485 prevent gcc warning.
13486
13487 * lisp.h (Fplist_member): Add prototype.
13488
134892002-03-18 Kim F. Storm <storm@cua.dk>
13490
13491 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
13492 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
13493
13494 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
13495 Remove explicit GNU_LINUX settings for datagram support.
13496
134972002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13498
13499 * process.c (Fmake_network_process): Remove unused variable `sa'.
13500 Doc fix. Add usage:.
13501 (set_socket_options): Remove unused variables `optnum' and `opttype'.
13502
135032002-03-17 Richard M. Stallman <rms@gnu.org>
13504
13505 * xdisp.c (cursor_type_changed): New variable.
13506 (redisplay_internal): Redisplay all windows if cursor_type_changed.
13507 Clear it when clearing windows_or_buffers_changed.
13508 (try_cursor_movement, redisplay_window, try_window_id)
13509 (try_window_reusing_current_matrix): Test cursor_type_changed
13510 along with windows_or_buffers_changed.
13511
13512 * window.h (cursor_type_changed): New variable.
13513
13514 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
13515 not update_mode_lines, and always set it to 1.
13516
13517 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
13518 if no frames needed redrawing.
13519
135202002-03-17 Kim F. Storm <storm@cua.dk>
13521
13522 The following changes add support for network server processes,
13523 datagram connections, and local (unix) sockets.
13524
13525 * process.h (struct Lisp_Process): New member log.
13526 Doc fix: Member command used to indicate stopped network process.
13527 Doc fix: Member childp contains plist for network process.
13528 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
13529
13530 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
13531 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
13532 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
13533 New variables.
13534 (NETCONN1_P): New macro.
13535 (DATAGRAM_SOCKETS): New conditional symbol.
13536 (datagram_address): New array.
13537 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
13538 (status_message): Use concat3.
13539 (Fprocess_status): Add `listen' status to doc string. Return `stop'
13540 for a stopped network process.
13541 (Fset_process_buffer): Update contact plist for network process.
13542 (Fset_process_filter): Ditto. Don't enable input for stopped
13543 network processes. Server must listen, even if filter is t.
13544 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
13545 New functions.
13546 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
13547 (Fprocess_contact): Added KEY argument. Handle datagrams.
13548 (list_processes_1): Optionally show only processes with the query
13549 on exit flag set. Dynamically adjust column widths. Omit tty
13550 column if not needed. Report stopped network processes.
13551 Identify server and datagram network processes.
13552 (Flist_processes): New optional arg `query-only'.
13553 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
13554 (conv_lisp_to_sockaddr, set_socket_options)
13555 (network_process_featurep, unwind_request_sigio): New helper functions.
13556 (Fprocess_datagram_address, Fset_process_datagram_address):
13557 (Fset_network_process_options): New lisp functions.
13558 (Fopen_network_stream): Removed. Now defined in simple.el.
13559 (Fmake_network_process): New lisp function. Code is based on previous
13560 Fopen_network_stream, but heavily reworked with new property list based
13561 argument list, support for datagrams, server processes, and local
13562 sockets in addition to old client-only functionality.
13563 (server_accept_connection): New function.
13564 (wait_reading_process_input): Use it to handle incoming connects.
13565 Do not enable input on a new connection if process is stopped.
f63fd14e 13566 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
13567 (send_process): Handle datagram sockets.
13568 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
13569 network process is indicated by setting command field to t .
13570 (Fprocess_send_eof): No-op if datagram connection.
13571 (Fstatus_notify): Don't read input for a stream server socket or a
13572 stopped network process.
13573 (init_process): Initialize datagram_address array.
13574 (syms_of_process): Intern and staticpro new variables, defsubr new
13575 functions.
13576
135772002-03-16 Jason Rumney <jasonr@gnu.org>
13578
13579 * w32fns.c (w32_to_all_x_charsets): Return correct type in
13580 startup case.
13581
135822002-03-16 Richard M. Stallman <rms@gnu.org>
13583
13584 * xdisp.c (redisplay_internal, redisplay_windows):
13585 Use list_of_error to call internal_condition_case_1.
13586 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
13587 so as to catch all errors with no possibility of debugger redisplay.
13588 (list_of_error): New variable.
13589 (syms_of_xdisp): Init and staticpro it.
13590
13591 * print.c (print_object): Delete `\ ' from printed rep of frame.
13592
135932002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
13594
13595 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
13596 until its implementation is fixed.
13597
135982002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13599
13600 * xfns.c (png_load): Remove unused variable `gamma_str'.
13601
136022002-03-14 Richard M. Stallman <rms@gnu.org>
13603
13604 * xfns.c (x_real_positions): Handle failure in XQueryTree.
13605
136062002-03-14 Miles Bader <miles@gnu.org>
13607
13608 * intervals.c (adjust_for_invis_intang): New function.
13609 (set_point_both): Use `adjust_for_invis_intang' to do most of the
13610 work for dealing with invisible+intangible regions. Do so before
13611 and after both forward and backward movements, to handle both
13612 front-sticky and rear-sticky cases.
13613 * textprop.c (text_property_stickiness): Function moved here from
13614 `editfns.c'.
13615 * intervals.h (text_property_stickiness): New declaration.
13616 * editfns.c (char_property_eq): Function removed.
13617 (text_property_stickiness): Function moved to `textprop.c'.
13618
136192002-03-13 Jason Rumney <jasonr@gnu.org>
13620
13621 * config.in: Add STRFTIME_NO_POSIX2.
13622
13623 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
13624 and %OX when underlying strftime does not.
13625
136262002-03-13 Stefan Monnier <monnier@cs.yale.edu>
13627
13628 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
13629 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
13630 line) to avoid annoying flicker.
13631 (xm_scroll_callback): Get rid of the now unnecessary kludge.
13632 (XTread_socket): Mark it static.
13633
13634 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
13635
136362002-03-13 Kim F. Storm <storm@cua.dk>
13637
13638 * puresize.h (BASE_PURESIZE): Increase to 775000.
13639
136402002-03-12 Juanma Barranquero <lektu@terra.es>
13641
13642 * editfns.c (syms_of_editfns): Fix typo.
13643
136442002-03-12 Gerd Moellmann <gerd@gnu.org>
13645
13646 * xsmfns.c: Include stdio.h because termhooks.h needs it.
13647 Include termopt.h for interrupt_input.
13648
136492002-03-11 Andreas Schwab <schwab@suse.de>
13650
13651 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
13652
136532002-03-11 Gerd Moellmann <gerd@gnu.org>
13654
13655 * xterm.c (note_mouse_movement): Put code for
13656 x_autoselect_window_p in #if 0.
13657
13658 * lread.c (Fload): Don't assume that message_with_string uses the
13659 string it is given like a C string.
13660
136612002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13662
78819ebb 13663 * xterm.h (x_session_check_input, x_session_initialize): Declare.
048addec
JD
13664
13665 * xterm.c: (XTread_socket): Add call to x_session_check_input and
13666 x_session_have_connection.
13667 (x_initialize): Add call to x_session_initialize.
13668
13669 * termhooks.h (enum event_kind): Add save_session_event.
13670
13671 * keyboard.c: Add Emacs event save_session_event.
13672
13673 * emacs.c (main): Add call to syms_of_xsmfns.
13674
78819ebb 13675 * lisp.h (syms_of_xsmfns): Declare extern.
048addec
JD
13676
13677 * config.in: Add HAVE_X_SM.
13678
13679 * Makefile.in (LIBXT): Add -lSM -lICE
13680 if HAVE_X_SM and not USE_X_TOOLKIT.
13681 (XOBJ): New file xsmfns.c added.
13682
13683 * xsmfns.c: New file for X session management.
13684
136852002-03-09 Jason Rumney <jasonr@gnu.org>
13686
13687 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
13688 read-only when setting modified time.
13689
136902002-03-08 Gerd Moellmann <gerd@gnu.org>
13691
13692 * xdisp.c (move_it_vertically_backward): At the end of the function,
13693 when moving forward by lines, treat terminal frames specially.
13694
13695 * keyboard.c (echo_char): Make sure to add a separator between
13696 keys even if echo_dash hasn't been called.
13697
13698 * xdisp.c: Use new string macros.
13699 (update_echo_area): Pass number of bytes to message3 instead of
13700 number of chars.
13701 (set_message_1): Don't access a string's size_byte directly.
13702 (decode_mode_spec_coding): Use number of bytes of eoltype string
13703 instead number of chars.
13704
13705 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
13706
137072002-03-08 Juanma Barranquero <lektu@terra.es>
13708
13709 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
13710 24-bit.
13711
137122002-03-06 Jason Rumney <jasonr@gnu.org>
13713
13714 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
13715
137162002-03-06 Gerd Moellmann <gerd@gnu.org>
13717
13718 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
13719 (cancel_echoing, echo_length, echo_truncate): Changed to
13720 work with new kboard definition.
13721 (echo_now): Use message3_nolog instead of message2_nolog.
13722
13723 * alloc.c (mark_kboards): Mark echo_string.
13724
13725 * keyboard.h (ECHOBUFSIZE): Removed.
13726 (struct kboard): Member echoptr removed, member echobuf renamed
13727 to echo_string.
13728
13729 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
13730 message3 instead of message2 to display the message using STRING's
13731 text properties.
13732
137332002-03-05 Andreas Schwab <schwab@suse.de>
13734
13735 * xdisp.c (hscroll_margin): Change to EMACS_INT.
13736
137372002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
13738
13739 * frame.c (default-frame-alist): Explain that setting it doesn't
13740 affect existing frames.
13741
137422002-03-05 Stefan Monnier <monnier@cs.yale.edu>
13743
13744 * indent.c (skip_invisible): Fix my brain fart.
13745
13746 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
13747
137482002-03-04 Stefan Monnier <monnier@cs.yale.edu>
13749
13750 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
13751 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
13752 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
13753 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
13754 and variables to use EMACS_INT instead of just int.
13755
13756 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
13757
137582002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
13759
13760 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
13761 environment, pass it down with corrected value.
13762
137632002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13764
13765 * lread.c (read_filtered_event): Do not call start_hourglass
13766 before returning.
13767
137682002-03-04 Juanma Barranquero <lektu@terra.es>
13769
13770 * w32term.c (x_display_and_set_cursor): Fix typo.
13771
137722002-03-03 Richard M. Stallman <rms@gnu.org>
13773
13774 * fileio.c (Fmake_temp_name): Doc fix.
13775
137762002-03-03 Gary Wong <gtw@gnu.org>
13777
13778 * termcap.c [!emacs]: Replace ospeed for building standalone
13779 libtermcap, for binary compatibility.
13780
13781 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
13782
137832002-03-03 Richard M. Stallman <rms@gnu.org>
13784
13785 * xrdb.c (file_p): Rename arg `path' to `filename'.
13786
13787 * abbrev.c (Fexpand_abbrev): Increment plist as use count
13788 only if it is an integer.
13789
13790 * xfns.c (png_load): Set screen_gamma based on f->gamma.
13791 If png_get_sRGB gives an answer, call png_set_gamma
13792 using the default image gamma value.
13793
13794 * lread.c (read1): When reading from a file, default string to
13795 multibyte only if it has some multibyte characters.
13796
13797 * print.c (print_object): Output multibyte chars 128...255
13798 using \x even if ! print_escape_multibyte.
13799
13800 * xdisp.c (display_mode_element): Move the places where
13801 bytepos, charpos, this, and lisp_string are set.
13802 Use lisp_string to set bytepos.
13803
13804 * xdisp.c (redisplay_internal):
13805 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
13806
13807 * xdisp.c (display_mode_element): Merge properties specified with
13808 :propertize onto those that come with the string.
13809
138102002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
13811
13812 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
13813 automatic-hscrolling. Users changed.
13814 <hscroll-margin>: Renamed from automatic-hscroll-margin.
13815 Users changed.
13816 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
13817
138182002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
13819
13820 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
13821
138222002-03-02 Kim F. Storm <storm@cua.dk>
13823
13824 * window.c (Fminibuffer_selected_window): New function.
13825 (syms_of_window): Defsubr it.
13826
138272002-03-01 Kim F. Storm <storm@cua.dk>
13828
13829 * window.h (struct window): New member phys_cursor_width.
13830
13831 * window.c (make_window, replace_window): Init phys_cursor_width.
13832
13833 * xterm.c (x_display_and_set_cursor): Blink box cursor using
13834 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
13835
13836 * w32term.c (x_display_and_set_cursor): Blink box cursor using
13837 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
13838
13839 * lisp.h (GCPRO6): New macro.
13840
13841 * process.c (Fopen_network_stream): Use GCPRO6.
13842
138432002-03-01 Kim F. Storm <storm@cua.dk>
13844
13845 * process.c (Qconnect, Qfailed): New variables.
13846 (syms_of_process): Intern and staticpro them.
13847 (Fprocess_status): Document connect and failed return values.
13848 [NON_BLOCKING_CONNECT]: New conditional.
13849 (connect_wait_mask, num_pending_connects): New variables.
13850 (status_message): Convert Qfailed status.
13851 (Fopen_network_stream): Added support for non-blocking connect.
13852 New optional args: filter, sentinel, non_blocking. Doc updated.
13853 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
13854 (deactivate_process): Handle pending non-blocking connect.
13855 (wait_reading_process_input): Poll for status of non-blocking
13856 connects. Exec sentinel directly when connect succeeds.
13857 (status_notify): Don't read process output if not yet connected.
13858
138592002-02-28 Kim F. Storm <storm@cua.dk>
13860
13861 * window.c: (minibuf_selected_window): Renamed from
13862 Vminibuf_selected_window. Users changed.
13863 (syms_of_window): Staticpro it.
13864
138652002-02-26 Kim F. Storm <storm@cua.dk>
13866
13867 The following changes add a new Vminibuf_selected_window variable
13868 which is similar to Vminibuf_scroll_window, but which is only set
13869 on entry to the minibuffer (from a non-minibuffer window):
13870
13871 * window.c: (Vminibuf_selected_window): New variable.
13872 (struct save_window_data): New member minibuf_selected_window.
13873 (Fset_window_configuration): Restore Vminibuf_selected_window.
13874 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
13875 Set minibuf_scroll_window member to nil if minibuf_level is 0.
13876 (compare_window_configurations): Compare minibuf_selected_window.
13877
13878 * window.h: (Vminibuf_selected_window): Declare extern.
13879
13880 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
13881 entry to minibuffer or on entry from a non-minibuffer window.
13882
13883 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
13884 Vminibuf_selected_window instead of Vminibuf_scroll_window.
13885
13886 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
13887 instead of Vminibuf_scroll_window when deciding in which window
13888 the region should be highlighted. Consequently, the region remains
13889 highlighteded even when a completion buffer is also displayed.
13890
138912002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
13892
13893 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
13894
13895 * xselect.c (Qcompound_text_with_extensions): Renamed from
13896 Qcompound_text_no_extensions.
13897 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
13898
138992002-02-26 Juanma Barranquero <lektu@terra.es>
13900
13901 * w32proc.c (syms_of_ntproc): Doc fix.
13902
139032002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13904
13905 * intervals.h: Include "dispextern.h" unconditionally.
13906
139072002-02-24 Jason Rumney <jasonr@gnu.org>
13908
13909 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
13910 and disp-table.elc.
13911 (lisp): Add emacs-lisp/backquote.elc.
13912
139132002-02-24 Kim F. Storm <storm@cua.dk>
13914
13915 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
13916 The validation of the event type was too strict as it didn't
13917 allow string events; buffer names are used in bindings for
13918 menu-bar-select-buffer (see `menu-bar-update-buffers').
13919
139202002-02-23 Kim F. Storm <storm@cua.dk>
13921
13922 The following changes rework my patch of 2002-02-06 which
13923 added command remapping by entering the commands directly into
13924 the keymaps. Now, command remapping uses an explicit `remap'
13925 prefix in the keymaps, i.e. [remap COMMAND].
13926
13927 * keymap.c (Qremap, remap_command_vector): New variables.
13928 (is_command_symbol): Removed function.
13929 (Fdefine_key): No longer accept a symbol for KEY.
13930 Added validation of [remap COMMAND] argument for KEY.
13931 The DEF is no longer required to be a symbol when remapping a command.
13932 (Fremap_command): New function to remap command through keymaps.
13933 (Flookup_key): Perform command remapping initiated by
13934 Fremap_command directly for speed.
13935 (Fkey_binding): Use Fremap_command for command remapping.
13936 (where_is_internal): Handle new command remapping representation.
13937 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
13938 staticpro them. Defsubr Fremap_command.
13939
13940 * keymap.h (Fremap_command): Declare extern.
13941 (is_command_symbol): Remove extern.
13942
13943 * keyboard.c (command_loop_1): Use Fremap_command for command
13944 remapping; now try command remapping for all symbols.
13945
139462002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13947
13948 * coding.h (run_pre_post_conversion_on_str): Add prototype.
13949
139502002-02-23 Jason Rumney <jasonr@gnu.org>
13951
13952 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
13953 on the string before encoding it.
13954 (Fw32_get_clipboard_data): Run post-read-conversion on the string
13955 after decoding it.
13956
13957 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
13958
139592002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13960
13961 * w32term.c (enter_timestamp): Remove unused static variable to
13962 prevent warning.
13963
13964 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
13965
139662002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13967
13968 * w16select.c (Fw16_get_clipboard_data): Fix last change.
13969
13970 * xselect.c (selection_data_to_lisp_data): Fix last change.
13971
139722002-02-22 Jason Rumney <jasonr@gnu.org>
13973
13974 * w32term.h (struct w32_output): New member menu_command_in_progress.
13975
13976 * w32menu.c (menubar_selection_callback): Free the menu and
13977 clear the menu_command_in_progress flag.
13978
13979 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
13980 (menu_free_timer): New variable.
13981 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
13982 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
13983 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
13984 menu command is in progress.
13985 <WM_COMMAND>: Set the menu_command_in_progress flag.
13986 Kill any menu_free_timer that is running.
13987
13988 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
13989 Call ExtTextOutA rather than ExtTextOut.
13990
139912002-02-22 Eli Zaretskii <eliz@gnu.org>
13992
13993 * puresize.h (BASE_PURESIZE): Increase to 755000.
13994
139952002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13996
13997 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
13998 on the string before encoding it.
13999 (Fw16_get_clipboard_data): Run post-read-conversion on the string
14000 after decoding it.
14001
140022002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
14003
14004 Support for ICCCM Extended Segments in X selections:
14005
14006 * xselect.c <Qcompound_text_no_extensions>: New variable.
14007 (syms_of_xselect): Intern and staticpro it.
14008 (selection_data_to_lisp_data): Run post-read-conversion on decoded
14009 selection text.
14010 (lisp_data_to_selection_data): If next-selection-coding-system is
14011 compound-text-no-extensions, set the type of selection to be
14012 compound-text.
14013
14014 * xterm.h (x_encode_text): Update prototype.
14015
14016 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
14017 callers changed. If SELECTIONP is non-zero, run the
14018 pre-write-conversion function before encoding the selection text.
14019
140202002-02-21 Kim F. Storm <storm@cua.dk>
14021
14022 * frame.c (syms_of_frame): Change mouse-highlight default to t.
14023
14024 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
14025 Correct composing of language-change event.
14026
140272002-02-20 Kim F. Storm <storm@cua.dk>
14028
14029 * keyboard.c (menu_bar_items): Don't include keymap or local-map
14030 bindings at PT when building menu (the menu is not updated often
14031 enough for this to work reliable).
14032 (tool_bar_items): Likewise.
14033 (current_active_maps): Removed unused (and buggy) function.
14034
140352002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14036
14037 * xfns.c (gif_load): Use correct width and height for GIF images.
14038
140392002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
14040
14041 * floatfns.c (Fatan): Accept an optional second arg and call
14042 atan2 if passed 2 args.
14043
140442002-02-18 Jason Rumney <jasonr@gnu.org>
14045
14046 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
14047
140482002-02-17 Jason Rumney <jasonr@gnu.org>
14049
14050 * w32term.c (x_autoselect_window_p): New variable.
14051 (syms_of_w32term): DEFVAR_BOOL and initialize it.
14052 (note_mouse_movement): Use it.
14053
14054 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
14055
14056 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
14057
14058 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
14059 New variables.
14060 (syms_of_w32fns): Intern and staticpro them.
14061 (x_frame_parms) <"fullscreen">: New parameter.
14062 (x_fullscreen_move, x_set_fullscreen): New functions.
14063 (x_set_frame_parameters): Support Qfullscreen.
14064 (x_real_positions): Save x/y_pixels_diff frame params.
14065 (x_figure_window_size): Support full-screen frames.
14066 (Fx_create_frame): Default the fullscreen parameter.
14067
14068 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
14069 (x_fullscreen_adjust): New functions.
14070 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
14071 fullscreen. Call x_check_fullscreen_move, and set the
14072 want_fullscreen member of output_data.w32
14073 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
14074
14075 * w32term.h: New enum for FULLSCREEN_* constants.
14076 (struct w32_output): New members want_fullscreen, x_pixels_diff,
14077 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
14078 (x-fullscreen-adjust): New prototype.
14079
140802002-02-17 Kim F. Storm <storm@cua.dk>
14081
14082 * frame.c: (Vmouse_highlight): New variable.
14083 (syms_of_frame): DEFVAR_LISP it.
14084
14085 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 14086
048addec 14087 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 14088
048addec
JD
14089 * xterm.c (disable_mouse_highlight): Removed variable.
14090 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
14091 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
14092 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
14093 and on after keyboard input.
14094 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 14095
048addec 14096 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 14097
048addec
JD
14098 * msdos.c (disable_mouse_highlight): Removed variable.
14099 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
14100 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
14101 (internal_terminal_init): Initialize mouse_face_hidden.
14102 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
14103 and on after keyboard input.
4f1b1854 14104
048addec 14105 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 14106
048addec
JD
14107 * w32term.c (disable_mouse_highlight): Removed variable.
14108 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
14109 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
14110 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
14111 and on after keyboard input.
14112 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 14113
048addec 141142002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 14115
048addec
JD
14116 * msdos.c (last_mouse_window): New variable.
14117 (dos_rawgetc): Fix last change--if the mouse is in the same window
14118 as recorded in last_mouse_window, don't select this window.
5cb6905d 14119
048addec 14120 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 14121
048addec
JD
14122 * msdos.c (x_autoselect_window_p): New variable.
14123 (syms_of_msdos): Defvar it.
14124 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
14125 which the last mouse movement occured, unless it is already selected.
437dfb9f 14126
048addec
JD
14127 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
14128 New variables.
14129 (syms_of_xdisp): DEVFAR them.
14130 (hscroll_window_tree): Use automatic_hscroll_margin and
14131 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 14132
048addec 141332002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 14134
048addec
JD
14135 * xterm.c (x-autoselect-window): New variable.
14136 (note_mouse_movement): Use it.
9f696a00 14137
048addec 14138 * keyboard.c: Do not include "systime.h" twice.
d57966d7 14139
048addec 141402002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 14141
bfa02563 14142 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
d57966d7 14143
048addec 14144 * alloc.c (NSTATICS): Increase to 1280.
74779f52 14145
048addec 141462002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 14147
048addec 14148 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 14149
048addec
JD
14150 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
14151 (Vx_super_keysym): New variables.
14152 (syms_of_xterm): DEFVAR_LISP them.
14153 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
14154 variables to determine which keys to use for the various modifiers.
a474d59c 14155
048addec 141562002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 14157
048addec
JD
14158 * window.c: (Vmode_line_in_non_selected_windows): Removed.
14159 (mode_line_in_non_selected_windows): New variable.
14160 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 14161
048addec
JD
14162 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
14163 Use mode_line_in_non_selected_windows.
14164 (mode_line_in_non_selected_windows): Declare extern.
14165 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 14166
048addec 141672002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 14168
048addec
JD
14169 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
14170 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
14171 (Fclear_this_command_keys): Doc fixes.
2d10309f 14172
048addec
JD
14173 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
14174 (update_face_from_frame_parameter): Increment face_change_count
14175 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 14176
048addec
JD
14177 * xdisp.c (QCpropertize): New variable.
14178 (mode_line_proptrans_alist): New variable.
14179 (display_mode_element): New arg PROPS; all calls changed.
14180 Implement this, for strings.
14181 Handle literal output of strings by sharing the
14182 main-line code for strings, using local var `literal'.
14183 Handle :propertize feature.
14184 (syms_of_xdisp): Initialze and staticpro QCpropertize and
14185 mode_line_proptrans_alist.
0b1e6b54 14186
048addec 141872002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 14188
048addec
JD
14189 * window.c: (Vmode_line_in_non_selected_windows): New variable.
14190 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 14191
048addec
JD
14192 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
14193 (CURRENT_MODE_LINE_FACE_ID): Use it.
14194 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 14195
048addec
JD
14196 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
14197 to get mode line face.
e17144de 14198
048addec 141992002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 14200
048addec
JD
14201 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
14202 variables; cus-start.el doesn't need them anymore.
44368f8f 14203
048addec 142042002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 14205
048addec
JD
14206 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
14207 reduction. This fixes a display problem where stray newlines were
14208 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 14209
048addec 142102002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 14211
048addec 14212 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 14213
048addec 14214 * xdisp.c (display_mode_lines): Fix last change.
453c5510 14215
048addec 142162002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 14217
048addec
JD
14218 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
14219 match each other.
14220 (w32_load_system_font): Prevent Cleartype fonts from loading.
14221 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 14222
048addec 142232002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 14224
048addec
JD
14225 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
14226 (CURRENT_MODE_LINE_HEIGHT): Use it.
14227 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 14228
048addec
JD
14229 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
14230 (pos_visible_p, handle_face_prop): Likewise.
14231 (display_mode_lines): Likewise, but for the real selected window.
14232 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 14233
048addec
JD
14234 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
14235 in non-selected windows.
14236 (realize_basic_faces): Realize it.
14237 (syms_of_term): Intern and staticpro it.
308dd672 14238
048addec 142392002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 14240
048addec
JD
14241 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
14242 Changed mail addresses to emacs-devel@gnu.org.
308dd672 14243
048addec 142442002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 14245
048addec
JD
14246 * fileio.c (Fsubstitute_in_file_name): If the file name includes
14247 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 14248
048addec 14249 * floatfns.c (Fround): Doc fix.
3c1e6b46 14250
048addec 142512002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 14252
048addec 14253 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 14254
048addec 142552002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 14256
048addec 14257 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 14258
048addec 142592002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 14260
048addec
JD
14261 * keymap.c (where_is_internal): Only check whether definition is
14262 remapped if it fulfills is_command_symbol.
0065bb74 14263
048addec 142642002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 14265
048addec 14266 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 14267
048addec 14268 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 14269
048addec 142702002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 14271
048addec
JD
14272 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
14273 defining command remapping. Doc updated.
14274 (Flookup_key): Remap command through keymap if KEY is a symbol.
14275 (is_command_symbol): New function.
14276 (Fkey_binding): Use it. New optional argument NO-REMAP.
14277 Doc updated. Callers changed. Perform command remapping via
14278 recursive call unless that arg is non-nil.
14279 (where_is_internal): New argument no_remap. Callers changed.
14280 Call recursively to find original key bindings for a remapped
14281 comand unless that arg is non-nil.
14282 (Fwhere_is_internal): New optional argument NO-REMAP.
14283 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 14284
048addec
JD
14285 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
14286 (is_command_symbol): Added prototype.
0d8466cc 14287
048addec
JD
14288 * keyboard.c (Vthis_original_command): New variable.
14289 (syms_of_keyboard): DEFVAR_LISP it.
14290 (command_loop_1): Set it, and perform command remapping.
15fff01d 14291
048addec 142922002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 14293
048addec 14294 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 14295
048addec 142962002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 14297
048addec 14298 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 14299
048addec 143002002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 14301
048addec 14302 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 14303
048addec 143042002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 14305
048addec 14306 * filelock.c (S_ISLNK): Define if not defined.
3a232704 14307
048addec 143082002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 14309
048addec 14310 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 14311
048addec
JD
14312 * lread.c (read1): Redesign strategy for force_multibyte and
14313 force_singlebyte. Now is_multibyte records whether read_buffer
14314 is multibyte. Encountering any multibyte character makes it so.
4e02881b 14315
048addec 143162002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 14317
048addec
JD
14318 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
14319 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 14320
048addec 143212002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 14322
048addec
JD
14323 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
14324 latter never being defined on GNU/Linux.
749f499f 14325
048addec 143262002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 14327
048addec
JD
14328 * xfaces.c (realize_default_face): Don't set the weight and slant of
14329 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 14330
048addec 143312002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 14332
048addec
JD
14333 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
14334 Call cancel_hourglass unconditionally.
d0fd26dd 14335
048addec
JD
14336 * eval.c (Fsignal): Remove duplicated declaration of
14337 the variable `display_hourglass_p'.
b4c45162 14338
048addec 143392002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 14340
048addec 14341 * editfns.c (region_limit): Nicer error message.
c95eaa61 14342
048addec
JD
14343 * coding.c (decode_composition_emacs_mule):
14344 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 14345
048addec
JD
14346 * callint.c (check_mark): New arg to specify clearer error message.
14347 Callers changed.
c95eaa61 14348
048addec 143492002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 14350
048addec 14351 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 14352
048addec 143532002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 14354
048addec
JD
14355 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
14356 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
14357 Fix doc-strings.
c95eaa61 14358
048addec 143592002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 14360
048addec 14361 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 14362
048addec
JD
14363 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
14364 and scroll_up_aggressively.
c95eaa61 14365
048addec 143662002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 14367
048addec 14368 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 14369
048addec 143702002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 14371
048addec
JD
14372 * textprop.c (Fnext_property_change, Fnext_single_property_change)
14373 (Fprevious_property_change, Fprevious_single_property_change):
14374 Stay within the narrowed-buffer boundaries.
e2c3786a 14375
048addec 143762002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 14377
048addec
JD
14378 * term.c (Ftty_display_color_cells): New function.
14379 (syms_of_term): Defsubr it.
14380 (Ftty_display_color_cells, Ftty_display_color_p): Change the
14381 argument name to DISPLAY. Doc fix.
bf794306 14382
048addec
JD
14383 * dispextern.h: Add prototype for set_tty_color_mode and
14384 tty_setup_colors.
bf794306 14385
048addec 143862002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 14387
048addec
JD
14388 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
14389 If region left to draw is not what was expected, mark the frame as
14390 garbaged.
62582985 14391
048addec
JD
14392 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
14393 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 14394
048addec 143952002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 14396
048addec
JD
14397 * w32term.c (x_update_window_begin): Only hide caret if
14398 w32_use_visible_system_caret is set.
14399 (x_update_window_end): Only show caret if
14400 w32_use_visible_system_caret is set.
14401 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 14402
048addec 14403 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 14404
048addec 144052002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 14406
048addec
JD
14407 * unexelf.c (unexec): Define n so as to cause compilation error
14408 for the code where people have often written n instead of nn.
1e9a6186 14409
048addec 14410 * .gdbinit (hookpost-run): Defined.
1e9a6186 14411
048addec 144122002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 14413
048addec 14414 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 14415
048addec 144162002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 14417
048addec
JD
14418 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
14419 if fullscreen is being set.
7c75be36 14420
048addec 144212002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 14422
048addec
JD
14423 * minibuf.c (Fminibuffer_contents)
14424 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
14425 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 14426
048addec 144272002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 14428
048addec 14429 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 14430
048addec 144312002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 14432
048addec
JD
14433 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
14434 height before comparison.
14435 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 14436
048addec 144372002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 14438
048addec
JD
14439 * w32term.c (w32_system_caret_width): Remove.
14440 (w32_use_visible_system_caret): New user flag.
14441 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
14442 Windows reports a screen reader running.
14443 (x_update_window_begin): Hide the system caret.
14444 (x_update_window_end): Show the system caret.
14445 (x_display_and_set_cursor): Don't draw a cursor when
14446 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 14447
048addec
JD
14448 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
14449 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
14450 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
14451 the user requests it. Use system default width when creating.
14452 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 14453
048addec
JD
14454 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
14455 New window messages.
905cc05a 14456
048addec 144572002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 14458
048addec 14459 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 14460
048addec 144612002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 14462
048addec 14463 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 14464
048addec 144652002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 14466
048addec 14467 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 14468
048addec 144692002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 14470
048addec
JD
14471 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
14472 that Windows returns. If a double check fails, try to guess how
14473 ExtTextOut is going to act.
4d0fa4f3 14474
048addec
JD
14475 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
14476 in place of stricmp.
14477 (w32_list_synthesized_fonts): Removed.
14478 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
14479 (struct enumfont_t): New element; list.
14480 (enum_font_cb2): List all style and charset variations of a font.
14481 (Fw32_select_font): New optional argument; include_proportional.
14482 Exclude vertical fonts. Exclude proportional fonts unless
14483 include_proportional is non-nil.
14484 (w32_enable_synthesized_fonts): Change to a boolean.
14485 (Fw32_send_sys_command): Doc fix.
493faf20 14486
048addec 144872002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 14488
048addec
JD
14489 * dispnew.c (update_frame): Move the variable `tem' to the block
14490 where it is used.
4971e491 14491
048addec 144922002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 14493
048addec
JD
14494 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
14495 call to face-set-after-frame-default.
4971e491 14496
048addec 144972002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 14498
048addec
JD
14499 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
14500 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 14501
048addec 145022002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 14503
048addec
JD
14504 * window.c (enlarge_window): When exceeding size of parent,
14505 directly delete all the siblings instead of trying to resize it.
201c831a 14506
048addec 145072002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 14508
048addec 14509 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 14510
048addec 145112002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 14512
048addec 14513 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 14514
048addec 145152002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 14516
048addec
JD
14517 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
14518 is invisible. This can happen if cursor is on top line of a
14519 window, and we switch to a buffer with a header line.
d77fbc16 14520
048addec 14521 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 14522
048addec 145232002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 14524
048addec
JD
14525 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
14526 `dont_resize' only when used.
61e3b944 14527
048addec 14528 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 14529
048addec 145302002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 14531
048addec
JD
14532 * xdisp.c (display_mode_element): When computing charpos, depend
14533 on multibyteness of elt, not the text in field.
8af01033 14534
048addec 145352002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 14536
048addec
JD
14537 * buffer.c (Fkill_all_local_variables):
14538 Increment `update_mode_lines' only once.
7363986a 14539
048addec 145402002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 14541
048addec
JD
14542 * lisp.h (adjust_after_replace_noundo)
14543 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 14544
048addec 14545 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 14546
048addec 145472002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 14548
048addec
JD
14549 Support for the --color command-line argument and tty-color-mode
14550 frame parameter:
f1a85b89 14551
048addec
JD
14552 * term.c (tty_default_color_capabilities, tty_setup_colors)
14553 (set_tty_color_mode): New functions.
14554 (term_init): Call tty_default_color_capabilities.
14555 (Qtty_color_mode_alist): New variable.
14556 (syms_of_term): Intern and staticpro it.
f1a85b89 14557
048addec
JD
14558 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
14559 frames.
14560 (do_switch_frame): For termcap frames, switch the tty
14561 color mode as specified by the frame's parameters.
14562 (Qtty_color_mode): New variable.
14563 (syms_of_frame): Intern and staticpro it.
3a62677f 14564
048addec
JD
14565 * emacs.c (USAGE2): Add the --color option.
14566 (standard_args): Ditto.
72244db2 14567
048addec
JD
145682002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14569
14570 * xterm.h (struct x_output): New members want_fullscreen,
14571 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
14572 y_pixels_outer_diff.
14573 New enum for FULLSCREEN_* constants.
14574 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
14575 is NULL.
14576 (x_fullscreen_adjust): Add prototype.
3a62677f 14577
048addec
JD
14578 * emacs.c (USAGE2): Add the new full-screen arguments.
14579 (standard_args): Ditto.
3a62677f 14580
048addec
JD
14581 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
14582 New variables.
14583 (syms_of_xfns): Intern and staticpro them.
14584 (x_frame_parms) <"fullscreen">: New parameter.
14585 (x_fullscreen_move, x_set_fullscreen): New functions.
14586 (x_set_frame_parameters): Support for Qfullscreen.
14587 (x_real_positions): More accurate computation of the frame position.
14588 (x_figure_window_size): Support full-screen frames.
14589 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 14590
048addec
JD
14591 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
14592 (XTread_socket) <Expose>: Call x_check_fullscreen.
14593 <ConfigureNotify>: Don't resize to fullscreen.
14594 Call x_check_fullscreen_move, and set the want_fullscreen member of
14595 output_data.x.
3a62677f 14596
048addec 145972002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 14598
048addec
JD
14599 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
14600 for mice with more than 3 buttons.
b8523839 14601
048addec
JD
14602 * w32term.c (parse_button): New parameter xbutton. Callers changed.
14603 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 14604
048addec
JD
14605 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
14606 (syms_of_w32fns): DEFVAR_BOOL it.
14607 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 14608
048addec 146092002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 14610
048addec 14611 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 14612
048addec 146132002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 14614
048addec 14615 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 14616
048addec 146172002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 14618
048addec
JD
14619 * .gdbinit (xbuffer): Remove address operator since data is now a
14620 pointer.
c93674bb 14621
048addec 146222002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 14623
048addec 14624 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 14625
048addec 14626 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 14627
048addec 146282002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 14629
048addec
JD
14630 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
14631 when checking for multiple frames.
91175673 14632
048addec 146332002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 14634
048addec
JD
14635 * window.c (delete_window): Rewrite the code for changing the
14636 selected window to handle the case where WINDOW is not a leaf.
91175673 14637
048addec 146382002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 14639
048addec
JD
14640 * process.c (send_process): Set src_multibyte to 1 after the call
14641 top setup_coding_system, not before the call.
e0fead5d 14642
048addec 146432002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 14644
048addec
JD
14645 * xmenu.c (set_frame_menubar, xmenu_show):
14646 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 14647
048addec
JD
14648 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
14649 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 14650
048addec 146512002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 14652
048addec 14653 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 14654
048addec 14655 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 14656
048addec 14657 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 14658
048addec 146592002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 14660
048addec
JD
14661 * insdel.c (make_gap_larger): Make sure buffer size does not
14662 overflow range of int.
62854fe2 14663
048addec 146642002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 14665
048addec
JD
14666 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
14667 OVERLAPS_P.
656f46bb 14668
048addec 14669 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 14670
048addec
JD
14671 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
14672 to the left or to the right of the pointer, put it against
14673 the left screen edge.
14674 (x_frame_parms): Add missing braces around initializer.
036e218d 14675
048addec
JD
14676 * w32term.c (x_setup_relief_colors): Don't compute an image's
14677 background color if it doesn't have a Pixmap.
14678 (notice_overwritten_cursor): Don't depend on
14679 output_cursor and updated_area. Compare pixel coordinates with
14680 window's cursor pixel coordinates.
14681 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
14682 Call notice_overwritten_cursor with new arg list.
14683 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
14684 unconditionally.
14685 (x_draw_image_relief): Use predefined macro instead of
14686 constant when the value of `tool_bar_button_relief' is negative.
036e218d 14687
048addec 14688 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 14689
048addec 146902002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 14691
048addec 14692 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 14693
048addec 146942002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 14695
048addec
JD
14696 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
14697 (Fkey_binding): Try the `keymap' property map first.
14698 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
14699 minor mode bindings.
90647b07 14700
048addec 147012002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 14702
048addec 14703 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 14704
048addec 147052002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 14706
048addec
JD
14707 * keyboard.c (read_key_sequence): Handle the keymap property
14708 before minor mode maps.
9fbc32aa 14709
048addec
JD
14710 * editfns.c (Fformat): Update thissize from field_width
14711 based on the actual width, in the string case.
036e218d 14712
048addec 147132002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 14714
048addec
JD
14715 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
14716 when used as truth value to prevent gcc warnings.
9fbc32aa 14717
048addec
JD
14718 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
14719 * w32proc.c: Include <config.h>.
9fbc32aa 14720
048addec 147212002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 14722
048addec
JD
14723 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
14724 not EMACS_INT, to make them compatible with DEFVAR_INT.
14725 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 14726
048addec 147272002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 14728
048addec
JD
14729 * print.c (print_object): Test print_escape_nonascii only for
14730 unibyte strings.
14731 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
14732 when outputting to a multibyte buffer.
9fbc32aa 14733
048addec 147342001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 14735
048addec
JD
14736 * print.c (print_object): In multibyte string, use hex escapes.
14737 Use octal only for unibyte strings.
14738 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 14739
048addec
JD
14740 * lread.c (read_escape): New arg BYTEREP for reporting whether
14741 escape forces unibyte or multibyte.
14742 (read1): When reading a string, take note of that info.
0142178a 14743
048addec 147442001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 14745
048addec
JD
14746 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
14747 comparison to test lisp value returned by Fget.
d4824a5d 14748
048addec 147492001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 14750
048addec 14751 * lisp.h (max_specpdl_size): Add declaration.
b1356234 14752
048addec 14753 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 14754
048addec
JD
14755 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
14756 Handle modifier bits. Correct typo in error message.
99e380ee 14757
048addec 147582001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 14759
048addec
JD
14760 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
14761 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
14762 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
14763 Update calls to Fdefine_abbrev.
14764 (write_abbrev): Update for changed data format.
14765 Don't list "system" abbrevs.
14766 (Fexpand_abbrev): Update use count with new data format.
14767 (describe_abbrev): Update for changed data format.
14768 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 14769
048addec 14770 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 14771
048addec 14772 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 14773
048addec
JD
14774 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
14775 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 14776
048addec
JD
14777 * keymap.c (Flookup_key): Error message if key has wrong data type.
14778 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
14779 (exclude_key): New variable.
59a86c99 14780
048addec 147812001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 14782
048addec
JD
14783 * xterm.c (x_setup_relief_colors): Don't compute an image's
14784 background color if it doesn't have a Pixmap.
eb77a5f4 14785
048addec
JD
14786 * xterm.c (notice_overwritten_cursor): Don't depend on
14787 output_cursor and updated_area. Compare pixel coordinates with
14788 window's cursor pixel coordinates.
14789 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
14790 Call notice_overwritten_cursor with new arg list.
14791 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
14792 unconditionally.
eb77a5f4 14793
048addec
JD
14794 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
14795 height of the cursor line to the amount to scroll.
eb77a5f4 14796
048addec 147972001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 14798
048addec
JD
14799 * intervals.c (set_point_both): The position after an invisible,
14800 intangible character is not an acceptable stopping point.
bb313871 14801
048addec 148022001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 14803
048addec
JD
14804 * window.c (enlarge_window): In new preserve_before code, convert
14805 CURBEG from lisp object to integer before doing arithmetic.
6052529b 14806
048addec 148072001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 14808
048addec 14809 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 14810
048addec 148112001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 14812
048addec
JD
14813 * keyboard.c (record_char): Ignore duplicate help-echo events only
14814 separated by mouse-movement. When tracking mouse, only record
14815 first and last mouse-movement event in same window.
14816 Don't record mouse-movement events in keyboard macros.
3ce081f5 14817
048addec 148182001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 14819
048addec
JD
14820 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
14821 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 14822
048addec
JD
14823 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
14824 instead of Fstring_as_unibyte.
9fabb2f5 14825
048addec 148262001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 14827
048addec 14828 The following changes remove mocklisp support:
9fabb2f5 14829
048addec 14830 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 14831
048addec
JD
14832 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
14833 `Qmocklisp' and `Qmocklisp_arguments'.
14834 Remove prototype of syms_of_mocklisp.
2fa0eedf 14835
048addec 14836 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 14837
048addec
JD
14838 * callint.c: Do not include mocklisp.h.
14839 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 14840
048addec
JD
14841 * eval.c: Remove variables `Qmocklisp_arguments',
14842 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
14843 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
14844 Do not test for mocklisp case.
14845 (Fwhile): Remove unused variable `tem'.
14846 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 14847
048addec 14848 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 14849
048addec 14850 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 14851
048addec 14852 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 14853
048addec 148542001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 14855
048addec
JD
14856 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
14857 to the left or to the right of the pointer, put it against
14858 the left screen edge.
6108b49c 14859
048addec 148602001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 14861
048addec
JD
14862 * Makefile.in (distclean): Remove .gdbinit if we are building
14863 outside the source tree.
5eea19a4 14864
048addec 148652001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 14866
048addec 14867 * w32.c (emacs_root_dir): New function.
5eea19a4 14868
048addec 14869 * msdos.c (emacs_root_dir): New function.
5eea19a4 14870
048addec
JD
14871 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
14872 of the current drive as the fallback for default_directory.
438e57dd 14873
048addec
JD
14874 * dired.c (file_name_completion): Run the elements of
14875 completion-ignored-extensions through ENCODE_FILE.
438e57dd 14876
048addec
JD
14877 * lisp.h (scmp): Remove prototype, since it's now a static
14878 function private to dired.c.
c88e5347 14879
048addec 148802001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 14881
048addec
JD
14882 * dired.c (scmp): Function moved from minibuf.c.
14883 Delete multibyte handling--used only on encoded strings.
59ce1461 14884
048addec 14885 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 14886
048addec 14887 * fns.c (merge): Add QUIT call.
59ce1461 14888
048addec 148892001-12-18 Dave Love <fx@gnu.org>
8727d588 14890
048addec
JD
14891 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
14892 language/georgian.el.
8727d588 14893
048addec 148942001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 14895
048addec
JD
14896 * Makefile.in (lisp, shortlisp): Synchronize with changes to
14897 lisp/Makefile.in:DONTCOMPILE.
cc63037e 14898
048addec 148992001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 14900
048addec
JD
14901 * xdisp.c (window_box_height): Do not return negative values.
14902 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 14903
048addec 14904 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 14905
048addec 14906 * term.c (keys): Likewise.
deece6f5 14907
048addec 14908 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 14909
048addec 149102001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 14911
048addec
JD
14912 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
14913 patch (COMPOSING_P, not COMPOSING).
28ff4293 14914
048addec 149152001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 14916
048addec 14917 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 14918
048addec
JD
14919 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
14920 before calling decode_coding.
9b46de40 14921
048addec 14922 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 14923
048addec
JD
14924 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
14925 instead of only for COMPOSITION_DISABLED.
9b46de40 14926
048addec 149272001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 14928
048addec 14929 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 14930
048addec 14931 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 14932
048addec
JD
14933 * buffer.h (struct buffer): New field `display_error_modiff'.
14934 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 14935
048addec 14936 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 14937
048addec
JD
14938 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
14939 Call redisplay_window, but not if display_error_modiff field says no.
14940 (redisplay_window_error): New function.
14941 (displayed_buffer): New variable.
14942 (redisplay_internal, redisplay_windows): Call the new functions
14943 instead of redisplay_window directly.
2cd23960 14944
048addec 149452001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 14946
048addec 14947 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 14948
048addec 149492001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 14950
048addec 14951 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 14952 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 14953 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 14954
048addec 149552001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 14956
048addec
JD
14957 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
14958 parameter have a numeric value all the time.
f6fa0866 14959
048addec 14960 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 14961
048addec 149622001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 14963
048addec 14964 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 14965
048addec
JD
14966 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
14967 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 14968
048addec 149692001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 14970
048addec
JD
14971 * xdisp.c (move_it_vertically_backward): Change heuristic
14972 for the case that we didn't move far enough initially.
91c153e2 14973
048addec
JD
14974 * window.c (Frecenter): Simplify computation in the case of window
14975 system frames and ARG < 0; use window_box_height.
65b7d3e7 14976
048addec 149772001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 14978
048addec
JD
14979 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
14980 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 14981
048addec 149822001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 14983
048addec
JD
14984 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
14985 arg is negative.
be676094 14986
048addec 149872001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 14988
048addec
JD
14989 * m/hp800.h: Split the __hpux conditional into the parts
14990 that are right for GNU/Linux too and the parts that are not.
14991 Use the former if GNU_LINUX.
14992 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 14993
048addec 14994 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 14995
048addec 149962001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 14997
048addec
JD
14998 * macros.c, msdos.c, w16select.c: Change doc-string comments to
14999 `new style' [w/`doc:' keyword].
032a857d 15000
048addec 150012001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 15002
048addec
JD
15003 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
15004 before using.
b6270150 15005
048addec 150062001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 15007
048addec
JD
15008 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
15009 keyword].
98cbb9fa 15010
048addec 150112001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 15012
048addec 15013 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 15014
048addec 15015 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 15016
048addec 150172001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 15018
048addec 15019 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
78819ebb 15020 Add comment to explain where the struct came from.
048addec
JD
15021 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
15022 (add_menu_item): Process pop-up menus first to avoid memory leak.
15023 (add_menu_item, w32_menu_display_help): Use `help' field as
15024 Lisp_Object.
15025 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 15026
048addec 150272001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 15028
048addec 15029 * COPYING: Moved back.
fa336b91 15030
048addec
JD
15031 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
15032 Add parentheses around && within ||.
077907d4 15033
048addec 15034 * indent.c (compute_motion): Likewise.
aa2af83a 15035
048addec 15036 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 15037
048addec
JD
15038 * coding.c (setup_coding_system, shrink_encoding_region)
15039 (Fdecode_sjis_char): Likewise.
60a653f1 15040
048addec 150412001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 15042
048addec
JD
15043 * xdisp.c (display_mode_element): Don't read past end of string if
15044 it ends with '%'.
60a653f1 15045
048addec
JD
15046 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
15047 can hold.
60a653f1 15048
048addec
JD
15049 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
15050 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
15051 type changed to Lisp_Object.
15052 (syms_of_data): DEFVAR_LISP them.
60a653f1 15053
048addec 150542001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 15055
048addec
JD
15056 * callproc.c (init_callproc): Set Vdata_directory based on the source
15057 location whenever Emacs was run uninstalled.
60a653f1 15058
048addec 150592001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 15060
048addec
JD
15061 * config.in (HAVE_WORKING_VFORK): New #undefs.
15062 * process.c (create_process):
15063 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
15064 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
15065 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
15066 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
15067 * m/intel386.h (HAVE_VFORK): Likewise.
15068 * m/mips-siemens.h (HAVE_VFORK): Likewise.
15069 * m/mips.h (HAVE_VFORK): Likewise.
15070 * s/freebsd.h (vfork): Remove #define.
15071 * s/lynxos.h (HAVE_VFORK): Remove #undef.
15072 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 15073
048addec 150742001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 15075
048addec
JD
15076 * s/hpux10.h (random): Add undef.
15077 (HAVE_RANDOM): Define it just once.
60a653f1 15078
048addec 150792001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15080
048addec 15081 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 15082
048addec 150832001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 15084
048addec
JD
15085 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
15086 scroll bars of the frame before deleting the frame itself. If the
15087 frame has a widget, delete the frame with XtDestroyWidget, and do
15088 not call XDestroyWindow before that.
60a653f1 15089
048addec 150902001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 15091
048addec 15092 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 15093
048addec 15094 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 15095
048addec 150962001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 15097
048addec
JD
15098 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
15099 excessively large.
60a653f1 15100
048addec
JD
15101 * insdel.c (make_gap_larger): New function.
15102 (make_gap_smaller): New function.
15103 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
15104 Call make_gap_smaller if arg is negative.
60a653f1 15105
048addec 151062001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15107
048addec
JD
15108 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
15109 Pass a dummy argument when calling interrupt_signal.
15110 (parse_menu_item): Mark disabled items before checking for empty def.
15111 (read_char_minibuf_menu_prompt): Make safety more visible.
15112 (read_key_sequence): Add a `first_unbound' variable.
15113 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
15114 unbound prefix as soon as we can detect it.
60a653f1 15115
048addec
JD
15116 * doc.c (Fsnarf_documentation): Add prototype.
15117 (get_doc_string): Handle negative arguments.
15118 (Fdocumentation): Use AREF and ASIZE.
15119 Move the calls to get_doc_string to a single place.
15120 Don't confuse an interactive-spec for a docstring reference.
15121 (Fdocumentation_property): Take advantage of the fact that
15122 get_doc_string now ignores the sign of the docstring position.
60a653f1 15123
048addec 15124 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 15125
048addec 151262001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15127
a64387ee 15128 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 15129
048addec 151302001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15131
048addec
JD
15132 * xterm.c (x_draw_image_relief): Use predefined macro instead of
15133 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 15134
048addec 151352001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 15136
048addec
JD
15137 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
15138 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 15139
048addec 15140 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 15141
048addec 151422001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15143
048addec 15144 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 15145
048addec 151462001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 15147
048addec 15148 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 15149
048addec 151502001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 15151
f63fd14e 15152 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 15153
048addec
JD
15154 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
15155 [!WM_MOUSELEAVE]: Define.
60a653f1 15156
048addec
JD
15157 * w32menu.c (current_popup_menu, get_menu_item_info):
15158 (set_menu_item_info): New vars.
15159 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
15160 (w32_menu_show): Set current_popup_menu.
15161 (add_menu_item): Allocate new strings for owner-drawn menu items
15162 and help strings.
15163 Use owner-draw for disabled menu items again.
15164 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
15165 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 15166
048addec
JD
15167 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
15168 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
15169 <WM_EXITMENULOOP>: Free menu strings.
15170 <WM_MOUSELEAVE>: Stop tracking mouse.
15171 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 15172
048addec
JD
15173 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
15174 and mouse face.
60a653f1 15175
048addec 151762001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 15177
048addec
JD
15178 The following changes add left-fringe and right-fringe
15179 frame parameters to adjust fringe widths, or remove one or
15180 both fringes.
60a653f1 15181
048addec
JD
15182 * frame.h (struct frame): Remove trunc_area_pixel_width and
15183 trunc_area_cols fields.
15184 (Qleft_fringe, Qright_fringe): Declare.
15185 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 15186
048addec
JD
15187 * frame.c (Qleft_fringe, Qright_fringe): New vars.
15188 (syms_of_frame): Initialize them.
60a653f1 15189
048addec
JD
15190 * window.c (coordinates_in_window): Handle separate left and right
15191 fringe widths.
60a653f1 15192
048addec
JD
15193 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
15194 and fringe_cols fields.
15195 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
15196 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
15197 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
15198 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
15199 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
15200 (x_compute_fringe_widths): Add prototype.
60a653f1 15201
048addec
JD
15202 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
15203 fill fringe evenly with small dashes.
f63fd14e 15204 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
15205 clip the new ZV bitmap to avoid jitter between rows.
15206 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
15207 background. Don't draw fringe bitmaps if fringe width is zero.
15208 (x_compute_fringe_widths): New function.
15209 (x_new_font, x_set_window_size_1): Use it.
60a653f1 15210
048addec
JD
15211 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
15212 (x_set_frame_parameters): Process `font' parameter before other
15213 parameters as fringe widths depend on it.
15214 (x_set_fringe_width): New function.
15215 (x_figure_window_size): Use x_compute_fringe_widths.
15216 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
15217 parameters.
60a653f1 15218
048addec
JD
15219 * widget.c (set_frame_size): Use x_compute_fringe_widths.
15220 (EmacsFrameSetCharSize): Ditto.
60a653f1 15221
048addec
JD
15222 * w32term.h: Merged changes from xterm.h.
15223 * w32term.c: Merged changes from xterm.c.
15224 * w32fns.c: Merged changes from xfns.c.
60a653f1 15225
048addec 152262001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15227
048addec 15228 * COPYING: Removed.
60a653f1 15229
048addec 152302001-11-29 Dave Love <fx@gnu.org>
60a653f1 15231
048addec
JD
15232 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
15233 extra extra slot.
15234 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 15235
048addec 152362001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15237
048addec
JD
15238 * fileio.c (file-name-coding-system)
15239 (default-file-name-coding-system): Doc fix (links to referenced
15240 variables added).
60a653f1 15241
048addec 152422001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15243
048addec
JD
15244 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
15245 Add dummy uses of gcproN variables.
60a653f1 15246
048addec
JD
15247 * category.c (describe_category, describe_category_1)
15248 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
15249 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 15250
048addec 152512001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 15252
048addec 15253 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 15254
048addec
JD
15255 * Makefile.in (lispdir): New variable, referring to build dir.
15256 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 15257
048addec 152582001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 15259
048addec
JD
15260 * w32menu.c (w32_menu_display_help): Actually add the new argument
15261 OWNER.
60a653f1 15262
048addec 152632001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 15264
048addec
JD
15265 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
15266 menu items. From David Ponce <dponce@wanadoo.fr>.
15267 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
15268 conditionally.
f63fd14e 15269 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 15270 help event in the owner frame's keyboard buffer.
60a653f1 15271
048addec
JD
15272 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
15273 (Fx_show_tip): Don't subtract last width from row width.
15274
15275 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
15276 (w32_read_socket): Use EQ to compare frames.
60a653f1 15277
048addec 152782001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 15279
048addec
JD
15280 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
15281 OVERLAPS_P.
60a653f1 15282
048addec 152832001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15284
048addec
JD
15285 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
15286 `gcpro3' and `gcpro4'.
60a653f1 15287
048addec 15288 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 15289
048addec 152902001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15291
048addec 15292 * ccl.c: Use AREF and ASIZE.
60a653f1 15293
048addec 152942001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15295
048addec
JD
15296 * lisp.h (run_hook_list_with_args): Remove.
15297 (LIST_END_P): Fix call to wrong_type_argument.
15298 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 15299
048addec 153002001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15301
048addec
JD
15302 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
15303 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 15304
048addec
JD
15305 * eval.c: Use AREF and ASIZE.
15306 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 15307
048addec
JD
15308 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
15309 which match the end of the file-name.
15310 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
15311 is not a valid env var, but leave it as is instead.
60a653f1 15312
048addec
JD
15313 * keymap.c (access_keymap): Handle t bindings like nil bindings.
15314 Make nil bindings in char-tables transparent.
15315 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 15316
048addec 153172001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 15318
048addec
JD
15319 * textprop.c (set_text_properties_1): Allow START, END in either order.
15320 Do nothing if range is empty.
60a653f1 15321
048addec 15322 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 15323
048addec
JD
15324 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
15325 (clean): Not here.
60a653f1 15326
048addec 153272001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15328
048addec
JD
15329 * textprop.c (set_text_properties_1): Clearly mark that the
15330 interval should not be empty.
60a653f1 15331
048addec
JD
15332 * intervals.c (graft_intervals_into_buffer):
15333 Don't call set_text_properties_1 on an empty interval.
60a653f1 15334
048addec 153352001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 15336
048addec 15337 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 15338
048addec
JD
15339 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
15340 don't lose the data in it.
60a653f1 15341
048addec 153422001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 15343
048addec 15344 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 15345
c62aec78 15346 * buffer.c (Fkill_buffer): Likewise.
60a653f1 15347
c62aec78 15348 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 15349
048addec 153502001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15351
048addec 15352 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 15353
048addec 153542001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 15355
048addec
JD
15356 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
15357 Niemitalo <kon@iki.fi>.
60a653f1 15358
048addec 153592001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 15360
048addec 15361 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 15362
048addec
JD
15363 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
15364 (Fx_show_tip): Block input during frame creation.
15365 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 15366
048addec 153672001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 15368
048addec
JD
15369 * lread.c (Fload): Detect recursive load error for more than 3
15370 nestings of the same file.
15371 (Vrecursive_load_depth_limit): Variable deleted.
15372 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 15373
048addec 153742001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 15375
048addec
JD
15376 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
15377 mouse position if either left or top is not specified.
60a653f1 15378
048addec
JD
15379 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
15380 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
15381 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
15382 (my_create_tip_window): Assign tip_window.
15383 (x_create_tip_frame): Use same defaults as X.
15384 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 15385 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 15386
048addec
JD
15387 * w32term.c (x_after_update_window_line): Doc fix.
15388 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
15389 frames.
15390 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 15391
048addec
JD
15392 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
15393 for all Windowed systems.
60a653f1 15394
048addec 153952001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 15396
048addec
JD
15397 * msdos.c (IT_clear_screen): If the frame's faces are not yet
15398 realized, use the initial screen colors to clear the screen.
60a653f1 15399
048addec 154002001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15401
048addec
JD
15402 * textprop.c (Fset_text_properties): Remove unused variables
15403 `unchanged', `prev_changed', `s' and `len'.
60a653f1 15404
048addec
JD
15405 * search.c (Freplace_match): Remove unused variable `inslen'.
15406
15407 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
15408
154092001-11-22 Jason Rumney <jasonr@gnu.org>
15410
15411 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
15412 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
15413 (my_create_tip_window): New function.
15414 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
15415 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
15416
154172001-11-20 Jason Rumney <jasonr@gnu.org>
15418
15419 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
15420 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
15421
15422 * w32fns.c (Vw32_system_coding_system): Remove.
15423 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
15424
154252001-11-19 Stefan Monnier <monnier@cs.yale.edu>
15426
15427 * fileio.c (Fwrite_region): Move choose_write_coding_system to
15428 after build_annotations.
15429
15430 * syntax.c (describe_syntax): Add dummy arg.
15431 (describe_syntax_1): Update call to describe_vector.
15432
15433 * category.c (describe_category): Add dummy arg.
15434 (describe_category_1): Update call to describe_vector.
15435
15436 * keymap.c (Fdescribe_vector): Add `describer' parameter.
15437 (describe_command, describe_translation): Add dummy second param.
15438 (describe_map): Call elt_describer with two arguments.
15439 (describe_vector_princ): Add `fun' parameter.
15440 Call it instead of the hardcoded `princ'.
15441 (describe_vector): Add arg `args'.
15442 Pass it as a new second argument to elt_describer.
60a653f1 15443
048addec 15444 * keymap.h (describe_vector): Update prototype.
60a653f1 15445
048addec
JD
15446 * frame.c: Don't include keymap.h any more.
15447 (keys_of_frame): Remove.
60a653f1 15448
048addec 15449 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 15450
048addec 15451 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 15452
048addec 154532001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 15454
048addec
JD
15455 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
15456 if defined, 0 otherwise.
15457 (MAP_FAILED): Define if not defined and use it to test mmap failure.
15458 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 15459
048addec 154602001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 15461
048addec 15462 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 15463
048addec 154642001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 15465
048addec
JD
15466 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
15467 (x_draw_bar_cursor): If the background color of the glyph under
15468 the cursor equals the frame's cursor color, use the glyph's
15469 foreground color for drawing the bar cursor.
15470 (x_after_update_window_line): Clear internal border in different
15471 circumstances.
15472 (w32_set_vertical_scroll_bar): Check for width and height > 0.
15473 (w32_draw_relief_rect): Correct relief by 1 pixel.
15474 (x_set_glyph_string_background_width):
15475 Set extends_to_end_of_line_p if the row's fill_line_p is set and
15476 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
15477 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
15478 if cursor_in_non_selected_windows is false.
15479 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
15480 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
15481 Notice if cursor gets overwritten.
15482 (notice_overwritten_cursor): Renamed from
15483 note_overwritten_text_cursor. Rewritten to take glyph widths
15484 into account, and to take X positions as parameters.
15485 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
15486 around call to x_draw_glyphs.
15487 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
15488 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
15489 color to use for image glyph reliefs.
15490 (x_draw_image_relief): Accept zero tool_bar_button_relief.
15491 (glyph_rect): Remove unused variable `area'.
60a653f1 15492
048addec
JD
15493 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
15494 some items.
15495 (x_set_internal_border_width): Set frame garbaged when window
15496 doesn't exist yet.
15497 (Fx_create_frame): Accept zero tool_bar_button_relief.
15498 (x_clear_image_1, four_corners_best, image_background)
15499 (image_background_transparent): New functions.
15500 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
15501 (gs_format): Add `:background' entry.
15502 (lookup_image): Set IMG's background color if specified.
15503 (pbm_load, xbm_load_image, png_load): Set IMG's background field
15504 when appropriate.
15505 (x_clear_image_1): Reset `background_valid' and
15506 `background_transparent_valid' fields.
15507 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
15508 calculating it here. Set IMG's background_transparent field.
15509 (enum xpm_keyword_index): Add XPM_BACKGROUND.
15510 (enum png_keyword_index): Add PNG_BACKGROUND.
15511 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
15512 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
15513 (enum gif_keyword_index): Add GIF_BACKGROUND.
15514 (enum gs_keyword_index): Add GS_BACKGROUND.
15515 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
15516 Pre-calculate image background color where necessary.
15517 (x_create_x_image_and_pixmap, xbm_load, gs_load):
15518 Use display info's n_cbits entry for screen depth.
15519 (Fx_show_tip): Remove unused variables `buffer', `top',
15520 `left', `max_width' and `max_height'.
60a653f1 15521
048addec 15522 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 15523
048addec 155242001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 15525
048addec 15526 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 15527
048addec 155282001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15529
048addec 15530 * frame.c (Fframe_live_p): Doc fix.
60a653f1 15531
048addec 155322001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 15533
048addec
JD
15534 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
15535 (message_dolog_marker3): New static variables hold three markers.
15536 (syms_of_xdisp): Initialize and staticpro them.
15537 (message_dolog): Use message_dolog_marker1..3 instead of
15538 allocating markers each time. Unchain them when done.
60a653f1 15539
048addec 155402001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 15541
048addec 15542 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 15543
048addec 155442001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 15545
048addec 15546 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 15547
048addec 155482001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 15549
048addec 15550 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 15551
048addec 155522001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 15553
048addec 15554 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 15555
048addec 155562001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 15557
048addec
JD
15558 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
15559 with invalid position.
60a653f1 15560
048addec 155612001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 15562
048addec 15563 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 15564
048addec
JD
15565 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
15566 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
15567 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 15568
048addec 15569 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 15570
048addec 155712001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15572
048addec
JD
15573 * fileio.c (build_annotations): Split off the tail.
15574 (build_annotations_2): New fun. Extracted from build_annotations.
15575 (Fwrite_region): Split the call to build_annotations into two
15576 calls to build_annotations and build_annotations_2.
077907d4 15577
048addec 155782001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 15579
048addec
JD
15580 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
15581 clear_waiting_for_input with argument.
1756e2fb 15582
048addec 15583 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 15584
048addec 15585 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 15586
048addec 15587 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 15588
048addec 15589 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 15590
048addec 155912001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 15592
048addec
JD
15593 * fileio.c (choose_write_coding_system): New fun, extracted
15594 from Fwrite_region.
15595 (Fwrite_region): Use it.
fa336b91 15596
048addec
JD
15597 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
15598 (funcall_lambda, run_hook_with_args): Make static and add prototype.
15599 (ml_apply, find_handler_clause): Add prototype.
fa336b91 15600
048addec 156012001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 15602
048addec 15603 * config.in: Add #undef HAVE_COFF_H.
fa336b91 15604
048addec
JD
15605 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
15606 Required for ISC 4.1.
fa336b91 15607
048addec 156082001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 15609
048addec
JD
15610 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
15611 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 15612
048addec 156132001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 15614
048addec
JD
15615 The following changes are made to clean up the various internal
15616 references to the fringes to actually use the term `fringe' for
15617 them. Previously, they were called `flags areas', `bitmap areas',
15618 `left/right side of windows', or implicitly as `flags' or
15619 `bitmaps':
fa336b91 15620
048addec 15621 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 15622 Comments fixed. Use renamed symbols.
06e8f738 15623
f63fd14e 15624 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 15625
048addec
JD
15626 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
15627 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
15628 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 15629
048addec 15630 * msdos.c: Comment fix.
9ce647f4 15631
048addec 15632 * w32fns.c: Use renamed symbols.
9b784ab8 15633
f63fd14e 15634 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
15635 (fringe_bitmap_type): Renamed from bitmap_type.
15636 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
15637 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
15638 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 15639
f63fd14e 15640 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
15641 (fringes_extra): Renamed from flags_areas_extra.
15642 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
15643 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
15644 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
15645 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
15646 (FRAME_X_LEFT_FRINGE_WIDTH):
15647 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
15648 (FRAME_X_RIGHT_FRINGE_WIDTH):
15649 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 15650
048addec 15651 * widget.c: Use renamed symbols.
9f7e52b4 15652
f63fd14e 15653 * window.c: Comment fixes. Use renamed symbols.
048addec 15654 (coordinates-in-window-p): Doc fix.
fa336b91 15655
f63fd14e 15656 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 15657
048addec 15658 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 15659
048addec 15660 * xfns.c: Use renamed symbols.
89512fcd 15661
f63fd14e 15662 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
15663 (fringe_bitmap_type): Renamed from bitmap_type.
15664 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
15665 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
15666 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 15667
f63fd14e 15668 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
15669 (fringes_extra): Renamed from flags_areas_extra.
15670 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
15671 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
15672 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
15673 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
15674 (FRAME_X_LEFT_FRINGE_WIDTH):
15675 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
15676 (FRAME_X_RIGHT_FRINGE_WIDTH):
15677 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
15678
156792001-11-15 Jason Rumney <jasonr@gnu.org>
15680
15681 * w32menu.c (add-menu-item): Make help_echo and radio buttons
15682 work for most menu items. From David Ponce
15683 <david.ponce@wanadoo.fr>.
15684
156852001-11-15 Gerd Moellmann <gerd@gnu.org>
15686
15687 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
15688 Some x_set_* function expect to be called even if old and new
15689 value are equal.
15690
15691 * xdisp.c (build_desired_tool_bar_string): Accept zero
15692 tool_bar_button_relief.
15693
15694 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
15695
15696 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
15697
15698 * xterm.c (x_draw_bar_cursor): If the background color of the
15699 glyph under the cursor equals the frame's cursor color, use
15700 the glyph's foreground color for drawing the bar cursor.
15701
15702 * dispnew.c (direct_output_forward_char): Fix character/byte
15703 position comparison.
7d18891d 15704
048addec 157052001-11-15 Miles Bader <miles@gnu.org>
d2936d21 15706
048addec
JD
15707 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
15708 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
15709 Update arguments to find_field.
15710 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
15711 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
15712 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
15713 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 15714
048addec 157152001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 15716
048addec 15717 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 15718
048addec
JD
15719 * dispextern.h (image_background, image_background_transparent):
15720 Conditionalize on HAVE_X_WINDOWS.
7d18891d 15721
048addec 157222001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 15723
048addec 15724 * print.c (Fprin1_to_string): Doc fix.
7d18891d 15725
048addec 15726 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 15727
048addec 15728 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 15729
048addec 15730 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 15731
048addec 15732 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 15733
048addec 15734 * eval.c (syms_of_eval): Doc fix.
7d18891d 15735
048addec 15736 * coding.c (syms_of_coding): Doc fix.
7d18891d 15737
048addec 15738 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 15739
048addec 15740 * dispnew.c (syms_of_display): Doc fix.
9474c847 15741
048addec 15742 * category.c (Fget_unused_category): Doc fix.
9474c847 15743
048addec 15744 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 15745
048addec 157462001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 15747
048addec 15748 * print.c (prin1, print): Doc fix.
e3059a5d 15749
048addec 157502001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 15751
048addec
JD
15752 * fontset.h: Remove declarations of variables
15753 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 15754
048addec
JD
15755 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
15756 `Vclip_large_size_font'.
eae936e2 15757
048addec 157582001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 15759
048addec 15760 * w32fns.c: Doc fix.
ddb67bdc 15761
048addec 157622001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 15763
048addec 15764 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 15765
048addec 15766 * fns.c: Doc fix.
6e1b91d7 15767
048addec 15768 * emacs.c: Doc fix.
1c1d3d69 15769
048addec 15770 * coding.c: Doc fix.
1c1d3d69 15771
048addec
JD
15772 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
15773 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
15774 `new style' [w/`doc:' keyword].
b6f4c7ba 15775
048addec 157762001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 15777
048addec
JD
15778 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
15779 LeaveNotify events. Only FocusIn and FocusOut do that now.
15780 (x_display_and_set_cursor): Do display hollow cursors in active
15781 minibuffer windows when they are not selected.
b6f4c7ba 15782
048addec 157832001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 15784
048addec 15785 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
15786 * w32term.c: Change doc-string comments to `new style'
15787 [w/`doc:' keyword]. Doc fixes.
a89f435d 15788
048addec
JD
15789 * w32fns.c: Don't define max.
15790 (Fx_open_connection): Only execute once.
a4cd0cd7 15791
048addec 157922001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 15793
048addec
JD
15794 * ccl.c: Change macros to use do-while block instead of if-else.
15795 Use braces to follow GNU Coding Standards.
eafb659a 15796
048addec 157972001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 15798
048addec 15799 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 15800
048addec 15801 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 15802
048addec
JD
15803 * insdel.c (replace_range): Use adjust_markers_for_replace
15804 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 15805
78819ebb 15806 * intervals.h (set_text_properties, set_text_properties_1): Declare.
a4cd0cd7 15807
048addec
JD
15808 * textprop.c (set_text_properties_1): New subroutine
15809 broken out of set_text_properties.
15810 (set_text_properties): Use set_text_properties_1.
91823618 15811
048addec
JD
15812 * intervals.c (graft_intervals_into_buffer):
15813 Use set_text_properties_1 to clear out properties.
91823618 15814
048addec
JD
15815 * search.c (Freplace_match): Use replace_range to insert
15816 and delete. Don't request property inheritance from
15817 surrounding text.
86928dfb 15818
048addec 158192001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 15820
048addec 15821 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 15822 vertical fonts. Allow them if face name is explicitly specified.
048addec 15823 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 15824
048addec 158252001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 15826
048addec
JD
15827 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
15828 instead of malloc/free.
a78e0303 15829
048addec 158302001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 15831
048addec
JD
15832 * xfaces.c (merge_face_vectors): Use braces to follow GNU
15833 Coding Standards.
15834 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 15835
048addec 15836 * buffer.c (Fbury_buffer): Likewise.
0c99b139 15837
048addec 15838 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 15839
048addec
JD
15840 * coding.c (encode_coding): Use precomputed value of `src'.
15841 (encode_coding): Remove unused variable `src_end'.
15842 (code_convert_region): Remove unused variables `count'.
830ddd77 15843
048addec 158442001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 15845
048addec
JD
15846 * w32term.c (x_display_and_set_cursor): Do not move system caret
15847 if cursor_glyph is NULL.
55c6d645 15848
048addec 158492001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 15850
048addec 15851 * keymap.c (access_keymap): Fix compilation error.
5de38842 15852
048addec 158532001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 15854
048addec 15855 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 15856
048addec 158572001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 15858
048addec
JD
15859 * intervals.c (graft_intervals_into_buffer):
15860 Remove #ifdef'd-out code.
15861 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 15862
048addec
JD
15863 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
15864 code (eval-current-buffer).
15865 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 15866
048addec 158672001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 15868
048addec 15869 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 15870
048addec 158712001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 15872
048addec 15873 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 15874
048addec
JD
15875 * keyboard.c (make_lispy_event): Check integerness and fix
15876 Lisp_Object/int mixup.
17893c65 15877
048addec 158782001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 15879
048addec 15880 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 15881
048addec
JD
15882 * fontset.c (fontset_font_pattern): Remove unused variable
15883 `family_registry'.
d5360cc7 15884
048addec 15885 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 15886
048addec 158872001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 15888
048addec 15889 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 15890
048addec
JD
15891 * buffer.c (Fkill_buffer): Don't delete auto save file
15892 if buffer is modified.
d9d54213 15893
048addec 158942001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 15895
048addec
JD
15896 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
15897 CHECK_NUMBER_CDR.
b116830b 15898
048addec 158992001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 15900
048addec 15901 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 15902
048addec 159032001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 15904
048addec 15905 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 15906
048addec 159072001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 15908
048addec 15909 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 15910
048addec 159112001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 15912
048addec
JD
15913 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
15914 the program image directly.
982f6c7e 15915
048addec 159162001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 15917
048addec 15918 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 15919
048addec 159202001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 15921
048addec
JD
15922 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
15923 and CHECK_BUFFER.
d31053f9 15924
048addec
JD
15925 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
15926 (record_char): Likewise.
d31053f9 15927
048addec
JD
15928 * keyboard.c (make_lispy_event): Don't insist a drag event must
15929 move to a different buffer position. Instead, check for moving at
15930 least double_click_fuzz.
982f6c7e 15931
048addec 15932 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 15933
048addec 15934 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 15935
048addec
JD
15936 * indent.c (current_column_1, Fmove_to_column): Separate the code
15937 for display-table glyphs from the code for buffer text, to fix
15938 bugs in the former.
830047fd 15939
048addec 159402001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 15941
048addec
JD
15942 * buffer.c (Fbuffer_local_value): New function.
15943 (syms_of_buffer): Defsubr it.
2df5238c 15944
048addec
JD
15945 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
15946 value of `cursor-in-non-selected-windows'.
4e397688 15947
048addec
JD
15948 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
15949 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
15950 (syms_of_xdisp): Initialize it.
48b0f3ae 15951
048addec 159522001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 15953
048addec 15954 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 15955
048addec
JD
15956 * coding.c: Change doc-string comments to `new style' [w/`doc:'
15957 keyword].
3ecaf7e5 15958
048addec
JD
15959 * eval.c (top_level_value, top_level_set): Remove commented and
15960 #ifdef'd-out code.
15961 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 15962
048addec 159632001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 15964
048addec 15965 * xfns.c: Include unistd.h, if it exists.
8db2e33b 15966
048addec 15967 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 15968
048addec 15969 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 15970
048addec 159712001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 15972
048addec
JD
15973 * lisp.h (CHECK_STRING_CAR): New macro.
15974 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
15975 treating XCAR and XCDR as lvalues.
15976 (openp): Use CHECK_STRING_CAR.
15977 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 15978
048addec 159792001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 15980
048addec
JD
15981 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
15982 (SIGMASKTYPE): Define.
1b1acc13 15983
048addec 15984 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 15985
048addec 159862001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 15987
048addec
JD
15988 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
15989 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
15990 Fix typos in comments.
6cb16f95 15991
048addec
JD
15992 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
15993 and #ifdef'd-out code.
15994 Fix and reindent comments.
6cb16f95 15995
048addec 15996 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 15997
048addec
JD
15998 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
15999 argument `i' in macros.
6cb16f95 16000
048addec
JD
16001 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
16002 `i' in macros.
7e9d3c2f 16003
048addec
JD
16004 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
16005 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
16006 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
16007 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
16008 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
16009 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
16010 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
16011 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
16012 in macros.
7e9d3c2f 16013
048addec
JD
16014 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
16015 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
16016 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
16017 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
16018 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
16019 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
16020 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
16021 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
16022 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
16023 (remove unused second argument).
7e9d3c2f 16024
048addec 160252001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 16026
048addec
JD
16027 * syntax.c (describe_syntax): New wrapper.
16028 (Finternal_describe_syntax_value): Rename from describe_syntax.
16029 Don't insert space at front and \n at the end.
16030 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 16031
048addec
JD
16032 * regex.c (re_wctype): Try to fix some warnings.
16033 (regcomp, regexec): Don't forget the __restrict.
9ba48103 16034
048addec 160352001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 16036
048addec 16037 * textprop.c (Fget_char_property): Doc fix.
9ba48103 16038
048addec 160392001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 16040
048addec 16041 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 16042
048addec 16043 * data.c (Fsetq_default): Ditto.
c22e59e1 16044
048addec 16045 * callint.c (Finteractive): Ditto.
9271ed2c 16046
048addec 160472001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 16048
048addec
JD
16049 * macros.c: Don't include keymap.h any more.
16050
160512001-11-01 Richard M. Stallman <rms@gnu.org>
16052
16053 * data.c (Fmake_local_variable): Doc fix.
16054
16055 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
16056 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 16057
048addec 16058 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
16059 bindings along with or instead of the buffer local map.
16060 Make the overriding maps override what they should.
16061
f00691a3 160622001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
16063
16064 * window.c (grow_mini_window): Fix typo in comment.
16065
27188d11
GM
160662001-11-01 Gerd Moellmann <gerd@gnu.org>
16067
7b49b9d2
GM
16068 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
16069 (XTset_vertical_scroll_bar): Likewise.
16070
43f7c3ea
GM
16071 * xfns.c (x_build_heuristic_mask): Use four_corners_best
16072 instead of IMAGE_BACKGROUND.
c22e59e1 16073
b350c2e5
GM
16074 * xfns.c (four_corners_best): Reindent.
16075
c22e59e1 16076 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
16077 Handle :box so that it is possible to specify sexprs.
16078
bf00d461
EZ
160792001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
16080
16081 * s/hpux11.h: New file.
16082
f00691a3 160832001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 16084
2b209b97
PJ
16085 * emacs.c (USAGE1): Show command line option --no-window-system
16086 instead of --no-windows in usage.
16087 (standard_args): Rename --no-windows to --no-window-system.
16088 (bug_reporting_address): Follow Emacs coding conventions.
16089
9dbc9081
PJ
16090 * eval.c (Fcommandp): Doc fix.
16091 Change doc-string comments to `new style' [w/`doc:' keyword].
16092
4e10df59
PJ
16093 * frame.c (Fframe_live_p): Doc fix.
16094
16095 * buffer.c (selective-display-ellipses): Doc fix.
16096
dd387b25
GM
160972001-10-31 Gerd Moellmann <gerd@gnu.org>
16098
fe957e65
GM
16099 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
16100
dd387b25
GM
16101 * xfaces.c (realize_x_face): If C is not a single-byte character,
16102 set the face's colors_copied_bitwise_p instead of the defaulted_p
16103 members which have a different meaning.
16104 (free_face_colors): Do nothing for a face whose colors have been
16105 copied bitwise.
16106
c22e59e1 16107 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 16108
f00691a3 161092001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 16110
687784e8
PJ
16111 * marker.c, mocklisp.c: Change doc-string comments to `new style'
16112 [w/`doc:' keyword].
2e1280f8 16113
b9d9a9b9
GM
161142001-10-31 Gerd Moellmann <gerd@gnu.org>
16115
16116 * fns.c (require_unwind): Return Lisp_Object.
16117
f00691a3 161182001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 16119
fa1361cb
PJ
16120 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
16121 (last-input-char): Revert doc-string to be the same as the
16122 doc-string of `last-input-event'.
16123
6c465a15 16124 * xdisp.c: Fix typos in comments.
48400103 16125
eafa3196
GM
161262001-10-31 Gerd Moellmann <gerd@gnu.org>
16127
16128 * window.c (grow_mini_window): Handle case that the root
16129 window is already smaller than the nominal mininum height.
16130
747d3f2a
SM
161312001-10-30 Stefan Monnier <monnier@cs.yale.edu>
16132
bf9bb76f
SM
16133 * emacs.c (main): Don't call keys_of_macros any more.
16134
16135 * lisp.h (keys_of_macros): Remove.
16136
16137 * macros.c (keys_of_macros): Remove.
16138
747d3f2a
SM
16139 * xfaces.c (Fface_attribute_relative_p): Declare args.
16140
5e905a57
JR
161412001-10-30 Jason Rumney <jasonr@gnu.org>
16142
16143 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
16144 (enum_font_cb2): Ignore fonts with vertical orientation.
16145
3a426197
RS
161462001-10-30 Richard M. Stallman <rms@gnu.org>
16147
16148 * keyboard.c (Finput_pending_p): Doc fix.
16149
a742d646
GM
161502001-10-30 Gerd Moellmann <gerd@gnu.org>
16151
259cf6bc
GM
16152 * xterm.c (x_after_update_window_line): Don't run the code
16153 clearing in borders for rows whose visible height is 0.
16154
3f99f948
GM
16155 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
16156 resized_p flag is set. If not set, use the much less flickering
16157 method previously used.
16158
16159 * dispnew.c (change_frame_size_1): Set frame's resized_p.
16160
16161 * frame.h (struct frame) <resized_p>: New member.
16162
b4a3be43
GM
16163 * lread.c (to_multibyte): Ensure read_buffer is at least twice
16164 as large as the number of bytes to convert.
747d3f2a 16165
a742d646
GM
16166 * lread.c (to_multibyte): New function.
16167 (read1): Use it.
16168
cacbb9e9
EZ
161692001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
16170
16171 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
16172
99cb6b2f
GM
161732001-10-30 Gerd Moellmann <gerd@gnu.org>
16174
327f42ee 16175 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
16176 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
16177 if the row's fill_line_p is set and drawing the last glyph with
16178 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 16179
99cb6b2f
GM
16180 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
16181
8e8223e2
SM
161822001-10-29 Stefan Monnier <monnier@cs.yale.edu>
16183
16184 * xmenu.c: Include coding.h and charset.h.
16185 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
16186 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
16187 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
16188 Explicitly set wv->help. Use `TRUE' rather than `True'.
16189 (menu_help_callback): Use empty_string.
16190
16191 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
16192 (Fx_popup_dialog): Explicitly init f.
16193 (w32_menu_display_help): Use empty_string.
16194
4d083a8f
RS
161952001-10-29 Richard M. Stallman <rms@gnu.org>
16196
b2304472
RS
16197 * fns.c (Frequire): Detect recursive try to require the same
16198 feature 3 or more levels deep, and get error.
16199 (require_unwind): New subroutine.
16200 (require_nesting_list): New variable.
16201 (syms_of_fns): Init and staticpro it.
16202
4d083a8f
RS
16203 * print.c (print_object): Clarify indication of insertion type.
16204
2fe41216
EZ
162052001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
16206
90480000
EZ
16207 * coding.c (syms_of_coding): Document that locale-coding-system is
16208 used for decoding input on X.
16209
2fe41216
EZ
16210 * window.c (Fscroll_left, Fscroll_right): Doc fix.
16211
f00691a3 162122001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
16213
16214 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
16215 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
16216
60ebcfe8
GM
162172001-10-29 Gerd Moellmann <gerd@gnu.org>
16218
9a7bdceb
GM
16219 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
16220 use NO_CURSOR if cursor_in_non_selected_windows is false.
16221
3f08fcd2
GM
16222 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
16223 the slant attribute if FRAME is t.
16224
0ccfdad2
GM
16225 * xfns.c (x_set_internal_border_width): Set frame garbaged
16226 when X window doesn't exist yet.
16227
ef253080
GM
16228 * xterm.c (x_after_update_window_line): Clear internal border
16229 in different circumstances.
b116830b 16230
60ebcfe8
GM
16231 * xterm.c (XTread_socket) <KeyPress>: Don't use
16232 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
16233 <handa@etl.go.jp>.
16234
73d25f9c
EZ
162352001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
16236
16237 * m/ibms390.h: New file. From Adam Thornton
16238 <athornton@sinenomine.net>.
16239
cac1daf0
GM
162402001-10-28 Gerd Moellmann <gerd@gnu.org>
16241
053b3256 16242 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 16243
cac1daf0
GM
16244 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
16245 a loop counter.
16246
f00691a3 162472001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 16248
f9711de4 16249 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 16250
4707d2d0
PJ
16251 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
16252 keyword].
16253 Fix typos in comments.
b116830b 16254
d883731c
PJ
16255 * emacs.c (bug_reporting_address): New function.
16256 Use it when displaying usage message.
16257
04012254
PJ
16258 * minibuf.c (read_minibuf): Remove unused external declaration of
16259 variable `Qread_only'.
16260
13b1a09c
PJ
16261 * keymap.c (access_keymap): Remove unused variable `charset'.
16262
5bbf4378
MB
162632001-10-28 Miles Bader <miles@gnu.org>
16264
16265 * xfaces.c (merge_face_heights): Handle TO being relative as well.
16266 Remove #ifdef'd-out code.
16267 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
16268 (syms_of_xfaces): Initialize them.
16269
1ce1e4ee
JR
162702001-10-27 Jason Rumney <jasonr@gnu.org>
16271
16272 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
16273 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
16274 position using the system caret.
16275
16276 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
16277 (w32_system_caret_height, w32_system_caret_x)
16278 (w32_system_caret_y): New variables for tracking system caret.
16279 (w32_initialize): Initialize them.
c2d53558 16280 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 16281
c2d53558
SM
16282 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
16283 New messages types.
1ce1e4ee
JR
16284
16285 * w32term.c (note_mouse_highlight): Clear old help_echo.
16286
f00691a3 162872001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 16288
bb4600a4
PJ
16289 * xterm.c: Fix typo in a comment.
16290
7db35a48
PJ
16291 * emacs.c: Fix typos in comments.
16292 Remove unnecessary spaces.
16293 Change doc-string comments to `new style' [w/`doc:' keyword].
16294 (USAGE2): Fix typos in usage string.
16295
a7248e4f
PJ
16296 * xterm.c: Fix typo in a comment.
16297
4e30ce42
PJ
16298 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
16299 emacs.c.
16300
62725a92
GM
163012001-10-27 Gerd Moellmann <gerd@gnu.org>
16302
798dbe1f 16303 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 16304 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
16305 farther backward when target_y was not reached.
16306
62725a92
GM
16307 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
16308 Display errno only if non-zero.
16309 (sound_warning): New function.
16310 (vox_configure): Don't treat failing to set sample rate as error.
16311 (various places): Improve error messages.
16312
d4e34d24
EZ
163132001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
16314
944e6f60
EZ
16315 * fileio.c (Faccess_file): Run the argument filename through
16316 Fexpand_file_name, before using it.
16317
d4e34d24
EZ
16318 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
16319 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
16320
38d2af0c
GM
163212001-10-26 Gerd Moellmann <gerd@gnu.org>
16322
da80a8d5
GM
16323 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
16324
38d2af0c
GM
16325 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
16326 Fix clearing in the case of scroll bars on the right.
c2d53558 16327
45de4a6f 163282001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
16329
16330 * w32gui.h (XImage): Add a dummy typedef.
16331
fbd5ceb2
GM
163322001-10-26 Gerd Moellmann <gerd@gnu.org>
16333
c2d53558 16334 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 16335
b23236fb
EZ
163362001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
16337
16338 * frame.c (Fframe_parameter): Fix last change.
16339
5d991fc4
EZ
16340 * fileio.c: Revert last change (which removed old commented-out
16341 version of expand-file-name). Add a comment that explains why
16342 this old version should not be removed.
16343
879eadc3
GM
163442001-10-25 Gerd Moellmann <gerd@gnu.org>
16345
75700ff2
GM
16346 * frame.c (Fframe_parameter): Fix a bug whereby some
16347 ``artificial'' frame parameters, like `minibuffer' were not
16348 obtained by calling Fframe_parameters.
16349
dfe92a6a
GM
16350 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
16351 cursor differently.
16352
879eadc3
GM
16353 * xdisp.c (move_it_vertically_backward): Compute line height
16354 differently. Add heuristic to try to be more compatible to 20.x.
16355
e1010ebe
SM
163562001-10-25 Stefan Monnier <monnier@cs.yale.edu>
16357
d73a471b
SM
16358 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
16359
d6da5a06
GM
16360 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
16361 boolean.
e1010ebe 16362
f66bd220
MB
163632001-10-25 Miles Bader <miles@gnu.org>
16364
16365 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
16366 BG is a pointer to a structure, not a structure.
16367 (gif_format, png_format): Add missing commas.
16368
d436d538
RS
163692001-10-24 Richard M. Stallman <rms@gnu.org>
16370
16371 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 16372 (syms_of_xfaces): Defsubr it.
d436d538 16373
f00691a3 163742001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
16375
16376 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
16377 variable `area'.
16378
f00691a3 163792001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 16380
c2d53558 16381 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 16382
e2a57b34
MB
163832001-10-25 Miles Bader <miles@gnu.org>
16384
16385 * dispextern.h (struct image): Add `background',
16386 `background_valid', and `background_transparent' fields.
16387 (image_background, image_background_transparent): New declarations.
16388 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
16389 * xfns.c (image_background, image_background_transparent)
16390 (four_corners_best): New functions.
c2d53558 16391 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
16392 (gs_format): Add `:background' entry.
16393 (lookup_image): Set IMG's background color if specified.
16394 (pbm_load, xbm_load_image, png_load): Set IMG's background field
16395 when appropriate.
16396 (x_clear_image_1): Reset `background_valid' and
16397 `background_transparent_valid' fields.
16398 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
16399 calculating it here. Set IMG's background_transparent field.
16400 (enum xpm_keyword_index): Add XPM_BACKGROUND.
16401 (enum png_keyword_index): Add PNG_BACKGROUND.
16402 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
16403 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
16404 (enum gif_keyword_index): Add GIF_BACKGROUND.
16405 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 16406 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
16407 Pre-calculate image background color where necessary.
16408 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
16409 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
16410 color to use for image glyph reliefs.
16411
b547b6e8
GM
164122001-10-24 Gerd Moellmann <gerd@gnu.org>
16413
d9e3b8c6
GM
16414 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
16415 in full-width rows.
c2d53558 16416
b547b6e8
GM
16417 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
16418 Fix clearing of area not covered by scroll bar.
16419
f00691a3 164202001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
16421
16422 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
16423 and `real_start'.
c2d53558 16424 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
16425 (glyph_rect): Remove unused variable `area'.
16426
76cb5e06
GM
164272001-10-24 Gerd Moellmann <gerd@gnu.org>
16428
bdbdebff 16429 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
16430
16431 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
16432 (row_containing_pos): Take additional argument DY.
16433 Treat rows ending in middle of char differently.
62e33982
GM
16434 (display_line): Handle tabs on window systems differently.
16435
16436 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
16437 with additional argument.
16438
16439 * dispextern.h (row_containing_pos): Adjust prototype.
16440
76cb5e06
GM
16441 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
16442 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
16443 (try_window_id, try_window_reusing_current_matrix)
16444 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 16445 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 16446
f00691a3 164472001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 16448
c9e60620
PJ
16449 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
16450 gnuemacs).
16451 (HAVE_BOXES): Fix typo in comment.
16452 (push_menu_pane): Fix typo in comment.
16453
3b552d56
PJ
16454 * xdisp.c: (display_prop_string_p): Remove unused local declaration
16455 of `Qwhen'.
16456 (single_display_prop_string_p): Remove unused local declarations
16457 of `Qwhen' and `Qmargin'.
16458 (string_buffer_position): Remove unused variable `around'.
16459 (store_frame_title): Remove unused variable `width'.
16460
15c565ac
PJ
16461 * window.c: Don't define max.
16462 (coordinates_in_window): Remove unused variable `uy'.
16463
a8818eb9
PJ
16464 * widget.c: Don't define max.
16465
996fee11
PJ
16466 * process.c: Don't define max.
16467 (create_process): Remove unused variable `buffer'.
16468
496e1a5b
GM
164692001-10-23 Gerd Moellmann <gerd@gnu.org>
16470
c2d53558 16471 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 16472
5905ae8b
EZ
164732001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
16474
16475 * xfaces.c (Finternal_set_lisp_face_attribute)
16476 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
16477 frame is on a windowed display.
16478
24db49fb
GM
164792001-10-23 Gerd Moellmann <gerd@gnu.org>
16480
c2d53558
SM
16481 * dispnew.c (sync_window_with_frame_matrix_rows):
16482 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
16483 of marginal areas.
16484
c2d53558 16485 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 16486
f0487f05
EZ
164872001-10-23 Andreas Schwab <schwab@suse.de>
16488
16489 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
16490 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
16491
f0a48a01
GM
164922001-10-23 Gerd Moellmann <gerd@gnu.org>
16493
c2d53558 16494 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
16495 REAL_END. Notice if cursor gets overwritten.
16496 (notice_overwritten_cursor): Take X positions as parameters.
16497 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
16498 around call to x_draw_glyphs.
16499
f00691a3 165002001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 16501
fc11dff0
PJ
16502 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
16503 instead of C) and usage.
a50a10a0 16504
fc11dff0
PJ
16505 * editfns.c (char-to-string): Fix argument names (use CHAR instead
16506 of C) and usage.
a50a10a0
PJ
16507
16508 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
16509 `left', `max_width' and `max_height'.
16510
8738febd
GM
165112001-10-23 Gerd Moellmann <gerd@gnu.org>
16512
16513 * xdisp.c (display_line): For a tab continued to the next line,
16514 set row's ends_in_middle_of_char_p.
16515
653c329b
GM
165162001-10-22 Gerd Moellmann <gerd@gnu.org>
16517
16518 * xdisp.c (display_line): Fix computation of continuation lines
16519 width for TABs.
16520
f00691a3 165212001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 16522
7ba51063
PJ
16523 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
16524 `Qlaplace'.
16525
f958c5ac
PJ
16526 * fileio.c: Remove unused code.
16527
eb360291
MB
165282001-10-22 Miles Bader <miles@gnu.org>
16529
16530 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
16531 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
16532 Remove `DOC_STRINGS_IN_COMMENTS' cases.
16533
98515cf0
JR
165342001-10-21 Jason Rumney <jasonr@gnu.org>
16535
16536 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
16537
93026d88
EZ
165382001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
16539
16540 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
16541 (Finsert_string): Avoid the multi-line string literals warning.
16542
c9a95b79
MB
165432001-10-22 Miles Bader <miles@gnu.org>
16544
16545 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
16546 (Fdocumentation): Don't use it.
16547 (syms_of_doc): Don't initialize it.
16548
16549 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
16550 * print.c (Fwith_output_to_temp_buffer): Likewise.
16551 * window.c (Fsave_window_excursion): Likewise.
c2d53558 16552 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 16553 (Fsave_restriction): Likewise.
c2d53558
SM
16554 * eval.c (Frun_hooks, Frun_hook_with_args)
16555 (Frun_hook_with_args_until_failure)
16556 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
16557 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
16558 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
16559 (Funwind_protect, Fcondition_case): Likewise.
16560 * coding.c (Ffind_operation_coding_system): Likewise.
16561 * keyboard.c (Ftrack_mouse): Likewise.
16562
a3b10252
MB
165632001-10-21 Miles Bader <miles@gnu.org>
16564
c2d53558 16565 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
16566 (Fmake_hash_table): Add usage: string to doc string.
16567 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 16568 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
16569 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
16570 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
16571 (Fml_prefix_argument_loop): Likewise.
16572
f00691a3 165732001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 16574
c2d53558 16575 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 16576
c6f73eec
PJ
16577 * sysdep.c (init_sys_modes): Change doc-string comments to `new
16578 style' [w/`doc:' keyword].
16579
16580 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
16581 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
16582 comments to `new style' [w/`doc:' keyword].
16583
3cf3436e
JR
165842001-10-21 Jason Rumney <jasonr@gnu.org>
16585
16586 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
16587
c169b8f1
JR
16588 * w32term.c (remember_mouse_glyph): New function.
16589 (w32_mouse_position): Use it.
16590 (note_mouse_movement): If the mouse moved off the glyph, remember
16591 its new position.
c2d53558 16592
4fdd691b
JR
16593 * w32term.h (struct w32_output): Correct spelling of x_compatible.
16594 (w32_display_info): Add mouse_face_overlay.
16595
c169b8f1
JR
16596 * w32term.c (notice_overwritten_cursor): Renamed from
16597 note_overwritten_text_cursor. Rewritten to take glyph widths into
16598 account.
16599 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
16600 (fast_find_string_pos): New function.
16601 (fast_find_position): Return the correct vpos. Add parameter
16602 STOP. In the final row, stop before glyphs having STOP as object.
16603 Don't consider glyphs that are not from a buffer.
16604 (fast_find_position) [0]: Add a presumably more correct version
16605 for after 21.1.
16606 (expose_window_tree, expose_frame): Don't compute intersections here.
16607 (expose_window): Do it here instead.
16608 (expose_window_tree, expose_window, expose_line): Return 1 when
16609 overwriting mouse-face.
16610 (expose_window): If W is the window currently being updated, mark
16611 the frame garbaged.
16612 (expose_frame): If mouse-face was overwritten, redo it.
16613 (x_use_underline_position_properties): New variable.
16614 (syms_of_xterm): DEFVAR_BOOL it.
16615 (x_draw_glyph_string): Add comment to use it in future.
16616 (x_draw_glyph_string): Restore clipping after drawing box.
16617 Fix a computation of the underline position.
16618 (w32_get_glyph_string_clip_rect): Minor cleanup.
16619 (x_fill_stretch_glyph_string): Remove an assertion.
16620 (x_produce_glyphs): Don't convert multibyte characters
16621 to unibyte characters in unibyte buffers.
16622 (cursor_in_mouse_face_p): New function.
16623 (x_draw_stretch_glyph_string): Use it to choose a different GC
16624 when drawing a cursor within highlighted text. Don't draw
16625 background again if it has already been drawn.
16626 (x_draw_glyph_string_box): Don't draw a full-width
16627 box just because the glyph row's full_width_p flag is set.
16628 (x_draw_glyphs): Fix computation of rightmost x for
16629 full-width rows.
16630 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
16631 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 16632 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
16633 (x_update_window_end): Handle overwritten mouse face
16634 also for tool bar windows.
16635 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
16636 DRAW is DRAW_IMAGE_RAISED.
16637 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
16638 actually redrawn. Make the function static.
16639 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
16640 optimize away highlighting if we pass over that same overlay again.
16641 (note_mouse_highlight): Call mouse_face_overlay_overlaps
16642 to detect a case where we have to highlight a different region
16643 despite not having left the currently highlighted region.
16644 Set mouse_face_overlay in the x_display_info. Avoid changing the
16645 mouse pointer shape when show_mouse_face has already done it, or
16646 there is no need. Handle mouse-face and help-echo in strings.
16647 (glyph_rect): New function.
16648 (w32_mouse_position): Use it to raise the threshold for mouse
16649 movement event generation.
16650 (w32_initialize_display_info): Initialize the x_display_info's
16651 mouse_face_overlay.
16652 (w32_set_vertical_scroll_bar): Don't clear a zero height
16653 or width area.
16654 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
16655 a widget to zero height.
16656
3cf3436e 16657 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 16658 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
16659 equivalents in menu_items.
16660 (w32_menu_show): Don't overwrite an item's name with its key
16661 description in case the description is a multibyte string.
16662 (single_submenu): Some cleanup.
16663
16664 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
16665 (postprocess_image): New function.
16666 (lookup_image): Call it for all image types except PostScript.
16667 (x_kill_gs_process): Call postprocess_image.
16668 (tiff_error_handler, tiff_warning_handler): New functions.
16669 (tiff_load): Install them as handlers.
16670 (x_kill_gs_process): Recognize if someone has cleared the image
16671 cache under us.
16672 (valid_image_p): Protect better against invalid image
16673 specifications. Previous code could signal an error.
16674 (Fx_hide_tip, Fshow_tip): Doc fix.
16675 (Fv_max_tooltip_size): New variable.
16676 (syns_of_xfns): DEFVAR_LISP it.
16677 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 16678 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
16679 window_width. Use a maximum tooltip size specified by
16680 Vx_max_tooltip_size, if that has valid contents.
16681 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
16682 Make sure the tooltip is completely visible.
16683 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
16684 (Fx_create_frame): Adjust the frame's height for presence
16685 of the tool bar before calling x_figure_window_size.
16686 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
16687 when the window gets smaller.
16688 (x_set_foreground_color): Set frame's cursor_pixel.
16689 (x_set_foreground_color, x_set_background_color): Cleaned up.
16690 (x_set_font): Handle case of x_new_fontset returning the same name
16691 as before, although there was a change in fontsets.
16692
386ca361
MB
166932001-10-21 Miles Bader <miles@gnu.org>
16694
c2d53558 16695 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
16696 (Flogxor): Add usage: string to doc string.
16697 * charset.c (Fstring): Likewise.
16698 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
16699 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
16700
f00691a3 167012001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 16702
03be2694
PJ
16703 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
16704
16705 * alloc.c: Reindent DEFUNs with doc: keywords.
16706
16707 * abbrev.c (Finsert_abbrev_table_description): Reindent.
16708
14ff1ee0
PJ
16709 * frame.c: Change doc-string comments to `new style' [w/`doc:'
16710 keyword].
16711
2f147815 16712See ChangeLog.9 for earlier changes.
6922b018
KH
16713
16714;; Local Variables:
49b3bd82 16715;; coding: iso-2022-7bit
6922b018 16716;; End:
2a34a036 16717
2f147815 16718 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
16719 Copying and distribution of this file, with or without modification,
16720 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
16721
16722;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4