Fixing +++ tag from last checkin.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
7b7990cc
KS
12004-06-25 Kim F. Storm <storm@cua.dk>
2
3 * alloc.c (allocate_misc): Update total_free_markers.
4 (free_misc): New function.
5 (safe_alloca_unwind, free_marker): Use it.
6
7 * lisp.h (free_misc): Add prototype.
8
9 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
10
d8c379f8
RS
112004-06-24 Richard M. Stallman <rms@gnu.org>
12
13 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
14 (syms_of_emacs): Lisp variables deleted.
15
559cdd07
DK
162004-06-23 David Kastrup <dak@gnu.org>
17
18 * search.c (Freplace_match): Adjust the match-data more
19 thoroughly when replacing strings in the buffer.
20 search.c (match-data): When INTEGERS is non-nil and the last match
21 was in a buffer, add the buffer as last element to the match data.
22 (Fset_match_data): If an additional element of the match-data is
23 a buffer, restore it to last_thing_searched.
24 (save_search_regs): Save last_thing_searched as part of the match
25 data.
26 (restore_match_data): Restore it again.
27
dce417e7
LT
282004-06-23 Luc Teirlinck <teirllm@auburn.edu>
29
30 * keymap.c (Ftext_char_description): Doc fix.
31 * doc.c (Fsnarf_documentation): Doc fix.
32
ef54b2d0
KS
332004-06-22 Kim F. Storm <storm@cua.dk>
34
b5bc4d05
KS
35 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
36
ef54b2d0
KS
37 * lisp.h (struct Lisp_Save_Value): New member dogc.
38 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
39 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
40 (SAFE_FREE_LISP): New macro.
41
42 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
43 (make_save_value): Init new dogc member.
44 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
45
46 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
47 SAFE_FREE_LISP macros.
48
3d33d993
KS
492004-06-22 Kim F. Storm <storm@cua.dk>
50
51 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
52 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
53 in that memory area are unknown to GC. Add comments.
54
55 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
56
5c917f98
KS
572004-06-21 Kim F. Storm <storm@cua.dk>
58
59 * lisp.h (MAX_ALLOCA): Define here.
60 (safe_alloca_unwind): Add prototype.
61 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
62
63 * alloc.c (safe_alloca_unwind): New function.
64
65 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
66
67 * charset.c (Fstring): Use SAFE_ALLOCA.
68
69 * coding.c (MAX_ALLOCA): Remove define.
70
71 * data.c (MAX_ALLOCA): Remove define.
72 (Faset): Use SAFE_ALLOCA.
73
74 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
75
76 * fns.c (string_make_multibyte, string_to_multibyte)
77 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
78 (MAX_ALLOCA): Remove define.
79 (Fbase64_encode_region, Fbase64_encode_string)
80 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
81 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
82 memory leak if encoding fails.
83
84 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
85
9a09408e
EZ
862004-06-21 Eli Zaretskii <eliz@gnu.org>
87
88 * print.c (Fwith_output_to_temp_buffer): Doc fix.
89
376de739
RS
902004-06-20 Richard M. Stallman <rms@gnu.org>
91
92 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
93
94 * search.c (match_limit): Cleaner err msg when no match data available.
95
96 * window.c (syms_of_window): Doc fix.
97
98 * keyboard.c (command_loop_1): Handle values `only' and `identity'
99 for Vtransient_mark_mode.
100
101 * buffer.c (syms_of_buffer): Doc fix.
102
acd81db9
DK
1032004-06-21 David Kastrup <dak@gnu.org>
104
105 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
106 and unbinding of `case-fold-search' according to
107 `completion-ignore-case' around calls of string-match and
108 predicates, respectively. Should give satisfactory performance
109 in all relevant cases.
110
f303762d
JD
1112004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
112
95911c74
JD
113 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
114 clip_x/y_origin.
115
a6cb6b78
JD
116 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
117
f303762d
JD
118 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
119
120 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
121 on Mac OSX.
122
bbdb2684
LT
1232004-06-16 Luc Teirlinck <teirllm@auburn.edu>
124
125 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
126
5ea48b1c
KS
1272004-06-16 Kim F. Storm <storm@cua.dk>
128
129 * dispextern.h (Vimage_types): Remove extern.
130
803aac3e
MB
1312004-06-16 Miles Bader <miles@gnu.org>
132
133 * image.c (lookup_image_type): Initialize image type if necessary.
134
cdc97764
KS
1352004-06-15 Kim F. Storm <storm@cua.dk>
136
c4a5739c
KS
137 * xdisp.c (try_cursor_movement): Exclude header line from scroll
138 margin at top of window.
139 (try_window_reusing_current_matrix): Calculate proper cursor position
140 after scrolling up with non-zero scroll margin, as the old cursor
141 position corresponds to value of PT before executing this command.
142 (try_window_id): Consider scroll margin at bottom of window too;
143 otherwise we fail to scroll when hl-line-mode is enabled.
144
cdc97764
KS
145 * syntax.c (skip_chars): Only recognize [:class:] when it has the
146 proper format and class is a lower-case word.
147
5b166323
JD
1482004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
149
150 * gtkutil.c (xg_get_image_for_pixmap): New function.
151 (xg_get_gdk_pixmap_and_mask): Removed.
152 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
153 xg_get_gdk_pixmap_and_mask.
cdc97764 154
5b166323
JD
155 * xterm.h (struct x_display_info): Typo in comment fixed.
156
1ebd4f78
JB
1572004-06-14 Juanma Barranquero <lektu@terra.es>
158
159 * dispextern.h (Vimage_types): Make it conditional on
160 HAVE_WINDOW_SYSTEM.
161
162 * image.c (Vimage_types): Move from xdisp.c.
163 (Vimage_type_cache): New variable.
164 (define_image_type): New argument indicating whether an image
165 library was loaded; cache loaded status and return t on success,
166 nil otherwise.
167 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
168 (w32_delayed_load): New function to load an image library from a
169 list of possible filenames.
170 (init_xpm_functions, init_png_functions, init_jpeg_functions)
171 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
172 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new
173 argument.
174 (Finit_image_library): New function, extracted from `init_image'.
175 Try to initialize an image library on demand and cache whether we
176 were successful or not.
177 (syms_of_image): Initialize `Vimage_types' and
178 `Vimage_type_cache'. Add recognized image types to Vimage_types.
179 Export `init-image-library'.
180 (init_image): Remove initialization of all image types, except xbm
181 and pbm.
182
183 * xdisp.c (Vimage_types): Delete (moved to image.c).
184
904ee128
AS
1852004-06-14 Andreas Schwab <schwab@suse.de>
186
187 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
188 Avoid calling specbind when completion-regexp-list is empty.
189
092de21d
RS
1902004-06-13 Richard M. Stallman <rms@gnu.org>
191
192 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
193 (re_wctype, re_iswctype, re_wctype_to_bit):
194 Non-function definitions moved here from regex.c.
1ebd4f78 195
092de21d
RS
196 * regex.c (re_wctype, re_iswctype): Function defs longer static.
197 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
198 (re_wctype, re_iswctype, re_wctype_to_bit):
199 Non-function definitions moved to regex.h.
200
201 * window.c (Fselect_window): Doc fix.
202
203 * syntax.c: Include regex.h.
204 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
205 If requested, make a list of classes, then check the scanned
206 chars for membership in them.
207 (in_classes): New function.
208 Doc fix.
209
210 * keyboard.c (cmd_error): Don't call any_kboard_state
211 if inside a recursive edit level.
212
2132004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
214
215 * keyboard.c (command_loop): Call any_kboard_state before
216 command_loop_2 when at top level.
217
3ebc0939
AS
2182004-06-13 Andreas Schwab <schwab@suse.de>
219
cea5d0d4
AS
220 * print.c (print_object): Always use %ld for printing EMACS_INT.
221
222 * keyboard.c (cancel_hourglass_unwind): Return a value.
223 (modify_event_symbol): Always use %ld for printing EMACS_INT.
224 (Fexecute_extended_command): Likewise.
225
226 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
227 avoid clashes.
228 (SYNTAX): Likewise.
229 (SYNTAX_WITH_FLAGS): Likewise.
230 (SYNTAX_MATCH): Likewise.
231
232 * syntax.c (char_quoted): Avoid warning about undefined operation.
233 (find_defun_start): Likewise.
234 (scan_lists): Likewise.
235 (INC_FROM): Likewise.
236 (scan_sexps_forward): Likewise.
237
be8c4ce4
AS
238 * image.c: Include <ctype.h>.
239
3ebc0939
AS
240 * xfaces.c (face_attr_equal_p): Declare parameters.
241
6fb41b5b
KH
2422004-06-13 Kenichi Handa <handa@m17n.org>
243
244 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
245
fc3095ce
EZ
2462004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
247
248 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
249
66189a40
KH
2502004-06-12 Kenichi Handa <handa@m17n.org>
251
252 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
253 ccl_prog_stack_struct and update it.
254 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
255 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
256 ccl->eof_ic on EOF.
257 (ccl_debug_hook): New function.
258 (struct ccl_prog_stack): New member eof_ic.
259 (ccl_driver): Handle EOF in subrountine call correctly.
260
2612004-06-11 Kenichi Handa <handa@m17n.org>
262
263 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
264
1da71023
KS
2652004-06-11 Kim F. Storm <storm@cua.dk>
266
267 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
268
e9efcef4
JB
2692004-06-11 Juanma Barranquero <lektu@terra.es>
270
271 * keyboard.c (Fposn_at_point): Doc fix.
272
9b9ceb61
DK
2732004-06-11 David Kastrup <dak@gnu.org>
274
275 * search.c (match_limit): Don't flag an error if match-data
276 exceeding the allocated search_regs.num_regs gets requested, just
277 return Qnil.
278
6e87ac8f
MB
2792004-06-08 Miles Bader <miles@gnu.org>
280
281 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
282
0b0dea7b
JB
2832004-06-07 Juanma Barranquero <lektu@terra.es>
284
285 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
286 (Fcurrent_time_string, Fcurrent_time_zone)
287 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
288
a0a23346
MB
2892004-06-07 Miles Bader <miles@gnu.org>
290
08384afd 291 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
292 (push_named_merge_point): New function.
293 (merge_named_face): New function.
294 (merge_face_ref, face_at_buffer_position, face_at_string_position):
295 Use `merge_named_face'.
296 (merge_face_inheritance): Function removed.
297 (merge_face_ref): Renamed from `merge_face_vector_with_property'.
298 Add new `err_msgs' and `named_merge_points' args. Return error
299 status. Only print error messages if ERR_MSGS is true. Don't try to
300 do :inherit attribute validation.
301 (merge_face_heights): Handle `unspecified' in both directions.
302 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
303 Call `merge_face_ref' instead of `merge_face_inheritance'.
304 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
305 (compute_char_face, face_at_buffer_position)
306 (face_at_string_position): Call `merge_face_ref' instead of
307 `merge_face_vector_with_property'.
308
12d5b185
KH
3092004-06-07 Kenichi Handa <handa@m17n.org>
310
311 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
312 the necessary places.
313
2e2d7ee6
KS
3142004-06-07 Kim F. Storm <storm@cua.dk>
315
316 * process.c (Fdelete_process): Undo 2004-05-28 change.
317 Instead, call status_notify also for network process.
318 (status_message): Use process instead of status as arg.
319 Give messages "deleted" or "connection broken by remote peer" for
320 an exited network process.
321 (status_notify): Change call to status_message.
322 (read_process_output): Increase readmax to 4096. Do not increase
323 buffer size for datagram channels (default is now large enough).
324
fcf0d299
ST
3252004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
326
327 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
328 problem due to newly defined variable.
329
0722292b
MB
3302004-06-06 Miles Bader <miles@gnu.org>
331
332 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
333 immediately if non-interactive or not initialized.
334
ddfb8369
RS
3352004-06-05 Richard M. Stallman <rms@gnu.org>
336
337 * minibuf.c (Fcompleting_read): Doc fix.
338
57015754
AS
3392004-06-05 Andreas Schwab <schwab@suse.de>
340
341 * macfns.c (x_create_tip_frame): Fix declaration after statement.
342
23715ea6
JB
3432004-06-05 Juanma Barranquero <lektu@terra.es>
344
345 * keymap.c (Fdescribe_vector): Fix docstring.
346 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
347
8e330b22
MB
3482004-06-05 Miles Bader <miles@gnu.org>
349
350 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
351 attributes have different values than the default face.
352
9742a3a6
EZ
3532004-06-04 Eli Zaretskii <eliz@gnu.org>
354
355 * xfaces.c (x_supports_face_attributes_p): Make this function
356 conditional on HAVE_WINDOW_SYSTEM.
357 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]: Don't
358 call x_supports_face_attributes_p if it was not compiled in.
359
9717e36c
MB
3602004-06-04 Miles Bader <miles@gnu.org>
361
362 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
363 from Ftty_supports_face_attributes_p.
364 (x_supports_face_attributes_p): New function.
365 (Ftty_supports_face_attributes_p): Function deleted.
366 (Fdisplay_supports_face_attributes_p): New function.
367 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 368 (face_attr_equal_p): New function.
9717e36c
MB
369 (lface_equal_p): Use it.
370
52deb19f
JB
3712004-06-03 Juanma Barranquero <lektu@terra.es>
372
373 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
374 (Vw32_color_map): Fix typo in docstring.
375 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
376 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
377 Make argument names match their use in docstring.
378
86d373e6
JB
3792004-06-02 Juanma Barranquero <lektu@terra.es>
380
381 Work around bugs/problems with MinGW builds of graphics libraries
382 called from MSVC builds of Emacs.
383
384 * image.c (lookup_image): Make pointer to img static.
385 (png_read_from_memory): Disable "global" optimization.
386
2fb0ce67
SM
3872004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
388
389 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
390
50bf7673
ST
3912004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
392
393 * macfns.c: Don't include ccl.h.
394 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
395 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
396 TextUtils.h.
397 (Fx_create_frame): Sync with xfns.c. Initialize cursor
398 descriptors.
50bf7673
ST
399 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
400 display height/width.
401 (compute_tip_xy, Vx_max_tooltip_size): Declare.
402 (unwind_create_tip_frame, compute_tip_xy): New functions.
403 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
404 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
405 and last_show_tip_args.
2fb0ce67 406
50bf7673
ST
407 * macgui.h [!MAC_OSX]: Include Gestalt.h.
408 (Cursor, No_Cursor): New defines.
86d373e6
JB
409 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility
410 macro.
50bf7673
ST
411 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
412
413 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
414
415 * macterm.c: Don't include Gestalt.h.
416 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
417 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
418 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
419 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
420 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
421 (construct_mouse_click, XTmouse_position)
422 (x_scroll_bar_report_motion, x_calc_absolute_position)
423 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
424 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
425 (note_mouse_movement): Clear the mouse face and reset the pointer
426 shape when the pointer goes outside the frame without grabbing.
427 (mac_front_window): New function.
428 (mac_window_to_frame): New macro.
429 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
430 (do_window_activate, do_window_deactivate, do_app_resume)
431 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
432 (do_zoom_window, mac_do_receive_drag, XTread_socket)
433 (mac_check_for_quit_char): Use mac_front_window and/or
434 mac_window_to_frame.
435 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
436 scroll-bar click event.
437 (mac_define_frame_cursor): Change the pointer shape.
86d373e6
JB
438 (x_free_frame_resources): Reset tip_window to NULL when it is
439 disposed.
50bf7673 440 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
86d373e6
JB
441 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize
442 arrow_cursor.
50bf7673
ST
443 (do_window_update): Don't do anything if the updated window is the
444 tooltip window.
445 (do_mouse_moved): Handle mouse movement events here (previously in
446 XTread_socket). Clear the mouse face if
447 dpyinfo->mouse_face_hidden is set.
448 (do_os_event, do_events): Remove (now in XTread_socket).
449 (XTread_socket): Immediately return if interrupt_input_blocked.
86d373e6
JB
450 Loop until all the events in the queue are processed. Rearrange
451 codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
452 contents of do_os_event and do_events. Remove mouse movement
453 handling (now in do_mouse_moved). Add the case where
454 Vmouse_highlight has an integer value.
455 (NewMacWindow): Remove.
456 (make_mac_frame): Do what NewMacWindow previously did. Don't do
457 excess initializations.
458 (make_mac_terminal_frame): Previous initializations in
459 make_mac_frame are moved here.
86d373e6
JB
460 (mac_initialize_display_info): Initialize
461 dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
462
463 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
464 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
465
08fd1251
RS
4662004-05-29 Richard M. Stallman <rms@gnu.org>
467
468 * lisp.h (truncate_undo_list): Update decl.
469
470 * alloc.c (undo_outer_limit): New variable.
471 (syms_of_alloc): Defvar it.
472 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
473
474 * undo.c (truncate_undo_list): New arg LIMITSIZE.
475
476 * alloc.c (lisp_align_malloc): Check for base == 0
477 regardless of HAVE_POSIX_MEMALIGN.
478 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
479
227ef0ff
SM
4802004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
481
482 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
483 (marker_blocks_pending_free): Remove.
484 (Fgarbage_collect): Sweep after cleaning up undo-lists.
485 Mark the undo lists after claning them up.
486 Don't free block in marker_blocks_pending_free.
487 (mark_buffer): Don't mark undo_list.
488 (gc_sweep): Sweep hash-tables and strings first.
489 Do free marker blocks that are empty.
490
034a6113
SM
4912004-05-28 Jim Blandy <jimb@redhat.com>
492
493 * regex.c (print_partial_compiled_pattern): Add missing 'break'
494 after 'case wordend'. For symbeg and symend, print to stderr,
495 like the other cases.
496
33594a8d
NF
4972004-05-28 Noah Friedman <friedman@splode.com>
498
499 * process.c (Fdelete_process): Do not call remove_process.
500
ce50a847
SM
5012004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
502
503 * alloc.c (struct backtrace): Remove.
504 (Fgarbage_collect): Use the new mark_backtrace.
505
506 * eval.c (mark_backtrace): New function.
507
508 * minibuf.c (run_exit_minibuf_hook): New function.
509 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
510 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
511
1e8dae36
KS
5122004-05-27 Kim F. Storm <storm@cua.dk>
513
514 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
515 over display properties, e.g. images, that replace buffer text.
516
846faa3b
KS
5172004-05-25 Kim F. Storm <storm@cua.dk>
518
519 * alloc.c (marker_blocks_pending_free): New var.
520 (gc_sweep): Store free marker blocks on that list.
521 (Fgarbage_collect): Free them after undo-list cleanup.
522
523 * process.c (wait_reading_process_input): Check connect_wait_mask
524 before actually accepting connection in case it has already been
525 accepted due to recursion.
526
6239a668
KH
5272004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
528
ce50a847
SM
529 * coding.c (Fset_safe_terminal_coding_system_internal):
530 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 531
71d5a208
RS
5322004-05-22 Richard M. Stallman <rms@gnu.org>
533
534 * alloc.c (Fmake_string): Doc fix.
535
536 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
537 and the alist pairs too.
538
539 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
540
541 * emacs.c (main): Update copyright year.
542
543 * fileio.c (Fread_file_name): Expand DIR if not absolute.
544
545 * insdel.c (del_range_2, replace_range): Don't write an anchor
546 if the gap is empty.
547
548 * xdisp.c (try_scrolling): If scroll-up-aggressively or
549 scroll-down-aggressively is small but positive, put point
550 near the screen edge.
551
f63fd14e
JB
5522004-05-22 Juanma Barranquero <lektu@terra.es>
553
554 * keymap.c (Fdefine_key): Doc fix.
555
4d12067c
KS
5562004-05-22 Kim F. Storm <storm@cua.dk>
557
558 * alloc.c (struct backtrace): Add debug_on_exit member.
559 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
560 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
561 the removed cons cells.
562 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
563 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
564 any cons cells pointing to unallocated stings.
565 Do not lisp_free any marker blocks, as there may still be pointers
566 to them from buffer undo lists at this stage of GC.
567
568 * keyboard.c (struct backtrace): Add debug_on_exit member.
569 (Fcommand_execute): Clear it.
570
931285e2
LT
5712004-05-20 Luc Teirlinck <teirllm@auburn.edu>
572
573 * intervals.c (lookup_char_property): Do not prematurely return nil.
574
669fa600
SM
5752004-05-19 Jim Blandy <jimb@redhat.com>
576
577 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 578 beginning and end of symbols.
4d12067c 579
669fa600
SM
580 * regex.c (enum syntaxcode): Add Ssymbol.
581 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
582 (re_opcode_t): New opcodes `symbeg' and `symend'.
583 (print_partial_compiled_pattern): Print the new opcodes properly.
584 (regex_compile): Parse the new operators.
ce50a847 585 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
586 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
587 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
588 (re_match_2_internal): Match symbeg and symend.
589
590 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
591
0d8c2e5c
KS
5922004-05-19 Kim F. Storm <storm@cua.dk>
593
594 * .gdbinit (xsymbol): Fix last change.
595
669fa600
SM
5962004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
597
598 * .gdbinit (xprintstr): New fun.
599 (xstring, xprintsym): Use it.
600
601 * w32proc.c (create_child): Use INTMASK.
602
603 * alloc.c (Fgarbage_collect): Do all the marking before flushing
604 unmarked elements of the undo list.
605
9a6a4c40
DP
6062004-05-18 David Ponce <david@dponce.com>
607
608 * print.c (print): Reset print_depth before to call print_object.
609
f3c4ec74
JR
6102004-05-18 Jason Rumney <jasonr@gnu.org>
611
612 * w32console.c: Prefix RIF functions with w32con_ to avoid
613 namespace clash with functions in term.c and w32term.c.
614
615 * w32menu.c (add_menu_item, w32_menu_display_help)
616 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
617
0d8c2e5c 618 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 619
6be49c3a
EZ
6202004-05-18 Eli Zaretskii <eliz@gnu.org>
621
4d0b9a0a
EZ
622 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
623
6be49c3a
EZ
624 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
625 with make_number.
626 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
627 with XINT.
628
0bc90bba
KS
6292004-05-18 Kim F. Storm <storm@cua.dk>
630
89d19988
KS
631 * blockinput.h (INPUT_BLOCKED_P): New macros.
632
633 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
634 (Ftop_level): Unblock input if blocked.
635
0bc90bba
KS
636 * buffer.h (GET_OVERLAYS_AT): New macro.
637 * msdos.c (IT_note_mouse_highlight): Use it.
638 * textprop.c (get_char_property_and_overlay): Use it.
639 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
640 * xfaces.c (face_at_buffer_position): Use it.
641
642 * print.c (print_object): Increase buf size.
643
653bd0f6
JR
6442004-05-17 Jason Rumney <jasonr@gnu.org>
645
646 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
647 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
648 Lisp_Object using i member.
649 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
650 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
651 consistently.
652
653 * w32proc.c (create_child): Use make_number instead of masking pid.
654
655 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
656 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
657 Use EQ to compare Lisp_Objects.
658 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
659
660 * w32term.c (w32_num_mouse_buttons): Rename from
661 Vw32_num_mouse_buttons and make it an int.
662
663 * w32.c (init_environment): Use it.
664
665 * w32fns.c (w32_wnd_proc): Likewise.
666
667 * w32proc.c (w32_pipe_read_delay): Rename from
668 Vw32_pipe_read_delay and make it an int.
669
670 * w32.c (_sys_read_ahead): Use it.
671
672 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
673
674 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
675
676 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
677 (key_event): Don't mix Lisp_Object and int.
678
679 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
680
681 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
682 modifiers in language change event.
683
54b53ba7
KS
6842004-05-17 Kim F. Storm <storm@cua.dk>
685
686 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
687 Such objects may be freed markers which still exist on an undo list.
688
6e86a75d
JB
6892004-05-16 Juanma Barranquero <lektu@terra.es>
690
691 * data.c (Fset_default): Make argument names match their use in
692 docstring.
693
fc80da24
AS
6942004-05-15 Andreas Schwab <schwab@suse.de>
695
696 * emacs.c (gdb_array_mark_flag): Define.
697 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
698
c1380aa6
EZ
6992004-05-15 Eli Zaretskii <eliz@gnu.org>
700
701 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
702 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
703 defined for the MS-DOS build.
704
89458937
SM
7052004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
706
707 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
708
08020f9a
KH
7092004-05-14 Kenichi Handa <handa@m17n.org>
710
711 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
712
a433994a
ST
7132004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
714
715 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
716 section to frame.c section.
717 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 718 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 719
a433994a 720 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 721
a433994a 722 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 723
a433994a
ST
724 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
725 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
726 (XTread_socket): Fix int/Lisp_Object mixup.
727 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 728
a433994a
ST
729 * macterm.h (struct frame, struct face, struct image)
730 (display_x_get_resource, Fx_display_color_p)
89458937
SM
731 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
732 Add prototypes.
a433994a 733
b51a51b9
KS
7342004-05-14 Kim F. Storm <storm@cua.dk>
735
736 * process.c (wait_reading_process_input): Make reentrant.
737 Make Available and Connecting non-static. Save and restore value
738 of waiting_for_user_input_p.
739
2bde1dd8
KS
7402004-05-13 Kim F. Storm <storm@cua.dk>
741
742 * keyboard.c (mark_kboards): Don't mark x and y members
743 that are overloaded in selection request events.
744
a267ab4d
SM
7452004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
746
747 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
748
eb15ce9e
GM
7492004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
750
751 * window.c (Fdisplay_buffer, Fsplit_window)
752 (split-height-threshold): Doc fix.
753
7fc92635
JB
7542004-05-13 Juanma Barranquero <lektu@terra.es>
755
756 * xfaces.c (Ftty_supports_face_attributes_p)
757 (Finternal_copy_lisp_face): Fix typo in docstring.
758 (Finternal_get_lisp_face_attribute): Fix docstring.
759
1ec2a572
JD
7602004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
761
762 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
763
ae9292e0
ST
7642004-05-11 Steven Tamm <steventamm@mac.com>
765
766 * macfns.c (Fx_create_frame): Default to using tool-bar by
767 setting tool-bar-lines to 1 in default-frame-alist.
768
7692004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
770
771 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
772 (xpm_get_color_table_v, xpm_make_color_table_h)
773 (xpm_put_color_table_h, xpm_get_color_table_h)
774 (xpm_str_to_color_key, xpm_load_image, xpm_load)
775 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 776 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 777
fe97e8df
ST
7782004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
779
a267ab4d 780 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
781 instead of FRAME_X_P
782
b47e779e
KS
7832004-05-11 Kim F. Storm <storm@cua.dk>
784
785 * process.c (read_process_output): Grow decoding_buf when needed;
786 this could cause a crash in allocate_string and compact_small_strings.
787
cdc9b845
EZ
7882004-04-29 Jim Blandy <jimb@redhat.com>
789
790 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
791 against proper opcode.
792
aa7094ba
JB
7932004-05-10 Juanma Barranquero <lektu@terra.es>
794
795 * process.c (Fstart_process): Fix docstring.
796
797 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
798 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
799 (Fsplit_char, Fchar_charset): Make argument names match their use
800 in docstring.
801
e109331a
RS
8022004-05-10 Richard M. Stallman <rms@gnu.org>
803
804 * print.c (print_preprocess): Use being_printed, loop_count and
805 halftail to detect overdeep nesting and cyclic cdr chains.
806
9a28b921
AS
8072004-05-10 Andreas Schwab <schwab@suse.de>
808
809 * lisp.h: Declare Fmake_symbolic_link.
810
811 * fileio.c (Frename_file): Remove extra argument in call to
812 Fmake_symbolic_link.
813
e2c02c1a
KS
8142004-05-10 Kim F. Storm <storm@cua.dk>
815
816 * xdisp.c (calc_line_height_property): Use string position when
817 object is a string.
818
cfe9d13e
KH
8192004-05-10 Kenichi Handa <handa@m17n.org>
820
a57e8159
KH
821 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
822 inhibit-modification-hooks to t temporarily before calling
823 Ferase_buffer.
824
825 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
826 inhibit-modification-hooks to t temporarily before calling
827 Ferase_buffer.
828
829 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
830 inhibit-modification-hooks to t temporarily before calling
831 Ferase_buffer.
832
cfe9d13e
KH
833 * fns.c (count_combining): Delete it.
834 (concat): Don't check combining bytes.
835
ceb96489
JR
8362004-05-09 Jason Rumney <jasonr@gnu.org>
837
838 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
839 (globals_of_w32fns): Set it.
840
b1c661c7
JB
8412004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
842
843 * data.c (Fquo): Simplify.
844
28712a21
JB
8452004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
846
847 * data.c (Fquo): If any argument is float, do the computation in
848 floating point.
849
0f0af7a8
JB
8502004-05-08 Juanma Barranquero <lektu@terra.es>
851
88214ef6
JB
852 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
853 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
854 Fix spelling of Emacs on docstring.
855 (Fset_process_coding_system, Fprocess_coding_system)
856 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
857 Make argument names match their use in docstring.
858 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
859 Fix docstring.
860
0f0af7a8
JB
861 * editfns.c (Finsert_buffer_substring): Make argument names match their
862 use in docstring.
863
864 * syntax.c (Fmodify_syntax_entry): Fix docstring.
865
2a316a84
ST
8662004-05-07 Steven Tamm <steventamm@mac.com>
867
868 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
869 around call to ReceiveEvent to avoid certain crashes.
870
8712004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 872
2a316a84
ST
873 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
874 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
875 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
876 Save/restore the current graphics port and device handle when
877 drawing into an offscreen graphics world.
878
879 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
880 (gif_load): Likewise.
881
ab80314b
JB
8822004-05-07 Juanma Barranquero <lektu@terra.es>
883
884 * window.c (Fset_window_buffer): Fix docstring.
885
70646bb5
TTN
8862004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
887
888 * emacs.c (main) [VMS]: Fix var ref.
889
b03a4fdd
JB
8902004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
891
892 * data.c (Fsetq_default): Fix docstring.
893
279d3293
JR
8942004-05-06 Jason Rumney <jasonr@gnu.org>
895
896 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
897 to avoid name clash.
898
f72b5416
JD
8992004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
900
901 * fileio.c (barf_or_query_if_file_exists): Use lstat.
902 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 903 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 904
6ab66799
KS
9052004-05-04 Kim F. Storm <storm@cua.dk>
906
907 * xdisp.c (Qtotal): New var.
908 (syms_of_xdisp): Intern and staticpro it.
909 (calc_line_height_property): New arg total. Set it if
910 line-spacing property has format (total . VALUE).
911 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
912 Handle total line-spacing property.
913
ab2d724b
JD
9142004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
915
916 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
917 "under" scroll bar when size/position changes.
918
238add5e
JR
9192004-05-03 Jason Rumney <jasonr@gnu.org>
920
921 * makefile.nt: Remove.
922
1644f4e4
EZ
9232004-05-02 Eli Zaretskii <eliz@gnu.org>
924
a267ab4d
SM
925 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
926 Avoid compiler warnings.
05fdbeb8 927
1644f4e4
EZ
928 * Makefile.in (region-cache.o): Depend on config.h.
929
6cbc951e
SM
9302004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
931
932 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
933 with continuation lines, too.
934
2b98b088
TTN
9352004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
936
937 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
938
d9bf7950
SM
9392004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
940
941 * xdisp.c (calc_line_height_property): YAILOM (yet another
942 int/Lisp_Object mixup).
943
affa509c
EZ
9442004-05-01 Eli Zaretskii <eliz@gnu.org>
945
946 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
947 undo bad effect of pack(4) in some versions of system headers.
948
07c07cfe
JR
9492004-05-01 Jason Rumney <jasonr@gnu.org>
950
951 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
952
e71caa4e
KS
9532004-04-30 Kim F. Storm <storm@cua.dk>
954
955 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 956 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
957
958 * dispextern.h (struct it): Remove member use_default_face.
959 Add members override_ascent, override_descent, override_boff.
960
961 * xdisp.c (init_iterator): Handle line-spacing float value.
962 Initialize override_ascent member.
963 (append_space_for_newline): Reset override_ascent.
964 Remove use_default_face.
965 (calc_line_height_property): New function to calculate value of
966 line-height and line-spacing properties. Look at overlays, too.
967 Set override_ascent, override_descent, override_boff members when
968 using another face than the current face. Float values are now
969 relative to the frame default font, by default; accept a cons
970 of ratio and face name to specify value relative to a specific face.
971 (x_produce_glyphs): Use calc_line_height_property.
972 Use override_ascent etc. when set to handle different face heights.
973 A negative line-spacing property value is interpreted as a total
974 line height, rather than inter-line spacing.
975 (note_mouse_highlight): Allocate room for 40 overlays initially.
976
0fddae66
SM
9772004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
978
979 * data.c (Fsubr_name): New fun.
980 (syms_of_data): Defsubr it.
981
712d23dc
KS
9822004-04-29 Kim F. Storm <storm@cua.dk>
983
984 * xdisp.c (null_glyph_slice): New var.
985 (append_glyph, append_composite_glyph, append_stretch_glyph):
986 Use it to initialize glyph slice.
987
033ad8c6
SM
9882004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
989
990 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
991 (on_hot_spot_p): Make sure we always return a value.
992 (Flookup_image_map): Remove unused var ix and iy.
993 (note_mode_line_or_margin_highlight): Remove unused var `image'.
994
93397360
EZ
9952004-04-27 Eli Zaretskii <eliz@gnu.org>
996
997 * msdos.c (init_environment): If one of the TMP... environment
998 variables is set to a drive letter without a trailing slash,
999 append a slash.
1000
0c54865e
EZ
10012004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
1002
1003 * editfns.c (lisp_time_argument): Provide externally.
1004
1005 * fileio.c (Fset_file_times): New function.
1006 (syms_of_fileio): Intern and staticpro it.
1007
d3b111bd
KS
10082004-04-27 Kim F. Storm <storm@cua.dk>
1009
07dc1231
KS
1010 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
1011 header line strings.
1012
360fe9d2
KS
1013 * dispextern.h (struct it): New member use_default_face.
1014
d3b111bd
KS
1015 * xdisp.c (Qline_height): New variable.
1016 (syms_of_xdisp): Intern and staticpro it.
1017 (append_space_for_newline): Partially undo 2004-04-25 change;
1018 add default_face_p arg, and restore callers.
1019 Clear it->use_default_face after use.
1020 (x_produce_glyphs): Set default font for ascii char if
1021 it->use_default_font is set. Change line-spacing property to set
1022 just extra line spacing. Handle new line-height property.
1023
0448588b
AS
10242004-04-26 Andreas Schwab <schwab@suse.de>
1025
1026 * print.c (print_object): Print non-ascii characters in bool
1027 vector representation as octal escapes.
1028
1029 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
1030 * print.c (print_object): Use it instead of BITS_PER_CHAR for
1031 bool vectors.
1032 * lread.c (read1): Likewise.
1033 * alloc.c (Fmake_bool_vector): Likewise.
1034 * data.c (Faref, Faset): Likewise.
1035 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
1036 (mapcar1): Likewise.
d3b111bd 1037
536d6baa
ST
10382004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1039
1040 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
1041
ae11577a
MB
10422004-04-26 Miles Bader <miles@gnu.org>
1043
1044 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
1045
e198ba87
JB
10462004-04-26 Juanma Barranquero <lektu@terra.es>
1047
1048 * buffer.c (Fpop_to_buffer): Fix docstring.
1049
f3d5f92d 10502004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 1051
f3d5f92d
ST
1052 * lread.c (init_lread): Don't display missing lisp directory
1053 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 1054 may be built without correct installation path.
f3d5f92d 1055
03e35edc
KS
10562004-04-25 Kim F. Storm <storm@cua.dk>
1057
9ff3aa31
KS
1058 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1059
1060 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1061
03e35edc
KS
1062 * xdisp.c (append_space_for_newline): Rename from append_space.
1063 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
1064 (x_produce_glyphs): Handle line-spacing property on newline char.
1065 If value is t, adjust ascent and descent to fit current row height.
1066 If value is an integer or float, set extra_line_spacing to integer
1067 value, or to float value x current line height.
1068
f24814e0
KH
10692004-04-23 Kenichi Handa <handa@m17n.org>
1070
1071 * fontset.c (Finternal_char_font): If POSITION is nil, return
1072 font for displaying CH with the default face.
1073
d814862a
JB
10742004-04-23 Juanma Barranquero <lektu@terra.es>
1075
1076 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
1077
063a45c5
SM
10782004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
1079
1080 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
1081 Don't make assumptions about the relative place of i and val.
1082 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
1083
ae7ab2d3
KS
10842004-04-21 Kim F. Storm <storm@cua.dk>
1085
1086 * dispextern.h (struct glyph_slice): New struct.
1087 (struct glyph): New member slice.
1088 (GLYPH_SLICE_EQUAL_P): New macro.
1089 (GLYPH_EQUAL_P): Use it.
1090 (struct glyph_string): New member slice.
1091 (struct it_slice): New struct.
1092 (struct it): New member slice, add member to stack too.
1093 New member constrain_row_ascent_descent_p.
1094 (image_ascent): Add prototype.
1095
1096 * dispnew.c (buffer_posn_from_coords): Return full image width
1097 and height even for image slices (posn is relative to full image).
1098 (marginal_area_string): Adjust x0,y0 for image slice.
1099
1100 * image.c (image_ascent): Add slice arg; calculate ascent for
1101 image slice (or full image).
1102
1103 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
1104 (syms_of_keyboard): Defsubr them.
1105
1106 * lisp.h (pos_visible_p): Fix prototype.
1107
c62aec78 1108 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
1109 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1110 (x_draw_image_foreground, x_draw_image_relief)
1111 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1112 Draw sliced images.
1113
1114 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
1115 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1116 (x_draw_image_foreground, x_draw_image_relief)
1117 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
1118 Draw sliced images.
1119
1120 * w32term.h (image_ascent): Remove prototype.
1121
1122 * window.c (Fpos_visible_in_window_p): Return pixel position if
1123 PARTIALLY arg is non-nil. Simplify. Doc fix.
1124 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
1125 to return/set vscroll in pixels.
1126
1127 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
1128
1129 * xdisp.c (Qslice): New variable.
1130 (syms_of_xdisp): Intern and staticpro it.
1131 (pos_visible_p): Return pixel position in new x and y args.
1132 (init_iterator): Reset it->slice info.
1133 (handle_display_prop): Parse (slice ...) property.
1134 (push_it, pop_it): Save/restore slice info.
1135 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
1136 force repositioning of tall row if window is vscrolled, as that
1137 would reset vscroll.
1138 (append_space): Set it->constrain_row_ascent_descent_p to avoid
1139 increasing row height if row is non-empty.
1140 (fill_image_glyph_string): Copy slice info.
1141 (take_vertical_position_into_account): Simplify.
1142 (produce_image_glyph): Handle iterator slice info, setup glyph
1143 slice info. Do not force minimum line height.
1144 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
1145 do not increase height (ascent/descent) of non-empty row when
1146 adding normal character glyph; instead reduce glyph ascent/descent
1147 appropriately; if row is higher than current glyph, adjust glyph
1148 descent/ascent to reposition glyph within the existing row.
1149 Likewise, when char is newline, only set ascent/descent if row is
1150 currently empty.
1151 (note_mouse_highlight): Handle hotspots with sliced image.
1152
1153 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1154 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1155 (x_draw_image_foreground, x_draw_image_relief)
1156 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1157 Draw sliced images.
1158
1159 * xterm.h (image_ascent): Remove prototype.
1160
d58f8753
SM
11612004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1162
1163 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
1164
4ce2719d
JPW
11652004-04-20 John Paul Wallington <jpw@gnu.org>
1166
1167 * fns.c (Fassoc, Feql): Fix indentation.
1168
d58f8753 1169 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 1170
95f8c3b9
JPW
11712004-04-19 John Paul Wallington <jpw@gnu.org>
1172
1173 * fns.c (Feql): New function.
d58f8753 1174 (syms_of_fns): Defsubr it.
95f8c3b9 1175
b7e85537
JR
11762004-04-18 Jason Rumney <jasonr@gnu.org>
1177
1178 * w32select.c (Fw32_set_clipboard_data): Get sequence number
1179 after closing the clipboard.
1180
5a72efd4
LT
11812004-04-16 Luc Teirlinck <teirllm@auburn.edu>
1182
1183 * buffer.c (Fbuffer_base_buffer): Doc fix.
1184
20dc8583
KS
11852004-04-17 Kim F. Storm <storm@cua.dk>
1186
60962ec4
KS
1187 * keymap.c (Fkey_description): Add optional PREFIX arg.
1188 Combine prefix with KEYS to make up the full key sequence to describe.
1189 Correlate meta_prefix_char and following (simple) key to describe
1190 as meta modifier. All callers changed.
1191 (describe_map): Rename arg `keys' to `prefix'. Remove local
1192 `elt_prefix' var. Use Fkey_description with prefix instead of
1193 elt_prefix combined with Fsingle_key_description.
1194 (describe_vector): Declare static. Replace arg `elt_prefix' with
1195 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
1196 if !KEYMAP_P. Use Fkey_description with prefix instead of
1197 Fsingle_key_description.
1198
1199 * keymap.h (Fkey_description): Fix prototype.
1200 (describe_vector): Remove prototype.
1201
409368b9
KS
1202 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
1203
20dc8583
KS
1204 * image.c (PNG_BG_COLOR_SHIFT): Remove.
1205 (png_load): Fix calculation of transparent background color on X
1206 and W32 platforms.
1207
75c5501b
JB
12082004-04-16 Juanma Barranquero <lektu@terra.es>
1209
1210 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
1211 not too large before computing how much to scroll.
1212
da879ae8
SM
12132004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
1214
1215 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
1216
d01ca4a8
LT
12172004-04-14 Luc Teirlinck <teirllm@auburn.edu>
1218
1219 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
1220 Add hyperlink to Elisp manual to the docstring.
1221
572943b3
SM
12222004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
1223
1224 * callint.c (fix_command): Use XDCR.
1225
5e30a0fb
NR
12262004-04-14 Nick Roberts <nick@nick.uklinux.net>
1227
1228 * window.c (Fget_lru_window): Doc fix.
1229
a27ddfaf
KS
12302004-04-14 Kim F. Storm <storm@cua.dk>
1231
1232 * editfns.c (Fformat): Fix allocation size of precision array.
1233
1234 * dispnew.c (update_window): Only set changed_p if
1235 scrolling_window actually did scroll.
1236 (scrolling_window): Only return 1 if we actually did scroll.
1237
1238 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
1239 height to glyph height when cursor row is not fully visible.
1240 (make_cursor_line_fully_visible): Add FORCE_P arg to return
1241 failure in case row is higher than window. Callers changed.
1242 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
1243 Try to scroll partially visible, higher-than-window cursor row.
1244 (redisplay_window): Always try to scroll partially visible,
1245 higher-than-window cursor row - both initially and again with
1246 centering_position = 0.
1247 Clear desired matrix before retrying with centering_position = 0.
1248
da879ae8
SM
12492004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1250
1251 * syntax.c (scan_lists): Simplify backward string scan.
1252 Fix off-by-one boundary check for string and comment fences.
1253
5fc16e8e
SM
12542004-04-13 Joe Buehler <jbuehler@hekimian.com>
1255
1256 * sheap.c, unexcw.c: New files.
1257
c9aac8e6
LT
12582004-04-12 Luc Teirlinck <teirllm@auburn.edu>
1259
1260 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
1261 base buffer has been killed. Correct the error message if the
1262 base buffer does not exist.
1263
1e88a355
SM
12642004-04-12 Joe Buehler <jbuehler@hekimian.com>
1265
1266 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
1267 Cygwin itself. Add support for Xaw3d scrollbars.
1268
1269 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
1270
1271 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
1272
1273 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
1274 before Cygwin unexec.
1275
1276 * Makefile.in: Link changes for Cygwin unexec() support.
1277
8dbff9a0
AS
12782004-04-12 Andreas Schwab <schwab@suse.de>
1279
1280 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
1281
54dffe35
LT
12822004-04-11 Luc Teirlinck <teirllm@auburn.edu>
1283
1284 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
1285 IGNORE argument equals NAME. Doc fix.
1286
99a72bdf
MY
12872004-04-11 Masatake YAMATO <jet@gyve.org>
1288
1e88a355 1289 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
1290 empty if they are backwards.
1291
40899d7b
SM
12922004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
1293
1294 * xfaces.c (face_color_supported_p): Fix compilation without X11.
1295
f8f853de
SM
12962004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
1297
1298 * doc.c (Fsnarf_documentation): Ignore new file name entries.
1299
c953fe1b
KS
13002004-04-06 Kim F. Storm <storm@cua.dk>
1301
661e85c1
KS
1302 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1303 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
1304
1305 * w32term.c (w32_read_socket): Set mouse_face_hidden after
1306 clearing highlight.
1307
1308 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1309
1310 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
1311 clearing highlight.
1312
c953fe1b
KS
1313 * indent.c (vmotion): Do not reserve one column for continuation
1314 marks on window frames.
1315
c1994268
EZ
13162004-04-04 Eli Zaretskii <eliz@gnu.org>
1317
1318 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
1319 from GCC.
1320
9f691b0d
SM
13212004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
1322
1323 * .gdbinit-union: Remove.
1324
1325 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
1326 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
1327 ($nonvalbits): Remove.
1328 ($valmask): Set it by calling xreload to avoid redundancy.
1329
1330 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
1331 (gdb_emacs_intbits): Remove.
1332
7a8560d7
JD
13332004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1334
9f691b0d 1335 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 1336
3c8111fc
KH
13372004-03-30 Kenichi Handa <handa@m17n.org>
1338
1339 * editfns.c (Fformat): Fix initialization of the array info.
1340
48a0bce4
KS
13412004-03-30 Kim F. Storm <storm@cua.dk>
1342
1343 * xterm.c (x_mouse_click_focus_ignore_position): New var.
1344 (syms_of_xterm): DEFVAR_BOOL it.
1345 (ignore_next_mouse_click_timeout): New var.
1346 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
1347 Use it to filter mouse clicks following focus event.
1348
1cd0066c
KS
13492004-03-29 David Ponce <david@dponce.com>
1350
1351 * callint.c (Fcall_interactively): Fix last change.
1352
adb3b353
SM
13532004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1354
1355 * eval.c (Fcommandp): Simplify.
1356
1357 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
1358 Extend to handle all kinds of functions.
1359
1360 * lisp.h (Finteractive_form): Declare.
1361
1362 * callint.c (Fcall_interactively): Use it.
1363
6fc4c9c9
KS
13642004-03-26 Kim F. Storm <storm@cua.dk>
1365
1366 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
1367 to catch errors in calc_pixel_width_or_height during redisplay.
1368
abdb9b83
MY
13692004-03-26 Masatake YAMATO <jet@gyve.org>
1370
b17856dd 1371 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 1372
b17856dd 1373 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 1374
b17856dd 1375 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 1376
b17856dd 1377 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 1378
e8a84b6c
JD
13792004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1380
b17856dd 1381 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 1382
36a3fd05
RS
13832004-03-19 Richard M. Stallman <rms@gnu.org>
1384
1385 * s/sol2-6.h: Delete previous change.
1386
ab24c127
KS
13872004-03-19 Kim F. Storm <storm@cua.dk>
1388
1389 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
1390 to_charpos corresponds to newline in right fringe. Use local
1391 BUFFER_POS_REACHED_P macro.
1392
992126de
JD
13932004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1394
1395 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
1396 to compile on non-window system.
1397
45dbfc84
KS
13982004-03-19 Kim F. Storm <storm@cua.dk>
1399
1400 * dispextern.h (calc_pixel_width_or_height): Add prototype.
1401
1402 * image.c (Qcenter): Move to xdisp.c.
1403
1404 * xdisp.c (Qcenter): Declare here.
adb3b353 1405 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
1406 (handle_single_display_prop): Allow space display property on all
1407 platforms.
1408 (display_mode_line): Set mode_line_p before displaying line.
1409 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
1410 handling. Remove complex cases for fringes and scroll-bars.
1411 Add left, right, and center alignment positions. Add text (area)
1412 width/height. Return width or height for image specs.
1413 (produce_stretch_glyph): Improve handling of :align-to. Is now
1414 relative to left of text area by default, but other base offsets
1415 can be specified -- also for text lines.
1416
1417 * term.c (produce_glyphs): Handle IT_STRETCH.
1418 (produce_stretch_glyph): New function to handle space width and
1419 align-to display properties on non-window systems.
1420
37264101
SM
14212004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1422
1423 * fileio.c (Fread_file_name): Set completion-ignore-case for
1424 case-insensitive systems.
1425
73bc43da
MY
14262004-03-14 Masatake YAMATO <jet@gyve.org>
1427
1428 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
1429 when keymap and cursor are setup.
1430
9062aa89
ST
14312004-03-14 Steven Tamm <steventamm@mac.com>
1432
b17856dd 1433 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 1434
e4b1b5ab
KS
14352004-03-14 Kim F. Storm <storm@cua.dk>
1436
1437 * dispextern.h (x_find_image_file): Add prototype.
1438
1439 * image.c (x_find_image_file): Make extern.
1440
1441 * xfns.c (x_find_image_file): Remove prototype.
1442
a6eeaa81 14432004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 1444
37264101 1445 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 1446
37264101 1447 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 1448
e69cfac2
RS
14492004-03-12 Richard M. Stallman <rms@gnu.org>
1450
1451 * fns.c (internal_equal): New arg PROPS controls comparing
1452 text properties. All callers changed.
1453 (Fequal_including_properties): New function.
1454 (syms_of_fns): defsubr it.
1455
45034953
KS
14562004-03-12 Kim F. Storm <storm@cua.dk>
1457
1458 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 1459
45034953
KS
1460 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
1461 (image_background, image_background_transparent): Fix prototypes.
1462
37264101 1463 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
1464
1465 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
1466 (x_query_font, x_find_ccl_program, x_set_window_size)
1467 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1468 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1469 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
1470
1471 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
1472 (x_query_font, x_find_ccl_program, x_set_window_size)
1473 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1474 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1475 (mac_draw_line_to_pixmap): Add prototypes.
1476
14772004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1478
1479 * macterm.c (XTread_socket): Fix mouse click on tool bar.
1480
a12d3d87
KS
14812004-03-11 Kim F. Storm <storm@cua.dk>
1482
d3ab1cf1
KS
1483 * dispextern.h: Move image related prototypes from xfns.c section
1484 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
1485 HAVE_X_WINDOWS.
37264101 1486
37de9f51 1487 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 1488 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
1489 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
1490 (GTK_OBJ) [USE_GTK]: New declaration.
1491 (obj): Add $(GTK_OBJ) to list.
1492
5243c06a 14932004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 1494
5243c06a
ST
1495 * image.c [MAC_OSX]: Include sys/stat.h
1496
1497 * macfns.c (syms_of_macfns): Remove definitions of things now
1498 defined in image.c
1499
c0f97789
KS
15002004-03-11 Kim F. Storm <storm@cua.dk>
1501
1502 The following changes consolidates the identical/similar image
1503 support code previously found in xfns.c, w32fns.c, and macfns.c
1504 into a new file image.c.
1505
1506 * makefile.w32-in (OBJ1): Add image.o.
1507 ($(BLD)/image.$(O)): Add dependencies.
1508
1509 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
1510 (image.o): Add dependencies.
37264101 1511
c0f97789
KS
1512 * image.c: New file with consolidated image support code.
1513 (COLOR_TABLE_SUPPORT): New define to control whether
1514 color table support is available (X only).
1515 (Bitmap_Record): Common name for x_bitmap_record,
1516 w32_bitmap_record, and mac_bitmap_record.
1517 (XImagePtr): Common name for pointer to XImage or equivalent.
1518 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
1519 to XImagePtr on X+MAC, and to HDC on W32.
1520 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
1521 (NO_PIXMAP): Common name for "None" or equivalent.
1522 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
1523 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
1524 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
1525 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
1526 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
1527 (XDrawLine): Define on MAC for code sharing.
1528 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
1529 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
1530 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1531 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1532 (x_reference_bitmap, x_create_bitmap_from_data)
1533 (x_create_bitmap_from_file, x_destroy_bitmap)
1534 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1535 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1536 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1537 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1538 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1539 (define_image_type, lookup_image_type, valid_image_p)
1540 (image_error, enum image_value_type, struct image_keyword)
1541 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1542 (make_image, free_image, prepare_image_for_display, image_ascent)
1543 (four_corners_best, image_background, image_background_transparent)
1544 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1545 (make_image_cache, free_image_cache, clear_image_cache)
1546 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1547 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1548 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1549 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1550 (init_image_func_pointer, image_load_quartz2d)
1551 (struct ct_color, init_color_table, free_color_table)
1552 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1553 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1554 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1555 (x_disable_image, x_build_heuristic_mask)
1556 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1557 (TIFF support, GIF support, Ghostscript support): Consolidate image
1558 code from xfns.c, w32fns.c, and macfns.c.
1559 (syms_of_image): Consolidate image related symbol setup here.
1560 (init_image): Consolidate image related initializations here.
37264101 1561
c0f97789
KS
1562 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
1563 and init_image. Remove call to init_xfns.
1564
37264101
SM
1565 * macterm.h (struct mac_bitmap_record): Add file member.
1566 Not currently used, but simplifies code sharing.
c0f97789
KS
1567
1568 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1569 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1570 (x_reference_bitmap, x_create_bitmap_from_data)
1571 (x_create_bitmap_from_file, x_destroy_bitmap)
1572 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1573 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1574 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1575 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1576 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1577 (define_image_type, lookup_image_type, valid_image_p)
1578 (image_error, enum image_value_type, struct image_keyword)
1579 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1580 (make_image, free_image, prepare_image_for_display, image_ascent)
1581 (four_corners_best, image_background, image_background_transparent)
1582 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1583 (make_image_cache, free_image_cache, clear_image_cache)
1584 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1585 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1586 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1587 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1588 (init_image_func_pointer, image_load_quartz2d)
1589 (struct ct_color, init_color_table, free_color_table)
1590 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1591 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1592 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1593 (x_disable_image, x_build_heuristic_mask)
1594 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1595 (TIFF support, GIF support, Ghostscript support): Merge with image
1596 code from xfns.c and macfns.c into image.c.
1597 (syms_of_xfns): Move image related symbols to image.c.
1598 (init_external_image_libraries, init_xfns): Remove; initialization
1599 moved to init_image in image.c.
1600
1601 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1602 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1603 (x_reference_bitmap, x_create_bitmap_from_data)
1604 (x_create_bitmap_from_file, x_destroy_bitmap)
1605 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1606 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1607 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1608 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1609 (define_image_type, lookup_image_type, valid_image_p)
1610 (image_error, enum image_value_type, struct image_keyword)
1611 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1612 (make_image, free_image, prepare_image_for_display, image_ascent)
1613 (four_corners_best, image_background, image_background_transparent)
1614 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1615 (make_image_cache, free_image_cache, clear_image_cache)
1616 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1617 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1618 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1619 (struct ct_color, init_color_table, free_color_table)
1620 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1621 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1622 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1623 (x_disable_image, x_build_heuristic_mask)
1624 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1625 (TIFF support, GIF support, Ghostscript support): Merge with image
1626 code from xfns.c and macfns.c into image.c.
1627 (syms_of_xfns): Move image related symbols to image.c.
1628 (init_external_image_libraries, init_xfns): Remove; initialization
1629 moved to init_image in image.c.
1630
1631 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1632 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1633 (x_reference_bitmap, x_create_bitmap_from_data)
1634 (x_create_bitmap_from_file, x_destroy_bitmap)
1635 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1636 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1637 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1638 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1639 (define_image_type, lookup_image_type, valid_image_p)
1640 (image_error, enum image_value_type, struct image_keyword)
1641 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1642 (make_image, free_image, prepare_image_for_display, image_ascent)
1643 (four_corners_best, image_background, image_background_transparent)
1644 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1645 (make_image_cache, free_image_cache, clear_image_cache)
1646 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1647 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1648 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1649 (struct ct_color, init_color_table, free_color_table)
1650 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1651 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1652 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1653 (x_disable_image, x_build_heuristic_mask)
1654 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1655 (TIFF support, GIF support, Ghostscript support): Merge with
1656 w32fns.c and macfns.c image code into image.c.
1657 (syms_of_xfns): Move image related symbols to image.c.
1658 (init_xfns): Remove; initialization moved to init_image in image.c.
1659
1660 * lisp.h (syms_of_image, init_image): Add protoypes.
1661 (init_xfns): Remove prototype.
1662
1663 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1664 (x_reference_bitmap, x_create_bitmap_from_data)
1665 (x_create_bitmap_from_file, x_destroy_bitmap)
1666 (x_create_bitmap_mask): Move prototypes from dispextern.h.
1667 (gamma_correct) [MAC_OS]: Add prototype.
1668
1669 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1670 (x_reference_bitmap, x_create_bitmap_from_data)
1671 (x_create_bitmap_from_file, x_destroy_bitmap)
1672 (x_create_bitmap_mask): Move prototypes to dispextern.h.
1673
6eced09c
KH
16742004-03-09 Kenichi Handa <handa@etlken2>
1675
1676 * coding.c (decode_coding_emacs_mule): Handle insufficent source
1677 correctly.
1678
9a7e95f3
RS
16792004-03-04 Richard M. Stallman <rms@gnu.org>
1680
04a6e76b
RS
1681 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
1682
9a7e95f3
RS
1683 * window.c (Fdisplay_buffer): Doc fix.
1684
1685 * buffer.c (Fpop_to_buffer): Doc fix.
1686
6c2488df
KS
16872004-03-03 Kim F. Storm <storm@cua.dk>
1688
1689 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
1690
d8d95bc7
SM
16912004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
1692
1693 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
1694
357589bf
RS
16952004-03-02 Richard M. Stallman <rms@gnu.org>
1696
1697 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
1698
409949b5
KH
16992004-03-02 Kenichi Handa <handa@m17n.org>
1700
1701 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
1702
d24bc50f
KS
17032004-03-02 Kim F. Storm <storm@cua.dk>
1704
1705 * window.h (struct window): New member overlay_arrow_bitmap.
1706
1707 * window.c (make_window): Initialize overlay_arrow_bitmap.
1708
1709 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
1710 implement and integrate multiple overlay arrows with redisplay.
1711 (syms_of_xdisp): DEFVAR_LISP and initialize it.
1712 (last_arrow_position, last_arrow_string): Replace by properties.
1713 (Qlast_arrow_position, Qlast_arrow_string)
1714 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
1715 (syms_of_xdisp): Intern and staticpro them.
1716 (overlay_arrow_string_or_property, update_overlay_arrows)
1717 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
1718 (overlay_arrow_at_row): New functions for multiple overlay arrows.
1719 (redisplay_internal): Use them instead of directly accessing
1720 Voverlay_arrow_position etc. for multiple overlay arrows.
1721 (mark_window_display_accurate): Use update_overlay_arrows.
1722 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
1723 (try_window_id): Use overlay_arrows_changed_p.
1724 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
1725 (display_line): Use overlay_arrow_at_row to check multiple
1726 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 1727 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
1728 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
1729 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
1730
1731 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
1732 (update_window_fringes): Remove unused code.
1733
c1464661
JR
17342004-03-01 Jason Rumney <jasonr@gnu.org>
1735
1736 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
1737
a64387ee
JB
17382004-03-01 Juanma Barranquero <lektu@terra.es>
1739
1740 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
1741
1742 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
1743
334faa08
JD
17442004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1745
1746 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
1747 how many colors can be displayed.
1748
bb62616f
KH
17492004-03-01 Kenichi Handa <handa@m17n.org>
1750
1751 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
1752 correctly.
1753
0fd16104
KS
17542004-02-28 Kim F. Storm <storm@cua.dk>
1755
1756 * dispnew.c (update_window): Update header line also if there are
1757 no other changes in window (move code after set_cursor label).
1758
1759 * lisp.h (mark_window_display_accurate): Remove prototype.
1760
1761 * window.c (window_loop, Fforce_window_update): Force mode line
1762 updates by setting prevent_redisplay_optimizations_p and
1763 update_mode_lines.
1764
b59dd9c8
JD
17652004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1766
d8d95bc7 1767 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
1768
1769 * xterm.c (x_calc_absolute_position): Call x_real_positions
1770 to get WM window sizes and use those to calculate position.
d8d95bc7 1771 (x_set_offset): Remove code commented out.
b59dd9c8 1772
a874691c
MB
17732004-02-28 Miles Bader <miles@gnu.org>
1774
1775 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
1776
3e0c6482
KS
17772004-02-28 Kim F. Storm <storm@cua.dk>
1778
1779 * keyboard.c (kbd_buffer_store_event_hold): New function to store
1780 an event into kbd fifo, but with special handling of quit event;
1781 a quit event is saved for later, and further events are discarded
1782 until the saved quit event has been processed.
1783 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
1784 (gen_help_event): Store help event in kbd fifo.
1785 (NREAD_INPUT_EVENTS): Remove.
1786 (read_avail_input): Adapt to new read_socket_hook interface.
1787 Remove allocation and initialization of local input_event buffer,
1788 as read_socket_hook stores events directly in fifo. Allocate and
1789 initialize local hold_quit event to handle postponed quit event
1790 (and store it if set by kbd_buffer_store_event_hold).
1791
1792 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
1793 (gen_help_event): Fix prototype.
1794
a64387ee 1795 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 1796 numcharsp args. Add hold_quit arg.
f63fd14e 1797 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
1798 directly in fifo using kbd_buffer_store_event_hold.
1799
1800 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
1801 (read_input_waiting): Adapt to new read_socket_hook interface.
1802 Remove allocation and initialization of local input_event buffer,
1803 as read_socket_hook stores events directly in fifo. Allocate and
1804 initialize local hold_quit event to handle postponed quit event
1805 (and store it if set by kbd_buffer_store_event_hold).
1806
a64387ee 1807 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
1808
1809 * termhooks.h (read_socket_hook): Fix prototype.
1810
1811 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
1812 numcharsp args. Add hold_quit arg.
f63fd14e 1813 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
1814 directly in fifo using kbd_buffer_store_event_hold.
1815
1816 * w32inevt.h (w32_console_mouse_position): Fix prototype.
1817
1818 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
1819 Add hold_quit arg. Rework to use just one, local, inev
1820 input_event. Store inev directly in fifo using
3e0c6482
KS
1821 kbd_buffer_store_event_hold. Update count in one place.
1822 Postpone call to gen_help_event until inev is stored; use new
1823 local do_help for this.
1824 Remove local emacs_event in handing of ButtonPress event; just use
1825 inev instead (so no reason to copy it later).
1826
1827 * xsmfns.c (x_session_check_input): Remove numchars arg.
1828
d8d95bc7
SM
1829 * xterm.c (x_focus_changed, x_detect_focus_change):
1830 Remove numchars arg. Always store event into bufp arg.
1831 Return nothing. Callers changed accordingly.
3e0c6482
KS
1832 (glyph_rect): Simplify.
1833 (STORE_KEYSYM_FOR_DEBUG): New macro.
1834 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
1835 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
1836 (current_hold_quit) [USE_GTK]: Add.
1837 (event_handler_gdk): Adapt to new handle_one_xevent.
1838 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
1839 Add hold_quit arg. Rework to use just one, local, inev
1840 input_event. Store inev directly in fifo using
3e0c6482
KS
1841 kbd_buffer_store_event_hold. Update count in one place.
1842 Postpone call to gen_help_event until inev is stored; use new
1843 local do_help for this.
1844 Simplify handling of keysyms (consolidate common code). Fix bug
1845 where count was updated with nchars instead of nbytes.
1846 Remove local emacs_event in handing of ButtonPress event; just use
1847 inev instead (so no reason to copy it later).
1848 Remove `out' label. Rename label `ret' to `done'; add various
1849 `goto done' to clarify code flow in deeply nested blocks.
1850 (x_dispatch_event): Simplify as handle_one_xevent now calls
1851 kbd_buffer_store_event itself.
f63fd14e 1852 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
1853 arg. Call handle_one_xevent with new arglist. Store event from
1854 x_session_check_input in fifo.
1855 [USE_GTK]: Setup current_hold_quit.
1856 Decrement handling_signal before unblocking input.
1857 (x_initialize) [USE_GTK]: Initialize current_count.
1858
1859 * xterm.h (x_session_check_input): Fix prototype.
1860
e3564461 18612004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 1862
d8d95bc7 1863 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 1864
e3564461
ST
1865 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
1866 macgui.h).
a64387ee 1867
e3564461 1868 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 1869
e3564461
ST
1870 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
1871 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
1872 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
1873 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
1874 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
1875 (Bitmap): Remove typedef.
1876 (Pixmap): Change int to GWorldPtr.
1877
d8d95bc7 1878 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 1879
d8d95bc7
SM
1880 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
1881 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
1882 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
1883 long representation.
1884 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
1885 colors used for masks.
1886 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 1887
e3564461
ST
1888 * macfns.c: Include sys/types.h and sys/stat.h.
1889 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
1890 Include QuickTime/QuickTime.h.
1891 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
1892 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
1893 functions defined in macterm.c.
1894 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
1895 (ZPixmap): New #define for compatibility with xfns.c.
1896 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1897 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
1898 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
1899 New functions.
e3564461 1900 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
1901 (x_destroy_x_image, unwind_create_frame, x_disable_image)
1902 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
1903 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
1904 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
1905 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
1906 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
1907 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
1908 long mixup.
1909 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
1910 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
1911 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
1912 (x_set_cursor_type, Fxw_color_values, valid_image_p)
1913 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
1914 (x_alloc_image_color, clear_image_cache, lookup_image)
1915 (x_find_image_file, xbm_read_bitmap_file_data)
1916 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
1917 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
1918 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
1919 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
1920 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 1921 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
1922 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
1923 #if 0.
1924 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
1925 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
1926 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
1927 New functions (from xfns.c).
e3564461
ST
1928 (Fx_create_frame): Record unwind_create_frame.
1929 (Fxw_display_color_p): Use dpyinfo->color_p.
1930 (Fx_display_grayscale_p, Fx_display_planes): Don't use
1931 dpyinfo->n_cbits.
1932 (Fx_display_color_cells): Use dpyinfo->n_planes;
1933 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
1934 (Qheuristic, cross_disabled_images, emboss_matrix)
1935 (laplace_matrix): New variables (from xfns.c).
1936 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
1937 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
1938 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
1939 (image_background_transparent): New function (from xfns.c).
1940 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
1941 (image_load_quicktime): Add declaration.
1942 [MAC_OSX] (image_load_quartz2d): Likewise.
1943 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
1944 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 1945 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
1946 (xbm_load_image_from_file, x_laplace_read_row)
1947 (x_laplace_write_row, pbm_read_file): Remove functions.
1948 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
1949 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
1950 (colors_in_color_table): Sync with xfns.c (although not used).
1951 (lookup_rgb_color): Don't lookup color table. Just do gamma
1952 correction.
1953 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
1954 (x_disable_image): New function (from xfns.c).
1955 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1956 (x_build_heuristic_mask): Sync with xfns.c.
1957 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
1958 (HAVE_PBM): Remove #ifdef.
1959 (pbm_load): Sync with xfns.c. Set img->width and img->height
1960 before IMAGE_BACKGROUND.
d8d95bc7 1961 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
1962 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
1963 Don't enclose with #if HAVE_PNG.
1964 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
1965 symbol _CGImageCreateWithPNGDataProvider is defined.
1966 Otherwise use image_load_quicktime.
e3564461 1967 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
1968 [HAVE_PNG] (png_load): Sync with xfns.c.
1969 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
1970 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
1971 HAVE_JPEG.
1972 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
1973 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
1974 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
1975 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
1976 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
1977 (tiff_image_p, tiff_load): Don't enclose declarations with #if
1978 HAVE_TIFF.
1979 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
1980 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
1981 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
1982 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
1983 New functions (from xfns.c).
e3564461 1984 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 1985 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
1986 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
1987 Don't enclose with #if HAVE_GIF.
1988 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
1989 animated gif. Otherwise use image_load_quicktime.
1990 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
1991 gif_DrawText to avoid conflict with QuickdrawText.h.
1992 [HAVE_GIF] (gif_load): Sync with xfns.c.
1993 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
1994 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
1995 Ghostscript is not supported yet).
1996 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
1997 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
1998 cross_disabled_images (from xfns.c). Remove #if 0 for supported
1999 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2000 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
2001 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
2002 HAVE_PNG. Call EnterMovies to support animated gifs.
2003 Call init_image_func_pointer to bind a symbol
e3564461 2004 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 2005
d8d95bc7 2006 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
2007 (x_draw_bar_cursor): Sync declaration with xterm.c.
2008 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
2009 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
2010 graphics).
2011 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
2012 (mac_draw_line_to_pixmap, XCreatePixmap)
2013 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
2014 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
2015 New functions.
2016 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
2017 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2018 Cast bits to char *.
e3564461
ST
2019 (reflect_byte): New function (from w32fns.c).
2020 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
2021 due to byte alignment.
d8d95bc7
SM
2022 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
2023 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
2024 (XSetForeground): Remove static (now used in macfns.c).
2025 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
2026 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
2027 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
2028 (x_draw_glyph_string_box, x_draw_image_foreground)
2029 (x_draw_image_foreground_1, x_draw_image_glyph_string)
2030 (x_draw_stretch_glyph_string, x_draw_glyph_string)
2031 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
2032 Sync with xterm.c.
2033 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
2034 than the xterm.c version when a strictly horizontal or vertical
2035 line is drawn.
2036 (XTset_terminal_window): Add static.
2037 (x_make_frame_visible): Add UNBLOCK_INPUT.
2038 (x_free_frame_resources): New funcion (from xterm.c).
2039 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
2040 occurs in tool bar area.
d8d95bc7
SM
2041 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
2042 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
2043 Initialize image cache.
2044 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
2045 Enclose unused functions with #if 0.
2046 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
2047 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 2048 from a mac font name to an XLFD font name according to its script code.
e3564461 2049 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 2050 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
2051 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
2052 whose name starts with `.'.
2053 (init_font_name_table): Use decode_mac_font_name. Add both
2054 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
2055 of a font is smJapanese.
2056 (mac_do_list_fonts): New function to list fonts that match a given
2057 pattern.
2058 (x_list_fonts, XLoadQueryFont): Use it.
2059 (XLoadQueryFont): Set rbearing field for each variable width
2060 character to avoid needless redraw.
2061 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
2062
446f5f3d
KS
20632004-02-26 Kim F. Storm <storm@cua.dk>
2064
af617d0f
KS
2065 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
2066 as read_socket_hook handler on X aborts if buffer is too small
2067 and W32 handler doesn't always check buffer limit.
2068
446f5f3d
KS
2069 * xdisp.c (handle_single_display_prop): Handle left-fringe and
2070 right-fringe similar to a display margin image. Specifically,
2071 the characters having the fringe prop are no longer shown, and
2072 we use IT_IMAGE/next_element_from_image with image_id = -1 to
2073 do this. Set fringe bitmap face_id in it->face_id.
2074 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
2075 still realize it->face (i.e. the fringe bitmap face).
2076
7d8a0b55
MB
20772004-02-25 Miles Bader <miles@gnu.org>
2078
2079 * xdisp.c (check_it): Check string/string_pos consistency.
2080 (init_iterator): Initialize string-related fields properly.
2081
20822004-02-11 Miles Bader <miles@gnu.org>
2083
2084 * xdisp.c (produce_image_glyph): Force negative descents to zero.
2085
20862004-02-10 Miles Bader <miles@gnu.org>
2087
2088 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
2089 BLOCK_INPUT can be nested, so it doesn't make much sense.
2090
a64387ee 20912004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
2092
2093 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
2094 (xbm_read_bitmap_data): Use unsigned char for image data.
2095
92f5fba2
LT
20962004-02-23 Luc Teirlinck <teirllm@auburn.edu>
2097
2098 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
2099
8565fb3d
JR
21002004-02-22 Jason Rumney <jasonr@gnu.org>
2101
2102 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
2103 correctly over other bitmaps.
2104
a6eeaa81 21052004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
2106
2107 * emacs.c (USAGE1): Split into two halves.
2108 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
2109 (USAGE3): Rename from USAGE2.
2110 (USAGE4): Rename from USAGE3.
f8125c39 2111
4effffca
EZ
21122004-02-21 Juri Linkov <juri@jurta.org>
2113
2114 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
2115 Fix --multibyte. Move --help, --version to USAGE2. Add alias
2116 --file. Fix -f, -l. Sort options. Untabify.
2117 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
2118
923c1e6f
LT
21192004-02-19 Luc Teirlinck <teirllm@auburn.edu>
2120
2121 * category.c (Fdefine_category, Fcategory_docstring)
2122 (Fget_unused_category, Fset_category_table)
2123 (Fcategory_set_mnemonics): Doc fixes.
2124
b0e225fd
KS
21252004-02-20 Kim F. Storm <storm@cua.dk>
2126
2127 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
2128 The following changes are relative to the 2004-01-21 revision.
2129 (NREAD_INPUT_EVENTS): Define as max number of input events to read
2130 in one call to read_socket_hook. Value is 8.
2131 (read_avail_input): Separate and rework handling of read_socket_hook
2132 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
2133 in read_socket_hook case, and repeat if full buffer is read.
2134 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
2135 In non-read_socket_hook case, just use a single input_event, and
2136 call kbd_buffer_store_event on the fly for each character.
2137
b15aa9f9
SM
21382004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
2139
2140 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
2141 Remove unused `gu' alternative.
2142
83c9aa95
AS
21432004-02-19 Andreas Schwab <schwab@suse.de>
2144
2145 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
2146 warning.
2147
cc808173
KS
21482004-02-18 Kim F. Storm <storm@cua.dk>
2149
2150 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
2151 Fix last change.
2152
ab90a54d
KS
21532004-02-17 Kim F. Storm <storm@cua.dk>
2154
b26f249f
KS
2155 * xdisp.c (fast_find_position): Fix return value of new version;
2156 it was inverted compared to the 21.1 version.
2157 (get_window_cursor_type): Don't look at glyph if NULL.
2158 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 2159
ab90a54d
KS
2160 * keyboard.c: Rework previous change; it didn't consider that the
2161 buf array was allocated on the stack.
2162 (prev_read): Remove variable.
2163 (read_avail_input_buf): New static event buffer array.
b9568dfc 2164 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 2165 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
2166 Use in_read_avail_input to handle re-entrance; when re-entered,
2167 fully initialize and use tmp_buf array instead of read_avail_input_buf.
2168 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
2169 is always cleared on entry. To ensure that, we clear (just) the
2170 entries that were used before we return.
2171 (init_keyboard): Initialize read_avail_input_buf here.
2172
4e039f3f
EZ
21732004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
2174
2175 * cmds.c (Fend_of_line): Doc fix.
2176
7b5368c1
EZ
21772004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
2178
2179 * keyboard.c (prev_read): New static variable.
2180 (read_avail_input): Use it to zero out only those slots in buf[]
2181 that were used last time we were called.
2182
a6eeaa81 21832004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
2184
2185 * Makefile.in (obj): Move fringe.o from here...
2186 (XOBJ, MAC_OBJ): ...to here.
2187
159c348e
SE
21882004-02-16 Stephen Eglen <stephen@gnu.org>
2189
2190 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
2191
d2f14999
SM
21922004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
2193
b15aa9f9
SM
2194 * data.c (Fbyteorder):
2195 * fringe.c (Fdefine_fringe_bitmap):
2196 * xdisp.c (handle_single_display_prop):
d2f14999
SM
2197 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
2198
8d50508a
JR
21992004-02-16 Jason Rumney <jasonr@gnu.org>
2200
2201 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
2202
dd4497dc
ST
22032004-02-15 Steven Tamm <steventamm@mac.com>
2204
2205 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
2206 controlling emulation of a three button mouse with option and
2207 command keys.
2208 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 2209 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 2210
c9159cb3
KS
22112004-02-15 Kim F. Storm <storm@cua.dk>
2212
2cc52658
KS
2213 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
2214
c9159cb3
KS
2215 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
2216 Perform byte-swapping.
2217
12fde2dc
KS
22182004-02-14 Kim F. Storm <storm@cua.dk>
2219
2220 * dispextern.h (struct draw_fringe_bitmap_params): Change member
2221 bits from char to short to facilitate wider bitmaps.
2222 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
2223 member.
2224
2225 * fringe.c (struct fringe_bitmap): Change member bits from char to
2226 short to facilitate 16 bits wide bitmaps. Modify all standard
2227 bitmaps accordingly.
2228 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
2229 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
2230 (draw_fringe_bitmap): Ditto.
2231 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
2232 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
2233 handle up to 16 bits wide bitmaps.
2234 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 2235 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
2236
2237 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
2238 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
2239 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
2240
2241 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
2242 so it is no longer necessary to expand them here.
2243
2244 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
2245
9d7271e8
KS
22462004-02-12 Kim F. Storm <storm@cua.dk>
2247
2248 * window.c (Fwindow_fringes): Doc fix.
2249
706c1e4f
JD
22502004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2251
2252 * xselect.c (x_get_foreign_selection): Add new optional parameter
2253 time_stamp.
2254 (Fx_get_selection_internal): Ditto, pass time_stamp to
2255 x_get_foreign_selection.
2256
2257 * data.c (Fbyteorder): New function.
2258
c2d12b5d
JD
22592004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2260
2261 * atimer.c: Move include stdio.h to same place as in other files.
2262
2263 * region-cache.c: Ditto.
2264
2265 * sysdep.c: Ditto.
2266
2267 * xfaces.c: Ditto.
2268
4c1947b9
SS
22692004-02-09 Sam Steingold <sds@gnu.org>
2270
89458937 2271 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 2272
82722af3
KS
22732004-02-09 Kim F. Storm <storm@cua.dk>
2274
2275 * fringe.c: New file. Move original fringe related declarations
2276 and code from dispextern.h and xdisp.c here.
2277 Rework code to support user defined fringe bitmaps, redefining
2278 standard bitmaps, ability to overlay user defined bitmap with
2279 overlay arrow bitmap, and add faces to bitmaps.
2280 (Voverflow_newline_into_fringe): Declare here.
2281 (enum fringe_bitmap_align): New enum.
2282 (..._bits): All bitmaps are now defined without bitswapping; that
2283 is now done in init_fringe_once (if necessary).
2284 (standard_bitmaps): New array with specifications for the
2285 standard fringe bitmaps.
2286 (fringe_faces): New array.
2287 (valid_fringe_bitmap_id_p): New function.
2288 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
2289 (draw_fringe_bitmap): New function which draws fringe bitmap,
2290 possibly overlaying bitmap with cursor in right fringe or the
2291 overlay arrow in the left fringe.
2292 (update_window_fringes): Do not handle overlay arrow here.
2293 Compare and copy fringe bitmap faces.
2294 (init_fringe_bitmap): New function.
2295 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
2296 define and destroy user defined fringe bitmaps.
2297 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
2298 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
2299 (syms_of_fringe): New function. Defsubr new DEFUNs.
2300 DEFVAR_LISP Voverflow_newline_into_fringe.
2301 (init_fringe_once, init_fringe): New functions.
2302 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 2303
82722af3
KS
2304 * Makefile.in (obj): Add fringe.o.
2305 (fringe.o): New dependencies.
2306
2307 * dispextern.h (FRINGE_ID_BITS): New definition for number of
2308 bits allocated to hold a fringe number. Increase number of bits
2309 from 4 to 8 to allow user defined fringe bitmaps.
2310 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
2311 left_user_fringe_face_id, right_user_fringe_bitmap,
2312 right_user_fringe_face_id.
2313 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
2314 Move to new file fringe.c.
2315 (MAX_FRINGE_BITMAPS): Define here.
2316 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
2317 and overlay_p. Change member which to int.
2318 (struct redisplay_interface): New members define_fringe_bitmap
2319 and destroy_fringe_bitmap.
2320 (valid_fringe_bitmap_id_p): Add prototype.
2321 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
2322
2323 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
2324 arrows.
2325 (update_frame): Do flush_display if force_flush_display_p to
2326 ensure display (specifically fringes) are updated in a timely
2327 manner when resizing the frame by dragging the mouse.
2328 (update_window_line): Update row if overlay arrow changed.
2329 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
2330 or overlay arrow changed.
2331
2332 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
2333 syms_of_fringe, and init_fringe.
2334
2335 * frame.h (struct frame): New member force_flush_display_p.
2336
2337 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
2338 Add prototypes.
2339
a3993cc8 2340 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 2341 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
2342 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
2343 Use cursor color for displaying cursor in fringe.
82722af3
KS
2344 (x_redisplay_interface): Add null handlers for
2345 define_fringe_bitmap and destroy_fringe_bitmap functions.
2346
2347 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
2348 xterm.c to handle overlayed fringe bitmaps and to use cursor color
2349 for displaying cursor in fringe.
2350 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
2351 specific functions to define and destroy fringe bitmaps in fringe_bmp.
2352 (w32_redisplay_interface): Add them to redisplay_interface.
2353 (w32_term_init): Call w32_init_fringe instead of explicitly
2354 defining fringe bitmaps in fringe_bmp array.
2355 (x_delete_display): Call w32_reset_fringes instead of explicitly
2356 destroying fringe bitmaps in fringe_bmp array.
2357
2358 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
2359 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
2360 (continued_bits, continuation_bits, ov_bits, first_line_bits)
2361 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
2362 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
2363 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
2364 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
2365 Move fringe handling vars and code to new file fringe.c.
2366 (handle_display_prop): Handle left-fringe and right-fringe
2367 display properties; store user fringe bitmaps in iterator.
2368 (move_it_in_display_line_to): Handle cursor in fringe at eob.
2369 (clear_garbaged_frames): Set force_flush_display_p if resized.
2370 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
2371 (display_line): Handle cursor in fringe at eob.
2372 (display_line): Set row user fringe bitmaps from iterator.
2373
2374 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
2375 Use cursor color for displaying cursor in fringe.
2376 (x_redisplay_interface): Add null handlers for
2377 define_fringe_bitmap and destroy_fringe_bitmap functions.
2378
030400eb
JD
23792004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2380
2381 * macfns.c (Fx_change_window_property): Make doc string and
2382 parameters same as for X version.
2383
2384 * w32fns.c (Fx_change_window_property): Ditto.
2385
3af55251
KS
23862004-02-07 Kim F. Storm <storm@cua.dk>
2387
ec110e9e
KS
2388 * xdisp.c (hscroll_window_tree): Position cursor near to right
2389 margin in hscrolled window when jumping to end of line (rather
2390 than centering cursor).
2391
3af55251
KS
2392 * process.c (wait_reading_process_input): Don't do adaptive read
2393 buffering if waiting for a specific process.
2394
b0c138ce
LT
23952004-02-05 Luc Teirlinck <teirllm@auburn.edu>
2396
2397 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
2398 (Fread_minibuffer, Feval_minibuffer)
2399 (Fread_string, Fread_no_blanks_input)
2400 (Fcompleting_read): Doc fixes.
2401 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
2402 completion-regexp-list. Define Qcase_fold_search and staticpro it.
2403 (read_minibuf): Fix initial comment.
2404 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 2405 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
2406 checking completion-regexp-list.
2407 (Fdisplay_completion_list): Make it handle arguments that are
2408 symbols. Doc fix.
2409
9676f5ad 24102004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 2411
9676f5ad 2412 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 2413
9676f5ad
JD
2414 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
2415 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 2416 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 2417 format. Remove unused variable cons.
5b698285
JD
2418
2419 * xselect.c: Include stdio,h.
2420
fc1d15f6
KH
24212004-02-05 Kenichi Handa <handa@m17n.org>
2422
ebaff4af
KH
2423 * fns.c (Fset_char_table_range): Fix previous change.
2424
fc1d15f6
KH
2425 * buffer.c (Fset_buffer_multibyte): Fix docstring.
2426
9676f5ad
JD
24272004-02-04 Luc Teirlinck <teirllm@auburn.edu>
2428
2429 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
2430
da75761f
SM
24312004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
2432
2433 * keymap.c (Vmouse_events): Rename from Vmenu_events.
2434 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
2435
13c5d120
KH
24362004-02-04 Kenichi Handa <handa@m17n.org>
2437
2438 * fns.c (Fset_char_table_range): Handle charsets ascii,
2439 eight-bit-control, and eight-bit-graphic correctly.
2440
2883d842
JR
24412004-02-03 Jason Rumney <jasonr@gnu.org>
2442
2443 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
2444
2445 * w32fns.c (x_to_w32_font): Likewise.
2446
69eff41f
JD
24472004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2448
2449 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
2450 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
2451
2452 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
2453 ClientMessages.
2454
2455 * xselect.c: Include termhooks.h and X11/Xproto.h
2456 (x_check_property_data, x_fill_property_data)
2457 (x_property_data_to_lisp, mouse_position_for_drop)
2458 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 2459 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
2460 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
2461
da75761f 2462 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
2463 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
2464 OUTER_P.
2465 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
2466 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
2467 if vector_ret_p is true.
2468 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 2469
a6eeaa81 24702004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
2471
2472 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
2473 basename of FILE relative to it, not FILE itself.
2474
09721b31
KH
24752004-02-02 Kenichi Handa <handa@m17n.org>
2476
2477 * coding.c (coding_restore_composition): Check invalid
2478 composition data more rigidly.
2479
eb996101
LT
24802004-01-30 Luc Teirlinck <teirllm@auburn.edu>
2481
2482 * fileio.c (Fread_file_name_internal): Correctly handle the case
2483 where insert-default-directory is nil.
2484 (Fread_file_name): Always return an empty string if the user exits
2485 with an empty minibuffer. Adapt the docstring accordingly.
2486 (syms_of_fileio): Adapt the docstring of insert-default-directory
2487 to the change in Fread_file_name.
2488
a6eeaa81 24892004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
2490
2491 * alloca.c [!alloca]: Fix the prototype for xfree.
2492
13f52ed8
KH
24932004-01-29 Kenichi Handa <handa@m17n.org>
2494
2495 * fns.c (string_char_to_byte): Optimize for ASCII only string.
2496 (string_byte_to_char): Likewise.
2497
d57625a0
JR
24982004-01-28 Peter Runestig <peter@runestig.com>
2499
2500 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
2501
a64387ee 25022004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
2503
2504 * unexmacosx.c (unexec_copy): Do not copy more than was
2505 requested to prevent overwriting during unexec.
2506
eb37b8fd
JD
25072004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2508
ce38070a
JD
2509 * process.c (sigchld_handler): Add comment about not calling malloc.
2510
eb37b8fd
JD
2511 * process.h: Add extern to synch_process_termsig.
2512
a64387ee 25132004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 2514
da75761f
SM
2515 * macterm.c (make_mac_frame, make_mac_terminal_frame):
2516 Move setting of scroll bars from make_mac_frame to
2517 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 2518
d62a265d
RS
25192004-01-26 Richard M. Stallman <rms@gnu.org>
2520
2521 * search.c (Freplace_match): Handle nonexistent
2522 back-references properly.
2523
25242004-01-03 Richard M. Stallman <rms@gnu.org>
2525
2526 * window.c (decode_any_window): New function.
2527 (Fwindow_height, Fwindow_width, Fwindow_edges)
2528 (Fwindow_pixel_edges, Fwindow_inside_edges)
2529 (Fwindow_inside_pixel_edges): Use decode_any_window.
2530
ff236419
JD
25312004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2532
2533 * process.h: synch_process_termsig new variable.
2534
2535 * callproc.c: Define synch_process_termsig.
2536 (Fcall_process): Initiate synch_process_termsig to zero and
2537 check if non-zero and get signal name after subprocess has ended.
2538
2539 * process.c (sigchld_handler): Set synch_process_termsig
2540 if terminated by a signal. synch_process_death setting removed.
2541
2542 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
2543
41b867ea
AS
25442004-01-26 Andreas Schwab <schwab@suse.de>
2545
2546 * print.c (print_preprocess): Declare size as EMACS_INT to not
2547 lose bits.
2548 (print_object): Likewise.
2549 * alloc.c (Fpurecopy): Likewise.
2550
a08084ff
LT
25512004-01-25 Luc Teirlinck <teirllm@auburn.edu>
2552
2553 * window.c (Fwindow_minibuffer_p): Doc fix.
2554
b19ac475
JY
25552004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
2556
2557 * editfns.c (Fformat): Make both passes accept the same set of flags.
2558
fe905025
KH
25592004-01-23 Kenichi Handa <handa@m17n.org>
2560
2561 * fns.c (Fmd5): If OBJECT is a buffer different from the current
2562 one, set buffer to OBJECT temporarily.
2563
438fc6c0
SM
25642004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2565
455316e2
SM
2566 * keyboard.c (kbd_buffer_gcpro): Remove.
2567 (kbd_buffer_store_event, clear_event, Fdiscard_input)
2568 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
2569 Don't initialize and/or maintain the variable any more. It was made
2570 redundant by my commit of 2003-06-15.
2571
438fc6c0
SM
2572 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
2573
5335a4ee
JD
25742004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2575
2576 * lisp.h: Add undef DECL_ALIGN.
2577
dcdaeebc
SM
25782004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2579
2580 * process.c (wait_reading_process_input) [SYNC_INPUT]:
2581 Check interrupt_input_pending explicitly.
2582
2583 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
2584
2585 * keyboard.c (handle_async_input): New fun,
2586 extracted from input_available_signal.
2587 (input_available_signal, reinvoke_input_signal): Use it.
2588
9076a823
SM
25892004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
2590
d7107586
SM
2591 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
2592
2593 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
2594 manipulation macros for when tags are in the lower bits.
2595 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
2596 (DECL_ALIGN): New macro.
2597 (DEFUN): Use it.
2598
2599 * lisp.h [ENABLE_CHECKING]: Don't force union type.
2600
2601 * s/darwin.h (__attribute__): Remove outdated workaround.
2602
2603 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
2604
2605 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
2606 Don't check range of malloc address.
2607 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
2608
9076a823
SM
2609 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
2610
2611 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
2612
ba029065
KH
26132004-01-19 Kenichi Handa <handa@m17n.org>
2614
2615 * fontset.c (fontset_font_pattern): Fix previous change.
2616
7af0e8d7
MB
26172004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
2618
2619 * xdisp.c (Voverflow_newline_into_fringe)
2620 (move_it_in_display_line_to, redisplay_internal)
2621 (update_window_fringes, redisplay_window, display_line, window):
2622 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
2623 that it compiles without a window-system.
2624 * dispnew.c (direct_output_for_insert, update_window): Likewise.
2625
77a9cf69
KS
26262004-01-16 Kim F. Storm <storm@cua.dk>
2627
2628 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
2629
a64387ee 2630 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
2631 buffer_local_flags for indicate_buffer_boundaries.
2632 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
2633 default- variable for it.
2634
2635 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
2636 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 2637 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
2638 overflowing newlines into right fringe.
2639 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
2640 and indicate_bottom_line_p for buffer boundaries and scrolling.
2641 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
2642 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
2643 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
2644 and HOLLOW_SQUARE_BITMAP.
2645 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
2646 Add prototypes.
2647
2648 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
2649 instead of related indicator fields.
2650 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
2651 (direct_output_for_insert): Handle exact width lines like
2652 contined lines. Call update_window_fringes.
2653 (update_window): Call update_window_fringes.
2654 (scrolling_window): Don't skip desired rows with changed bitmaps.
2655 Check if fringe bitmaps changes when assigning scrolled rows.
2656
2657 * xdisp.c (Voverflow_newline_into_fringe): New variable.
2658 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
2659 (move_it_in_display_line_to): Overflow newline into fringe for
2660 rows that are exactly as wide as the window.
2661 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
2662 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
2663 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
2664 (fringe_bitmaps): Add new bitmaps.
2665 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
2666 Select proper bitmap for cursor in fringe when appropriate.
2667 Handle alignment of bitmap to top or bottom of row.
2668 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
2669 done by update_window_fringes.
2670 (update_window_fringes, draw_window_fringes): New functions.
2671 (redisplay_internal): Call update_window_fringes in case only
2672 cursor row is updated.
2673 (redisplay_window): Call update_window_fringes.
2674 Explicitly call draw_window_fringes if redisplay was done using
2675 the current matrix or the overlay arrow is in the window.
2676 (try_window_reusing_current_matrix): Mark scrolled rows for
2677 fringe update (to update buffer-boundaries / scrolling icons).
2678 (find_last_unchanged_at_beg_row): Handle exact width lines line
2679 continued lines.
2680 (display_line): Overflow newline into fringe for rows that are
2681 exactly as wide as the window. Don't append space for newline
d7107586 2682 in this case.
77a9cf69
KS
2683 (notice_overwritten_cursor): Explicitly clear cursor bitmap
2684 in fringe as if it had been overwritten.
2685 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 2686 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
2687 void-text-area-pointer as user options.
2688 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 2689
77a9cf69
KS
2690 * xterm.c (x_update_window_end): Call draw_window_fringes.
2691 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2692 in row instead of actually drawing fringe bitmaps.
2693 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2694 (x_draw_window_cursor): Draw cursor in fringe.
2695
2696 * w32term.c (x_update_window_end): Call draw_window_fringes.
2697 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2698 in row instead of actually drawing fringe bitmaps.
2699 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2700 (w32_draw_window_cursor): Draw cursor in fringe.
2701
2702 * macterm.c (x_update_window_end): Call draw_window_fringes.
2703 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2704 in row instead of actually drawing fringe bitmaps.
2705 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2706 (mac_draw_window_cursor): Draw cursor in fringe.
2707
a633a954
JD
27082004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2709
2710 * xterm.c (handle_one_xevent): Don't handle characters that are part
2711 of an old style (XLookupString) compose sequence.
2712
80460525
KH
27132004-01-15 Kenichi Handa <handa@m17n.org>
2714
2715 * search.c (Freplace_match): Use make_multibyte_string or
2716 make_unibyte_string according to the buffer multibyteness.
2717
7fc34f85
SM
27182004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
2719
2720 * alloc.c (struct interval_block, struct string_block)
2721 (struct symbol_block, struct marker_block, live_string_p)
2722 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
2723 Better preserve alignment for objects in blocks.
2724 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
2725
2726 * lread.c (defvar_per_buffer): Remove dead declaration.
2727
2728 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
2729 space size.
2730
66070bd1
JD
27312004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2732
2733 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
2734 if a key press should pop down. Only pop down if a key is pressed
2735 outside the menu/dialog.
2736 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
2737 popup_get_selection.
2738 (create_and_show_dialog): Pass 1 for down_on_keypress to
2739 popup_get_selection.
2740
de7515d6
JD
27412004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2742
2743 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
2744 BLOCK/UNBLOCK_INPUT.
2745
160b1b50
JD
27462004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2747
2748 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
2749 specified.
2750
3a9f36e6
KH
27512004-01-08 Kenichi Handa <handa@m17n.org>
2752
2753 * editfns.c (Fformat): Fix '&' to '&&'.
2754
3803eb32
AS
27552004-01-08 Andreas Schwab <schwab@suse.de>
2756
2757 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
2758 size if PSEUDOVECTOR_FLAG is set.
2759
9da88f37
KH
27602004-01-07 Kenichi Handa <handa@m17n.org>
2761
74ac5074
KH
2762 * charset.c (Fdeclare_equiv_charset): Fix docstring.
2763
9da88f37
KH
2764 * fontset.c (fontset_ref_via_base): Fix previous change.
2765
05faee07
KS
27662004-01-07 Kim F. Storm <storm@cua.dk>
2767
2768 * process.c (read_process_output): Only activate adaptive
2769 buffering if we read less than 256 bytes at a time.
2770
634910c8
KS
27712004-01-06 Kim F. Storm <storm@cua.dk>
2772
2773 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
2774 object and image object. Return glyph width and height.
2775 (mode_line_string, marginal_area_string): Ditto.
2776
2777 * dispextern.h (buffer_posn_from_coords, mode_line_string)
2778 (marginal_area_string): Fix prototypes.
2779
2780 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 2781 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
2782 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
2783
2784 * keyboard.c (make_lispy_position): Use modified mode_line_string,
2785 buffer_posn_from_coords, and marginal_area_string functions to
2786 include both string object and image object in the lispy position.
2787 Also add actual glyph width and height to position.
2788 (read_key_sequence): Use real buffer position from mouse
2789 event to find keymap property even when click is in marginal area.
2790
2791 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
2792 mode_line_string and marginal_area_string functions to handle
2793 both string object and image object properties.
d7107586 2794
57951c2e
AS
27952004-01-06 Andreas Schwab <schwab@suse.de>
2796
2797 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
2798 character.
2799
181e6a61
AS
28002004-01-02 Andreas Schwab <schwab@suse.de>
2801
d7107586
SM
2802 * macterm.c (emacs_options, x_initialized, same_x_server):
2803 Remove unused (and duplicated) definitions.
181e6a61 2804
31e0fbdd
KS
28052004-01-02 Kim F. Storm <storm@cua.dk>
2806
2807 * process.h (struct Lisp_Process): New members for adaptive read
2808 buffering: adaptive_read_buffering, read_output_delay, and
2809 read_output_skip.
2810
2811 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
2812 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
2813 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
2814 (process_output_delay_count, process_output_skip): New vars.
2815 (Vprocess_adaptive_read_buffering): New variable.
2816 (make_process): Initialize adaptive read buffering members.
2817 (Fstart_process): Set adaptive_read_buffering member.
2818 (deactivate_process): Cleanup adaptive read buffering.
2819 (wait_reading_process_input): Temporarily omit delayed
2820 subprocesses from the set of file descriptors to read from;
2821 adjust the select timeout if we skipped any subprocesses.
2822 (read_process_output): Increase adaptive read buffering delay if
2823 we read less than a full buffer; reduce delay when we read a
2824 full buffer.
2825 (send_process): Simplify using local Lisp_Process var.
2826 Reset adaptive read buffering delay after write.
2827 (init_process): Initialize process_output_delay_count and
2828 process_output_skip.
2829 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
2830
68c6a789
JR
28312004-01-01 Jason Rumney <jasonr@gnu.org>
2832
d7107586 2833 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 2834
3f70fe82
LT
28352003-12-30 Luc Teirlinck <teirllm@auburn.edu>
2836
2837 * print.c (Ferror_message_string): Add hyperlink in the docstring
2838 to the definition of `signal' in the Elisp manual.
2839 * eval.c (Fsignal): Ditto.
2840
a64387ee 28412003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
2842
2843 * fns.c (internal_equal): Return t for two NaN arguments.
2844
7abd90ea
RS
28452003-12-29 Richard M. Stallman <rms@gnu.org>
2846
2847 * data.c (store_symval_forwarding): Handle setting
2848 default-fill-column, etc., by changing the value in
2849 buffers that use the default.
2850
2851 * minibuf.c (Fset_minibuffer_window): Doc fix.
2852
2853 * fileio.c (choose_write_coding_system): Ignore auto_saving
2854 if using the visited file for auto saves.
2855 (Fwrite_region): Don't update SAVE_MODIFF
2856 if auto-saving in visited file.
2857
3e7cfcdc
KH
28582003-12-29 Kenichi Handa <handa@m17n.org>
2859
2860 * dispextern.h (face_font_available_p): Extern it.
2861
2862 * fontset.c (Voverriding_fontspec_alist): New variable.
2863 (lookup_overriding_fontspec): New function.
d7107586 2864 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
2865 (fontset_font_pattern): Likewise.
2866 (regulalize_fontname): New function.
2867 (Fset_fontset_font): Call regulalize_fontname.
2868 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
2869 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
2870 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
2871
2872 * xfaces.c (face_font_available_p): New function.
2873
7abd90ea
RS
28742003-12-28 Richard M. Stallman <rms@gnu.org>
2875
2876 * buffer.c (Fother_buffer): Don't crash if BUF is nil
2877 or if its name is nil.
2878
2879 * buffer.c (Fkill_buffer): Don't delete auto-save file
2880 if it's the same as the visited file.
2881
de1d1a40
LT
28822003-12-28 Luc Teirlinck <teirllm@auburn.edu>
2883
2884 * coding.c (Fcheck_coding_system): Doc fix.
2885
204fb75e
KS
28862003-12-28 Kim F. Storm <storm@cua.dk>
2887
2888 * Makefile.in (eval.o): Depend on dispextern.h.
2889
2890 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
2891 image glyph using image's ascent.
2892 (mode_line_string): Return image glyph as object clicked on.
2893 Adjust y0 for image glyph using image's ascent.
2894
2895 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
2896 (struct glyph): New members, ascent and descent. Used to save
2897 this glyph's ascent and descent, instead of having.
2898 (struct glyph): Declare member face_id using FACE_ID_BITS.
2899 (find_hot_spot): Add prototype.
2900
2901 * keyboard.c (Qimage): Remove extern (now in lisp.h).
2902 (QCmap): Declare extern.
2903 (make_lispy_position): When position is inside image hot-spot,
2904 use hot-spot element's id as posn element.
2905
2906 * lisp.h (IMAGEP): New macro to test for image object type.
2907 (Qimage): Declare extern.
2908
2909 * macfns.c (Qimage): Remove extern (now in lisp.h).
2910 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2911
2912 * macterm.c (Qface, Qmouse_face): Remove unused externs.
2913
2914 * w32fns.c (Qimage): Remove extern (now in lisp.h).
2915 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2916
2917 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
2918
2919 * w32term.c (Qface, Qmouse_face): Remove unused externs.
2920
2921 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
2922 pointer types.
2923 (Qrelative_width, Qalign_to): Remove unused variables.
2924 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
2925 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
2926 image maps.
d7107586 2927 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
2928 new dx and dy args.
2929 Remove buffer_only_p arg (always 0). Simplify code accordingly.
2930 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
2931 than row's ascent and height, to get sensible height on tall rows.
2932 (build_desired_tool_bar_string): Remove Qimage extern.
2933 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
2934 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
2935 image glyph is alone on the last line.
2936 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 2937 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 2938 (on_hot_spot_p): New function to check if position is inside an
d7107586 2939 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
2940 (find_hot_spot): New function to search for image hot-spot.
2941 (Flookup_image_map): New defun to search for image hot-spot.
2942 (define_frame_cursor1): New aux function to determine frame pointer.
2943 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2944 Handle `pointer' text property and :pointer image property to
2945 control frame pointer shape. Detect image hot-spots for pointer
2946 and help_echo properties. Use define_frame_cursor1.
2947 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 2948 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
2949 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
2950
2951 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
2952
2953 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
2954 (Qimage): Remove extern (now in lisp.h).
2955 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2956
2957 * xmenu.c (show_help_event): Remove unused code.
2958
2959 * xterm.c (Qface, Qmouse_face): Remove unused externs.
2960 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
2961 row's ascent and descent, to get a sensible height on tall rows.
2962
fc052137
LT
29632003-12-25 Luc Teirlinck <teirllm@auburn.edu>
2964
2965 * minibuf.c (Fcompleting_read): Undo previous change.
2966
a64387ee 29672003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
2968
2969 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
2970 Arguments GCPRO'ed in call to file name handler.
2971
56ffd194
TTN
29722003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
2973
2974 * termcap.c (tgetst1): Scan for "%pN"; if all
2975 N are continuous in [1,9], remove all "%pN".
2976
5202d23d
JD
29772003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2978
f26fab36
JD
2979 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
2980
5202d23d
JD
2981 * xfaces.c (lface_fully_specified_p): Take into account that
2982 MAC OS always have unspecified stipple.
2983
8babaa59
TTN
29842003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
2985
2986 * tparam.c (tparam1): Add handling for `%pN', which
2987 means use param N for the next substitution.
2988
2d176448
TTN
29892003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
2990
2991 * xfaces.c (Fcolor_gray_p): Fix omission bug:
2992 In case `frame' is nil, consult the selected frame.
2993 (Fcolor_supported_p): Likewise.
2994
adb0708c
LT
29952003-12-23 Luc Teirlinck <teirllm@auburn.edu>
2996
000eeb15
LT
2997 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
2998 Doc fixes.
0dc72b11
LT
2999
3000 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
3001 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
3002 (Fread_from_minibuffer): Delete code moved into read_minibuf.
3003 Doc fix.
3004 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
3005 read_minibuf.
3006 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 3007 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 3008
2e4d132b
KH
30092003-12-03 Kenichi Handa <handa@m17n.org>
3010
3011 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
3012 encoding sequence.
3013
3999c705
KH
30142003-12-01 Kenichi Handa <handa@m17n.org>
3015
3016 * composite.c (syms_of_composite): Don't make the compostion hash
3017 table week.
3018
d344ecbb
LT
30192003-11-30 Luc Teirlinck <teirllm@auburn.edu>
3020
3021 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
3022 * textprop.c (Fget_char_property_and_overlay): New function.
3023 (syms_of_textprop): Defsubr it.
3024
03d6484e
JD
30252003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3026
019b1f0e
JD
3027 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
3028 to compile on terminal configuration.
3029
03d6484e
JD
3030 * fileio.c (Fread_file_name): Check use_file_dialog also before
3031 calling Fx_file_dialog.
3032
3033 * fns.c: use_file_dialog: New variable.
3034 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
3035
442d3fd0
KS
30362003-11-29 Kim F. Storm <storm@cua.dk>
3037
3038 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
3039 (syms_of_msdos): Don't intern and staticpro them.
3040
0f6a07a8
KS
30412003-11-27 Kim F. Storm <storm@cua.dk>
3042
3043 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
3044 coordinates relative to glyph at posn. If glyph is an image,
3045 return that as object at posn. Callers changed.
3046 (mode_line_string, marginal_area_string): Calculate and return
3047 pixel coordinates relative to glyph. Callers changed.
3048
3049 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3050 (marginal_area_string): Fix prototypes.
3051 (window_box_left_offset, window_box_right_offset): Add prototypes.
3052
3053 * frame.h (get_specified_cursor_type, get_window_cursor_type):
3054 Remove prototypes.
3055
3056 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
3057
3058 * keyboard.c (make_lispy_position): Add x and y coordinates
3059 relative to the current glyph as 7th element of position.
3060 If glyph is an image, return it in the object element.
3061 (read_key_sequence): Skip checks for keymap property in cases
3062 where POSN_STRING is not a string (e.g. an image).
3063
3064 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
3065 (Vshow_text_cursor_in_void): New variable.
3066 (glyph_to_pixel_coords): Don't use negative hpos.
3067 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
3068 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 3069 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
3070 (calc_pixel_width_or_height): New aux function, implementing
3071 pixel based artihmetic for glyph widths and heights.
3072 (produce_stretch_glyph): Use calc_pixel_width_or_height for
3073 :width, :height, :align-to, and :ascent, thus allowing these to
3074 be specified in pixels as well as multiples of characters.
3075 Don't produce stretch glyphs with zero width or height.
3076 (get_specified_cursor_type): Declare static.
3077 (get_window_cursor_type): Declare static. Add glyph arg to be
3078 able to know when cursor is on an image; always substitute
3079 hollow-box cursor for filled-box cursor on images, to avoid
3080 negative images and flicker when blinking the cursor.
3081 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
3082 (note_mode_line_or_margin_highlight): Use non-text cursor rather
3083 than vertical scroll-bar cursor in display margins.
3084 (note_mouse_highlight): Use non-text cursor rather than text
3085 cursor in fringes and over images in the text area.
3086 Use non-text cursor when mouse pointer is outside editable text,
3087 i.e. in the void after end-of-line or end-of-buffer; this was
3088 already done for W32, but is now standard for all systems --
3089 user can toggle show-text-cursor-in-void to get old behaviour.
3090 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
3091 Vdisplay_pixels_per_inch.
3092
00498bfc
AS
30932003-11-25 Andreas Schwab <schwab@suse.de>
3094
3095 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
3096 EMACS_INT to not lose bits.
3097 (Ffillarray): Don't set bits beyond the size of a bool vector.
3098
edaa824d
KS
30992003-11-25 Kim F. Storm <storm@cua.dk>
3100
3101 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
3102 define this defun on systems that cannot use stderr as lvalue.
3103
74d6f539
GM
31042003-11-24 Gerd Moellmann <gerd@gnu.org>
3105
3106 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
3107 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
3108 ld's default is incompatible with unexec.
3109
6a1ff3ba
KS
31102003-11-23 Kim F. Storm <storm@cua.dk>
3111
63dc7c6b
KS
3112 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
3113 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
3114 (Fforce_window_update): New defun.
3115 (syms_of_window): Defsubr it.
3116 (Fset_window_margins, Fset_window_fringes): Doc fix.
3117
6a1ff3ba
KS
3118 * print.c (Fredirect_debugging_output): New defun.
3119 (syms_of_print): Defsubr it.
3120
aef109b7
LT
31212003-11-22 Luc Teirlinck <teirllm@auburn.edu>
3122
3123 * fns.c (Fset_char_table_parent): Doc fix.
3124
6a1ff3ba 31252003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
3126
3127 * dispnew.c (buffer_posn_from_coords): Return actual row/column
3128 for glyph clicked on, rather than (unused) pixel positions.
3129 (mode_line_string, marginal_area_string): Change X and Y args to
3130 pointers for returning actual row/column for glyph clicked on.
3131 Simplify and optimize loops.
3132
aef109b7
LT
3133 * dispextern.h (mode_line_string, marginal_area_string):
3134 Update prototypes.
63ccbe21
KS
3135
3136 * keyboard.c (make_lispy_position): New function for generating
3137 mouse click positions from frame and pixel coordinates.
3138 Enhanced to return buffer position and actual row/column for
3139 events outside the text area using updated mode_line_string and
3140 marginal_area_string functions.
3141 Return left-fringe and right-fringe clicks as such, rather than
3142 clicks in text area.
3143 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
3144 pixel_to_glyph_coords, as we never use the results.
3145 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
3146 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
3147 Eliminate unused code in WHEEL_EVENT handling.
3148 (make_lispy_movement): Use make_lispy_position.
3149
3150 * window.c (coordinates_in_window): Remove redundant tests.
3151 Fix returned X pixel value for left-margin.
3152
3153 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
3154 mode_line_string and marginal_area_string parameters.
3155
a64387ee 31562003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 3157
d7107586
SM
3158 * w32.c (struct the_group, getgrgid): Add.
3159 * mac.c (struct my_group, getgrgid): Add.
aef109b7 3160
3dbf3426
LT
31612003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3162
3163 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
3164
cae8ddbb 31652003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 3166
d7107586
SM
3167 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
3168 include in call to file name handler. Optionally translate numeric
3169 UID and GID to strings. Update docstring.
3170 (directory_files_internal): Add parameter ID-FORMAT.
3171 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
3172 include in call to file name handler and call to
3173 directory_files_internal. Update Docstring.
3174 (Fdirectory_files): Add dummy parameter in call to
3175 directory_files_internal.
3176 * lisp.h (Qinteger): Add.
3177 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
3178 (Ffile_attributes): Add parameter.
3179 * data.c (Qinteger): Export.
cae8ddbb 3180
2550b848
LT
31812003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3182
3dbf3426 3183 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 3184
88380018
KS
31852003-11-19 Kim F. Storm <storm@cua.dk>
3186
3187 * xdisp.c (init_iterator): Initialize it->start to position
3188 before reseating (in case start position is invisible).
3189 (init_to_row_start): Set it->start to row-start.
3190 (redisplay_window): Accept optional_new_start if start position
3191 is invisible (in which case IT_CHARPOS overshoots PT).
3192 (display_line): Setup row->start from it->start (rather than
3193 it->current which is wrong if first char on line is invisible).
3194 When done, reseat it->start to it->current (= start of next row).
3195 (expose_area): Fix exposure of text area when first char (e.g. TAB)
3196 is only partially visible.
3197
3198 * dispextern.h (struct it): New member start.
3199
854c1a59
SM
32002003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3201
455316e2
SM
3202 * alloc.c (make_float, Fcons): Clear the markbit at init time.
3203 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
3204 of block_index outside of the macro call.
3205 (Fgarbage_collect): Remove null code.
3206
3207 * m/amdx86-64.h: Don't redefine XPNTR.
3208
854c1a59
SM
3209 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
3210 of VALMASK.
3211
3212 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
3213 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
3214 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
3215
3216 * lisp.h (VALMASK): Only define for non-union type.
3217 (MARKBIT): Remove.
3218 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
3219 (XTYPE): Define unconditionally.
3220 (XSETTYPE): Remove one more remnant.
3221 (EQ): Define differently for the union and non-union cases.
3222 (INTMASK): New bit mask.
3223 (struct Lisp_Marker): Move down to prepare for upcoming patch.
3224 (GC_EQ): Delegate to EQ.
3225
3226 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
3227
a0c6ef2d
JD
32282003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3229
3230 * xterm.c (x_window_to_scroll_bar): Move check of display to
3231 where window_id is compared.
3232
859492c4
KS
32332003-11-17 Kim F. Storm <storm@cua.dk>
3234
3235 * dispextern.h (struct it): New member first_vpos.
3236
3237 * xdisp.c (start_display): Set it->first_vpos.
3238 (try_window_id): Use first_vpos to start display in first _text_
3239 line if no reusable lines at start of window with header line.
3240
810f2256
JD
32412003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3242
7c402969 3243 * w32fns.c (XPutPixel):
854c1a59
SM
3244 * w32bdf.c (w32_init_bdf_font):
3245 * sunfns.c (sel_read):
3246 * process.c (Fmake_network_process):
3247 * frame.c (store_frame_param):
3248 * fontset.c (Fset_fontset_font):
3249 * emacs.c (shut_down_emacs):
a64387ee 3250 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 3251
a32e9bfd
JD
3252 * config.in: Regenerate.
3253
810f2256
JD
3254 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3255 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3256 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
3257 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
3258 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
3259
3260 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
3261
3262 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
3263 (XTmouse_position, handle_one_xevent): Pass Display* to
3264 x_window_to_scroll_bar.
3265 (x_window_to_scroll_bar): Take a Display* argument.
3266 Check that display for frame is equal to Display* argument.
854c1a59 3267 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
3268 x_display_info_for_display instead. Use Display in xev instead
3269 of GDK_DISPLAY.
3270 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 3271 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
3272 (x_connection_closed): Call xg_display_close for GTK.
3273 (x_term_init): Call xg_display_open for additional displays.
3274 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
3275 for GTK.
3276
3277 * xmenu.c (single_menu_item, mouse_position_for_popup)
3278 (x_activate_menubar): Formatting adjustments.
3279
3280 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
3281 adjustments.
3282
3283 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
3284 (xg_display_close, xg_create_default_cursor)
3285 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
3286 handling.
854c1a59
SM
3287 (xg_left_ptr_cursor): Remove.
3288 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
3289 cursor here.
3290 (xg_win_to_widget): Take Display* argument, call
3291 gdk_xid_table_lookup_for_display.
3292 (xg_create_frame_widgets, xg_get_file_name, create_menus)
3293 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
3294 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
3295 in FRAME_X_DISPLAY_INFO.
3296 (xg_get_scroll_id_for_window): Take Display* argument.
3297 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 3298 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
3299
3300 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
3301 Display* argument also. Declare xg_display_open,
3302 xg_display_close, xg_create_default_cursor.
3303
0b03cc78
JD
33042003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3305
3306 * xterm.c (x_detect_focus_change): Do not change focus frame for
3307 Enter/LeaveNotify if the current focus frame has explicit focus.
3308
77e688fa
KS
33092003-11-14 Kim F. Storm <storm@cua.dk>
3310
3311 * dispnew.c (update_text_area): Fix redisplay error when hscroll
3312 is active and first glyph is only partially visible.
854c1a59 3313
dd429b03
KH
33142003-11-13 Kenichi Handa <handa@m17n.org>
3315
3316 * xdisp.c (select_frame_for_redisplay): New function.
3317 (redisplay_internal): Record also selected_frame for
3318 unwind_redisplay. Call select_frame_for_redisplay before
3319 redrawing each frame.
3320 (unwind_redisplay): Argument changed to a cons.
3321
6d9266f4
LT
33222003-11-12 Luc Teirlinck <teirllm@auburn.edu>
3323
3324 * fns.c (Fstring_to_multibyte): Doc fix.
3325
80060eb3
KH
33262003-11-11 Kenichi Handa <handa@m17n.org>
3327
3328 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
3329
74305183
JD
33302003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3331
3332 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
3333 program specified positions.
3334
cfda993e
JD
33352003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3336
3337 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
3338
df211069
KH
33392003-11-08 Kenichi Handa <handa@m17n.org>
3340
3341 * Makefile.in (lisp): Add kannada.el.
3342 (shortlisp): Likewise.
3343
4307d534
KH
33442003-11-07 Kenichi Handa <handa@m17n.org>
3345
854c1a59
SM
3346 * coding.c (coding_allocate_composition_data):
3347 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
3348 (coding_restore_composition): Detect invalid composition data.
3349 Give Fstring and Fvector a Lispy integer, not C int.
3350
854c1a59
SM
33512003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
3352
3353 * floatfns.c (Flogb): Don't use VALMASK.
3354
3355 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
3356 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
3357
3358 * lisp.h (XINT): Move the cast to clarify what is going on.
3359 (GCTYPEMASK, XSETTYPE): Remove.
3360 (XGCTYPE): Make it an alias of XTYPE.
3361
d04103a1
JD
33622003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3363
3364 * xterm.c (x_term_init): Fix formatting.
3365
da18b5ac
JD
33662003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3367
3368 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
3369 and xg_did_tearoff.
3370
3371 * gtkutil.c: Remove variable xg_did_tearoff.
3372 (xg_have_tear_offs): New function.
3373 (tearoff_remove): Just decrease xg_detached_menus.
3374 (tearoff_activate): Increase xg_detached_menus and call
3375 tearoff_remove when tearoff is removed.
854c1a59 3376 (xg_keep_popup): Remove function.
da18b5ac
JD
3377 (create_menus): Give add_tearoff_p as argument to recursive
3378 call to create_menus.
3379 (xg_create_widget): Use variables instead of multiple
3380 strcmp. Tell create_menus to create tear off only for
3381 menu bar menus.
3382 (xg_update_menubar): Change title for a detached menu also.
3383 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
3384 of deep_p.
3385 (xg_initialize): Initialize xg_detached_menus, remove
3386 initialization of xg_did_tearoff.
3387
3388 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
3389 xg_have_tear_offs returns non-zero.
3390 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
3391 call to xg_keep_popup.
3392
64d4923e
AC
33932003-11-01 Andrew Choi <akochoi@shaw.ca>
3394
3395 * macterm.c (XTread_socket): Handle menubar selection and grow
3396 window only for mouseDown events.
854c1a59 3397
6cc8bc07
JD
33982003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3399
3400 * xterm.c (x_term_init): For GTK part, increase x_initialized
3401 to check for more than one display. Use error instead of return 0.
3402
043131c4
AC
34032003-10-31 Andrew Choi <akochoi@shaw.ca>
3404
854c1a59 3405 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
3406 (copy_dysymtab): Call it.
3407
bdda99a1
LT
34082003-10-31 Luc Teirlinck <teirllm@auburn.edu>
3409
3410 * eval.c (Fdefvaralias): Doc fix.
3411
800f42ff 34122003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
3413
3414 * data.c (Fsetplist): Doc fix.
3415
ef35b389
LK
34162003-10-14 Lute Kamstra <lute@gnu.org>
3417
3418 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 3419
ef35b389 34202003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 3421
07107abc
KS
3422 * window.c (Fset_window_margins): Simplify arg checking.
3423
f7005886
RS
34242003-10-13 Richard M. Stallman <rms@gnu.org>
3425
3426 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
3427 (print_partial_compiled_pattern): Replace assert with a printout.
3428 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
3429
3430 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
3431
3432 * window.c (Fset_window_margins): Allow only integers as args.
3433 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
3434 Doc fixes.
3435
9c0c2af5
LK
34362003-10-13 Lute Kamstra <lute@gnu.org>
3437
3438 * window.c (Fset_window_fringes): Elaborate docstring.
3439
3f080e4e
AC
34402003-10-12 Andrew Choi <akochoi@shaw.ca>
3441
854c1a59 3442 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 3443
3f080e4e
AC
3444 * s/darwin.h (GC_MARK_STACK): Define.
3445
0aa513ed
JD
34462003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3447
3448 * window.c (shrink_windows): New function.
3449 (size_window): Call shrink_windows to calculate window sizes when
3450 shrinking frame with more than one window.
3451
6aa8858a
KS
34522003-10-12 Kim F. Storm <storm@cua.dk>
3453
3454 * xdisp.c (compute_fringe_widths): Doc fix.
3455
c2164d91
KH
34562003-10-08 Kenichi Handa <handa@m17n.org>
3457
854c1a59 3458 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 3459
f82ac129
KH
34602003-10-07 Kenichi Handa <handa@m17n.org>
3461
3462 * coding.c (Qcoding_system_define_form): New variable.
3463 (syms_of_coding): Intern and staticpro it.
3464 (Fcheck_coding_system): Try to autoload the definition of
3465 CODING-SYSTEM.
3466
9296c947
LT
34672003-10-05 Luc Teirlinck <teirllm@auburn.edu>
3468
3469 * fns.c (Frequire): Doc fix.
3470
c1f0671a
JD
34712003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3472
3d8c3826
JD
3473 * xfns.c (Fx_send_client_event): New function as a base for
3474 manipulating extended window manager hints.
6dc15d98 3475 (Fx_send_client_event): Remove unused variable s.
3d8c3826 3476
068ae0fd
JD
3477 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
3478 that function is removed.
3479
3480 * xterm.c (x_set_offset): Use move_offset_left/top instead of
3481 x/y_pixels_outer_diff.
3482 (x_check_expected_move): Calculate move_offset_left/top.
3483
3484 * xterm.h (struct x_output): New members: move_offset_top/left.
3485
854c1a59 3486 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
3487 call x_set_offset directly.
3488
3489 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
3490
96f09305
JD
3491 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
3492
3493 * xterm.c (x_delete_display): Free font names and font_encoder
3494 in dpyinfo->font_table.
3495
854c1a59
SM
3496 * xfns.c (Fx_close_connection): Only call XFreeFont here.
3497 Move xfree of font names to x_delete_display.
96f09305 3498
c1f0671a
JD
3499 * xterm.h (struct x_display_info): New member, wm_type.
3500 (struct x_output): New members, expected_top/left and
3501 check_expected_move.
3502
3503 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
3504 is received.
854c1a59
SM
3505 (handle_one_xevent): Rename x_check_expected_move from
3506 x_check_fullscreen_move.
c1f0671a
JD
3507 (x_set_offset): Only add WM decoration sizes to modified_top/left
3508 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 3509 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
3510 Removed fullscreen specific code. Use check_expected_move,
3511 expected_left/top instead. Also, set wm_type.
3512 (x_term_init): Initialize wm_type to unknown.
3513
3514 * frame.c (x_fullscreen_move): Remove addition of WM decoration
3515 sizes to move_x/y.
3516
be2fdba9
KH
35172003-10-03 Kenichi Handa <handa@m17n.org>
3518
3519 * macterm.c (x_load_font): Clear all members of FONTP before start
3520 filling them.
3521
35222003-10-02 Kenichi Handa <handa@m17n.org>
3523
3524 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
3525 before calling find_ccl_program_func. Call find_ccl_program_func
3526 only when fontp->font_encoder is not NULL.
3527
3528 * xterm.c (x_load_font): Clear all members of FONTP before start
3529 filling them.
3530
26a6e439
JPW
35312003-10-03 John Paul Wallington <jpw@gnu.org>
3532
3533 * keymap.c (map_keymap): Don't abort when binding is a vector.
3534
0d4c2dc2
JR
35352003-10-02 Jason Rumney <jasonr@gnu.org>
3536
854c1a59
SM
3537 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
3538 Sync dependencies with Makefile.in.
a63cf46f
JR
3539 (alloca.o): Remove.
3540
0d4c2dc2
JR
3541 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
3542 filling them.
3543
3544 * w32bdf.c (w32_load_bdf_font): Likewise.
3545
ab8f7d5c
RS
35462003-09-30 Richard M. Stallman <rms@gnu.org>
3547
3548 * term.c (set_tty_color_mode): Calculate current_mode_spec
3549 regardless of value of VAL.
3550
854c1a59 3551 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
3552 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
3553 Handle over_used when splitting UNDER.
3554
a64387ee 35552003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
3556
3557 * regex.c (regex_compile): Free the stack when returning from function.
3558
3413f972
KH
35592003-09-28 Kenichi Handa <handa@m17n.org>
3560
3561 * fontset.c (Finternal_char_font): Change return value to
3562 cons (FONT-NAME . GLYPH-CODE).
3563
a6eeaa81 35642003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
3565
3566 * term.c (tty_setup_colors): Treat any negative argument as -1.
3567
f98ddc99
KH
35682003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
3569
3570 * process.c (send_process): Delete unused temp_buf.
3571
66c8f1a8
DL
35722003-09-26 Dave Love <fx@gnu.org>
3573
3574 * xterm.c (x_bitmap_mask): Declare.
3575
ca716c26
DL
35762003-09-25 Dave Love <fx@gnu.org>
3577
3578 * Makefile.in (fns.o): Depend on md5.h.
3579
fbe57420
KS
35802003-09-25 Kim F. Storm <storm@cua.dk>
3581
3582 * window.c (set_window_buffer): Fix redisplay problems when
3583 switching between buffers with different display margin widths.
3584
ef6ae4ff
KS
35852003-09-23 Kim F. Storm <storm@cua.dk>
3586
3587 * process.c (set_socket_option): Fix :bindtodevice option.
3588 (Fset_network_process_option): Update process contact list when
3589 setting option succeeds.
3590 (Fmake_network_process): Doc fix.
3591
68e03c1c
DL
35922003-09-23 Dave Love <fx@gnu.org>
3593
7146d1c1 3594 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 3595
a6eeaa81 35962003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
3597
3598 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
3599 color mode is an integer number (it could be -1).
3600
8fe7d8c8
RS
36012003-09-22 Richard M. Stallman <rms@gnu.org>
3602
3603 * intervals.c (graft_intervals_into_buffer): Correct the main loop
3604 in the case where OVER is longer than UNDER.
3605
2f71b5ea
MY
36062003-09-22 Masatake YAMATO <jet@gyve.org>
3607
7146d1c1 3608 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 3609 `vertical_type'.
7146d1c1 3610
0c4da023
KS
36112003-09-21 Kim F. Storm <storm@cua.dk>
3612
3613 * frame.c (Vdefault_frame_scroll_bars): New variable.
3614 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
3615 (syms_of_frame): DEFVAR_LISP it, and initialize according to
3616 window-system default scroll bar position.
3617
b648413b
KS
3618 * window.c (Fwindow_scroll_bars): Doc fix.
3619
8f5b9e34
JD
36202003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3621
854c1a59 3622 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 3623
b0f23edf
RS
36242003-09-19 Richard M. Stallman <rms@gnu.org>
3625
3626 * atimer.h: Don't include lisp.h.
3627 (P_): Define it here (as well as elsewhere).
3628
3629 * print.c (Fprin1_to_string): Move the PRINTPREPARE
3630 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
3631
3632 * data.c (Fvariable_binding_locus): New function.
3633 (syms_of_data): defsubr it.
3634 (Flocal_variable_p): Delete duplicate call to indirect_variable.
3635
e1283999
DL
36362003-09-18 Dave Love <fx@gnu.org>
3637
ad5f3636
DL
3638 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
3639
e1283999
DL
3640 * process.c (Fnetwork_interface_info): Fix type error.
3641 (Fnetwork_interface_list): Doc fix.
3642 (read_process_output, read_process_output): Delete unused var.
3643
b8c7fd71
KS
36442003-09-17 Kim F. Storm <storm@cua.dk>
3645
3646 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
3647 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
3648 (Fnetwork_interface_info): Check that ifreq struct has required
3649 fields before accessing them; this requires that those fields are
3650 defined as macros, which may be too restrictive on some platforms,
3651 but it is better than failing on other platforms.
3652 (syms_of_process): Only defsubr above fns when included.
3653
11e0a411
DL
36542003-09-17 Dave Love <fx@gnu.org>
3655
3656 * unexalpha.c: Don't include varargs.h.
3657
e9c50801
KS
36582003-09-17 Kim F. Storm <storm@cua.dk>
3659
3660 * process.c (Fset_process_sentinel): Add sentinel to childp plist
3661 for network process.
3662 (socket_options): Add `:' prefix to option names. Add optbit field.
3663 (set_socket_option): Remove no_error arg and special handling of s < 0.
3664 Return 1<<optbit for known option, 0 for unknown.
3665 Do not interpret 0 as false for boolean option (only nil).
3666 Pass failed option and value to report_file_error.
7146d1c1 3667 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
3668 (Fset_network_process_option): New function to set just one option.
3669 (Fmake_network_process): Allow :coding arg to be a cons.
3670 Allow :server arg to be an integer specifying backlog size.
3671 Remove :options arg, and allow options to be specified directly
3672 as :KEY, VALUE pairs. Parse these options before binding socket.
3673 As before, :reuseaddr t is default for a server process, but this
3674 can now be disabled by specifying :reuseaddr nil.
3675 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
3676 (init_process): Availability of network options is now checked with
3677 simpler syntax (featurep 'make-network-process :OPTION); use loop to
3678 setup features.
3679 (syms_of_process): Fix defsubr's for the replaced functions.
3680
a0fc3644
DL
36812003-09-16 Dave Love <fx@gnu.org>
3682
3683 * Makefile.in: Depend on coding.h.
3684
6df2a645
KS
36852003-09-14 Kim F. Storm <storm@cua.dk>
3686
3687 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
3688 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
3689 (syms_of_process): Defsubr them.
3690
3691 * config.in: Regenerate.
7146d1c1
SM
3692
36932003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3694
3695 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
3696 * m/news-r6.h (XUNMARK): Remove.
3697 * m/mips.h (XUNMARK): Remove.
3698 * m/mips-siemens.h (XUNMARK): Remove.
3699 * m/iris4d.h (XUNMARK): Remove.
3700 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
3701
0930c1a1
SM
37022003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3703
31003b9e
SM
3704 * lisp.h (VALBITS): Don't remove 1 for the markbit.
3705 (union Lisp_Object): Use unsigned int for types. Remove markbit.
3706 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
3707 (XTYPE): Use unsigned right-shift.
3708 (XMARKBIT, XMARK, XUNMARK): Remove.
3709
0930c1a1
SM
3710 * alloc.c (init_intervals, init_symbol, init_marker):
3711 Don't preallocate anything.
3712 (Fgarbage_collect, mark_object): Ignore the markbit.
3713
3714 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
3715
19bb0fcd 37162003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
3717
3718 * xdisp.c (pint2hrstr): New function.
3719 (decode_mode_spec): Add `%i' and `%I' specs.
3720 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
3721 for `mode-line-format'.
3722
03bb6a06
AS
37232003-09-07 Andreas Schwab <schwab@suse.de>
3724
3725 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
3726 avoid warning.
3727
a6eeaa81 37282003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 3729
0930c1a1 3730 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 3731
ed159bbf
KS
37322003-09-03 Kim F. Storm <storm@cua.dk>
3733
3734 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
3735 change (superseded by 2002-08-30 change); the default blink-off
3736 cursor is now again "no cursor".
3737
fe64a394
JR
37382003-09-01 Jason Rumney <jasonr@gnu.org>
3739
3740 * makefile.w32-in (alloca.o): Remove.
3741 (coding.o): Depend on intervals.h
3742 (emacs.o, bytecode.o): Depend on window.h
3743
c0175e24
DL
37442003-09-01 Dave Love <fx@gnu.org>
3745
3746 * Makefile.in (alloca.o): Remove commands.
3747 (coding.o): Depend on intervals.h composite.h window.h.
3748 (emacs.o): Depend on window.h keyboard.h keymap.h.
3749 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
3750 (bytecode.o): Depend on window.h.
3751
a24d4cb2
JR
37522003-08-31 Jason Rumney <jasonr@gnu.org>
3753
4bc2315e
JR
3754 * w32term.c (w32_per_char_metric): Allow cached metrics to be
3755 returned even when font_type is unknown.
3756
a24d4cb2
JR
3757 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
3758
9d35adc7
JD
37592003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3760
3761 * xterm.c (x_term_init): Initialize new fields in x_display_info.
3762
3763 * xterm.h (struct x_display_info): Add red/green/blue_bits and
3764 *_offset.
3765
3766 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
3767 calculate pixel value.
3768
6f68b035
GM
37692003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
3770
0930c1a1
SM
3771 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
3772 Don't tell redisplay display is accurate when it's actually been
3773 paused for pending input.
6f68b035 3774
4828b4d7
RS
37752003-08-29 Richard M. Stallman <rms@gnu.org>
3776
3777 * dispnew.c (adjust_glyph_matrix): Call window_box
3778 whenever W is nonzero.
3779
3780 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
3781 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 3782 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
3783 Use indirect_variable to trace thru variable aliases.
3784
3785 * config.in: Updated.
3786
3787 * callint.c (Fcall_interactively): Save and restore
3788 Vthis_command, Vthis_original_command, real_this_command,
3789 and current_kboard->Vlast_command.
3790
3791 * abbrev.c (Fexpand_abbrev): Insert before deleting.
3792
e019878d
GM
37932003-08-29 Gerd Moellmann <gerd@gnu.org>
3794
3795 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
3796
85478bc6
KH
37972003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
3798
0930c1a1 3799 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
3800 (decode_coding_sjis_big5): Likewise.
3801
07ce82d3
JR
38022003-08-27 Jason Rumney <jasonr@gnu.org>
3803
d3703de3
JR
3804 * w32.c (sys_pipe): Protect against file descriptor overflow.
3805
ee4a01d1
JR
3806 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
3807
07ce82d3
JR
3808 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
3809
a64387ee 38102003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
3811
3812 * xfns.c (Vgtk_version_string): New variable.
3813 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
3814
a6eeaa81 38152003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 3816
0930c1a1 3817 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 3818
5459e42a
EZ
3819 * Makefile.in (msdos.o): Depend on intervals.h.
3820
0930c1a1 3821 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 3822
231d6cfb
JD
38232003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3824
3825 * xterm.h (struct x_display_info): New fields: client_leader_window
3826 and Xatom_wm_client_leader.
3827
3828 * xterm.c (x_initialize): Move call to x_session_initialize to ...
3829 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
3830
3831 * xsmfns.c (create_client_leader_window): New function.
3832 (x_session_initialize): Call create_client_leader_window, take
3833 dpyinfo as argument.
3834
3835 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
3836
3837 * Makefile.in (xsmfns.o): Add more depenedencies.
3838
afa88464
DL
38392003-08-21 Dave Love <fx@gnu.org>
3840
3841 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
3842
f730033e
KH
38432003-08-21 Kenichi Handa <handa@m17n.org>
3844
3845 * term.c (term_init): Fix previous change; don't rely on the
3846 length of `buffer' if TERMINFO is defined.
3847
6dca786c
DL
38482003-08-20 Dave Love <fx@gnu.org>
3849
3850 * atimer.h: Include lisp.h.
3851
3852 * lisp.h (EMACS_LISP_H): New.
3853 (popup_activated_flag): Don't declare.
3854
3855 * alloca.c: Some merging with gnulib. Change logic and doc
3856 concerning (x)malloc/(x)free -- no longer Emacs-specific.
3857 [DO_BLOCK_INPUT]: Don't include lisp.h.
3858 (xmalloc, xfree): Declare.
3859 (malloc): Don't declare.
3860
0930c1a1 3861 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
3862 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
3863 atimer.h, blockinput.h.
3864
3865 * alloc.c (lisp_align_malloc): Change type of `aligned'.
3866
3867 * alloca.s: Removed.
3868
3a06a6d9
RS
38692003-08-19 Gerd Moellmann <gerd@gnu.org>
3870
3871 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
3872 use -lncurses.
3873
3874 * term.c (term_init): Use a buffer of size 4096 for tgetent since
3875 FreeBSD returns something longer than 2044. Abort if the end of
3876 the buffer is overwritten.
3877
27eeee55
MB
38782003-08-19 Miles Bader <miles@gnu.org>
3879
3880 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
3881
2f297815
GM
38822003-08-19 Gerd Moellmann <gerd@gnu.org>
3883
f4446bbf
GM
3884 * alloc.c (lisp_align_malloc): Check for memory full when
3885 allocating ablocks, which also avoids freeing a pointer into an
3886 ablocks structure.
3887
3888 * puresize.h (BASE_PURESIZE): Increase to 1100000.
3889
0930c1a1 3890 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 3891
0e7d7aae
RS
38922003-08-16 Richard M. Stallman <rms@gnu.org>
3893
3894 * editfns.c (Fencode_time): Doc fix.
3895
38962003-08-16 David Ponce <david@dponce.com>
3897
3898 * fileio.c (Fwrite_region): Fix conditional expression to issue
3899 the right message.
3900
39012003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
3902
3903 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 3904 Set default value to 1.
0e7d7aae 3905
5d551295
KH
39062003-08-15 Kenichi Handa <handa@m17n.org>
3907
3908 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
3909 what autoscaled.
3910 (best_matching_font): Once we find a better scalable font, set
3911 non_scalable_has_exact_height_p to 1.
3912 (try_font_list): Call try_alternative_families to try any family
3913 with the given registry.
3914
1661e56b
AS
39152003-08-09 Andreas Schwab <schwab@suse.de>
3916
f29181dc
AS
3917 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
3918
1661e56b
AS
3919 * print.c (print_string): Fix printing of multibyte string with
3920 nontrivial printcharfun.
3921
465aa50a
JD
39222003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3923
3924 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
3925
3926 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
3927
e430e5ba
KH
39282003-07-31 Kenichi Handa <handa@m17n.org>
3929
3930 * process.c (read_process_output): Return the actually read bytes
3931 instead of the result of decoding.
3932
97e7188e
KH
39332003-07-31 Kenichi Handa <handa@m17n.org>
3934
3935 * xterm.h (struct x_bitmap_record): New member have_mask.
3936
3937 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
3938 to 0.
3939 (x_create_bitmap_from_file): Likewise.
3940 (x_destroy_bitmap): Check have_mask member before freeing a mask.
3941 (x_destroy_all_bitmaps): Likewise.
3942 (x_create_bitmap_mask): Set have_mask member to 1.
3943
b53094d6
RS
39442003-07-30 Richard M. Stallman <rms@gnu.org>
3945
3946 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
3947
631f2082
JD
39482003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3949
3950 * gtkutil.c (xg_mark_data): Update calls to mark_object.
3951
c855f2ca
RS
39522003-07-29 Richard M. Stallman <rms@gnu.org>
3953
3954 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
3955 Conditionalize XIM code on HAVE_XIM.
3956
3957 * fns.c (Fclear_string): New function.
3958 (syms_of_fns): defsubr it.
3959
17e6d491
KH
39602003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
3961
0930c1a1 3962 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 3963
29ea8ae9
SM
39642003-07-22 Stefan Monnier <monnier@cs.yale.edu>
3965
3966 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
3967
3968 * buffer.c (delete_all_overlays): New function.
3969 * buffer.h (delete_all_overlays): Declare.
3970 * coding.c (run_pre_post_conversion_on_str):
3971 * print.c (temp_output_buffer_setup):
3972 * fileio.c (Finsert_file_contents):
3973 * minibuf.c (get_minibuffer): Use it.
3974
1dd7ccf2
AC
39752003-07-22 Andrew Choi <akochoi@shaw.ca>
3976
3977 * unexmacosx.c (unexec_regions_sort_compare):
3978 (unexec_regions_merge): New functions. Sort and merge unexec
3979 regions before dumping them.
3980
f57bd967
DL
39812003-07-22 Dave Love <fx@gnu.org>
3982
3983 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
3984
7cdee936
SM
39852003-07-21 Stefan Monnier <monnier@cs.yale.edu>
3986
3987 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
3988 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
3989 MARKBIT as the gcmarkbit for strings.
3990
e50886d3
RS
39912003-07-21 Richard M. Stallman <rms@gnu.org>
3992
3993 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
3994
29ea8ae9 3995 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
3996 (syms_of_fns): Corresponding change.
3997
3998 * alloc.c (syms_of_alloc): Doc fixes.
3999
40002003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
4001
4002 * s/netbsd.h: Use -Wl syntax.
4003
fdc39b59
RS
40042003-07-17 Richard M. Stallman <rms@gnu.org>
4005
4006 * xterm.c (xim_initialize): Redo 6/24 change.
4007
9c53385f
SM
40082003-07-15 Stefan Monnier <monnier@cs.yale.edu>
4009
4010 * buffer.c (copy_overlays): Use EMACS_INT for positions.
4011 (Fswitch_to_buffer): Don't signal an error when switching to the same
4012 buffer in a dedicated window.
4013
4014 * alloc.c: Use bitmaps for cons, as was done for floats.
4015 (init_float, init_cons): Let the normal code allocate the first block.
4016 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
4017 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
4018 New macros.
4019 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
4020 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
4021 (live_cons_p): Check the pointer is not past the `conses' array.
4022 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
4023 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
4024 (survives_gc_p): Use CONS_MARKED_P and simplify.
4025 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
4026
dde13196
PE
40272003-07-13 Paul Eggert <eggert@twinsun.com>
4028
4029 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
4030 puts it into BSS instead, at least on Solaris 8 and 9.
4031 This is a valid optimization, and it may occur on other platforms,
4032 so Emacs should not assume that initializing a static variable to
4033 zero puts it into data.
4034 * alloc.c (pure, staticvec):
4035 Initialize these arrays to nonzero, so that they're not
4036 put into BSS by that optimization.
4037
a801bc34
SM
40382003-07-13 Stefan Monnier <monnier@cs.yale.edu>
4039
4040 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
4041 (lisp_align_malloc): Use posix_memalign is available.
4042 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
4043 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
4044 for consistency. Update users.
4045
0c8b2afa
RS
40462003-07-13 Richard M. Stallman <rms@gnu.org>
4047
4048 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
4049
668c2ab0
JB
40502003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
4051
4052 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
4053 and use the Gtk+ function gtk_window_icon_from_file if available.
4054
4055 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
4056 handle mask of bitmaps.
4057 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
4058 mask property.
4059 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
4060
4061 * xterm.h (xg_set_icon): New function.
4062
800bebe3
RS
40632003-07-12 Paul Eggert <eggert@twinsun.com>
4064
4065 * unexelf.c (unexec): Consider a section to precede the .bss
4066 section if its addresses overlap that of .bss.
4067
69e38995
RS
40682003-07-12 Richard M. Stallman <rms@gnu.org>
4069
4070 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
4071
4072 * config.in (HAVE_CRTIN): Add #undef.
4073 (INLINE): Really inline only if OPTIMIZE is defined.
4074
4075 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
4076 END_FILES_1.
4077 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 4078 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
4079
4080 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
4081 (TERMINFO): Define.
4082 (LIBS_TERMCAP): Define.
4083 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
4084
4085 * xfns.c: Include libpng/png.h instead of png.h.
4086
f1d0c238
AS
40872003-07-11 Andreas Schwab <schwab@suse.de>
4088
4089 * buffer.c (modify_overlay): Update prototype.
4090 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
4091 Likewise.
4092
5f6bf5fe
SM
40932003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4094
4095 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
4096 (struct interval): Move to intervals.h.
4097 (struct Lisp_Marker): Use EMACS_INT for position info.
4098 (forward_point): Remove prototype of defunct function.
4099 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
4100 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
4101 (syms_of_textprop, set_text_properties): Remove prototypes that are
4102 already in intervals.h.
4103
4104 * intervals.h (struct interval): Move from lisp.h.
4105 Use EMACS_INT for position and size info.
4106
4107 * coding.c: Include intervals.h for Fset_text_properties.
4108
4109 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4110 position and length information.
4111
2765b457
SM
41122003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4113
4114 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4115 position and length information.
4116
2410d73a
SM
41172003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4118
4119 Change overlays_after and overlays_before so the overlays themselves
4120 are linked into lists, rather than using cons cells. After all each
4121 Lisp_Misc already occupies 5 words, so we can add a `next' field to
4122 Lisp_Overlay for free and save up one cons cell per overlay (not
4123 to mention one indirection when traversing the list of overlay).
4124
4125 * lisp.h (struct Lisp_Overlay): New field `next'.
4126
4127 * buffer.h (struct buffer): Change overlays_before and overlays_after
4128 from Lisp lists of overlays to pointers to overlays.
4129
4130 * buffer.c (overlay_strings, recenter_overlay_lists):
4131 Fix typo in eassert in last commit.
4132 (unchain_overlay): New function.
4133 (add_overlay_mod_hooklist): Use AREF.
4134 (copy_overlays, reset_buffer, overlays_at, overlays_in)
4135 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
4136 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
4137 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
4138 (report_overlay_modification, evaporate_overlays, init_buffer_once):
4139 Adjust to new type of overlays_(before|after).
4140
4141 * alloc.c (mark_object): Mark the new `next' field of overlays.
4142 (mark_buffer): Manually mark the overlays_(after|before) fields.
4143
4144 * coding.c (run_pre_post_conversion_on_str):
4145 * editfns.c (overlays_around):
4146 * xdisp.c (load_overlay_strings):
4147 * fileio.c (Finsert_file_contents):
4148 * indent.c (current_column):
4149 * insdel.c (signal_before_change, signal_after_change):
4150 * intervals.c (set_point_both):
4151 * print.c (temp_output_buffer_setup): Use new type for
4152 overlays_(before|after).
4153
04812929
SM
41542003-07-08 Stefan Monnier <monnier@cs.yale.edu>
4155
4156 * buffer.c (report_overlay_modification): Don't run hooks while
4157 traversing the list of overlays.
4158
4159 * buffer.h (struct buffer): Use an int for overlay_center.
4160 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4161 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4162
4163 * buffer.c (reset_buffer, recenter_overlay_lists)
4164 (adjust_overlays_for_insert, adjust_overlays_for_delete)
4165 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
4166 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
4167 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4168 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4169
4170 * xdisp.c (fast_find_position): Remove unused var.
4171
4172 * cmds.c (Qexpand_abbrev): New sym.
4173 (syms_of_cmds): Initialize it.
4174 (internal_self_insert): Use it to call expand-abbrev.
4175
2e7ecf15
KS
41762003-07-09 Kim F. Storm <storm@cua.dk>
4177
f9711de4 4178 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 4179 was configured with --without-xim.
42f81f64 4180 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 4181
c6de56a0
RS
41822003-07-07 Richard M. Stallman <rms@gnu.org>
4183
4184 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
4185
4186 * alloc.c (Fgarbage_collect): Doc fix.
4187
b93fb365
KH
41882003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
4189
4190 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
4191
bfe1a3f7
SM
41922003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4193
04812929
SM
4194 * minibuf.c (read_minibuf): UNGCPRO before returning.
4195 (Ftry_completion, Fall_completions): Doc fix.
4196
bfe1a3f7
SM
4197 * alloc.c (live_float_p): Check that p is not past the `floats' array,
4198 now that `floats' is not the last element of the struct any more.
4199
ee79d1aa
JR
42002003-07-06 Jason Rumney <jasonr@gnu.org>
4201
4202 * w32term.h (ClipboardSequence_Proc): New type.
4203
4204 * w32fns.c (clipboard_sequence_fn): New variable.
4205 (globals_of_w32fns): Initialize it.
4206
4207 * w32select.c (last_clipboard_sequence_number): New variable.
4208 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
4209 number if possible.
4210
49723c04
SM
42112003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4212
4698665f
SM
4213 * m/amdx86-64.h (MARKBIT):
4214 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
4215 MARKBIT and ARRAY_MARK_FLAG any more.
4216
4217 * m/hp800.h (XSETMARKBIT):
4218 * m/sr2k.h (XSETMARKBIT):
4219 * lisp.h (XSETMARKBIT): Remove unused macro.
4220
49723c04
SM
4221 * lisp.h (mark_object): Change prototype.
4222
4223 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
4224 (last_marked): Change accordingly.
4225 (mark_interval, mark_maybe_object, mark_maybe_pointer)
4226 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
4227 (mark_buffer): Update calls to mark_object.
4228
4229 * bytecode.c (mark_byte_stack):
4230 * fns.c (sweep_weak_table):
4231 * keyboard.c (mark_kboards): Update calls to mark_object.
4232
1d660eca
JR
42332003-07-06 Jason Rumney <jasonr@gnu.org>
4234
4235 * alloc.c (struct ablock): Only include padding when there is some.
4236
618b5ae4
SM
42372003-07-04 Stefan Monnier <monnier@cs.yale.edu>
4238
4239 * alloc.c (ALIGN): Add casts to simplify usage.
4240 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
4241 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
4242 (struct ablock, struct ablocks): New types.
4243 (free_ablock): New global var.
4244 (lisp_align_malloc, lisp_align_free): New functions.
4245 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
4246 (struct float_block): Reorder and add gcmarkbits.
4247 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
4248 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
4249 (init_float, make_float): Use lisp_align_malloc.
4250 (free_float, live_float_p): Don't use `type' any more.
4251 (make_float): Use FLOAT_UNMARK to access to mark bit.
4252 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
4253 Use FLOAT_MARKED_P to access the mark bit.
4254 (pure_alloc): Simplify use of ALIGN.
4255 (mark_object): Use FLOAT_MARK to access the mark bit.
4256 (gc_sweep): Use new macros to access the float's mark bit.
4257 (init_alloc_once): Init free_ablock.
4258
4259 * lisp.h (struct Lisp_Float): Remove unused field `type'.
4260
3ef06d12
SM
42612003-06-27 Stefan Monnier <monnier@cs.yale.edu>
4262
4263 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
4264 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
4265 (allocate_buffer): Move.
4266 (string_bytes): Don't mask markbit of `size_byte'.
4267 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4268 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
4269 Use the `size' field of buffers (rather than the `name' field) for
4270 the mark bit, as is done for all other vectorlike objects.
4271 Use the new macros to access the mark bit of vectorlike objects.
4272
e81043aa
RS
42732003-06-26 Richard M. Stallman <rms@gnu.org>
4274
4275 * puresize.h (BASE_PURESIZE): Increment base size.
4276
4277 * xdisp.c (fast_find_position): Enable Gerd's new definition.
4278
4279 * xterm.c (xim_initialize): Undo previous change.
4280
2d0834cc
SM
42812003-06-26 Stefan Monnier <monnier@cs.yale.edu>
4282
4283 * alloc.c (survives_gc_p): Simplify.
4284
4285 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
4286
4287 * window.c (Fset_window_dedicated_p): Simplify.
4288 (display_buffer_1): Don't raise the win from which minibuf was entered.
4289 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
4290 (Fminibuffer_selected_window): Simplify.
4291
4292 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
4293
4294 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
4295 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
4296
4297 * insdel.c (check_markers, adjust_markers_for_delete)
4298 (adjust_markers_for_insert, adjust_markers_for_replace)
4299 (prepare_to_modify_buffer, RESTORE_VALUE):
4300 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
4301 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
4302 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
4303 * alloc.c (Fmake_marker, free_marker, gc_sweep):
4304 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
4305 * editfns.c (save_excursion_restore, transpose_markers):
4306 * window.c (delete_window):
4307 * xdisp.c (message_dolog): Update for new types.
4308
d54ae3d8
JD
43092003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4310
a5f696ac
JD
4311 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
4312 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 4313 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
4314
4315 * frame.c (make_frame): Initialize default_face_done_p.
4316
4317 * frame.h (struct frame): Add default_face_done_p.
4318
d54ae3d8
JD
4319 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
4320 will be defined.
4321
2336fe58
SM
43222003-06-25 Stefan Monnier <monnier@cs.yale.edu>
4323
4324 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
4325 Initialize the new field `gcmarkbit'.
4326 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
4327 (mark_interval_tree): Don't mark the tree separately from the nodes.
4328 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
4329 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4330 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
4331
4332 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
4333 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
4334 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
4335 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
4336 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
4337
bcea31c2
DL
43382003-06-24 Dave Love <fx@gnu.org>
4339
4340 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
4341
4342 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
4343 from gnulib.
4344
2601f59e
RS
43452003-06-21 Richard M. Stallman <rms@gnu.org>
4346
4347 * fileio.c (Fwrite_region): Alternate messages
4348 for append and partial write.
4349
4350 * keyboard.c (read_key_sequence): When converting upcase fn key to
4351 downcase, update fkey and keytran so `backspace' gets translated.
4352
4353 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
4354
4355 * process.c (wait_reading_process_input): Don't signal SIGIO
4356 in batch mode.
4357
b5d2c621
KH
43582003-06-17 Kenichi Handa <handa@m17n.org>
4359
4360 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
4361 composite.h.
4362
4363 * xselect.c: Don't include charset.h, coding.h, composite.h.
4364 (Qforeign_selection): New variable.
4365 (syms_of_xselect): Intern and static it.
4366 (selection_data_to_lisp_data): Return a unibyte string made from
4367 data with `foreign-selection' text property.
4368
6793bc63
SM
43692003-06-15 Stefan Monnier <monnier@cs.yale.edu>
4370
4371 * termhooks.h (EVENT_INIT): New macro.
4372
4373 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
4374
4375 * alloc.c (mark_kboards): Move to keyboard.c.
4376
4377 * keyboard.c (record_asynch_buffer_change, read_avail_input):
4378 * xterm.c (x_dispatch_event):
4379 * xmenu.c (find_and_call_menu_selection):
4380 * xdisp.c (handle_tool_bar_click):
4381 * w32menu.c (menubar_selection_callback):
4382 * sysdep.c (kbd_input_ast, read_input_waiting):
4383 * msdos.c (dos_rawgetc):
4384 * macterm.c (mac_check_for_quit_char):
4385 * macmenu.c (menubar_selection_callback):
4386 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
4387 data to kbd_buffer_store_event.
4388
b3ea810c
KS
43892003-06-15 Kim F. Storm <storm@cua.dk>
4390
4391 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 4392 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 4393
b8f75eda
KG
43942003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4395
4396 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
4397
ba92ce48
KH
43982003-06-12 Kenichi Handa <handa@m17n.org>
4399
4400 * fileio.c (Fwrite_region): Save and restore restriction.
4401
b80263be
DL
44022003-06-12 Dave Love <fx@gnu.org>
4403
4404 * alloca.c (alloca): Declare arg as size_t.
4405
6793bc63
SM
4406 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
4407 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 4408
b23c0a83
DL
44092003-06-11 Dave Love <fx@gnu.org>
4410
4411 * search.c (shrink_regexp_cache): Use xrealloc.
4412 (syms_of_search): Use xmalloc.
4413
700e47c2
KS
44142003-06-10 Kim F. Storm <storm@cua.dk>
4415
4416 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
4417 Adjust phys_cursor.x to be relative to window box, rather than
4418 text area before checking -- to ensure cursor is redrawn when
4419 exposing window.
4420 Note: This also fixes a similar (older) bug if display margins
4421 are present.
4422
f11aa0b2
KH
44232003-06-06 Kenichi Handa <handa@m17n.org>
4424
4425 * coding.c (encoding_buffer_size): If coding->type is
4426 coding_type_ccl, double magnification on CRLF encoding.
4427
3d143690
JR
44282003-06-06 Jason Rumney <jasonr@gnu.org>
4429
4430 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
4431 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
4432
4433 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
4434 Mac too.
4435
f16205ca
DL
44362003-06-05 Dave Love <fx@gnu.org>
4437
b23c0a83
DL
4438 * strftime.c: Merge changes from gnulib.
4439
f16205ca
DL
4440 * mktime.c (__mktime_internal): Merge changes from gnulib
4441 involving year 69 and dst2.
4442
4443 Changes to merge with gnulib version and be consistent with the
4444 autoconf test:
4445
6793bc63
SM
4446 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
4447 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
4448 [HAVE_LOCALE_H]: Include locale.h.
4449 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
4450
9b87a0bc
KS
44512003-06-05 Kim F. Storm <storm@cua.dk>
4452
4453 * window.c (coordinates_in_window): Convert X and Y to window
4454 relative coordinates inside mode-line and header-line parts.
4455 Convert X and Y to margin area relative coordinates inside left
4456 and right display margin parts.
4457
5a8a15ec
JR
44582003-06-05 Jason Rumney <jasonr@gnu.org>
4459
4460 * w32fns.c (add_system_logical_colors_to_map): New function.
4461 (Fx_open_connection): Use it.
4462
01ed8ff1
SM
44632003-06-04 Stefan Monnier <monnier@cs.yale.edu>
4464
4465 * process.c (allocate_pty): Revert part of the previous patch.
4466 (Faccept_process_output): Simplify.
4467
b427b65d
JR
44682003-06-04 Jason Rumney <jasonr@gnu.org>
4469
4470 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
4471
4472 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
4473 (lispy_mouse_wheel_names): Remove.
4474 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
4475 Always define drag_and_drop_syms.
4476
4477 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
4478 WHEEL_EVENT events.
4479
914a8c47
SM
44802003-06-03 Stefan Monnier <monnier@cs.yale.edu>
4481
01ed8ff1
SM
4482 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
4483
914a8c47
SM
4484 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
4485
adcb132c
JD
44862003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4487
4488 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
4489 menu item label.
4490
be781fa7
RS
44912003-06-03 Richard M. Stallman <rms@gnu.org>
4492
4493 * window.c (Fwindow_edges): Doc fix.
4494 (Fwindow_pixel_edges, Fwindow_inside_edges)
4495 (Fwindow_inside_pixel_edges): New functions.
4496 (syms_of_window): defsubr them.
4497
4498 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
4499 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
4500
914a8c47
SM
45012003-06-02 Stefan Monnier <monnier@cs.yale.edu>
4502
4503 * dispnew.c (Fsit_for): Don't lie about the number of args.
4504
5b07197a
DL
45052003-06-02 Dave Love <fx@gnu.org>
4506
4507 * callproc.c: Use HAVE_FCNTL_H, not USG5.
4508 (syms_of_callproc) <process-environment>: Doc fix.
4509
4510 * doc.c: Use HAVE_FCNTL_H, not USG5.
4511
4512 * xfaces.c (font_rescale_ratio): Fix for K&R.
4513
4514 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
4515
4516 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
4517
4518 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
4519
4520 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
4521 (xg_create_frame_widgets): Use ENCODE_UTF_8.
4522
d7107586 4523 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
4524
4525 * xmenu.c (ENCODE_MENU_STRING): New.
4526 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
4527 Use it.
4528
4529 * coding.h (ENCODE_UTF_8): New.
4530 (Qutf_8): Declare.
4531
4532 * coding.c (Qutf_8): New.
4533 (syms_of_coding): Intern it.
4534
4535 * fns.c: Doc fixes.
4536
7335b336
KH
45372003-06-02 Kenichi Handa <handa@m17n.org>
4538
4539 * buffer.c (Fset_buffer_multibyte): Fix previous change.
4540
914a8c47
SM
45412003-06-01 Stefan Monnier <monnier@cs.yale.edu>
4542
4543 * lread.c (openp): Make sure STR is a string.
4544
9862c135
JR
45452003-06-01 David Ponce <david@dponce.com>
4546
4547 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
4548 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
4549
4550 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
4551 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
4552 (discard_mouse_events): Discard WHEEL_EVENT events too.
4553 (lispy_wheel_names, wheel_syms): New.
4554 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
4555 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
4556 defined.
914a8c47 4557 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
4558
4559 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
4560 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4561 WHEEL_EVENT events.
4562
f984e73e
JPW
45632003-05-31 John Paul Wallington <jpw@gnu.org>
4564
4565 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
4566 timer are in lisp/emacs-lisp.
4567
1efcd78f
KH
45682003-05-31 Kenichi Handa <handa@m17n.org>
4569
458c8af4
KH
4570 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
4571 region when a buffer is changed to unibyte.
4572
1efcd78f
KH
4573 * charset.h (VALID_LEADING_CODE_P): New macro.
4574 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
4575
778e2804
KH
4576 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
4577 is nonzero, accept multibyte form of eight-bit-control chars.
4578 (decode_composition_emacs_mule): Likewise.
4579 (decode_coding_emacs_mule): Likewise.
4580 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
4581 multibyte form of eight-bit-control chars.
4582
4583 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
4584 (Finsert_file_contents): If coding-system-for-read is bound to
4585 Qauto_save_coding, use the coding system emacs-mule with special
4586 setting for recovering a file.
4587 (choose_write_coding_system): On auto saving, use the coding
4588 system emacs-mule with special setting for auto saving.
4589 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
4590
034060e4
KH
45912003-05-30 Kenichi Handa <handa@m17n.org>
4592
4593 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
4594 properly before calling ccl_driver.
4595
778e2804 4596 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
4597
4598 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
4599 nonzero.
4600 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
4601 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
4602
595f5aa5
GM
46032003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
4604
4605 * xfaces.c (realize_default_face): Do not abort if lface is
4606 non-existent - reverts change from 2003-05-19.
4607
103e0180
KH
46082003-05-29 Kenichi Handa <handa@m17n.org>
4609
4610 * coding.c (decode_coding_iso2022): Pay attention to the byte
4611 sequence of CTEXT extended segment, and retain those bytes as is.
4612
46132003-05-28 Kenichi Handa <handa@m17n.org>
4614
4615 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
4616 of CODING_REPLACEMENT_CHARACTER.
4617 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
4618 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
4619 check this flag on encoding.
4620 (encode_coding_sjis_big5): Check
4621 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
4622 (Fset_terminal_coding_system_internal): Set
4623 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
4624 instead of setting CODING_FLAG_ISO_SAFE flag in
4625 terminal_coding.flags.
4626
4627 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
4628 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
4629 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
4630
ff6a3bfb 46312003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 4632
ff6a3bfb
RS
4633 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
4634
4635 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 4636
1963c428
KS
46372003-05-28 Kim F. Storm <storm@cua.dk>
4638
4639 * xdisp.c (expose_window): Fix error in calculation of
4640 window relative coordinates of area to redisplay.
4641
2b5d4601
JR
46422003-05-27 Jason Rumney <jasonr@gnu.org>
4643
4644 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
4645
1c64a4a2
JB
46462003-05-27 David Ponce <david@dponce.com>
4647
4648 Handle W32 mouse wheel events as mouse click events, like in X.
4649
4650 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
4651 MOUSE_WHEEL_EVENT anymore.
4652
4653 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
4654 Scrolling down/up the mouse wheel is respectively mapped to mouse
4655 button 4 and 5.
4656 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4657 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
4658 WM_MOUSEWHEEL events.
4659
2d031b89
AS
46602003-05-27 Andreas Schwab <schwab@suse.de>
4661
20464fdf
AS
4662 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
4663
2d031b89
AS
4664 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
4665 partially visible line.
4666
4667 * alloc.c (Fgarbage_collect): Fix last change.
4668
97bc76d4
JPW
46692003-05-26 John Paul Wallington <jpw@gnu.org>
4670
4671 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
4672
56613f06
SM
46732003-05-25 Stefan Monnier <monnier@cs.yale.edu>
4674
4675 * window.c (Fset_window_buffer): Add type of `keep_margins'.
4676 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
4677
4678 * window.h (window_box_text_cols): Declare.
4679
4680 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
4681 (x_draw_vertical_border): Remove unused var `f'.
4682
4683 * xfaces.c (build_scalable_font_name): Remove `unused var
4684 pixel_size' warning.
4685
4686 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
4687
4688 * unexelf.c (unexec): Remove `unused var n' warning.
4689
4690 * strftime.c (my_strftime_localtime_r): Remove `defined but
4691 unused' warning.
4692
4693 * process.c (allocate_pty): Remove `unused var stb' and
4694 `cp might be used uninitialized' warnings.
4695
4696 * dispnew.c (mode_line_string): Remove unused var `f'.
4697
4698 * coding.c (find_safe_codings): Remove unused var `i'.
4699
4700 * bytecode.c (Fbyte_code): Remove `unused val' warning.
4701
4702 * buffer.c (Fkill_buffer): Remove unused var `list'.
4703
4704 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
4705
93421a1f
JD
47062003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4707
4708 * frame.c (make_frame): Condition want_fullscreen with
4709 HAVE_WINDOW_SYSTEM.
4710
c4b8aebc
JB
47112003-05-25 Juanma Barranquero <lektu@terra.es>
4712
4713 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
4714 (Fwindow_scroll_bars): Fix typo in docstring.
4715
0416870b
KS
47162003-05-24 Kim F. Storm <storm@cua.dk>
4717
4718 The following changes serve several purposes:
4719
4720 1) Swap the position of fringes and display margins in windows, i.e.
4721 the fringes are now displayed between the margins and the text area
4722 (by default).
4723
4724 2) Allow fringe and scroll bar parameters to be set per-buffer and
4725 per-window (like display margins). Such settings are now stored
4726 in window configurations, preserved when frames are resized, and
9018a88e 4727 copied when windows are split vertically or horizontally.
0416870b
KS
4728 Several bugs related to display margins have been fixed.
4729
4730 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 4731
0416870b
KS
4732 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
4733 rather than FRAME_WIDTH (FRAME_FONT (f)).
4734
4735 5) Introduce a consistent naming of variables, members and macros
4736 depending on whether their value is measured in pixels or in
4737 canonical columns/lines. Pixel dimensions are named *_width and
4738 *_height, while canonical columns/lines are named *_cols and
4739 *_lines. Pixel positions are named *_x and *_y, while column/line
4740 positions are named *_col and *_line.
4741
4742 6) Consolidate more of the X, W32, and MAC gui code by moving
4743 common data into struct frame, and generalize it for the non-gui
4744 case by using suitable defaults.
4745
4746 7) Cleanup and consolidate the macros controlling frame and window
4747 layout into frame.h and window.h, and generalize the use of the
4748 various window_box_* functions (enhanced to handle the new fringe
4749 position and the per-window fringe and scroll bar settings).
4750
4751 * frame.h (struct frame): Rename members height to text_lines,
4752 width to text_cols, window_height to total_lines, window_width to
4753 total_cols, new_height to new_text_lines, new_width to
4754 new_text_cols. All uses changed.
4755 (struct frame): New members which consolidate common members of
4756 x_output, w32_output, and mac_output structures: left_pos,
4757 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
4758 win_gravity, size_hint_flags, border_width, internal_border_width,
4759 line_height, fringe_cols, left_fringe_width, right_fringe_width,
4760 want_fullscreen. All uses changed.
4761 (struct frame): New member column_width contaning the canonical
4762 column width, analogue to line_height. All uses changed.
4763 (struct frame): Rename members scroll_bar_pixel_width to
4764 config_scroll_bar_width, and scroll_bar_cols to
4765 config_scroll_bar_cols. All uses changed.
4766 (struct frame): New member scroll_bar_actual_width which
4767 consolidates and renames the vertical_scroll_bar_extra member of
4768 x_output, w32_output, and mac_output structures. All uses changed.
4769 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
4770 from x/w32/macterm.h files. All uses changed. Also change code
4771 which referred to f->output_data...->pixel_height.
4772 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
f63fd14e 4773 from x/w32/macterm.h files. All uses changed. Also change code
0416870b
KS
4774 which referred to f->output_data...->pixel_width.
4775 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
4776 Also change code which referred to f->height.
4777 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
4778 Also change code which referred to f->width.
4779 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
4780 to update new_text_lines and new_text_cols members directly.
4781 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
4782 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
4783 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
4784 FRAME_SCROLL_BAR_COLS. All uses changed.
4785 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
4786 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
4787 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
4788 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
4789 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
4790 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
4791 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
4792 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
4793 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
4794 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
4795 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
4796 return line_height member (it now has proper value also for
4797 non-window frames).
4798 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
4799 return new column_width member (rather than the default font width).
4800 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
4801 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
4802 from x/w32/macterm.h files. Unconditionally return corresponding
4803 member of frame structure (they now have proper values also for
4804 non-window frames).
4805 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
4806 Calculate return value from left and right widths.
4807 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
4808 internal_border_width member (has proper value for non-window frame).
4809 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
4810 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
4811 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
4812 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
4813 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
4814 consolidated from xterm.h, macterm.h, and w32term.h.
4815 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
4816 consolidated from xterm.h, macterm.h, and w32term.h.
4817 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
4818 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
4819 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
4820 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
4821 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
4822 consolidated from x/mac/w32term.h.
4823 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
4824 consolidated from x/mac/w32term.h.
4825 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
4826 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
4827 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
4828 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
4829
4830 * window.h (struct window): Rename members left to left_col,
4831 top to top_line, height to total_lines, width to total_cols,
4832 left_margin_width to left_margin_cols, right_margin_width to
4833 right_margin_cols, orig_height to orig_total_lines, orig_top to
4834 orig_top_line. All uses changed.
4835 (struct window): New members left_fringe_width, right_fringe_width,
4836 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
4837 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
4838 New macros primarily used to simplify other macros.
4839 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
4840 referred to XINT (w->width).
4841 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
4842 referred to XINT (w->height).
4843 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
4844 referred to XINT (w->width) * canon_x_unit.
4845 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
4846 referred to XINT (w->height) * canon_y_unit.
4847 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
4848 referred to XINT (w->left).
4849 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
4850 all uses and code that referred to XINT (w->left) + XINT (w->width).
4851 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
4852 referred to XINT (w->top).
4853 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
4854 referred to XINT (w->top) + XINT (w->height).
4855 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
4856 referred to XINT (w->left) * canon_x_unit.
4857 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
4858 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
4859 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
4860 referred to XINT (w->top) * canon_y_unit.
4861 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
4862 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
4863 (WINDOW_LEFTMOST_P): New macro.
4864 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
4865 All uses changed.
4866 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
4867 All uses changed.
4868 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
4869 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
4870 Do not exclude left fringe width.
4871 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
4872 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
4873 Do not exclude fringe widths.
4874 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
4875 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
4876 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
4877 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
4878 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
4879 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
4880 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
4881 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
4882 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
4883 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
4884 New macros. Change code which referenced corresponding
4885 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
4886 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
4887 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
4888 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
4889 allow per-window scroll-bar settings.
4890 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
4891 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
4892 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
4893 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
4894 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
4895 FRAME_SCROLL_BAR_WIDTH.
4896 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 4897 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
4898 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
4899 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
4900 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
4901 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
4902 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
4903 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
4904 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4905 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4906 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
4907 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
4908 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4909 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
4910 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4911 (window_from_coordinates): Update prototype.
4912 (Fset_window_buffer): Update EXFUN.
4913 (set_window_buffer): Update prototype.
9018a88e 4914
0416870b 4915 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 4916 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
4917 changed.
4918 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
4919 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
4920 internal_border_width is now set to 0 for non-window frames.
4921 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
4922 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
4923 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
4924 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
4925 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
4926 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4927 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4928 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
4929 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 4930 Move to window.h and renamed [see window.h changes].
0416870b
KS
4931 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
4932 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
4933 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
4934 Use WINDOW_TOTAL_LINES.
0416870b
KS
4935 (frame_update_line_height): Remove prototype.
4936
4937 * buffer.h (struct buffer): Rename members measured in columns:
4938 left_margin_width to left_margin_cols, right_margin_width to
4939 right_margin_cols. All uses changed.
4940 New members left_fringe_width, right_fringe_width,
4941 fringes_outside_margins for per-buffer fringe settings.
4942 New members scroll_bar_width and vertical_scroll_bar_type for
4943 per-buffer scroll bar settings.
4944
4945 * buffer.c (init_buffer_once): Set buffer_defaults and
4946 buffer_local_flags for new buffer-local variables
4947 left_fringe_width, right_fringe_width, fringes_outside_margins,
4948 scroll_bar_width, and vertical_scroll_bar_type.
4949 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
4950 default-* variables for them.
4951
4952 * dispnew.c: Make (many) trivial substitutions for renamed and
4953 new macros in dispextern.h, frame.h and window.h.
4954 (mode_line_string): No need to adjust width for mode lines, as it
4955 is already adjusted by the caller.
4956 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 4957
0416870b
KS
4958 * frame.c: Make (many) trivial substitutions for renamed and
4959 new macros in dispextern.h, frame.h and window.h.
4960 (make_frame): Initialize left_fringe_width, right_fringe_width,
4961 fringe_cols, scroll_bar_actual_width, border_width,
4962 internal_border_width, column_width, line_height, x_pixels_diff,
4963 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
4964 members with values suitable for a non-window frames.
4965
4966 * gtkutil.c: Make (many) trivial substitutions for renamed and
4967 new macros in dispextern.h, frame.h and window.h.
9018a88e 4968
0416870b
KS
4969 * indent.c: Make (few) trivial substitutions for renamed and
4970 new macros in dispextern.h, frame.h and window.h.
4971
4972 * keyboard.c: Make (many) trivial substitutions for renamed and
4973 new macros in dispextern.h, frame.h and window.h.
4974 (make_lispy_event): Use window positions returned from
4975 window_from_coordinates when constructing the lisp event for
4976 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
4977 (incorrect) values locally.
4978 (make_lispy_movement): Use window positions returned from
4979 window_from_coordinates when constructing the lisp event, rather
4980 than calculating (incorrect) values locally.
4981
4982 * scroll.c: Make (some) trivial substitutions for renamed and
4983 new macros in dispextern.h, frame.h and window.h.
4984
4985 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
4986 scroll-bars.
4987
4988 * sysdep.c: Make (few) trivial substitutions for renamed and
4989 new macros in dispextern.h, frame.h and window.h.
4990
4991 * term.c: Make (some) trivial substitutions for renamed and
4992 new macros in dispextern.h, frame.h and window.h.
4993
4994 * widget.c: Make (few) trivial substitutions for renamed and
4995 new macros in dispextern.h, frame.h and window.h.
4996
4997 * window.c: Make (many) trivial substitutions for renamed and
4998 new macros in dispextern.h, frame.h and window.h.
4999 (make_window): Initialize new members
5000 left_margin_cols, right_margin_cols, left_fringe_width,
5001 right_fringe_width, fringes_outside_margins, scroll_bar_width,
5002 and vertical_scroll_bar_type.
5003 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 5004 and per-window fringes and scroll-bars.
0416870b 5005 Fix bug related to incorrectly adjusting coordinates by
9018a88e 5006 frame's internal_border_width (the effect normally negible since
0416870b
KS
5007 the internal_border_width is typically 0 or 1 pixel, but very
5008 noticeable for an internal_border_width of e.g. 25 pixels).
5009 Upon successful return (other than ON_NOTHING), the coordinates
5010 are now always properly converted to window relative for the
5011 given display element.
5012 (window_from_coordinates): Add new parameters wx and wy to
5013 return the window relative x and y position in the returned
5014 window and part. A null arg means, don't return the position.
5015 All callers changed.
5016 (adjust_window_margins): New function which may reduce the width
5017 of the display margins if a window's text area is too small after
5018 resizing or splitting windows.
5019 (size_window): Fix bug that did not account for display margin
5020 widths when checking the minimum width of a window; use
5021 adjust_window_margins.
5022 (set_window_buffer): Call Fset_window_fringes and
5023 Fset_window_scroll_bars to setup per-window elements.
5024 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
5025 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
5026 (e.g. after splitting a window or resizing the frame).
5027 All callers changed.
0416870b
KS
5028 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
5029 (Fsplit_window): Duplicate original window's display margin,
5030 fringe, and scroll-bar settings; then call Fset_window_buffer with
5031 KEEP_MARGINS non-nil. This fixes a bug which caused a split
5032 window to only preserve the display margins in one of the windows.
c4b8aebc 5033 When splitting horizontally, call adjust_window_margins on both
0416870b 5034 windows to ensure that the text area of the new windows is non too
f9711de4 5035 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
5036 width of the split window was less than the width of the display
5037 margins.
9018a88e
SM
5038 (window_box_text_cols): Renamed from window_internal_width.
5039 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
5040 Fix bug that caused vertical separator to be subtracted also on
5041 window frames. Fix another bug that did not reduce the returned
5042 value by the columns used for display margins.
5043 (window_scroll_line_based): Fix bug related to scrolling too much
5044 when display margins are present (implicitly fixed by the fix to
5045 window_box_text_cols).
5046 (scroll_left, scroll_right): Fix bug related to scrolling too far
5047 by default when display margins are present (implicitly fixed by
5048 the fix to window_box_text_cols).
5049 (struct saved_window): Rename members left to left_col, top to
5050 top_line, width to total_cols, height to total_lines, orig_top to
5051 orig_top_line, orig_height to orig_total_lines. All uses changed.
5052 New members left_margin_cols, right_margin_cols,
5053 left_fringe_width, right_fringe_width, fringes_outside_margins,
5054 scroll_bar_width, and vertical_scroll_bar_type for saving
5055 per-window display elements.
5056 (Fset_window_configuration): Restore display margins, fringes,
5057 and scroll bar settings. This fixes a bug which caused display
5058 margins to be discarded when saving and restoring a window
5059 configuration.
5060 (save_window_save): Save display margins, fringes, and scroll bar
5061 settings. This fixes a bug which caused display margins to be
5062 discarded when saving and restoring a window configuration.
5063 (Fset_window_margins): Do nothing if display margins are not
5064 really changed. Otherwise, call adjust_window_margins to ensure
5065 the text area doesn't get too narrow. This fixes a bug which
f9711de4 5066 could cause Emacs to trap if setting display margins wider than
0416870b
KS
5067 the width of the window.
5068 (Fset_window_fringes): New defun to allow user to specifically set
5069 this window's fringe widths and position vs. display margins.
5070 (Fwindow_fringes): New defun to return window's actual fringe
5071 settings.
5072 (Fset_window_scroll_bars): New defun to allow user to specifically
5073 set this window's scroll bar width and position.
5074 (Fwindow_scroll_bars): New defun to return window's actual scroll
5075 bar settings.
5076 (compare_window_configurations): Also compare display margins,
5077 fringes, and scroll bar settings.
5078 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
5079
5080 * xdisp.c: Make (many) trivial substitutions for renamed and
5081 new macros in dispextern.h, frame.h and window.h.
5082 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 5083 and new fringe vs. display margin position. Note that returned
0416870b
KS
5084 value is no longer guaranteed to be a whole multiple of the frame
5085 column width, since per-window fringes may now be any width.
5086 (window_box_left_offset): New function like window_box_left, but
5087 value is relative to left border of window (rather than frame).
5088 (window_box_right_offset): New function like window_box_right,
5089 but value is relative to left border of window.
5090 (window_box_left): Adapt to per-window fringes and scroll bars,
5091 and new fringe vs. display margin position. Simplify by using
5092 WINDOW_LEFT_EDGE_X and window_box_left_offset.
5093 (window_box): Allow null args for unnecessary return values;
5094 change/simplify relevant callers.
5095 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
5096 and new fringe vs. display margin position.
5097 Use window_box_left_offset and window_box_right_offset
0416870b 5098 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
5099 scroll bars, and new fringe vs. display margin position.
5100 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
5101 (draw_fringe_bitmap): Rework to handle per-window fringes and new
5102 fringe vs. display margin position.
5103 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
5104 (redisplay_window): Adapt to per-window scroll bars.
5105 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
5106 bars, and new fringe vs. display margin position.
5107 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 5108 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
5109 bars, and new fringe vs. display margin position. Fix bug which
5110 increased total width of full_width rows by width of scroll bars
5111 although window's total width already includes that.
5112 (x_fix_overlapping_area): Simplify using window_box_left_offset.
5113 (expose_area): Simplify using window_box_left_offset.
5114 (x_draw_vertical_border): Handle per-window scroll bar settings,
5115 mixing windows with left, right and no scroll bars.
5116
5117 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
5118 where it's used in x_list_fonts (for clarity).
5119 (frame_update_line_height): Remove unused function; functionality
5120 is now done directly when setting the default font in x_set_font.
5121
5122 * xfns.c: Make (many) trivial substitutions for renamed and
5123 new macros in dispextern.h, frame.h and window.h.
5124
5125 * xmenu.c: Make (some) trivial substitutions for renamed and
5126 new macros in dispextern.h, frame.h and window.h.
5127
5128 * xterm.h (struct x_output): Move members left_pos, top_pos,
5129 border_width, pixel_height, pixel_width, line_height,
5130 internal_border_width, vertical_scroll_bar_extra,
5131 left_fringe_width, right_fringe_width, fringe_cols,
5132 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5133 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5134 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5135 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5136 (PIXEL_WIDTH, PIXEL_HEIGHT)
5137 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5138 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5139 frame.h and renamed [see frame.h changes].
5140 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5141 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5142 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5143 and renamed [see frame.h changes].
9018a88e 5144
0416870b
KS
5145 * xterm.c: Make (several) trivial substitutions for renamed and
5146 new macros in dispextern.h, frame.h and window.h.
5147 (x_draw_glyph_string_box): Adapt to per-window fringes and
5148 scroll-bars.
5149 (scroll_run): Adapt to new fringe position.
5150 (glyph_rect): Use window coordinates returned from
5151 window_from_coordinates rather than frame_to_window_pixel_xy.
5152 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5153 scroll-bars.
5154 (handle_one_xevent): Simplify a USE_GTK conditional.
5155 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5156 (fringes are now inside margins, i.e. always in the clipping area).
5157 All callers changed.
5158 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5159 directly, then call compute_fringe_widths. Don't call
5160 frame_update_line_height.
5161
5162 * w32term.h (struct w32_output): Move members left_pos, top_pos,
5163 border_width, pixel_height, pixel_width, line_height,
5164 internal_border_width, vertical_scroll_bar_extra,
5165 left_fringe_width, right_fringe_width, fringe_cols,
5166 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5167 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5168 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5169 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5170 (PIXEL_WIDTH, PIXEL_HEIGHT)
5171 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5172 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5173 frame.h and renamed [see frame.h changes].
5174 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5175 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5176 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5177 and renamed [see frame.h changes].
9018a88e 5178
0416870b
KS
5179 * w32term.c: Make (several) trivial substitutions for renamed and
5180 new macros in dispextern.h, frame.h and window.h.
5181 (x_draw_glyph_string_box): Adapt to per-window fringes and
5182 scroll-bars.
5183 (glyph_rect): Use window coordinates returned from
5184 window_from_coordinates rather than frame_to_window_pixel_xy.
5185 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5186 scroll-bars.
5187 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
5188 (fringes are now inside margins, i.e. always in the clipping area).
5189 All callers changed.
5190 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5191 directly, then call compute_fringe_widths. Don't call
5192 frame_update_line_height.
5193
5194 * w32console.c: Make (few) trivial substitutions for renamed and
5195 new macros in dispextern.h, frame.h and window.h.
5196
5197 * w32fns.c: Make (many) trivial substitutions for renamed and
5198 new macros in dispextern.h, frame.h and window.h.
5199
5200 * w32menu.c: Make (few) trivial substitutions for renamed and
5201 new macros in dispextern.h, frame.h and window.h.
5202
5203 * macterm.h (struct mac_output): Move members left_pos, top_pos,
5204 border_width, pixel_height, pixel_width, line_height,
5205 internal_border_width, vertical_scroll_bar_extra,
5206 left_fringe_width, right_fringe_width, fringe_cols,
5207 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5208 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
5209 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5210 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5211 (PIXEL_WIDTH, PIXEL_HEIGHT)
5212 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5213 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5214 frame.h and renamed [see frame.h changes].
5215 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5216 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5217 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5218 and renamed [see frame.h changes].
9018a88e 5219
0416870b
KS
5220 * macterm.c: Make (several) trivial substitutions for renamed and
5221 new macros in dispextern.h, frame.h and window.h.
5222 (x_draw_glyph_string_box): Adapt to per-window fringes and
5223 scroll-bars.
5224 (glyph_rect): Use window coordinates returned from
5225 window_from_coordinates rather than frame_to_window_pixel_xy.
5226 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5227 scroll-bars.
5228 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5229 (fringes are now inside margins, i.e. always in the clipping area).
5230 All callers changed.
5231 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5232 directly, then call compute_fringe_widths. Don't call
5233 frame_update_line_height.
5234
5235 * macfns.c: Make (several) trivial substitutions for renamed and
5236 new macros in dispextern.h, frame.h and window.h.
9018a88e 5237 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
5238
5239 * macmenu.c: Make (few) trivial substitutions for renamed and
5240 new macros in dispextern.h, frame.h and window.h.
5241
5242 * msdos.h (struct x_output): Remove members left_pos, top_pos,
5243 and line_height, and use corresponding new members in struct
5244 frame. All uses changed.
5245 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
5246 superseeded by corresponding macros in frame.h.
5247
5248 * msdos.c: Make (several) trivial substitutions for renamed and
5249 new macros in dispextern.h, frame.h and window.h.
5250 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 5251 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
5252 (internal_terminal_init): No need to initialize line_height here;
5253 it now defaults to 1.
5254
9018a88e
SM
52552003-05-24 Stefan Monnier <monnier@cs.yale.edu>
5256
5257 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
5258 dropping `down' events.
5259
016bd3c0
AS
52602003-05-24 Andreas Schwab <schwab@suse.de>
5261
5262 * coding.c (find_safe_codings): Fix last change.
5263
4dacadcc
TTN
52642003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
5265
5266 * xfns.c (x_window): Fix typo from 2003-05-21 change.
5267
319830ce
SM
52682003-05-23 Stefan Monnier <monnier@cs.yale.edu>
5269
9018a88e
SM
5270 * xdisp.c (display_mode_element): Increase max depth.
5271 Simplify the error handling code. Use a different error string
5272 for the case where we hit the depth limit.
5273
319830ce
SM
5274 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
5275
5276 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
5277
52782003-05-21 Stefan Monnier <monnier@cs.yale.edu>
5279
5280 * intervals.c (get_local_map): Don't get char-property of previous
5281 point any more: get_pos_property already does it and better.
5282
c67de8ba
DL
52832003-05-21 Dave Love <fx@gnu.org>
5284
5285 [Merged from unicode branch.]
5286
5287 * xfns.c (x_window, x_window): Use use_xim.
5288
5289 * xterm.c (use_xim): Initialize.
5290 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
5291 (x_term_init): Maybe set use_xim.
5292
5293 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
5294
edd3ff1d
JR
52952003-05-21 Jason Rumney <jasonr@gnu.org>
5296
5297 * unexw32.c (_start): Remove _fmode initialization.
5298
5299 * emacs.c (main) [WINDOWSNT]: Move it here.
5300
463f55ee
DL
53012003-05-20 Dave Love <fx@gnu.org>
5302
5303 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
5304
af253914
RS
53052003-05-19 Richard M. Stallman <rms@gnu.org>
5306
5307 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
5308 as value for QCfont attribute.
5309 (realize_default_face): lface should already exist; crash if not.
5310 Specify 0 for FORCE_P when calling set_lface_from_font_name.
5311
5312 * frame.c (Fignore_event): Doc fix.
5313
1d211019
KH
53142003-05-19 Kenichi Handa <handa@m17n.org>
5315
5316 * coding.c (decode_coding_string): Handle post-read-conversion
5317 even if the coding doesn't require decoding.
5318
4dd68254
RS
53192003-05-18 Richard M. Stallman <rms@gnu.org>
5320
5321 * callproc.c (Fcall_process_region): Doc fix.
5322
14d87dc9
SM
53232003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5324
deca5d96
SM
5325 * lread.c (Fload): Print a message if package is obsolete.
5326
14d87dc9
SM
5327 * window.c (Fselect_window): Add optional `norecord' arg.
5328 (select_window_1): Fold into Fselect_window.
5329 (select_window_norecord): New function.
5330 (temp_output_buffer_show): Use it. Preserve current buffer.
5331
5332 * window.h (Fselect_window): Update declaration.
5333
5334 * window.c (delete_window, Fother_window, Fset_window_configuration):
5335 * minibuf.c (read_minibuf):
5336 * macterm.c (x_new_focus_frame):
5337 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
5338 * callint.c (Fcall_interactively):
5339 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
5340
5341 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
5342
78f52183
DK
53432003-05-17 David Kastrup <dak@gnu.org>
5344
5345 * process.c (read_process_output): Back out change from 2003-03-09.
5346
14d87dc9
SM
53472003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5348
5349 * editfns.c (get_pos_property): Don't assume that `object' = nil.
5350
5351 * textprop.c (text_property_stickiness): New arg `buffer'.
5352
5353 * intervals.h (text_property_stickiness): New arg `buffer'.
5354 (get_pos_property): Declare.
5355
5356 * intervals.c (get_local_map): Use get_pos_property, to obey
5357 stickiness and empty overlays.
5358 (create_root_interval, graft_intervals_into_buffer): Use BEG.
5359 (merge_properties, intervals_equal, merge_properties_sticky):
5360 Use XCAR, XCDR.
5361 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
5362
1fd1cc2f
RS
53632003-05-17 Richard M. Stallman <rms@gnu.org>
5364
4f9f637a
RS
5365 * minibuf.c (read_minibuf): If buffer is empty, record the default
5366 in the history.
5367 (Fminibuffer_complete_word): When deleting the overlap, take account
5368 of its real position.
5369
5370 * fns.c (map_char_table): Fix previous change.
5371
1fd1cc2f
RS
5372 * syntax.c (find_defun_start):
5373 When open_paren_in_column_0_is_defun_start,
5374 return beginning of buffer.
5375
5376 * lisp.h (map_char_table): Declare added arg.
5377
5378 * fns.c (map_char_table): New arg TABLE gets the master table.
5379 All calls changed.
5380 Process default and inheritance, resorting to Faref if necessary.
5381
5382 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
5383 (Faccessible_keymaps): Pass new arg to map_char_table.
5384
5385 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
5386
5387 * casetab.c (set_case_table): Pass new arg to map_char_table.
5388
5389 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
5390
5391 * lisp.h (specbinding_func): New typedef.
5392 (struct specbinding): Use specbinding_func, to put the `volatile'
5393 in the right place.
5394
5395 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
5396 to avoid GCC warning.
14d87dc9 5397
b4bd27c5
RS
53982003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
5399
14d87dc9 5400 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 5401
35fb885d
SM
54022003-05-15 Stefan Monnier <monnier@cs.yale.edu>
5403
5404 * keyboard.c (apply_modifiers): Don't fill the other cache.
5405
9a274fbd
SM
54062003-05-14 Stefan Monnier <monnier@cs.yale.edu>
5407
c55b5fad
SM
5408 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
5409
9a274fbd
SM
5410 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
5411 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
5412 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
5413 (Fset_window_configuration, Fcurrent_window_configuration)
5414 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
5415 (Fpos_visible_in_window_p, mark_window_cursors_off)
5416 (window_internal_height, window_internal_width, Frecenter)
5417 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
5418 (replace_buffer_in_all_windows, init_window_once, init_window)
5419 (syms_of_window, keys_of_window): Move from lisp.h.
5420 * lisp.h: Move window.c declarations to window.h.
5421
5422 * bytecode.c: Include window.h.
5423 * emacs.c: Include window.h.
5424
14d87dc9 5425 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
5426 (keyremap): Add `parent' field.
5427 (keyremap_step): Use it. Remove `parent' argument.
5428 (read_key_sequence): Setup and use the new `parent' field.
5429
fd93e331
SM
54302003-05-11 Stefan Monnier <monnier@cs.yale.edu>
5431
5432 * keyboard.c (adjust_point_for_property): Ensure termination.
5433
1c4001a1
SM
54342003-05-10 Stefan Monnier <monnier@cs.yale.edu>
5435
5436 * keyboard.c (follow_key): Remove dead variable `did_meta'.
5437 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
5438 duplicated handling of function-key-map and key-translation-map
5439 in read_key_sequence.
5440 (read_key_sequence): Use them.
5441
5442 * keyboard.c (adjust_point_for_property): Try harder to move point
5443 to the non-sticky end of an invisible property.
5444
5445 * xdisp.c (single_display_prop_intangible_p): Make `space' display
5446 property intangible as well.
5447
780379b1
AS
54482003-05-10 Andreas Schwab <schwab@suse.de>
5449
5450 * xmenu.c (single_menu_item): Change last parameter to void* to
5451 avoid warning.
5452
ca2de342
RS
54532003-05-09 Richard M. Stallman <rms@gnu.org>
5454
5455 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
5456 Bind Qinhibit_modification_hooks to t so there will be no GC.
5457 Rename local `tem' to `save_deactivate_mark'.
5458
5459 * eval.c (specpdl_ptr): Declare volatile.
5460 (unbind_to): Copy the whole binding and decrement specpdl_ptr
5461 before doing the work of unbinding it.
5462
5463 * lisp.h (struct specbinding): Declare elements volatile.
5464 (specpdl_ptr): Declare volatile.
5465
5466 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
5467
5468 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
5469 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
5470
347003be
DL
54712003-05-08 Dave Love <fx@gnu.org>
5472
5473 * coding.c (Vlast_coding_system_used): Doc fix.
5474
5adcec23
JR
54752003-05-07 Jason Rumney <jasonr@gnu.org>
5476
5477 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
5478 when system does not support them.
5479
5fe3b8a4
SM
54802003-05-05 Stefan Monnier <monnier@cs.yale.edu>
5481
5482 * fileio.c (Qwrite_region_annotate_functions): New var.
5483 (build_annotations): Use it to process the global part of the hook.
5484 (syms_of_fileio): Init and staticpro it.
5485
5486 * keyboard.c (safe_run_hooks_error): Display a message instead of
5487 silently ignoring the error.
5488
54892003-05-03 Stefan Monnier <monnier@cs.yale.edu>
5490
5491 * keyboard.c (input_available_signal): Mark static.
5492 (menu_bar_items): Use map_keymap.
5493 (menu_bar_one_keymap): Remove.
5494 (menu_bar_item): Adjust arglist (for use in map_keymap).
5495 Properly hide a second binding when not both are keymaps.
5496
5497 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
5498 (single_keymap_panes): Use it and map_keymap.
5499 (single_menu_item): Use skp as well.
5500
5501 * keymap.h (map_keymap_function_t): New type.
5502 (map_keymap): Declare.
5503
5504 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
5505 (map_keymap_call, Fmap_keymap): New functions.
5506 (syms_of_keymap): Defsubr map-keymap.
5507
4b1b4443
JD
55082003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5509
5510 * gtkutil.c (create_dialog, make_widget_for_menu_item)
5511 (make_menu_item, create_menus, xg_update_menu_item): Don't call
5512 ..._with_mnemonic functions for menu items.
5513
1f816871
KH
55142003-05-01 Kenichi Handa <handa@m17n.org>
5515
5516 * coding.c (coding_system_accept_latin_extra_p): Delete this
5517 function.
5518 (find_safe_codings): Pay attention to
5519 the property tranlsation-table-for-encode of each codings.
5520 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
5521
5ed6ba5b
SM
55222003-05-01 Stefan Monnier <monnier@cs.yale.edu>
5523
5524 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
5525
32c06229
SM
55262003-04-30 Stefan Monnier <monnier@cs.yale.edu>
5527
5528 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
5529
5530 * lisp.h (CHECK): Wrap args in parenthesis.
5531 (specbind): Fix doc: symbol = Qnil is not supported any more.
5532
5533 * bytecode.c (Fbyte_code) <unwind-protect>:
5534 Use Fprogn rather than 0 and Qnil.
5535
5536 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
5537 `double', and `triple' modifiers as well.
5538
ed3c3314
RS
55392003-04-30 Richard M. Stallman <rms@gnu.org>
5540
5541 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
5542
5543 * alloc.c (abort_on_gc): New variable.
5544 (Fgarbage_collect): Abort if abort_on_gc is set.
5545
5546 * lisp.h (abort_on_gc): Add decl.
5547
5548 * eval.c (Fsignal): Clear abort_on_gc.
5549
5550 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 5551 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
5552
5553 * xdisp.c (move_it_vertically_backward): Do the final big else
5554 even if nlines is 0.
5555
5556 * xdisp.c (redisplay_internal): Finish the per-frame loop
5557 even if redisplay is suspended by input.
5558
0b325c12
AC
55592003-04-24 Andrew Choi <akochoi@shaw.ca>
5560
5561 * macterm.c (x_list_fonts): Return all fonts that match if
5562 maxnames = -1.
5563
4e837cd0
KH
55642003-04-25 Kenichi Handa <handa@m17n.org>
5565
5566 * syntax.c (skip_chars): Fix previous change.
5567
9af7511a
KH
55682003-04-24 Kenichi Handa <handa@m17n.org>
5569
5570 * syntax.c (skip_chars): Make the code faster by using the common
5571 technique of *p, *stop, and *endp.
5572
e3b2c21f
JD
55732003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5574
5575 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 5576 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
5577 being updated.
5578
32c06229
SM
55792003-04-19 Stefan Monnier <monnier@cs.yale.edu>
5580
5581 * eval.c (Fapply): Undo last change and add a comment about why.
5582
c6464167
MB
55832003-04-18 Miles Bader <miles@gnu.org>
5584
5585 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
5586 pickier PARSE_MULTIBYTE_SEQ.
5587
e509f168
SM
55882003-04-17 Stefan Monnier <monnier@cs.yale.edu>
5589
5590 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
5591 Use XCDR, XCAR, CONSP.
5592 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
5593 (Fapply): Remove unnecessary GCPRO.
5594
5595 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
5596
5597 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
5598
5599 * buffer.h: Don't hardcode BEG==1.
5600
5601 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
5602
5ceea398
RS
56032003-04-16 Richard M. Stallman <rms@gnu.org>
5604
5605 * xdisp.c (try_window, try_window_reusing_current_matrix):
5606 When at end of window, set window_end_pos to Z-ZV.
5607
5608 * buffer.c (Foverlay_recenter): Doc fix.
5609
e509f168
SM
56102003-04-14 Stefan Monnier <monnier@cs.yale.edu>
5611
5612 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
5613
d243e605
AC
56142003-04-14 Andrew Choi <akochoi@shaw.ca>
5615
5616 * macterm.c (mac_check_for_quit_char): Don't check more often than
5617 once a second.
5618
6901b111
SM
56192003-04-11 Stefan Monnier <monnier@cs.yale.edu>
5620
5621 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
5622 specially, so that they can't hide an implicit switch-frame event.
5623 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
5624 (head_table): Use switch-frame as event_kind for select-window.
5625 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
5626
5627 * editfns.c (Fformat): Lisp_Object/int mixup.
5628 (format2): Remove unused var numargs.
5629
e301806f 56302003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 5631
6901b111 5632 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
5633 (Qafter_insert_file_set_coding): New variable.
5634 (syms_of_fileio): Initialize and staticpro it. Delete declaration
5635 for after-insert-file-adjust-coding-function.
5636 (Finsert_file_contents): Call Qafter_insert_file_set_coding
5637 instead of Vafter_insert_file_adjust_coding_function.
5638
38914424
KH
56392003-04-11 Kenichi Handa <handa@m17n.org>
5640
5641 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
5642
5643 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
5644 string. Callers changed.
5645
56462003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 5647
6901b111 5648 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 5649 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
5650 (Finsert_file_contents):
5651 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
5652 decode-format.
5653
f979dc05
JD
56542003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5655
5656 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
5657 get GtkAdjustment as widget now is a GtkRange.
5658
5659 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
5660 GtkRange to avoid memory leak.
5661
f8c6b4c2 56622003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 5663
50ebc53d
KH
5664 * xfaces.c (Vface_font_rescale_alist): New variable.
5665 (struct font_name): New member rescale_ratio.
5666 (font_rescale_ratio): New function.
6901b111 5667 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
5668 (better_font_p): On comparing point sized, pay attention to
5669 recale_ratio member of fonts.
5670 (build_scalable_font_name): Reflect font->rescale_ratio in the
5671 font name.
6901b111 5672 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 5673
cb98871c
KH
5674 * lread.c (read1): Before calling index, check if the 2nd
5675 arguemnt is in ASCII range.
5676
4773b8ca
RS
56772003-04-08 Richard M. Stallman <rms@gnu.org>
5678
b0ada147
RS
5679 * fileio.c (Ffile_symlink_p): Doc fix.
5680
5681 * editfns.c (Fformat): Translate positions of text properties
5682 in the format string to apply them to the result.
5683
4773b8ca
RS
5684 * fileio.c (Finsert_file_contents): Doc fix.
5685 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
5686
56872003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 5688
4773b8ca
RS
5689 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
5690
e8f25745 56912003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 5692
e8f25745
ST
5693 * mac.c (init_mac_osx_environment): Switch libexec and bin so
5694 that self-contained application finds libexec files.
5695
f8c6b4c2 56962003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 5697
6901b111
SM
5698 * coding.c (code_convert_region_unwind):
5699 Set Vlast_coding_system_used to the argument.
2310d84c
KH
5700 (code_convert_region): If post-read-conversion function changed
5701 the value of last-coding-sytem, keep the new value in
5702 coding->symbol so that it won't be overridden.
5703 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
5704 (coding_system_accept_latin_extra_p): New function.
5705 (find_safe_codings): Pay attention to characters registered in
5706 latin-extra-code-table.
2310d84c 5707
39c9a034
TTN
57082003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
5709
5710 * Makefile.in (md5.o): Add missing dependency info.
5711
eb67c5d6
RS
57122003-04-06 Richard M. Stallman <rms@gnu.org>
5713
5714 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
5715
5716 * marker.c (verify_bytepos): New function.
5717
5718 * intervals.c (set_intervals_multibyte_1): When becoming
5719 multibyte, adjust right and left child sizes to a whole set of
5720 characters. If an interval gets zero total-length, delete it.
5721 If an interval consists of just its children, delete one of them.
5722
5723 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
5724 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 5725
eb67c5d6
RS
5726 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
5727 All calls deleted.
5728 (lisp_malloc): Do the work here directly.
5729
b1f81fc5
JB
57302003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
5731
5732 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
5733 char tables.
5734
57352003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
5736
5737 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
5738 destructively change "%S" to "%s".
5739
774666fb
MB
57402003-04-03 Miles Bader <miles@gnu.org>
5741
5742 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
5743 always set.
5744
19c37f01
DL
57452003-04-01 Dave Love <fx@gnu.org>
5746
5747 * xfns.c (xpm_lookup_color): Grok "opaque".
5748
2f4b24c3
AC
57492003-03-31 Andrew Choi <akochoi@shaw.ca>
5750
5751 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
5752 parent window ID.
5753
5754 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
5755
5756 * macterm.h (struct mac_output): Define x_pixels_diff and
5757 y_pixels_diff.
b1f81fc5 5758
9443fcf6
JB
57592003-03-31 Juanma Barranquero <lektu@terra.es>
5760
5761 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
5762 blockinput.h and files included from it.
5763
e072891b
KS
57642003-03-31 Kim F. Storm <storm@cua.dk>
5765
5766 The following changes consolidates the common code related to
5767 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
5768 files into frame.c.
9443fcf6 5769
e072891b
KS
5770 * frame.c: Include blockinput.h.
5771 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
5772 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
5773 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
5774 related vars here.
5775 (struct frame_parm_table, frame_parms): New table for describing
5776 frame parameters and their associated Q-variable.
5777 The order of the parameters corresponds to the sequence of the
5778 frame_parm_handlers table in redisplay_interface.
5779 (x_fullscreen_move, x_set_frame_parameters)
5780 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
5781 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
5782 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5783 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
5784 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
5785 Generic functions for processing of frame parameters.
5786 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
5787 (display_x_get_resource, x_get_resource_string): Functions for
5788 generic access to X resources.
5789 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
5790 (x_default_parameter, Fx_parse_geometry): Functions for generic
5791 access to frame parameters.
6901b111
SM
5792 (x_figure_window_size): Generic calculation of frame size.
5793 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
5794 (syms_of_frame): Intern and staticpro frame parameter variables.
5795 Defvar_lisp Vx_resource_class and Vx_resource_name here.
5796 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 5797
e072891b
KS
5798 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
5799 parameter related vars defined in frame.c.
5800 (EMACS_CLASS): Define here.
5801 (enum FULLSCREEN_*): Define here.
5802 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
5803 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
5804 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
5805 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
5806 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
5807 (x_set_visibility, x_set_autoraise, x_set_autolower)
5808 (x_set_unsplittable, x_set_vertical_scroll_bars)
5809 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
5810 (x_figure_window_size): Add prototypes.
5811
5812 * dispextern.h (frame_parm_handler): New typedef.
5813 (struct redisplay_interface): New member frame_parm_handlers.
5814 (enum resource_types): Move declaration here.
5815 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
5816 (x_default_parameter): Add prototypes.
5817
5818 * window.c: Remove extern decl for frame parameter vars.
5819 (change_window_heights): New generic function;
5820 replaces x_change_window_heights. All users changed.
5821
5822 * window.h (change_window_heights): Add prototype.
5823
5824 * xfaces.c: Remove extern decl for frame parameter vars.
5825
5826 * xterm.h (EMACS_CLASS): Remove. Use generic define.
5827 (struct w32_display_info): Fix type of xrdb member.
5828 (enum FULLSCREEN_*): Remove.
5829 Remove prototypes for generic functions (in frame.h).
5830
5831 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5832 parameters now defined in frame.h and frame.c.
f63fd14e 5833 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
5834 (enum x_frame_parms): Remove (bogus, unused enum).
5835 (check_x_display_info): Make non-static (for frame.c).
5836 (struct x_frame_parm_table, x_frame_parms): Remove.
5837 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5838 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5839 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5840 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5841 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5842 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5843 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5844 Remove. Use generic functions instead.
5845 (enum resource_types): Remove.
5846 (x_set_scroll_bar_default_width): New global function (for frame.c).
5847 (Fx_create_frame): Depend on x_figure_window_size to add space for
5848 toolbar and setup size_hint_flags.
5849 (x_frame_parm_handlers): New table for redisplay_interface.
5850 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 5851
e072891b 5852 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 5853 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
5854 (x_redisplay_interface): Add x_frame_parm_handlers member.
5855
5856 * w32gui.h (XrmDatabase): New (dummy) typedef.
5857
5858 * w32term.h (EMACS_CLASS): Remove. Use generic define.
5859 (struct w32_display_info): Fix type of xrdb member.
5860 (enum FULLSCREEN_*): Remove.
5861 (x_fullscreen_adjust): Remove prototype.
5862
5863 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5864 parameters now defined in frame.h and frame.c.
f63fd14e 5865 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
5866 (enum x_frame_parms): Remove (bogus, unused enum).
5867 (check_x_display_info): Make non-static (for frame.c).
5868 (struct x_frame_parm_table, x_frame_parms): Remove.
5869 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5870 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5871 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5872 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5873 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5874 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5875 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5876 Remove. Use generic functions instead.
5877 (enum resource_types): Remove.
5878 (x_set_scroll_bar_default_width): New global function (for frame.c).
5879 (Fx_create_frame): Depend on x_figure_window_size to add space for
5880 toolbar and setup size_hint_flags.
5881 (w32_frame_parm_handlers): New table for redisplay_interface.
5882 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 5883
e072891b
KS
5884 * w32term.c: Remove unnecessary extern declarations.
5885 (x_fullscreen_adjust): Remove. Use generic instead.
5886 (x_redisplay_interface): Add w32_frame_parm_handlers member.
5887
5888 * w32reg.c (x_get_string_resource): Use XrmDatabase.
5889
5890 * macgui.h (XrmDatabase): New (dummy) typedef.
5891
5892 * macterm.h (EMACS_CLASS): Remove.
5893 (struct mac_display_info): Add xrdb member.
5894 (struct mac_output): Add want_fullscreen member.
5895
5896 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5897 parameters now defined in frame.h and frame.c.
f63fd14e 5898 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
5899 (check_x_display_info): Make non-static (for frame.c).
5900 (struct x_frame_parm_table, x_frame_parms): Remove.
5901 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5902 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5903 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5904 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5905 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5906 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5907 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5908 Remove. Use generic functions instead.
5909 (enum resource_types): Remove.
5910 (x_set_scroll_bar_default_width): New global function (for frame.c).
5911 (mac_frame_parm_handlers): New table for redisplay_interface.
5912 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 5913
e072891b
KS
5914 * macterm.c: Remove unnecessary extern declarations.
5915 (x_redisplay_interface): Add mac_frame_parm_handlers member.
5916
3e6a560b
KS
5917 * Makefile.in (frame.o): Add dependency on blockinput.h and files
5918 included from it (atimer.h and systime.h).
5919
7b7b454e
AS
59202003-03-30 Andreas Schwab <schwab@suse.de>
5921
5922 * xdisp.c (x_insert_glyphs): Fix swapped width and height
5923 parameters for shift_glyphs_for_insert.
5924
5925 * macterm.c (x_redisplay_interface): Add missing entry for
5926 draw_vertical_window_border.
5927
beb402de
KG
59282003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5929
5930 * fileio.c (Fexpand_file_name): In the no-handler case, after
5931 expanding, look again for a handler and invoke it. This is needed
5932 for filenames like "/foo/../user@host:/bar/../baz" -- the first
5933 expansion produces "/user@host:/bar/../baz" which needs to be
5934 expanded again for the finame result "/user@host:/baz".
5935
b676f356
JD
59362003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5937
5938 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
5939 of area to be redrawn for better performance.
5940
3c671a56
SM
59412003-03-28 Stefan Monnier <monnier@cs.yale.edu>
5942
5943 * xterm.c (take_vertical_position_into_account): Remove.
5944 (xt_action_hook): Call set_vertical_scroll_bar if needed.
5945 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
5946 (xm_scroll_callback, x_create_toolkit_scroll_bar)
5947 (x_set_toolkit_scroll_bar_thumb): Simplify.
5948 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
5949 (XTread_socket): Remove unused var.
5950 (x_make_frame_invisible): Replace goto with else.
5951
5952 * xdisp.c (set_vertical_scroll_bar): New fun.
5953 (redisplay_window): Use it.
5954
84f2e615
RS
59552003-03-26 Richard M. Stallman <rms@gnu.org>
5956
5957 * xdisp.c (update_tool_bar): Recompute tool bar if
5958 update_mode_lines is set. Set w->update_mode_line
5959 only if the tool bar contents actually change.
5960 (update_menu_bar): Undo previous change.
5961
70b6104c
JD
59622003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5963
5fd6f727
JD
5964 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
5965 (xg_frame_set_char_size): Calculate scroll bar width before frame
5966 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
5967 (xg_separator_p): Check for all documented separator types.
5968 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
5969 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
5970
70b6104c
JD
5971 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
5972 so tool bar gets updated.
5973
d9b36d19
SM
59742003-03-26 Stefan Monnier <monnier@cs.yale.edu>
5975
5976 * data.c (store_symval_forwarding): Re-instate part of the code
5977 that was deleted with too much enthusiasm.
5978
59792003-03-25 Stefan Monnier <monnier@cs.yale.edu>
5980
5981 * data.c (store_symval_forwarding): Delete special read-only
5982 hack for type == -1, since we now use ->constant instead.
5983 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
5984
5985 * buffer.c (overlays_in): Declare static.
5986 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
5987 `constant' field rather than the variable's `type' field.
5988
365fa1b3
AC
59892003-03-24 Andrew Choi <akochoi@shaw.ca>
5990
5991 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
5992
5993 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
5994
5995 * fns.c [MAC_OSX]: Do not redefine vector.
5996
5997 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
5998
5999 * macgui.h: Remove definition of No_Cursor.
6000
d9b36d19 6001 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
6002
6003 * xdisp.c: Define No_Cursor.
6004 (x_write_glyphs, notice_overwritten_cursor)
6005 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
6006 (note_mouse_highlight): Remove Mac-specific code.
6007 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 6008
c0bcce6f
JPW
60092003-03-24 John Paul Wallington <jpw@gnu.org>
6010
6011 * xdisp.c (redisplay_window): If mini window's buffer is not
6012 empty, then redisplay it like other windows.
6013
a526b96c
KS
60142003-03-23 Kim F. Storm <storm@cua.dk>
6015
6016 * w32term.c (w32_draw_window_cursor): Fix last change.
6017
37ab321e
KH
60182003-03-23 Kenichi Handa <handa@m17n.org>
6019
a526b96c
KS
6020 * alloc.c (make_string_from_bytes, make_specified_string):
6021 Add `const' for the arg CONTENTS.
37ab321e
KH
6022
6023 * lisp.h (make_string_from_bytes, make_specified_string):
6024 Prototypes adjusted.
6025
7863d625
JD
60262003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6027
a526b96c 6028 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 6029
7863d625
JD
6030 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
6031 (XG_SB_RANGE): New define.
6032
6033 * gtkutil.c (xg_fixed_handle_expose): New function.
6034 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
6035 expose events.
6036 (xg_update_scrollbar_pos): Take two more arguments, left and width
6037 of scroll bar including borders.
6038 Clear left and right part outside scroll bar separately as some
6039 themes have bars that are not an even number of pixels.
d9b36d19 6040 Don't set reallocate_redraws, don't call
7863d625
JD
6041 gdk_window_process_all_updates.
6042 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
6043 so no need to change it. Calculate size and value with XG_SB_RANGE.
6044
d9b36d19
SM
6045 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
6046 Pass left and width of scroll bar including borders to
7863d625
JD
6047 xg_update_scrollbar_pos.
6048
af0ad939
TTN
60492003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
6050
6051 * Makefile.in: Make sure space precedes end-of-line backslashes.
6052
b22139fd
KS
60532003-03-22 Kim F. Storm <storm@cua.dk>
6054
6055 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
6056 Add generic versions here. Remove system specific versions
6057 defined elsewhere.
6058
6059 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
6060 Add prototypes.
6061
6e6410cf
KS
6062 * xterm.h (STORE_NATIVE_RECT): New macro.
6063
5c9cc435
KS
60642003-03-21 Kim F. Storm <storm@cua.dk>
6065
00c64fab
SM
6066 * xdisp.c (get_glyph_string_clip_rect):
6067 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
6068
6069 * dispextern.h (struct redisplay_interface): Add active_p
6070 argument to draw_window_cursor member. All uses changed.
6071
acd37560
KS
60722003-03-21 Kim F. Storm <storm@cua.dk>
6073
6074 The following changes consolidate code related to writing and
6075 inserting glyphs, exposing frame, the tool bar, the mouse face,
6076 the output cursor, and help echo from xterm.c, w32term.c and
6077 macterm.c into xdisp.c. It also generalizes the use of the
6078 window_part enum instead of using numeric values throughout.
af0ad939 6079
acd37560
KS
6080 * xdisp.c: Consolidate gui-independent code here.
6081 Include keymap.h.
6082 (Qhelp_echo): Import.
6083 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
6084 (help_echo_string, help_echo_window, help_echo_object)
6085 (previous_help_echo_string, help_echo_pos): Declare here.
6086 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
6087 (estimate_mode_line_height): Define here. Handle windowing
6088 systems directly (without using estimate_mode_line_height_hook).
6089 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
6090 (update_window_cursor, update_cursor_in_window_tree)
6091 (fast_find_position, fast_find_string_pos)
6092 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
6093 (expose_area, expose_line, expose_overlaps, expose_window)
6094 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
6095 declared static as they are only used locally in xdisp.c.
6096 (draw_glyphs): Rename from x_draw_glyphs and make static.
6097 (tool_bar_item_info, notice_overwritten_cursor): Make static.
6098 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6099 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 6100 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
6101 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6102 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
6103 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
6104 (note_mouse_highlight, x_clear_window_mouse_face)
6105 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
6106 (x_intersect_rectangles): New generic functions for use by xdisp.c
6107 and GUI front-ends.
6108 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
6109 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
6110
6111 * dispextern.h (Display_Info): Generic typedef for *_display_info.
6112 (NativeRectangle): Generic typedef for rectangle type.
6113 (enum window_part): Move here from window.c.
6114 (struct redisplay_interface): New members flush_display_optional,
6115 define_frame_cursor, clear_frame_area, draw_window_cursor,
6116 draw_vertical_window_border, shift_glyphs_for_insert.
6117 Rename member clear_mouse_face to clear_window_mouse_face.
6118 (estimate_mode_line_height_hook): Remove hook.
6119 (auto_raise_tool_bar_buttons_p): Don't declare extern.
6120 (tool_bar_item_info): Remove prototype.
6121 (help_echo_string, help_echo_window, help_echo_object)
6122 (previous_help_echo_string, help_echo_pos)
6123 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
6124 (x_stretch_cursor_p, output_cursor): Declare extern.
6125 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
6126 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
6127 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6128 (display_and_set_cursor, set_output_cursor, x_cursor_to)
6129 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
6130 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6131 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
6132 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
6133 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
6134 Add prototypes.
6135 (mode_line_string, marginal_area_string): Fix prototypes.
6136
6137 * window.c (enum window_part): Move to dispextern.h.
6138 (coordinates_in_window): Use enum window_part member names
6139 instead of numbers to describe return value.
6140 (struct check_window_data): Change part member to window_part.
6141 (check_window_containing): Return window_part unaltered.
6142 (window_from_coordinates): Change part arg from int to enum
6143 window_part. Allow part arg to be null. All users changed.
6144
6145 * window.h (window_from_coordinates): Fix prototype.
6146
6147 * term.c (estimate_mode_line_height): Move to xdisp.c.
6148
6149 * keyboard.c (make_lispy_event): Use enum window_part.
6150
6151 * dispnew.c (mode_line_string, marginal_area_string): Use enum
6152 window_part instead of int in arg list. Users changed.
6153
6154 * xterm.h (No_Cursor): Declare as None for X.
6155 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 6156
acd37560
KS
6157 * xterm.c: Remove consolidated defines and code.
6158 (BETWEEN): Remove unused macro.
6159 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
6160 (x_define_frame_cursor, x_clear_frame_area)
6161 (x_draw_window_cursor): New X-specific functions for RIF.
6162 (x_redisplay_interface): Add new members.
6163
6164 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
6165
6166 * w32term.h (struct w32_output): Remove cross_cursor member.
6167
6168 * w32term.c: Remove consolidated defines and code.
6169 (BETWEEN): Remove unused macro.
6170 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
6171 (w32_define_frame_cursor, w32_clear_frame_area)
6172 (w32_draw_window_cursor): New W32-specific functions for RIF.
6173 (w32_redisplay_interface): Add new members.
6174
a64387ee 6175 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
6176 (XRectangle): Add X compatible rectangle type.
6177 (NativeRectangle): Declare as RECT for W32.
6178 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6179
6180 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
6181
6182 * w32console.c: Remove consolidated defines and code.
af0ad939 6183
acd37560
KS
6184 * msdos.h (Display_Info): Add generic typedef.
6185
6186 * msdos.c: Remove consolidated defines and code.
6187 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
6188
6189 * macterm.h (struct mac_output): Replace member cross_cursor by
6190 hand_cursor.
6191 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
6192
6193 * macterm.c: Remove consolidated defines and code.
6194 (BETWEEN): Remove unused macro.
6195 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
6196 (mac_define_frame_cursor, mac_clear_frame_area)
6197 (mac_draw_window_cursor): New Mac-specific functions for RIF.
6198 (x_redisplay_interface): Add new members.
6199
6200 * macgui.h (No_Cursor): Define as 0 for Mac.
6201 (XRectangle): Add X compatible rectangle type.
6202 (NativeRectangle): Declare as Rect for Mac.
6203 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6204
204ccab1
KS
6205 * macfns.c (x_set_mouse_color): Setup hand_cursor.
6206 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 6207
9443fcf6 6208 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
6209 included from it. Add dependency on keymap.h.
6210
6211 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
6212
8ba01a70 62132003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
6214
6215 * fileio.c (Fexpand_file_name): Fix previous change.
6216
8ba01a70 62172003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
6218
6219 * fileio.c (Ffile_name_directory): Reconstruct file name by
6220 make_specified_string.
6221 (Ffile_name_nondirectory, Ffile_name_as_directory)
6222 (Fdirectory_file_name, Fexpand_file_name)
6223 (Fsubstitute_in_file_name): Likewise.
6224 (Fread_file_name): Compare decoded homedir with DIR and
6225 DEFAULT_FILENAME.
6226
6227 * alloc.c (make_specified_string): If NCHARS is negative, count
6228 the number of characters.
6229
19536747
JD
62302003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6231
de38ae5a
JD
6232 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
6233 all widgets.
6234
19536747
JD
6235 * gtkutil.h: Removed xg_ignore_next_thumb.
6236
37ab321e 62372003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
6238
6239 * coding.c (Vchar_coding_system_table): Remove this variable.
6240 (Vcoding_system_safe_chars): New variable.
6241 (intersection): Remove this function.
6242 (find_safe_codings): Don't use Vchar_coding_system_table, but try
6243 all codings in SAFE_CODINGS.
00c64fab 6244 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
6245 find_safe_codings. Get generic coding systems from
6246 Vcoding_system_safe_chars.
6247 (Fdefine_coding_system_internal): New function.
6248 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
6249 Initialize and staticpro Vcoding_system_safe_chars.
6250
17097258
JD
62512003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6252
2a2071c3
JD
6253 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
6254 equal old values before updating.
6255
17097258
JD
6256 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
6257
6258 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
6259
62602003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6261
6262 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
6263 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
6264 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
6265 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
6266 (xg_create_scroll_bar): Pass bar to button event callback.
6267 (xg_find_top_left_in_fixed): New function.
6268 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
6269 whole scroll bar area. Get old position with
6270 xg_find_top_left_in_fixed, calculate and only clear needed areas.
6271 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
6272 dragging is in progress. Calculate whole as for Motif.
6273 Remove code that saved last values. Call gtk_range functions to
6274 set scroll bar sizes.
6275
6276 * gtkutil.h: Removed xg_ignore_next_thumb.
6277
8cb9dfbf
JB
62782003-03-17 Juanma Barranquero <lektu@terra.es>
6279
6280 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
6281 and files included from it.
6282
00c64fab
SM
62832003-03-18 Stefan Monnier <monnier@cs.yale.edu>
6284
6285 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
6286 multiple occurrences of the same keymap under different prefixes.
6287 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
6288
c45bb3b2
JR
62892003-03-16 Jason Rumney <jasonr@gnu.org>
6290
6291 * w32gui.h: Use HDC for Display.
6292
6293 * w32term.c (w32_encode_char): Prevent double-byte chars from
6294 crashing Emacs.
6295
6296 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
6297 as binary.
6298
2a6d0874
JB
62992003-03-16 Juanma Barranquero <lektu@terra.es>
6300
6301 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
6302
03eb5fab
KS
63032003-03-16 Kim F. Storm <storm@cua.dk>
6304
6305 The following changes consolidate some of the gui-independent
6306 parts of the processing and drawing of "glyph strings" from
6307 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 6308
03eb5fab
KS
6309 * dispextern.h (struct glyph): Reduce face_id member from 22 to
6310 21 bits (this reduces number of faces from 4M to 2M).
6311 Replace W32 specific w32_font_type member (2 bits) by generic
6312 font_type member (3 bits) for portability.
6313 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
6314 (enum draw_glyphs_face): Define here.
6315 (struct glyph_string): Define here. Merge W32 and X versions.
6316 (struct redisplay_interface): New members per_char_metric,
6317 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
6318 (VCENTER_BASELINE_OFFSET): Define here.
6319 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
6320 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
6321
6322 * xdisp.c: Consolidate gui-independent "glyph string" code here.
6323 (dump_glyph_string): Moved here.
6324 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
6325 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
6326 (fill_composite_glyph_string, fill_glyph_string)
6327 (fill_image_glyph_string, fill_stretch_glyph_string)
6328 (left_overwritten, left_overwriting, right_overwritten)
6329 (right_overwriting, get_char_face_and_encoding)
6330 (set_glyph_string_background_width, compute_overhangs_and_x)
6331 (append_glyph, append_composite_glyph, produce_image_glyph)
6332 (take_vertical_position_into_account, append_stretch_glyph)
6333 (produce_stretch_glyph): New generic functions (based on X version).
6334 Call platform specific functions through rif.
6335 (INIT_GLYPH_STRING): New macro, hides W32 details.
6336 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
6337 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
6338 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
6339 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
6340 (notice_overwritten_cursor):
6341 Generic functions exported to platform modules. Users changed.
6342
6343 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
6344 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
6345 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 6346 New macros for consolidated code.
2a6d0874 6347
03eb5fab
KS
6348 * xterm.c: Remove consolidated defines and code.
6349 (x_per_char_metric, x_encode_char)
6350 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
6351 (x_redisplay_interface): Add new members.
6352
6353 * w32gui.h (Display): Add dummy typedef for consolidation.
6354 (XChar2b): Define alias for wchar_t for consolidation.
6355 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6356
6357 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 6358 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
6359 New macros for consolidation.
6360
fad49844 6361 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
6362 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
6363 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
6364 (w32_per_char_metric): Change font_type arg to int for RIF.
6365 (w32_encode_char): Return int according to RIF requirements.
6366 (w32_compute_glyph_string_overhangs): Adapt to RIF.
6367 (w32_get_glyph_overhangs): New function for RIF. Uses generic
6368 x_get_glyph_overhangs.
6369 (w32_redisplay_interface): Add new members.
6370
6371 * macgui.h (XChar2b): Move typedef here for consolidation.
6372 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6373
6374 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
6375 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
6376 consolidation.
6377
6378 * macterm.c: Remove consolidated defines and code.
6379 (mac_per_char_metric): New function for RIF.
00c64fab 6380 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
6381 (mac_compute_glyph_string_overhangs): Adapt for RIF.
6382 (x_redisplay_interface): Add new members.
6383
00c64fab
SM
63842003-03-15 Stefan Monnier <monnier@cs.yale.edu>
6385
6386 * keymap.c (Vmenu_events): New var.
6387 (syms_of_keymap): Initialize it.
6388 (where_is_internal): Check more carefully what is a menu event.
6389
225c7a07
RS
63902003-03-14 Richard M. Stallman <rms@gnu.org>
6391
6392 * lread.c (read1): After #!, exit loop on eof.
6393
cea9be54
JD
63942003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6395
9ea0e54d
JD
6396 * gtkutil.h: Add declaration for xg_frame_cleared.
6397
0cb35f4e
JD
6398 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
6399
cea9be54
JD
6400 * gtkutil.c (struct xg_last_sb_pos): New structure.
6401 (handle_fixed_child): New function.
6402 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
6403 and force a redraw on them.
6404 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
6405 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
6406 so we can avoid unneeded redraws.
6407 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
6408 and force a redraw on the scroll bar.
6409 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
6410 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 6411 (xg_frame_cleared): New function.
cea9be54 6412
20b853f3
KH
64132003-03-13 Kenichi Handa <handa@m17n.org>
6414
6415 * coding.c (Fdetect_coding_region): Fix docstring.
6416 (Fdetect_coding_string): Fix docstring.
6417
7a555aff
AS
64182003-03-13 Andreas Schwab <schwab@suse.de>
6419
25cc0080
AS
6420 * gtkutil.c: Add prototype for create_menus.
6421
30225431
AS
6422 * data.c (long_to_cons): Fix type of top.
6423
6424 * xselect.c (selection_data_to_lisp_data): Use int instead of
6425 long for an integer of size 4.
6426
7a555aff 6427 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 6428 (xg_tool_bar_help_callback): Likewise.
7a555aff 6429
a3e4741f
AS
64302003-03-12 Andreas Schwab <schwab@suse.de>
6431
6432 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
6433
9668be7c
KS
64342003-03-12 Kim F. Storm <storm@cua.dk>
6435
03eb5fab 6436 The following changes consolidate the fringe handling from
9668be7c 6437 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 6438
9668be7c
KS
6439 * xdisp.c: Consolidate fringe handling code here.
6440 (left_bits, right_bits, continued_bits, continuation_bits)
6441 (ov_bits, zv_bits): Define fringe bitmaps.
6442 (fringe_bitmaps): New array holding fringe bitmaps.
6443 (draw_fringe_bitmap): Draw a specific bitmap; call display
6444 specific drawing routine via rif->draw_fringe_bitmap.
6445 (draw_row_fringe_bitmaps): Generic replacement for
6446 x_draw_row_fringe_bitmaps; all callers changed.
6447 (compute_fringe_widths): Generic replacement for
6448 x_compute_fringe_widths; all callers changed.
6449
6450 * dispextern.h (enum fringe_bitmap_type): Define here.
6451 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
6452 (fringe_bitmaps): Declare extern.
6453 (struct redisplay_interface): New member draw_fringe_bitmap.
6454 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
6455
6456 * xterm.c: Remove generic fringe code.
6457 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6458 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6459
6460 * w32term.c: Remove generic fringe code.
6461 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
6462 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 6463
9668be7c
KS
6464 * macterm.c: Remove generic fringe code.
6465 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6466 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6467
00a88f32
SM
64682003-03-11 Stefan Monnier <monnier@cs.yale.edu>
6469
6470 * print.c (Fprin1_to_string): Return unibyte string if possible.
6471
1d1de695
DK
64722003-03-09 David Kastrup <dak@gnu.org>
6473
6474 * process.c (read_process_output): We have allocated enough space
6475 for readmax and carryover, so actually use the alloted space.
6476
257f40f2
JD
64772003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6478
6479 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
6480 toolkit scrollbar click.
6481
6482 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
6483 for USE_GTK.
6484 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
6485 also.
6486 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
6487 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 6488
257f40f2
JD
6489 * gtkutil.h: Declare xg_get_scroll_id_for_window.
6490
6491 * gtkutil.c (xg_get_scroll_id_for_window): New function.
6492 (xg_tool_bar_item_expose_callback): New function.
6493 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
6494 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
6495 on the tool bar widget.
6496 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
6497 to expose on the tool bar item widgets.
6498
15213141
JD
64992003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6500
26b74a0b 6501 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 6502 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
6503 deleted from the image cache).
6504
15213141
JD
6505 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
6506 the event isn't for a frame (i.e. for dialogs).
6507
20b853f3 65082003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
6509
6510 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
6511 composition components reaches the limit, terminate composing.
6512 (COMPOSITION_OK): New macro.
00a88f32 6513 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
6514 composition is found.
6515 (coding_restore_composition): Adjust the number of composition
6516 components if it is not sane.
6517
c9029fe5
JB
65182003-03-06 Juanma Barranquero <lektu@terra.es>
6519
6520 * w32term.h (struct w32_display_info): Add xrdb member to support
6521 passing resources via -xrm on Windows.
6522
6523 * w32term.c (w32_make_rdb): New function.
6524 (w32_term_init): Use it to initialize xrdb member of w32_display_info
6525 struct. Delete leftover code.
6526
6527 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
6528 for resources passed on the command line.
6529
6530 * w32reg.c (w32_get_rdb_resource): New function.
6531 (x_get_string_resource): Use it, so resources passed with -xrm
6532 supercede the ones in the registry.
6533
9d00001f
JD
65342003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6535
6536 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
6537 instead of x_top_window_to_frame.
6538
ca2417b9
JD
65392003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6540
6541 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
6542 when restarting Emacs.
6543
5b20caf0
RS
65442003-03-03 Richard M. Stallman <rms@gnu.org>
6545
6546 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
6547 to run kill-buffer-query-functions.
6548 (Qkill_buffer_query_functions): New var.
6549 (syms_of_buffer): Init and staticpro it.
6550
58e91b77
JD
65512003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6552
6553 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
6554
932357b4
KS
65552003-02-25 Kim F. Storm <storm@cua.dk>
6556
6557 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
6558 If centering point failed to make whole line visible and vscroll
6559 is non-zero, disable vscroll and try centering point again.
6560
6561 * lread.c (read1): Accept `single space' syntax like (? x).
6562
bb8db7e1
JD
65632003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6564
6565 * keyboard.c (cancel_hourglass_unwind): Surround with
6566 #ifdef HAVE_X_WINDOWS
6567
47d77aab
KH
65682003-02-25 Kenichi Handa <handa@m17n.org>
6569
6570 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
6571 process only when "subprocesses" is defined.
6572
6a097c0c
SM
65732003-02-24 Stefan Monnier <monnier@cs.yale.edu>
6574
6575 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
6576
0b063c27
JB
65772003-02-24 Juanma Barranquero <lektu@terra.es>
6578
d1135afc
JB
6579 * callint.c (fix_command): Declare as static void and move before
6580 Fcall_interactively.
6581
0b063c27
JB
6582 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
6583 (syms_of_xdisp): Don't initialize Qwhen.
6584
0af912f0
JD
65852003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6586
6587 * keyboard.c (cancel_hourglass_unwind): New function.
6588 (command_loop_1): Cancel hourglass with unwind-protect.
6589
120d0a23
RS
65902003-02-23 Richard M. Stallman <rms@gnu.org>
6591
6592 * callint.c (fix_command): New subroutine, from Fcall_interactively.
6593 Detect (when ... (region-beginning)) etc.
6594 (Fcall_interactively): Call fix_command.
6595 (Qif, Qwhen): New variables.
6596 (syms_of_callint): Init and staticpro them.
0b063c27 6597
120d0a23
RS
6598 * regex.c (print_partial_compiled_pattern): Output to stderr.
6599
4ece81a6
KG
66002003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6601
6602 * dired.c (directory_files_internal): Don't expand directory.
6603 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
6604 instead. From Lars Hansen <larsh@math.ku.dk>.
6605
e52bd6b7
SM
66062003-02-22 Stefan Monnier <monnier@cs.yale.edu>
6607
6608 * fns.c (string_to_multibyte): Remove unused var i.
6609 (Flanginfo): Fix int/Lisp_Object mixup.
6610 (void_call2): New fun.
6611 (Fmap_char_table): Use it in place of call2.
6612
6613 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
6614
6615 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
6616
6617 * keymap.c (copy_keymap_1): Make it static.
6618
6619 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
6620
c33ef7c4
JB
66212003-02-22 David Ponce <david@dponce.com>
6622
6623 * lread.c (Fload): Don't check STRING_MULTIBYTE.
6624
16782258
JD
66252003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6626
6627 * process.h: Removed subtty field from struct Lisp_Process.
6628
6629 * process.c (create_process): Remove setting of subtty.
6630 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
6631 (Fprocess_running_child_p, process_send_signal):
6632 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
6633 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
6634
3abeca61
KG
66352003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6636
6637 * keymap.c (Fdefine_key): Doc fix.
6638
92a8ce63
JB
66392003-02-21 Juanma Barranquero <lektu@terra.es>
6640
6641 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
6642
6643 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
6644 POLLING_PROBLEM_IN_SELECT.
6645
6646 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
6647 Delete #undef of POLLING_PROBLEM_IN_SELECT.
6648
6649 * s/hpux10-20.h: New file.
6650
e52bd6b7
SM
6651 * process.c (wait_reading_process_input):
6652 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 6653
20f1ef2e
KH
66542003-02-20 Kenichi Handa <handa@m17n.org>
6655
32d0a9dc
KH
6656 * fontset.c (check_fontset_name): If NAME is nil, return the
6657 default fontset.
6658 (override_font_info): New function.
e52bd6b7 6659 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
6660 (Ffontset_info): If FONTSET is not the default fontset, merge
6661 FONTSET onto the copy of the default fontset, and work on that
6662 copy. Document that NAME nil means the default fontset.
6663 (Ffontset_font): Document that NAME nil means the default fontset.
6664
20f1ef2e
KH
6665 * process.c (setup_process_coding_systems): If the process's
6666 in/out descriptor is -1, do nothing.
6667
77d1daf2
AS
66682003-02-19 Andreas Schwab <schwab@suse.de>
6669
e52bd6b7
SM
6670 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
6671 Add prototypes.
77d1daf2 6672
f9a45bb3
KH
66732003-02-19 Kenichi Handa <handa@m17n.org>
6674
6675 * xfaces.c (try_alternative_families): Try all scalable fonts if
6676 Vscalable_fonts_allowed is not Qt.
6677
72ecb43c
JD
66782003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6679
6680 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
6681
ee5be7c3
JD
66822003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6683
6684 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
6685 names.
6686
6687 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 6688 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
6689 x_face_list_fonts.
6690 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
6691 (Fx_list_fonts): Set maxnames to -1 to get all font names.
6692
4cd519a7
KS
66932003-02-18 Kim F. Storm <storm@cua.dk>
6694
068f9882
KS
6695 * lread.c (read1): Fix last change.
6696 "`" is not always special. Allow "?" after a character constant.
4cd519a7 6697
7290a344
AC
66982003-02-18 Andrew Choi <akochoi@shaw.ca>
6699
6700 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
6701
1f7fa69b
AS
67022003-02-18 Andreas Schwab <schwab@suse.de>
6703
6704 * window.c (window_scroll_pixel_based): Move outside a
6705 multi-glyph character before setting new window start.
6706
6707 * xdisp.c (in_display_vector_p): New function.
6708 * dispextern.h (in_display_vector_p): Declare.
6709
23e21195
KS
67102003-02-18 Kim F. Storm <storm@cua.dk>
6711
6712 * lread.c (read1): Fix and relax read syntax.
6713 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
6714 Only recognize "," after dotted-pair dot if inside backquote.
6715 Never include "`" or "," (inside backquote) in a symbol.
6716 Allow dotted-pair dot after a character constant.
6717 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 6718
f098b121
JD
67192003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6720
6721 * gtkutil.c (xg_tool_bar_expose_callback): New function.
6722 (xg_create_tool_bar): Force style of tool bar to be horizontal with
6723 icons. Set name of tool bar to emacs-toolbar.
6724 (update_frame_tool_bar): Connect expose event to
6725 xg_tool_bar_expose_callback.
6726
63020c46
RS
67272003-02-17 Richard M. Stallman <rms@gnu.org>
6728
6729 * keyboard.c (this_command_key_count_reset): New variable.
6730 Initiatize to 0 where this_command_key_count is set.
6731 (read_char): Save and restore this_command_key_count_reset
6732 around input method code.
6733 (read_char): If this_command_key_count_reset, echo reread commands.
6734 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
6735
fb4452cc
KH
67362003-02-17 Kenichi Handa <handa@m17n.org>
6737
6738 * fns.c (string_to_multibyte): Always return a multibyte string.
6739
bd11cc09
JR
67402003-02-16 Jason Rumney <jasonr@gnu.org>
6741
e52bd6b7
SM
6742 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
6743 Negative max_fonts parameter means list all.
bd11cc09 6744
4cdf4bde
DL
67452003-02-14 Dave Love <fx@gnu.org>
6746
6747 * fns.c (Flanginfo): Doc fix.
6748
023b93f6
KS
67492003-02-13 Kim F. Storm <storm@cua.dk>
6750
37cd4238
KS
6751 * lread.c (read_escape): Interpret \s as a SPACE character, except
6752 for \s-X in a character constant which still is the super modifier.
6753 (read1): Signal an `invalid read syntax' error if a character
6754 constant is immediately followed by a digit or symbol character.
6755
140a6b7e
KS
6756 * search.c (Fmatch_data): Doc fix. Explicitly state that
6757 match-data is undefined if last search failed.
6758
023b93f6
KS
6759 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
6760 All uses changed.
6761
7d5c86e5
JB
67622003-02-12 Juanma Barranquero <lektu@terra.es>
6763
6764 * eval.c (Fdefmacro): Fix typo.
6765
295fff2c
KS
67662003-02-12 Kim F. Storm <storm@cua.dk>
6767
6768 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
6769 macro is a string, convert meta modifiers in string when copying
6770 the string into a vector.
6771
60f3202d
KS
67722003-02-11 Kim F. Storm <storm@cua.dk>
6773
6774 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
6775
61cb0b53
KH
67762003-02-11 Kenichi Handa <handa@m17n.org>
6777
6778 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
6779
7392e23c
KS
67802003-02-10 Kim F. Storm <storm@cua.dk>
6781
6782 * process.c: Doc fixes.
6783 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
6784
ce4254bd
KH
67852003-02-10 Kenichi Handa <handa@m17n.org>
6786
9c7a329a
KH
6787 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
6788
ce4254bd
KH
6789 * process.c (QCfilter_multibyte): New variable.
6790 (setup_process_coding_systems): New function.
e52bd6b7
SM
6791 (Fset_process_buffer, Fset_process_filter):
6792 Call setup_process_coding_systems.
ce4254bd
KH
6793 (Fstart_process): Initialize the member `filter_multibyte' of
6794 struct Lisp_Process.
6795 (create_process): Call setup_process_coding_systems.
6796 (Fmake_network_process): New keyward `:filter-multibyte'.
6797 Initialize the member `filter_multibyte' of struct Lisp_Process.
6798 Call setup_process_coding_systems.
6799 (server_accept_connection): Call setup_process_coding_systems.
6800 (read_process_output): If the process has a filter, decide the
6801 multibyteness of a string to given to the filter by
6802 `filter_multibyte' member of the process. If the process doesn't
6803 have a filter and the result of conversion is unibyte, use
6804 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
6805 multibyte form.
6806 (Fset_process_coding_system): Call setup_process_coding_systems.
6807 (Fset_process_filter_multibyte): New function.
6808 (Fprocess_filter_multibyte_p): New function.
6809 (syms_of_process): Intern and staticpro QCfilter_multibyte.
6810 Defsubr Sset_process_filter_multibyte and
6811 Sprocess_filter_multibyte_p.
6812
6813 * process.h (struct Lisp_Process): New member filter_multibyte.
6814
6815 * lisp.h (setup_process_coding_systems): Add prototype.
6816
6817 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
6818 process, update coding systems for the process.
6819
b08d5f59
KH
68202003-02-09 Kenichi Handa <handa@m17n.org>
6821
6822 * fns.c (string_to_multibyte): New function.
6823 (Fstring_to_multibyte): New function.
6824 (syms_of_fns): Defsubr it.
6825
0dfd93c0
AS
68262003-02-08 Andreas Schwab <schwab@suse.de>
6827
6828 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
6829 instead of the substitution.
6830
7b76ca1c
JD
68312003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6832
6833 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
6834
6835 * xmenu.c (menu_position_func): Adjust menu popup position so that
6836 the menu is fully visible.
7b76ca1c 6837
2436a4e4
JD
68382003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6839
6840 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
6841 (x_make_frame_invisible, x_wm_set_icon_position):
6842 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
6843
6844 * xfns.c (x_set_name, x_set_title): Ditto.
6845
37d1e680
RS
68462003-02-04 Richard M. Stallman <rms@gnu.org>
6847
6848 * keyboard.c (echo_now): Update before_command_echo_length.
6849 (Freset_this_command_lengths): Reset this_command_key_count etc.
6850 immediately rather than arranging to do it later.
6851 (before_command_key_count_1, before_command_echo_length_1)
6852 (before_command_restore_flag): Vars deleted.
6853 (add_command_key): Don't handle before_command_restore_flag.
6854 (read_char, record_menu_key): Don't update before_command_key_count or
6855 before_command_echo_length.
6856 (read_char): Don't handle before_command_restore_flag.
6857
6858 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
6859 in direct-output clauses if it wouldn't be called in the ordinary case.
6860
578846a3
KS
68612003-02-04 Kim F. Storm <storm@cua.dk>
6862
6863 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
6864
49853a4d
JD
68652003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6866
6867 * gtkutil.c (remove_from_container): Copying list is not needed.
6868 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
6869 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
6870 on list returned from gtk_container_get_children to avoid memory leak.
6871
8b53dc06
JR
68722003-02-01 Jason Rumney <jasonr@gnu.org>
6873
5d54d177
JR
6874 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
6875 local malloc.
6876 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
6877 definitions in xpm.h.
6878 (init_xpm_functions): New function.
f63fd14e 6879 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
6880 (init_external_image_libraries): Try to load libXpm.dll.
6881
8b53dc06
JR
6882 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
6883 timestamp.
6884
b222e415
DL
68852003-01-31 Dave Love <fx@gnu.org>
6886
6887 * syntax.c (Fskip_chars_forward)
6888 (open-paren-in-column-0-is-defun-start): Doc fix.
6889
c60ee5e7
JB
68902003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
6891
6892 * fileio.c: Support // at start of name for Cygwin (just added proper
6893 preprocessor tests).
6894
6895 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
6896
6897 * Makefile.in: Use @EXEEXT@ for Cygwin.
6898
6899 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
6900
6901 * s/cygwin.h: Added for Cygwin port.
6902
53b37591
JB
69032003-01-31 Juanma Barranquero <lektu@terra.es>
6904
6905 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
6906 when including gif_lib.h.
fe929957 6907 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
6908 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
6909 Windows. Disable color table lookups. Call library functions
53b37591 6910 through pointers determined at runtime.
fe929957
JB
6911 (init_external_image_libraries): Try to load libungif.dll and
6912 libtiff.dll.
53b37591 6913
45415a8f
KH
69142003-01-31 Kenichi Handa <handa@m17n.org>
6915
6916 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 6917 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 6918
a97e4138
JD
69192003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6920
e52bd6b7 6921 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 6922
6eed9bed
DL
69232003-01-30 Dave Love <fx@gnu.org>
6924
6925 * alloc.c (Vgc_elapsed, gcs_done): New variables.
6926 (Fgarbage_collect): Use them.
6927 (init_alloc, syms_of_alloc): Set them up.
6928
100dcd40
JB
69292003-01-30 Juanma Barranquero <lektu@terra.es>
6930
6931 * w32fns.c (init_external_image_libraries): Add missing operator.
6932
fbd852af
JR
69332003-01-29 Jason Rumney <jasonr@gnu.org>
6934
6935 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
6936 an alternative name for jpeg.dll.
6937
8a2d8020
KH
69382003-01-29 Kenichi Handa <handa@m17n.org>
6939
6940 * xdisp.c (set_cursor_from_row): Pay attention to string display
6941 properties.
6942
058c18c7
AC
69432003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
6944
6945 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
6946 <escape>.
6947 (keycode_to_xkeysym_table): Reformat and add more comments.
6948 (XTread_socket): Drop special case for backspace.
6949
385f11cf
AC
69502003-01-28 Andrew Choi <akochoi@shaw.ca>
6951
6952 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
6953 values in old-style RGB specs.
6954
c922a224
JB
69552003-01-27 Juanma Barranquero <lektu@terra.es>
6956
6957 * w32fns.c (init_external_image_libraries): Try alternate names for the
6958 jpeg dll.
6959
0a1d6de0
JD
69602003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6961
6962 * gtkutil.c (create_dialog, xg_separator_p)
6963 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
6964 before calling strcmp or strlen.
6965
a97e4138 69662003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
6967
6968 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
6969 and handle image load failure.
6970
28908312
JR
69712003-01-26 Jason Rumney <jasonr@gnu.org>
6972
6973 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
6974 New functions.
f63fd14e
JB
6975 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
6976 Disable color table lookups. Call jpeg library functions
28908312
JR
6977 through pointers determined at runtime.
6978 (init_external_image_libraries): Try to load jpeg.dll.
6979
84e47416
RS
69802003-01-25 Richard M. Stallman <rms@gnu.org>
6981
6982 * lisp.h: Declare format2 instead of format1.
6983
6984 * fileio.c (barf_or_query_if_file_exists):
6985 Call format2 instead of format1.
6986
6987 * editfns.c (format2): New function, replaces format1
6988 but takes exactly two Lisp Objects as format args.
6989
6990 * buffer.c (Fkill_buffer): Call format2 instead of format1.
6991
a97e4138 69922003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
6993
6994 * xterm.h: Change to return value of x_dispatch_event to int.
6995
6996 * xterm.c (x_filter_event): New function.
6997 (event_handler_gdk, XTread_socket): Call x_filter_event.
6998 (x_dispatch_event): Change to return value of finish.
6999 (event_handler_gdk): Use return value from x_dispatch_event.
7000
7001 * xfns.c (x_window): Call create_frame_xic for GTK version to
7002 initialize input methods.
7003
7004 * gtkutil.h: Add (void) prototypes.
7005
7006 * gtkutil.c (create_menus): Remove code that puts the help menu to
7007 the right.
7008
54eefef1
JR
70092003-01-25 Jason Rumney <jasonr@gnu.org>
7010
7011 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
7012 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
7013 (png_load): Adjust colors for Windows. Use Windows
7014 bitmaps. Disable color table lookups.
c262430d
JR
7015 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
7016 (init_png_functions): New function.
7017 (png_read_from_memory, png_load): Call png library functions
7018 through pointers determined at runtime.
7019 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
7020 (init_external_image_libraries): New function.
7021 (init_xfns): Call it.
54eefef1 7022
1a9e275b
AS
70232003-01-24 Andreas Schwab <schwab@suse.de>
7024
7025 * minibuf.c (Fminibuffer_message): Verify type of parameter.
7026
a97e4138 70272003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
7028
7029 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
7030 of static initializer.
7031
422eec7e
DL
70322003-01-24 Dave Love <fx@gnu.org>
7033
7034 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
7035 architectures.
7036
7037 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
7038 Use __alignof__.
7039
2a026b04
KH
70402003-01-24 Kenichi Handa <handa@m17n.org>
7041
7042 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 7043 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
7044 (command_loop_1): Call adjust_point_for_property with proper
7045 second arg.
7046
a18bb28d
JR
70472003-01-22 Jason Rumney <jasonr@gnu.org>
7048
7049 Sync changes with xterm.c and xfns.c.
7050
7051 * w32term.c (x_draw_glyph_string_foreground)
7052 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7053
7054 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
7055 phys_cursor's hpos is overwritten. This is still not completely
7056 correct, as it doesn't really make sense to use hpos at all to
7057 get the cursor glyph (as that is relative to the width of the
7058 characters on the line, which may have changed during the update).
7059
7060 * w32term.c (notice_overwritten_cursor): Handle the special case
7061 of the cursor being in the first blank non-text line at the
7062 end of a window.
7063
7064 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
7065 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
7066 Compute from the x position returned by x_draw_glyphs.
7067
7068 (x_display_and_set_cursor): Don't set phys_cursor_width here,
7069 except for NO_CURSOR and system caret, to make phys_cursor_width
7070 contain what its name suggests.
7071 (notice_overwritten_cursor): Consider the cursor image erased if
7072 the output area intersects the cursor image in y-direction.
7073
6a097c0c
SM
7074 * w32term.c (note_mode_line_or_margin_highlight): Rename from
7075 note_mode_line_highlight and extend.
a18bb28d
JR
7076
7077 * w32term.c (last_window): New variable.
7078 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
7079 (note_mouse_movement): Remove reimplemented code in #if 0.
7080
7081 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
7082 not update_mode_lines, and always set it to 1.
7083
ac6e47ef
JR
70842003-01-21 Jason Rumney <jasonr@gnu.org>
7085
7086 * w32fns.c (IDC_HAND): Define it if system headers don't.
7087
70882003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7089
7090 * w32term.h (struct w32_output): New member hand_cursor.
7091 (WM_EMACS_SETCURSOR): New message definition.
7092
7093 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
7094 function w32_define_cursor.
7095 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
7096 position, change member name output_data.x to output_data.w32 and
7097 add function w32_define_cursor.
7098 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
7099 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
7100 (w32_initialize_display_info):
7101 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
7102
7103 * w32fns.c (Vx_hand_shape): New variable.
7104 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
7105 WM_EMACS_SETCURSOR.
7106 (x-create-frame): Setup Cursor types.
7107
ceb39a17
JB
71082003-01-21 David Ponce <david@dponce.com>
7109
ac6e47ef 7110 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 7111 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 7112 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 7113 2002-09-30.)
ac6e47ef
JR
7114 (w32_draw_relief_rect): Declare all args.
7115 (w32_define_cursor): New.
7116
7117 * w32fns.c (w32_load_cursor): New function.
7118 (w32_init_class): Use it.
7119 (x_put_x_image): Declare all args.
7120
46cf0bed
JB
71212003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7122
7123 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
7124
a97e4138 71252003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
7126
7127 * gtkutil.c: Must include stdio.h before termhooks.h
7128
83fc9c63
DL
71292003-01-21 Dave Love <fx@gnu.org>
7130
7131 * alloc.c (Fgc_status): Print zombie list.
7132 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7133 Fix assignment of zombies.
7134 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7135 Don't take car of non-cons.
7136
7137 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7138
7139 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7140
fe04b8c8
JR
71412003-01-20 David Ponce <david@dponce.com>
7142
7143 * w32menu.c (digest_single_submenu): Declare all args.
7144
7145 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
7146 changes in xmenu.c:
7147
7148 (parse_single_submenu): Use individual keymap's prompt
7149 string as pane name, if there is one.
7150 (set_frame_menubar): Save menu_items_n_panes from each call to
7151 parse_single_submenu and use it when calling digest_single_submenu.
7152
539e69a9
ST
71532003-01-20 Steven Tamm <steventamm@mac.com>
7154
7155 * macterm.c (XTread_socket): Checks for valid, visible window
7156 before sending a scroll-wheel event.
7157
675d000f
RS
71582003-01-20 Richard M. Stallman <rms@gnu.org>
7159
7160 * xdisp.c (redisplay_window): If mini window's buffer is not
7161 a minibuffer, then redisplay it like other windows.
7162
a97e4138 71632003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
7164
7165 * gtkutil.c (xg_create_frame_widgets): Check if there is an
7166 external tool bar before setting tool bar height.
7167
048addec
JD
71682003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7169
7170 * xterm.c (handle_one_xevent): Surround popup_activated
7171 with #ifdef:s for non-toolkit version.
7172
7173 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
7174 (gtkutil.o): New file.
7175 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
7176 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
7177
7178 * gtkutil.c: New file for GTK version.
7179
7180 * gtkutil.h: New file for GTK version.
7181
7182 * xterm.h: Add xt_or_gtk_widget.
7183 Include gtk files for USE_GTK.
7184 (struct x_output): Add toolbar_height.
7185 (struct x_output): Add GTK widgets and Gdk size_hints.
7186 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
7187 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
7188 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
7189
7190 * xterm.c: Include gtkutil.h for USE_GTK.
7191 Declare extern void free_frame_menubar for USE_GTK.
7192 (note_mouse_highlight): Check popup_activated for USE_GTK.
7193 (xt_action_hook): Don't compile if USE_GTK.
7194 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
7195 (xg_scroll_callback): New function.
7196 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
7197 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
7198 for USE_GTK.
7199 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
7200 xg_show_scroll_bar for USE_GTK.
7201 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
7202 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
7203 (event_handler_gdk): New function for USE_GTK.
7204 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
7205 (handle_one_xevent): Make sure widget is mapped before
7206 calling x_real_positions for USE_GTK.
7207 (XTread_socket): Add GTK event loop for USE_GTK.
7208 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
7209 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
7210 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
7211 (x_iconify_frame): Add code for USE_GTK.
7212 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
7213 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
7214 is in gtkutil.c.
7215 (x_term_init): Add initialization for GTK.
7216 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
7217
7218 * xmenu.c: Include gtkutil.h for USE_GTK.
7219 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
7220 (single_menu_item, single_menu_item, Fx_popup_dialog):
7221 Check for USE_GTK.
048addec
JD
7222 (popup_widget_loop): New function for USE_GTK.
7223 (x_activate_menubar): Add code for USE_GTK.
7224 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
7225 (menu_highlight_callback, menubar_selection_callback):
7226 Add USE_GTK versions.
048addec
JD
7227 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
7228 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
7229 (free_frame_menubar): Only compile if not USE_GTK. GTK version
7230 is in gtkutil.c.
7231 (popup_selection_callback): New version for USE_GTK.
7232 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 7233 one USE_X_TOOLKIT version.
048addec
JD
7234 (xmenu_show): Call create_and_show_popup_menu.
7235 (dialog_selection_callback): New version for USE_GTK.
7236 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 7237 one USE_X_TOOLKIT version.
048addec
JD
7238 (xdialog_show): Call create_and_show_dialog.
7239
7240 * xfns.c: Include gtkutil for USE_GTK.
7241 (x_window_to_frame, x_any_window_to_frame)
7242 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7243 (x_top_window_to_frame): Add code for USE_GTK.
7244 (x_set_background_color): Call xg_set_background_color for GTK.
7245 (x_set_menu_bar_lines): Check for USE_GTK.
7246 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
7247 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
7248 (x_window): Call xg_create_frame_widgets for USE_GTK.
7249 (Fx_create_frame): Check for USE_GTK
7250 (Fx_file_dialog): New implementation for USE_GTK.
7251
7252 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
7253 (update_menu_bar): Add check for USE_GTK.
7254 (update_tool_bar): Add check for USE_GTK and external tool bar.
7255 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
7256 (redisplay_internal): Add check for USE_GTK and popup_activated.
7257 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
7258 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
7259 (display_menu_bar): Add check for USE_GTK
7260
7261 * lisp.h: Declare Vx_resource_name extern.
7262
a64387ee 7263 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
7264 for USE_GTK.
7265 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
7266
7267 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
7268 (FRAME_EXTERNAL_TOOL_BAR): New macro.
7269 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
7270
7271 * fileio.c (Fread_file_name): Add check for USE_GTK.
7272
6bdb309a
SM
7273 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
7274 Add check for USE_GTK.
048addec
JD
7275
7276 * config.in: Added HAVE_GTK
7277
7278 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
7279
72802003-01-18 Stefan Monnier <monnier@cs.yale.edu>
7281
7282 * charset.h (Funibyte_char_to_multibyte): Export.
7283
72842003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7285
7286 * xmenu.c (mouse_position_for_popup): New function.
7287 (Fx_popup_menu): Call mouse_position_for_popup for X and
7288 mouse_position_hook for others.
7289
72902003-01-17 Kim F. Storm <storm@cua.dk>
7291
7292 * editfns.c (Finsert): Mention `string-make-multibyte' and
7293 `string-as-multibyte' in doc string.
7294
72952003-01-17 Kenichi Handa <handa@m17n.org>
7296
7297 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 7298
048addec
JD
7299 * editfns.c (Fformat): Convert an unibyte char argument that is
7300 formatted by "%c" to multibyte if the total result must be a
7301 multibyte string.
cd7df9c0 7302
048addec 73032003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 7304
048addec
JD
7305 * process.c (set-process-filter): Document unibyte/multibyte-ness
7306 of string argument.
56210ecd 7307
048addec 73082003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 7309
048addec 7310 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 7311
048addec
JD
7312 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
7313 (re_search_2): Likewise.
6df8b9fe 7314
048addec 73152003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 7316
048addec
JD
7317 * xdisp.c (message_dolog): Fix bug of the case that *Message*
7318 buffer is unibyte.
292ddc31 7319
048addec 73202003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 7321
048addec 7322 * fns.c (Fsubstring): Clarify doc string.
292ddc31 7323
048addec
JD
7324 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
7325 (Fprevious_char_property_change)
7326 (Fnext_single_char_property_change)
7327 (Fprevious_single_char_property_change, Fnext_property_change)
7328 (Fnext_single_property_change, Fprevious_property_change)
7329 (Fprevious_single_property_change, Fadd_text_properties)
7330 (Fput_text_property, Fset_text_properties)
7331 (Fremove_text_properties, Fremove_list_of_text_properties)
7332 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 7333
048addec 73342003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 7335
048addec
JD
7336 * process.h (struct Lisp_Process): New member plist replaces old
7337 member private_vars. All uses changed.
63e4e4c6 7338
048addec 7339 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 7340 (QCplist): Rename from QCvars. Change all uses.
048addec 7341 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 7342 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 7343 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 7344 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 7345
048addec 73462003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 7347
6bdb309a 7348 * m/delta.h: Remove (obsolete).
e833850f 7349
048addec 73502003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 7351
048addec
JD
7352 * fileio.c (Fdelete_directory, Fdelete_file): Document the
7353 behaviour in front of symlinks.
7354 (Fdelete_file): Raise an error on directories.
817cb127 7355
048addec 73562003-01-13 Dave Love <fx@gnu.org>
817cb127 7357
048addec 7358 * fns.c (Freverse): Use QUIT.
3e8cf2ea 7359
048addec 73602003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 7361
048addec
JD
7362 * minibuf.c (minibuffer_completion_contents):
7363 Error if point is inside prompt.
3e8cf2ea 7364
048addec
JD
7365 * keyboard.c (command_loop_1): Don't redisplay directly
7366 if there's a post-command-hook.
3e8cf2ea 7367
048addec
JD
7368 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
7369 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 7370
048addec 73712003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 7372
048addec 7373 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 7374
048addec
JD
7375 * process.c (QCvars): New variable.
7376 (syms_of_process): Intern and staticpro it.
7377 (Fset_process_contact): Removed function.
7378 (Fprocess_variable, Fset_process_variable): New functions.
7379 (syms_of_process): Defsubr them.
7380 (Fstart_process): Initialize private_vars plist to nil.
7381 (Fmake_network_process): New arg :vars to setup the private
7382 variables for new network process.
7383 (server_accept_connection): Copy server's private variables to
7384 client process.
2c10f029 7385
048addec
JD
7386 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
7387 crashes). Code rewritten and simplified. Now directly aligns the
7388 pointer and recalculates pure_bytes_used, rather than aligning the
7389 size and adjusting the pointer.
b8a76c6c 7390
048addec 73912003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 7392
048addec
JD
7393 * process.c (Fset_process_contact): New function.
7394 (syms_of_process): defsubr it.
7395 (make-network-process): Update doc.
3a8d0899 7396
048addec 73972003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 7398
048addec
JD
7399 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
7400 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 7401
048addec 74022003-01-10 Dave Love <fx@gnu.org>
4abc7470 7403
048addec 7404 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 7405
048addec 74062003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 7407
048addec
JD
7408 * process.c (Fmake_network_process): Convert new port number
7409 to host byte order for `:service t' case. From Mario Lang.
bf338245 7410
048addec 74112003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 7412
048addec
JD
7413 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
7414 instead of XtAppProcessEvent.
bf338245 7415
048addec
JD
7416 * xterm.c (handle_one_xevent): New function.
7417 (x_dispatch_event): New function.
7418 (XTread_socket): Call handle_one_xevent.
bf338245 7419
048addec 7420 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 7421
048addec
JD
7422 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
7423 call XQueryPointer to get coordinates.
7424 (popup_get_selection): Do not set popup_activated_flag to zero,
7425 let popup_deactivate_callback do that. Needed for Motif.
7426 Call x_dispatch_event instead of XtDispatchEvent.
7427 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 7428
048addec 74292003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 7430
6bdb309a 7431 * process.c (server_accept_connection): Fix recording of new
048addec
JD
7432 connection's local address in :local property of contact info.
7433 (Fmake_network_process): Record local network address for new
7434 client processes in :local property of contact info.
6bdb309a 7435 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 7436
048addec 74372003-01-07 Dave Love <fx@gnu.org>
00e3ab56 7438
048addec 7439 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 7440
048addec 74412003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 7442
048addec 7443 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 7444
048addec
JD
7445 * eval.c (Fuser_variable_p): Doc change. For custom variables,
7446 use the same test as for custom-variable-p.
8c6d74c6 7447
048addec 74482003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 7449
048addec
JD
7450 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
7451 Count LAST_LINE_MISFIT in scroll margin for end of window.
7452 Move label too_near_end before setting SCROLL_MARGIN_POS.
7453 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 7454
048addec
JD
7455 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
7456 scroll_conservatively case. If scrolling that much doesn't change
7457 STARTP, move it down one line.
e833850f 7458
048addec
JD
7459 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
7460 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 7461
048addec
JD
7462 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
7463 selected frame.
8c6d74c6 7464
048addec
JD
7465 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
7466 (syms_of_keymap): staticpro them.
7467 (Fapropos_internal): Initialize them and clear them out.
7468 Don't GCPRO them.
8c6d74c6 7469
048addec
JD
7470 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
7471 Doc fixes.
8c6d74c6 7472
048addec
JD
7473 * lisp.h: New misc type Lisp_Save_Value.
7474 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
7475 (XSAVE_VALUE): New macro.
7476 (struct Lisp_Save_Value): New data type.
7477 (union Lisp_Misc): Add u_save_value alternative.
7478 (make_save_value): Declared.
8c6d74c6 7479
048addec 7480 * alloc.c (make_save_value): New function.
8c6d74c6 7481
048addec
JD
7482 * xterm.c (x_catch_errors): Save dpy using make_save_value.
7483 (x_catch_errors_unwind): Call XSync.
8c6d74c6 7484
048addec 74852003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 7486
048addec 7487 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 7488
048addec
JD
7489 * keyboard.c (command_loop_1): Call adjust_point_for_property
7490 in direct action cases for Qforward_char and Qbackward_char.
7491 Set already_adjusted so it won't be done twice.
8c6d74c6 7492
048addec 74932002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 7494
048addec
JD
7495 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
7496 type definition of size_t.
8c609cff 7497
048addec 74982003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 7499
048addec
JD
7500 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
7501 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 7502
048addec 75032002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 7504
048addec
JD
7505 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
7506 to default to t.
fa634a5e 7507
048addec 75082002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 7509
048addec 7510 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 7511
048addec 75122002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 7513
048addec
JD
7514 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
7515 allow building in a different directory than source. Uses some
7516 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 7517
048addec 75182002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 7519
048addec
JD
7520 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
7521 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
7522 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
7523 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 7524
048addec 75252002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 7526
048addec
JD
7527 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
7528 <scroll-down-aggressively>: Doc fix.
2155ecf3 7529
048addec
JD
7530 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
7531 string as pane name, if there is one.
7532 (set_frame_menubar): Save menu_items_n_panes from each call to
7533 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 7534
048addec
JD
7535 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
7536 Don't try to make last line fully visible if it is past end of window.
61f1d295 7537
048addec 75382002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 7539
048addec
JD
7540 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
7541 (mac_menu_show): Add support for hierarchical popup menus.
7542 (add_menu_item): Remove indentation support.
7543 (fill_submenu, fill_menu): Create hierarchical menus
7544 instead of using indentation.
0b17a217 7545
048addec 75462002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 7547
048addec
JD
7548 * xdisp.c (try_cursor_movement): Don't call try_window here.
7549 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 7550
048addec 7551 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 7552
048addec 75532002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 7554
048addec
JD
7555 * macterm.c (XTread_socket): Call KeyTranslate for control and
7556 meta to deal correctly shifted non-alpha characters, like C-S-5
7557 being treated like C-%. Does not look for shift key to deal
7558 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 7559
048addec 75602002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 7561
048addec
JD
7562 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
7563 If it is non-nil, run timers. Use an unwind-protect to requeue
7564 the events that were read ahead.
7565 (popup_get_selection_unwind): New subroutine.
7566 (popup_get_selection_queue): File-scope variable now holds that queue.
7567 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
7568 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
7569 Use an unwind-protect to pop down the dialog box.
7570 (xdialog_show_unwind): New subroutine implements that.
f02cac82 7571
048addec
JD
7572 * xdisp.c (row_containing_pos): Change exit test using last_y.
7573 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 7574
048addec
JD
7575 * lread.c (load_error_handler): New function.
7576 (Fload): Handle errors in Fsubstitute_in_file_name.
7577 Don't expect Fsignal to return.
f02cac82 7578
048addec
JD
7579 * eval.c: Errors and throws work right with interrupt blocking.
7580 (struct catchtag): New elt interrupt_input_blocked.
7581 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
7582 (internal_catch, Fcondition_case, internal_condition_case)
7583 (internal_condition_case_1, internal_condition_case_2): Save it.
7584 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 7585
048addec 7586 * editfns.c (Fformat): Add parens.
f02cac82 7587
048addec
JD
7588 * dired.c (file_name_completion): Fix that change.
7589 Delete special quit-handling code; just use QUIT.
f02cac82 7590
048addec 75912002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 7592
048addec
JD
7593 * dired.c (file_name_completion): Close directory on error
7594 just as in directory_files_internal.
1a590729 7595
048addec 75962002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 7597
048addec
JD
7598 * window.c (Fset_window_configuration): Set old_point to correct
7599 value when new_current_buffer == current_buffer.
f02cac82 7600
048addec 76012002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 7602
048addec
JD
7603 Revisited my earlier fix for the following entry in etc/PROBLEMS:
7604 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7605 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 7606
048addec
JD
7607 These changes were in part based upon suggestions made by Peter
7608 'Luna' Runestig [peter@runestig.com].
9785d95b 7609
048addec
JD
7610 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
7611 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 7612 g_b_init_get_sid_identifier_authority ): Add several static
048addec 7613 global variables.
9785d95b 7614
048addec
JD
7615 * w32.c (globals_of_w32): New function. Used to initialize those
7616 global variables that must always be initialized on startup even
7617 when the global variable initialized is non zero. Its primary
7618 purpose at this time is to set the global variables
7619 g_b_init_is_windows_9x, g_b_init_open_process_token,
7620 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
7621 g_b_init_get_sid_identifier_authority to 0 on startup.
7622 Called from main.
9785d95b 7623
048addec
JD
7624 * w32.c (is_windows_9x): Perform initialization only if
7625 g_b_init_is_windows_9x is equal to 0. On initialization set
7626 g_b_init_is_windows_9x equal to 1.
2308af15 7627
048addec
JD
7628 * w32.c (open_process_token): Perform initialization only if
7629 g_b_init_open_process_token is equal to 0. On initialization set
7630 g_b_init_open_process_token equal to 1.
2308af15 7631
048addec
JD
7632 * w32.c (get_token_information): Perform initialization only if
7633 g_b_init_get_token_information is equal to 0. On initialization
7634 set g_b_init_get_token_information equal to 1.
9785d95b 7635
048addec
JD
7636 * w32.c (lookup_account_sid): Perform initialization only if
7637 g_b_init_lookup_account_sid is equal to 0. On initialization
7638 set g_b_init_lookup_account_sid equal to 1.
9785d95b 7639
048addec
JD
7640 * w32.c (get_sid_identifier_authority): Perform initialization
7641 only if g_b_init_get_sid_identifier_authority is equal to 0.
7642 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 7643
f63fd14e 7644 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
7645 those global variables that must always be initialized on startup
7646 even when the global variable initialized is non zero.
7647 Its primary purpose at this time is to initialize the global variable
7648 track_mouse_event_fn.
9785d95b 7649
a64387ee 7650 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 7651 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 7652
048addec 7653 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 7654
f63fd14e 7655 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
7656 initialize those global variables that must always be initialized
7657 on startup even when the global variable initialized is non zero.
7658 Its primary purpose at this time is to initialize the global
7659 variables get_menu_item_info and set_menu_item_info.
9785d95b 7660
048addec
JD
7661 * w32menu.c (initialize_frame_menubar): Remove initialization of
7662 get_menu_item_info and set_menu_item_info.
9785d95b 7663
048addec 7664 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 7665
048addec
JD
7666 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
7667 Declare them.
9785d95b 7668
048addec
JD
7669 * emacs.c (main): Call globals_of_w32 prior to calling
7670 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
7671 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
7672 is defined.
9785d95b 7673
048addec
JD
7674 * w32term.c (x_update_window_begin): Fix Windows API error
7675 detected by BoundsChecker. Test to determine if
7676 w32_system_caret_hwnd is NULL prior to attempting to use
7677 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 7678
048addec
JD
7679 * w32term.c (x_update_window_end): Fix Windows API error
7680 detected by BoundsChecker. Test to determine if
7681 w32_system_caret_hwnd is NULL prior to attempting to use
7682 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 7683
048addec 76842002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 7685
048addec
JD
7686 * coding.c (coding_system_require_warning): New variable.
7687 (syms_of_coding): DEFVAR it.
b6da19ef 7688
048addec 7689 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 7690
048addec
JD
7691 * fileio.c (choose_write_coding_system): Even if
7692 Vcoding_system_for_write is non-nil, if
7693 coding_system_require_warning is nonzero, call
7694 Vselect_safe_coding_system_function.
bfcf6dbe 7695
048addec 76962002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 7697
048addec
JD
7698 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
7699 (lisp): Add font-core.
2c568af5 7700
048addec 77012002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 7702
048addec
JD
7703 * textprop.c (text_read_only): New arg `propval'.
7704 (get_char_property_and_overlay): Remove unused var `next_overlay'.
7705 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 7706
048addec 77072002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 7708
048addec 7709 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 7710
048addec 77112002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 7712
048addec
JD
7713 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
7714 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
7715 Be more careful about when help_events are generated.
96720f09 7716
048addec 77172002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 7718
048addec
JD
7719 * macterm.c (mac_check_for_quit_char): Correctly set the
7720 modifiers of the event to 0.
7721 * mac.c (sys_select): Duplicate rfds before calling select to
7722 ensure that rfds survive the while loop.
e5ae1c49 7723
048addec 77242002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 7725
048addec
JD
7726 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
7727 row_containing_pos returned NULL.
2eb46b2d 7728
048addec 77292002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 7730
6bdb309a 7731 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 7732 non-blocking.
6bdb309a 7733 (sys_select): Fix sys_select to not use a timeout larger than
048addec 7734 the one given.
b11f1d8a 7735
048addec 77362002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 7737
048addec 7738 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 7739
048addec 77402002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 7741
048addec
JD
7742 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
7743 as the last thing.
a4ac5b17 7744
048addec 77452002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 7746
048addec 7747 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 7748
048addec 77492002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 7750
048addec
JD
7751 * editfns.c (Fformat): Handle precision in string conversion
7752 specifiers like libc functions do (ie, print at most that many
7753 characters).
85cce843 7754
048addec 77552002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 7756
048addec
JD
7757 * xdisp.c (row_containing_pos): Check more carefully
7758 whether charpos is really in the row before returning it.
0d4d26a7 7759
048addec 77602002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 7761
048addec 7762 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 7763
048addec
JD
7764 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
7765 each stack frame. This may change as it could be time consuming.
0d4d26a7 7766
048addec
JD
7767 * macterm.c (mac_check_for_quit_char, quit_char_comp)
7768 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 7769 (mac_initialize): Add code to check for pressing of quit_char
048addec 7770 in the OS event queue.
b11f1d8a 7771
048addec
JD
7772 * mac.c (sys_select): Call mac_check_for_quit_char every second
7773 while blocking on select.
0d4d26a7 7774
048addec
JD
7775 * mac.c (sys_read): Use sys_select to test for input first
7776 before calling read, to allow C-g to break.
9252f7bc 7777
048addec 77782002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 7779
048addec 7780 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 7781
048addec 7782 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 7783
048addec 7784 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 7785
048addec
JD
7786 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
7787 autoload.
9252f7bc 7788
048addec 7789 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 7790
048addec 7791 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 7792
048addec 77932002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 7794
048addec 7795 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 7796
048addec 77972002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 7798
048addec 7799 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 7800
048addec 7801 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 7802
048addec 7803 * alloca.c: Don't use #error.
02d588e2 7804
048addec 78052002-12-03 Dave Love <fx@gnu.org>
02d588e2 7806
048addec
JD
7807 * buffer.c (Qucs_set_table_for_input): New.
7808 (Fget_buffer_create): Use it.
7809 (Qset_buffer_major_mode_hook): Deleted.
7810 (Fset_buffer_major_mode): Revert previous change.
7811 (init_buffer_once): Intern ucs-set-table-for-input.
7812 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
7813 Add &Qucs_set_table_for_input.
451e2697 7814
048addec 78152002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 7816
048addec
JD
7817 * callint.c (Fcall_interactively): Use next_event only if less
7818 than key_count.
72742a99 7819
048addec 78202002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 7821
048addec
JD
7822 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
7823 names to 255 characters.
72742a99 7824
048addec
JD
7825 * macterm.c (XTread_socket): If all frames have been collapsed,
7826 expand the first one before handling drag-and-drop events.
72742a99 7827
048addec
JD
7828 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
7829 which is detected by autoconf.
40e6ff95 7830
048addec 78312002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 7832
048addec
JD
7833 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
7834 offset in two hints table to allow prebinding to be redone and
7835 allow the executable to be stripped.
c02138c6 7836
048addec 78372002-11-29 Dave Love <fx@gnu.org>
c02138c6 7838
048addec
JD
7839 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
7840 already provided.
0e47bbf7 7841
048addec 78422002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 7843
048addec
JD
7844 * xdisp.c (start_display): Check more intelligently for
7845 whether the line is continued.
7846 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 7847
048addec 78482002-11-28 Dave Love <fx@gnu.org>
44129dcb 7849
048addec
JD
7850 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
7851 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 7852
048addec 78532002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 7854
048addec
JD
7855 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
7856 more descriptive error output from lread.c:Fload upon most require
7857 cycles during boostrapping.
1637fd2c 7858
048addec 78592002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 7860
048addec
JD
7861 * fileio.c (Finsert_file_contents): Give a more appropriate error
7862 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 7863
048addec
JD
7864 * dired.c (Ffile_attributes): Don't return negative file sizes for
7865 files bigger than 2Gb when off_t is 32 bit.
540c2788 7866
048addec 78672002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 7868
048addec 7869 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 7870
048addec
JD
7871 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
7872 Test GETPGRP_VOID instead.
7873 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 7874
048addec
JD
7875 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
7876 Don't define.
7877 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 7878
048addec 7879 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 7880
048addec 78812002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 7882
048addec
JD
7883 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
7884 supported.
4042a81a 7885
048addec 78862002-11-25 Dave Love <fx@gnu.org>
4042a81a 7887
048addec 7888 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 7889
048addec 7890 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 7891
048addec 78922002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 7893
048addec 7894 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 7895
048addec 78962002-11-24 Steven Tamm <steventamm@mac.com>
82122254 7897
048addec
JD
7898 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
7899 determine the size of pointers alloced in unexed space instead
7900 of using possibly invalid emacs_zone pointers. This fixes the
7901 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 7902
048addec 79032002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 7904
048addec 7905 * search.c (Fstring_match): Doc fix.
c1ee53bc 7906
048addec
JD
7907 * callint.c (Fcall_interactively): If a command fails because
7908 `*' detects a read-only buffer, but RECORD_FLAG is set,
7909 record it anyway if the args don't actually do tty input.
5598c32e 7910
048addec 79112002-11-22 Dave Love <fx@gnu.org>
5598c32e 7912
048addec 7913 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 7914
048addec
JD
7915 * keyboard.c (interrupt_signal): Provide forward declaration.
7916 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 7917
048addec 7918 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 7919
048addec 79202002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 7921
048addec
JD
7922 * eval.c (interactive_p): Skip any number of bytecode
7923 and special form frames, in any order.
516eea8e 7924
048addec 79252002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 7926
048addec
JD
7927 * w32fns.c (convert_mono_to_color_image): New function.
7928 (xbm_load, xbm_load_image): Use it when foreground or background
7929 is explicitly set.
04dbfa08 7930
048addec 79312002-11-19 Dave Love <fx@gnu.org>
04dbfa08 7932
048addec 7933 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 7934
048addec 79352002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 7936
048addec
JD
7937 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
7938 (XPutPixel): Swap blue and red.
7939 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
7940 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
7941 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
7942 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 7943
048addec 79442002-11-18 Dave Love <fx@gnu.org>
d824beee 7945
048addec 7946 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 7947
048addec 7948 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 7949
048addec 7950 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 7951
048addec
JD
7952 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
7953 malloc, realloc, calloc.
d824beee 7954
048addec
JD
7955 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
7956 (bcmp): Don't define.
d824beee 7957
048addec 7958 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 7959
048addec 7960 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 7961
048addec 7962 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 7963
048addec 7964 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 7965
048addec
JD
7966 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
7967 Don't include alloca.h.
d824beee 7968
048addec 7969 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 7970
048addec 7971 * regex.c (_GNU_SOURCE): Don't define.
1998560a 7972
048addec 7973 * process.c (_GNU_SOURCE): Don't define.
1998560a 7974
048addec 7975 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 7976
048addec 79772002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 7978
048addec 7979 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 7980
048addec 79812002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 7982
048addec
JD
7983 * dispextern.h (struct face): Add `overstrike' field.
7984 * xterm.c (x_draw_glyph_string_foreground)
7985 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7986 * xfaces.c (load_face_font): Set `face->overstrike' based on
7987 result from choose_face_font.
7988 (best_matching_font, choose_face_font): Add `needs_overstrike'
7989 argument, and use it to return whether overstriking is desirable
7990 for this face/font combo.
7991 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 7992
048addec 79932002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 7994
048addec
JD
7995 This change is my fix for the following entry in etc/PROBLEMS:
7996 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7997 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 7998
048addec
JD
7999 * w32.c: Added wrapper functions around the win32 API functions
8000 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
8001 GetSidIdentifierAuthority. These wrapper functions serve two
8002 purposes:
8003 1. They ensure that the wrapped function can never be called
8004 when Emacs is running on an operating system on which they are
8005 not supported (Microsoft Windows 95 / 98 / ME).
8006 2. They call the wrapped functions via function pointers rather
8007 than calling them directly. This avoids taking advantage of the
8008 undocumented fact that although these functions are not supported
8009 in the 9x branch of Microsoft Windows, the functions do exist in
8010 the version of advapi32.dll that is found in the 9x branch of
8011 Microsoft Windows.
f60ae425 8012
6bdb309a 8013 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
8014 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
8015 and GetSidIdentifierAuthority with calls to the newly added
8016 wrapper functions.
f60ae425 8017
048addec
JD
8018 * w32.h: Added extern declarations for the following functions:
8019 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
8020 syms_of_w32menu, and void syms_of_fontset.
f60ae425 8021
6bdb309a 8022 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
8023 function pointer track_mouse_event_fn in the handler for the
8024 WM_SETFOCUS message.
3582b6a3 8025
6bdb309a 8026 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
8027 reinitialize the function pointers set_menu_item_info and
8028 get_menu_item_info.
f60ae425 8029
048addec 80302002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 8031
048addec
JD
8032 * sound.c: Added a partial implementation of play-sound-internal
8033 for Microsoft Windows. Added various #ifdef / #else / #endif
8034 code blocks to separate the code that will compile under
8035 Microsoft Windows from the code that is specific to Gnu/Linux.
8036 Moved several blocks of code around to make this separation of code
8037 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 8038
048addec 8039 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 8040
048addec
JD
8041 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
8042 added support for play-sound-internal under Windows would be
8043 included in the build of Emacs.
517f42a0 8044
048addec 80452002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 8046
048addec 8047 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 8048
048addec 8049 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 8050
048addec 80512002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 8052
048addec
JD
8053 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
8054 (adjust_point_for_property): Move out of display and invisible even if
8055 we were already inside before (in case a property was added while
8056 we weren't looking). Be more careful when handling invisible props.
8057 Skip invisible text as if it really wasn't there at all.
aab83f91 8058
048addec 80592002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 8060
048addec
JD
8061 * w32term.c (x_draw_image_foreground)
8062 (w32_draw_image_foreground_1): Use standard copy and invert
8063 operations to draw images.
aab83f91 8064
048addec
JD
8065 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
8066 depth of 1.
8067 (xbm_read_bitmap_data): Invert bits as xbm is read in.
8068 (XPutPixel): Don't invert bits here.
a4478a76 8069
048addec 80702002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 8071
048addec
JD
8072 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
8073 (w32_draw_image_foreground_1): Handle image masks.
8074 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 8075
048addec
JD
8076 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
8077 (x_from_xcolors): Adjust RGB values for W32.
8078 (image_background, image_background_transparent)
8079 (postprocess_image, x_to_xcolors, x_disable_image)
8080 (x_build_heuristic_mask): Adapt for W32 and enable.
8081 (x_create_x_image_and_pixmap): Mark images with palettes as such.
8082 (xbm_load): Remove unused variable.
03670a65 8083
048addec 80842002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 8085
048addec 8086 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 8087
048addec 80882002-11-14 Dave Love <fx@gnu.org>
59daa29a 8089
048addec 8090 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 8091
048addec
JD
8092 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
8093 * xmenu.c (unuse_menu_items, digest_single_submenu):
8094 * xfns.c (x_put_x_image):
8095 * xdisp.c (message2_nolog, set_message):
8096 * undo.c (record_point):
8097 * terminfo.c (tparam):
8098 * syntax.c (scan_sexps_forward):
8099 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
8100 * composite.c (update_compositions):
8101 * cm.c (calccost, cmgoto):
8102 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 8103
048addec 8104 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 8105
048addec
JD
8106 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
8107 Don't declare.
59daa29a 8108
048addec 8109 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 8110
048addec
JD
8111 * fns.c (Fcopy_sequence): Doc fix.
8112 (Fmap_char_table): Cast `call2'.
3947677c 8113
048addec
JD
81142002-11-14 Francesco Potorti` <pot@gnu.org>
8115
8116 * s/sol2-8.h: New file.
8117
81182002-11-14 Kim F. Storm <storm@cua.dk>
8119
8120 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
8121 dependency on `risky-local-variable' and the :propertize form.
8122
81232002-11-12 Stefan Monnier <monnier@cs.yale.edu>
8124
8125 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
8126
8127 * syntax.c (scan_sexps_forward): Undo last patch.
8128 Use a more obvious fix: check eob before updating the syntax table.
8129
81302002-11-09 Stefan Monnier <monnier@cs.yale.edu>
8131
8132 * syntax.c (scan_sexps_forward): Update syntax table before reading
8133 a char rather than after so we don't update the table past eob.
8134
81352002-11-09 Dave Love <fx@gnu.org>
8136
8137 * buffer.c (Fset_buffer_major_mode): Fix last change.
8138
8139 * regex.c (regexec): Fix pmatch declaration.
8140
8141 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
8142
8143 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
8144 to self-inserting characters.
8145 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
8146
8147 * coding.c (Vtranslation_table_for_input): New.
8148 (syms_of_coding): DEFVAR it.
8149
81502002-11-08 Juanma Barranquero <lektu@terra.es>
8151
8152 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
8153 window.
8154
81552002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8156
6bdb309a 8157 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
8158 cp, and i.
8159
81602002-11-06 Dave Love <fx@gnu.org>
8161
8162 * buffer.c (Qset_buffer_major_mode_hook): New.
8163 (Fset_buffer_major_mode): Use it.
8164
81652002-11-06 Richard M. Stallman <rms@gnu.org>
8166
8167 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
8168 and stop_polling.
8169
8170 * process.c (wait_reading_process_input):
8171 Test POLLING_PROBLEM_IN_SELECT, not hpux.
8172 Avoid initialization for auto Lisp_Object var.
8173
8174 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
8175
8176 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
8177
81782002-11-05 Richard M. Stallman <rms@gnu.org>
8179
8180 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
8181
8182 * callint.c (Fcall_interactively): New local filter_specs.
8183 (Fcall_interactively): Check for progn as well as let.
8184 Add a gcpro.
8185 (Qprogn): New variable.
8186 (syms_of_callint): Staticpro and init Qprogn.
8187
81882002-11-04 John Paul Wallington <jpw@shootybangbang.com>
8189
8190 * lread.c (Feval_buffer): Doc fix.
8191
81922002-11-04 Dave Love <fx@gnu.org>
8193
8194 * keyboard.c (read_char): Always translate iff
8195 Vkeyboard_translate_table is a char table and c is valid.
8196
8197 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
8198 and fix C types.
8199
82002002-11-03 Stefan Monnier <monnier@cs.yale.edu>
8201
8202 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
8203
8204 * editfns.c (get_pos_property): Don't hardcode Qfield.
8205
8206 * keyboard.c (adjust_point_for_property): Handle `display' prop on
8207 overlays. Also handle `invisible' prop.
8208
82092002-11-02 Stefan Monnier <monnier@cs.yale.edu>
8210
8211 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
8212 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
8213
82142002-11-01 Andreas Schwab <schwab@suse.de>
8215
8216 * editfns.c (Fmessage): Revert last change to properly handle %%.
8217
82182002-11-01 Stefan Monnier <monnier@cs.yale.edu>
8219
8220 * xmenu.c (unuse_menu_items): New fun.
8221 (menu_items_inuse): New var.
8222 (syms_of_xmenu): Initialize it.
8223 (init_menu_items): Use it to detect re-entrance.
8224 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
8225 (Fx_popup_menu): Remove spurious XSETFRAME.
8226
8227 * editfns.c (find_field): Make an exception for nil fields.
8228
82292002-11-01 Dave Love <fx@gnu.org>
8230
8231 * m/gec63.h: Deleted.
8232
82332002-10-31 Dave Love <fx@gnu.org>
8234
8235 * xterm.c (XTread_socket): Fix last change.
8236 (xaw_scroll_callback): Cast call_data to long to avoid warning.
8237
82382002-10-31 Stefan Monnier <monnier@cs.yale.edu>
8239
8240 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
8241
82422002-10-30 Stefan Monnier <monnier@cs.yale.edu>
8243
8244 * editfns.c (overlays_around, get_pos_property): New funs.
8245 (find_field): Use them.
8246 Also be careful not to modify POS before its last use.
8247 (Fmessage): Don't Fformat if there's nothing to format.
8248
82492002-10-30 Dave Love <fx@gnu.org>
8250
8251 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
8252 [HAVE_PTY_H]; Include pty.h.
8253
8254 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
8255
8256 * xterm.c (Qeql): Declare.
8257 (Vx_keysym_table): New.
8258 (syms_of_xterm): Initialize it.
8259 (XTread_socket): Use it. Deal with ASCII keysyms.
8260 (XSetIMValues) [HAVE_X11R6]: Prototype.
8261
8262 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
8263 (lispy_kana_keys): Comment out.
8264 (make_lispy_event) [XK_kana_A]: Comment out.
8265 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
8266 Fix sprintf call.
8267
8268 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
8269 regexp.h change).
8270 (TERMINFO, LIBS_TERMCAP): Define.
8271
8272 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
8273 (bcmp): Define conditional on HAVE_BCMP.
8274 (NO_SIOCTL_H): Don't define.
8275 (TIOCSIGSEND): Don't make conditional on IRIX6.
8276
8277 * s/sol2-5.h: Don't include strings.h.
8278 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
8279
8280 * s/irix6-0.h (IRIX6): Don't define.
8281 (bcopy, bcmp, bzero): Don't undef.
8282
8283 * s/irix6-5.h: Don't include strings.h.
8284 (IRIX6): Don't define.
8285 (bcopy, bcmp, bzero): Don't undef.
8286
8287 * syntax.c (Fforward_comment): Doc fix.
8288
82892002-10-29 Kim F. Storm <storm@cua.dk>
8290
8291 * process.c (Fsignal_process): Allow PROCESS to be specified by
8292 name in addition to pid (as integer or string).
8293
82942002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
8295
8296 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
8297 environments.
8298
82992002-10-27 Kim F. Storm <storm@cua.dk>
8300
8301 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8302
8303 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
8304
8305 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
8306
8307 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8308
83092002-10-26 Richard M. Stallman <rms@gnu.org>
8310
8311 * editfns.c (Fformat): Detect invalid format letters for floats.
8312
83132002-10-25 Kenichi Handa <handa@m17n.org>
8314
8315 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
8316 (x_set_title): Likewise.
8317
83182002-10-25 Juanma Barranquero <lektu@terra.es>
8319
8320 * macgui.h:
8321 * w32gui.h: Remove definition of XColor.
8322
8323 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
8324
83252002-10-24 Kim F. Storm <storm@cua.dk>
8326
8327 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
8328 Callers changed (supply dummy arg).
8329
8330 * lisp.h (get_window_cursor_type): Update prototype.
8331
8332 * w32term.c (x_display_and_set_cursor): Get active_cursor from
8333 get_window_cursor_type to track system caret.
8334
83352002-10-24 Kim F. Storm <storm@cua.dk>
8336
8337 * process.c (Fformat_network_address): New function.
8338 (syms_of_process): Defsubr it.
8339 (list_processes_1): Use it to format :local/:remote address if
f9711de4 8340 service/host is not set; before Emacs would crash in that case.
048addec
JD
8341 (Fmake_network_process): Don't use Ffind_operation_coding_system
8342 to setup coding system if host or service is not set.
8343
83442002-10-23 Juanma Barranquero <lektu@terra.es>
8345
8346 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
8347
8348 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
8349 COLORREF.
8350
8351 * macgui.h:
8352 * w32gui.h: Add definition of XColor.
8353
8354 * macfns.c:
8355 * w32fns.c:
8356 * xfaces.c: Remove definition of XColor.
8357
83582002-10-22 Stefan Monnier <monnier@cs.yale.edu>
8359
8360 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
8361
8362 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
8363 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
8364 window if it is dedicated.
8365 (Fshrink_window): Add preserve_before as was done for enlarge_window.
8366 (Vspecial_display_function): Update docstring.
8367
8368 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
8369 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
8370 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
8371
83722002-10-21 Stefan Monnier <monnier@cs.yale.edu>
8373
8374 * casefiddle.c (casify_region): Don't treat a prefix char as part
8375 of a word when at the beginning.
8376
83772002-10-17 Juanma Barranquero <lektu@terra.es>
8378
8379 * lread.c (syms_of_lread): Fix typos.
8380
83812002-10-17 Dave Love <fx@gnu.org>
8382
8383 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
8384
83852002-10-16 Richard M. Stallman <rms@gnu.org>
8386
8387 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
8388
83892002-10-14 Juanma Barranquero <lektu@terra.es>
8390
8391 * w16select.c (syms_of_win16select): Fix docstring for
8392 `selection-coding-system'.
8393
8394 * w32select.c (syms_of_w32select): Likewise.
8395
83962002-10-14 Stefan Monnier <monnier@cs.yale.edu>
8397
8398 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
8399 a backslash-quoted char.
8400 (scan_lists, scan_sexps_forward): Pacify the compiler.
8401
84022002-10-13 Richard M. Stallman <rms@gnu.org>
8403
8404 * window.c (window_scroll): Set immediate_quit.
8405
8406 * print.c (print): When backquote form is the car of a list,
8407 output in old style. Use old_backquote_output to output all
8408 comma forms inside it in old style too.
8409
8410 * buffer.h (struct buffer): Move `undo_list' down below `name'.
8411
84122002-10-11 Markus Rost <rost@math.ohio-state.edu>
8413
8414 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
8415 batch mode).
8416
8417 * lread.c (Fload): Doc fix (load-suffixes).
8418
84192002-10-10 Steven Tamm <steventamm@mac.com>
8420
8421 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
8422 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
8423 Also switch the default to Qnil from Qt.
8424
84252002-10-08 Kenichi Handa <handa@m17n.org>
8426
8427 * coding.c (code_convert_region): When we need more GAP for
8428 conversion, pay attention to the case that coding->produced is not
8429 greater than coding->consumed.
8430
84312002-10-07 Richard M. Stallman <rms@gnu.org>
8432
8433 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
8434
84352002-10-06 Andrew Choi <akochoi@shaw.ca>
8436
8437 * macmenu.c (mac_menu_show): Add j to count menu items; match
8438 menu_item_selection to it to find selected item.
8439
84402002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8441
8442 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
8443 cases. The correct fix is to pass ReparentNotify to Xt.
8444 The shell widget interprets ConfigureNotify differently depending
8445 on if it has been reparented or not.
8446
84472002-10-05 Markus Rost <rost@math.ohio-state.edu>
8448
8449 * editfns.c (Fformat_time_string): Doc fix.
8450
84512002-10-05 John Paul Wallington <jpw@shootybangbang.com>
8452
8453 * fns.c (Flength): Doc fix.
8454
84552002-10-04 Stefan Monnier <monnier@cs.yale.edu>
8456
8457 * keyboard.c (keyremap): New struct.
8458 (read_key_sequence): Use it: globally replace keytran_foo with
8459 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
8460 keytran_next and fkey_next to just `next'.
8461
84622002-10-04 Steven Tamm <steventamm@mac.com>
8463
8464 * macterm.c (keycode_to_xkeysym_table): Change return to be
8465 treated like an X keysym.
8466
84672002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8468
8469 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
8470 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
8471 This is to also handle x/y changes that occur because of a resize.
8472
84732002-10-02 John Paul Wallington <jpw@shootybangbang.com>
8474
8475 * frame.c (Vdelete_frame_functions): New variable.
8476 (syms_of_frame): Initialize and defvar it.
8477 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
8478 it when frame's `tooltip' parameter is non-nil.
8479
8480 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
8481
8482 * w32fns.c (x_create_tip_frame): Likewise.
8483
8484 * macfns.c (x_create_tip_frame): Likewise.
8485
84862002-09-30 Kenichi Handa <handa@m17n.org>
8487
8488 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
8489 -1 before calling ccl_driver.
8490
8491 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
8492 Only when it is non-nil, handle composition sequence.
8493 (setup_coding_system) <0>: Don't force composition handling.
8494
8495 * Makefile.in (lisp, shortlisp): Add utf-16.elc
8496
84972002-09-29 Richard M. Stallman <rms@gnu.org>
8498
8499 * search.c (Freplace_match): Adjust match data for the substitution
8500 just made in the buffer.
8501
8502 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
8503 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
8504
85052002-09-27 Richard M. Stallman <rms@gnu.org>
8506
8507 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
8508 (read_char): Use them. Do all exits thru the end of the function.
8509
85102002-09-27 Kenichi Handa <handa@etl.go.jp>
8511
8512 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
8513 is nil.
8514
85152002-09-26 Richard M. Stallman <rms@gnu.org>
8516
8517 * regex.h (__restrict_arr): Don't define if already defined.
8518
8519 * coding.c (run_pre_post_conversion_on_str):
8520 Save and restore Vdeactivate_mark.
8521
85222002-09-26 John Paul Wallington <jpw@shootybangbang.com>
8523
8524 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
8525
85262002-09-26 Kenichi Handa <handa@etl.go.jp>
8527
8528 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
8529 nonzero, try face's family at first. Otherwise try FAMILY at first.
8530 (choose_face_font): If C is a single byte char or latin-1, call
8531 try_font_list with PREFER_FACE_FAMILY 1.
8532
85332002-09-21 Richard M. Stallman <rms@gnu.org>
8534
8535 * window.c (select_window_1): Don't select frame.
8536 Set frame's selected window only when frame itself is selected.
8537 (Fselect_window): Doc fix.
8538
85392002-09-18 Kim F. Storm <storm@cua.dk>
8540
8541 * process.c (make-network-process): Doc fix (there is no
8542 network-server-log-function hook).
8543
85442002-09-18 Richard M. Stallman <rms@gnu.org>
8545
8546 * print.c (print): Clear out the unused parts of Vprint_number_table.
8547 (syms_of_print): Doc fix for `print-number-table'.
8548
8549 * unexelf.c (unexec): Undo previous change.
8550
85512002-09-17 Andreas Schwab <schwab@suse.de>
8552
8553 * m/alpha.h [LINUX]: Don't define DATA_START.
8554
85552002-09-16 Dave Love <fx@gnu.org>
8556
8557 * unexelf.c (unexec): Deal with .got, reinstating change from
8558 25-08-1999.
8559
85602002-09-13 Richard M. Stallman <rms@gnu.org>
8561
8562 * s/sol2-6.h (UNEXEC): Comment out definition.
8563
8564 * unexsol.c (unexec): Don't downcase first letter of error msg.
8565
8566 * xfaces.c (Fcolor_supported_p): Just one arg is required.
8567
85682002-09-12 Markus Rost <rost@math.ohio-state.edu>
8569
8570 * unexsol.c: Include buffer.h, charset.h, coding.h.
8571
85722002-09-11 Richard M. Stallman <rms@gnu.org>
8573
8574 * unexsol.c: Don't use report_file_error; do it by hand
8575 using dlerror.
8576
8577 * process.c (wait_reading_process_input, both versions):
8578 Before calling turn_on_atimers, call stop_polling.
8579
8580 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
8581
8582 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
8583 we go to too_near_end, call clear_glyph_matrix.
8584 (redisplay_window): After make_cursor_line_fully_visible,
8585 call clear_glyph_matrix and bypass `goto done'.
8586
8587 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
8588 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
8589
85902002-09-10 Richard M. Stallman <rms@gnu.org>
8591
8592 * fileio.c (Fdo_auto_save): Catch error making directory.
8593 Only call push_message if we need to.
8594 At the same time, make an unwind-protect to pop it.
8595 Rename local message_p to old_message_p.
8596 (do_auto_save_make_dir, do_auto_save_eh): New functions.
8597 (do_auto_save_unwind): Don't call pop_message.
8598
8599 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
8600
8601 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
8602
8603 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
8604
8605 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
8606
86072002-09-10 Stefan Monnier <monnier@cs.yale.edu>
8608
8609 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
8610 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
8611 (re_match_2_internal): Be more careful with infinite loops.
8612
86132002-09-10 Kim F. Storm <storm@cua.dk>
8614
8615 * macros.c (end_kbd_macro): New function.
8616 (Fend_kbd_macro): Use it.
8617
8618 * macros.h (end_kbd_macro): Declare extern.
8619
8620 * keyboard.c (Fdiscard_input): If defining keyboard macro,
8621 end and save it instead of discarding it.
8622
86232002-09-09 Markus Rost <rost@math.ohio-state.edu>
8624
8625 * s/sol2-6.h: Fix typo. Add comment.
8626
86272002-09-09 Richard M. Stallman <rms@gnu.org>
8628
8629 * regex.c (regnum_t): Use signed int, not unsigned int.
8630
8631 * s/sol2-6.h: New file.
8632
8633 * s/sol2-5.h (UNEXEC): Definition deleted.
8634
86352002-09-08 Kim F. Storm <storm@cua.dk>
8636
8637 * macros.c (executing_macro_index): Change type to EMACS_INT.
8638 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
8639
8640 * macros.h (executing_macro_index): Change type to EMACS_INT.
8641
86422002-09-06 Richard M. Stallman <rms@gnu.org>
8643
8644 * casetab.c (set_case_table): Make canon table point to eqv table.
8645
86462002-09-06 Juanma Barranquero <lektu@terra.es>
8647
8648 * coding.c (syms_of_coding): Fix spacing.
8649
8650 * composite.c (Fcompose_region_internal)
8651 (Fcompose_string_internal): Likewise.
8652
8653 * data.c (Flsh): Likewise.
8654
8655 * fontset.c (Fset_fontset_font): Likewise.
8656
8657 * macfns.c (Fx_server_max_request_size): Likewise.
8658
8659 * w16select.c (syms_of_win16select): Likewise.
8660
8661 * w32select.c (syms_of_w32select): Likewise.
8662
8663 * xselect.c (syms_of_xselect): Likewise.
8664
86652002-09-05 Richard M. Stallman <rms@gnu.org>
8666
8667 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
8668 call EXTEND_RANGE_TABLE and return a proper value.
8669 (set_image_of_range): Don't call set_image_of_range_1
8670 if no TRANSLATE or if range includes all of Latin-1.
8671 Only call it for the Latin-1 part of the range.
8672 For other cases, make two separate ranges,
8673 one for the original specified characters and one for
8674 their case-conversions.
8675
86762002-09-04 Richard M. Stallman <rms@gnu.org>
8677
8678 * s/sol2-5.h (UNEXEC): Use unexsol.o.
8679
8680 * window.c (displayed_window_lines): Correct for one-off bug
8681 in HEIGHT on non-window displays.
8682
8683 * regex.c (set_image_of_range_1): New function.
8684 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
8685 Return a value to indicate running out of memory.
8686 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
8687 (extend_range_table_work_area): New subroutine.
8688 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
8689 Different calling conventions, and used from set_image_of_range{,_1}.
8690 (IMMEDIATE_QUIT_CHECK): Definitions moved.
8691
86922002-09-04 Juanma Barranquero <lektu@terra.es>
8693
8694 * makefile.w32-in: All dependencies updated.
8695
86962002-09-01 Richard M. Stallman <rms@gnu.org>
8697
8698 * unexsol.c: New file.
8699
8700 * xfns.c (Qbox): Declare external, don't define.
8701
8702 * xdisp.c (redisplay_window) <force-start case>:
8703 If point is on semi-visible last line, reposition
8704 it at previous line.
8705
8706 * alloc.c (display_malloc_warning): Use display-warning.
8707 (malloc_warning_1): Function deleted.
8708
8709 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
8710
8711 * lread.c (read1): Handle #! by skipping the line.
8712
87132002-08-31 Richard M. Stallman <rms@gnu.org>
8714
8715 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
8716 Don't include LDFLAGS.
8717 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
8718
87192002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
8720
8721 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
8722 member of x_display_info unless we compile for some window system.
8723
87242002-08-31 Kim F. Storm <storm@cua.dk>
8725
8726 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
8727 (get_window_cursor_type): Don't use them.
8728 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
8729
87302002-08-30 Kenichi Handa <handa@etl.go.jp>
8731
8732 * xdisp.c (get_next_display_element): Fix previous change.
8733
87342002-08-30 Andrew Choi <akochoi@shaw.ca>
8735
8736 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
8737 (expose_window): Use it to fix the display of overlapping
8738 rows (merge code from xterm.c).
8739
8740 * macfns.c (Qbox): Add extern declaration.
8741
87422002-08-30 Juanma Barranquero <lektu@terra.es>
8743
8744 * w32fns.c (Qbox): Make extern.
8745 (syms_of_w32fns): Remove initialization of Qbox.
8746
87472002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
8748
8749 * xfns.c (Fx_open_connection): Fix error message.
8750
87512002-08-30 Kim F. Storm <storm@cua.dk>
8752
8753 The following changes consolidates the handling of the cursor
8754 type in xdisp.c, moving duplicate code and functionality from
8755 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
8756
8757 * frame.h (enum text_cursor_kinds): Consolidated here.
8758 Added DEFAULT_CURSOR value.
8759 (struct frame) <desired_cursor, cursor_width>
8760 <blink_off_cursor, blink_off_cursor_width>: New fields.
8761 Consolidated from output_x, output_w32 and output_mac structs.
8762 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8763 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
8764
8765 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
8766 Variables consolidated here.
8767 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
8768 (Vcursor_in_non_selected_windows): Renamed from
8769 cursor_in_non_selected_windows and changed to Lisp_Object.
8770 (syms_of_xdisp): Define and staticpro new and moved variables.
8771 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
8772 consolidated here. Recognize Qhollow setting.
8773 (set_frame_cursor_types): New function to set frame cursor types
8774 based on the frame parameters.
8775 (get_window_cursor_type): New function to calculate new cursor
8776 type and width for the specified window. Based on duplicated
8777 code consolidated here.
8778 Enhancements: cursor-in-non-selected-windows may be a cursor type,
8779 check buffer-local alternate-cursor-type and blink-cursor-alist
8780 before using built-in blink off methods.
8781
8782 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
8783
8784 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
8785 (get_specified_cursor_type, get_window_cursor_type)
8786 (set_frame_cursor_types): Added prototypes.
8787
8788 * macfns.c (x_specified_cursor_type): Removed.
8789 (x_set_cursor_type): Use set_frame_cursor_types.
8790 (Qbar, Qbox): Removed.
8791 (syms_of_macfns): Don't intern or staticpro them.
8792
8793 * macterm.c (x_specified_cursor_type): Remove prototype.
8794 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8795 (x_display_and_set_cursor): Use get_window_cursor_type.
8796 Remove unused local variables cursor_non_selected, active_cursor.
8797 Redraw cursor if hbar cursor width changes.
8798 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
8799
8800 * macterm.h (enum text_cursor_kinds): Removed.
8801 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
8802 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8803 (FRAME_DESIRED_CURSOR): Macro removed.
8804
8805 * w32fns.c (Vblink_cursor_alist): Removed.
8806 (Qbar, Qhbar, Qbox, Qhollow): Removed.
8807 (syms_of_w32fns): Don't intern, staticpro, or define them.
8808 (x_specified_cursor_type): Removed.
8809 (x_set_cursor_type): Use set_frame_cursor_types.
8810
8811 * w32term.c (x_specified_cursor_type): Remove prototype.
8812 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8813 (x_display_and_set_cursor): Use get_window_cursor_type.
8814 Remove unused local variables cursor_off_state.
8815 Redraw cursor if hbar cursor width changes.
8816 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
8817
8818 * w32term.h (enum text_cursor_kinds): Removed.
8819 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
8820 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8821 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8822 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
8823 (struct w32_display_info) <x_highlight_frame>: Renamed member from
8824 w32_highlight_frame.
8825
8826 * xfns.c (Vblink_cursor_alist): Removed.
8827 (Qbar, Qhbar, Qbox, Qhollow): Removed.
8828 (syms_of_xfns): Don't intern, staticpro, or define them.
8829 (x_specified_cursor_type): Removed.
8830 (x_set_cursor_type): Use set_frame_cursor_types.
8831
8832 * xterm.c (x_specified_cursor_type): Remove prototype.
8833 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8834 (x_display_and_set_cursor): Use get_window_cursor_type.
8835 Remove unused local variables cursor_off_state.
8836 Redraw cursor if hbar cursor width changes.
8837
8838 * xterm.h (enum text_cursor_kinds): Removed.
8839 (struct output_x) <current_cursor, desired_cursor, cursor_width>
8840 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8841 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8842 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
8843 (x_specified_cursor_type): Remove prototype.
8844
88452002-08-28 Richard M. Stallman <rms@gnu.org>
8846
8847 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
8848 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
8849 (Vblink_cursor_alist): New variable.
8850 (syms_of_w32fns): Initialize and defvar it.
8851 (x_specified_cursor_type): Recognize Qbox for filled box.
8852 Exceptions are hollow boxes.
8853 (Qbox, Qhollow): New variables.
8854 (syms_of_w32fns): Initialize and staticpro them.
8855
8856 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8857 New macros.
8858 (struct w32_output): New fields blink_off_cursor,
8859 blink_off_cursor_width.
8860 (FRAME_CURSOR_WIDTH): New macro.
8861
8862 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8863 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8864
8865 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
8866 for bar cursor.
8867
8868 * w32term.c (expose_overlaps): New function.
8869 (expose_window): Use it to fix the display of overlapping rows.
8870
88712002-08-28 Simon Josefsson <jas@extundo.com>
8872
8873 * xfns.c (Fx_open_connection): Improve help when X connection
8874 fails, xhost is insecure and xauth is better.
8875
88762002-08-28 Juanma Barranquero <lektu@terra.es>
8877
8878 * makefile.w32-in: Add missing dependencies on w32term.h and
8879 composite.h.
8880
8881 * emacs.c (USAGE1): Add missing newline.
8882
88832002-08-27 Andrew Choi <akochoi@shaw.ca>
8884
8885 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
8886
88872002-08-27 Richard M. Stallman <rms@gnu.org>
8888
8889 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
8890 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
8891 (Vblink_cursor_alist): New variable.
8892 (syms_of_xfns): Initialize and defvar it.
8893 (x_specified_cursor_type): Recognize Qbox for filled box.
8894 Exceptions are hollow boxes.
8895 (Qbox, Qhollow): New variables.
8896 (syms_of_xfns): Initialize and staticpro them.
8897
8898 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8899 New macros.
8900 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
8901
8902 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8903 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8904
8905 * emacs.c (main): Handle --script.
8906 (USAGE1): Mention --script.
8907 (standard_args): Define sort order for --script.
8908
89092002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
8910
8911 * xdisp.c (redisplay_updating_p): Variable removed.
8912 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
8913 New variables.
8914 (init_iterator): Don't free realized faces if
8915 inhibit_free_realized_faces is set.
8916 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
8917 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
8918 initialize Qinhibit_free_realized_faces.
8919
8920 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
8921 when iterator is adding glyphs to a glyph matrix.
8922
89232002-08-27 Kenichi Handa <handa@etl.go.jp>
8924
8925 * xdisp.c (get_next_display_element): In unibyte case, don't use
8926 octal form for such eight-bit characters that can be converted to
8927 multibyte char.
8928
89292002-08-26 Kim F. Storm <storm@cua.dk>
8930
8931 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
8932 and background colors. From Joe Buehler (tiny change).
8933
89342002-08-26 Miles Bader <miles@gnu.org>
8935
8936 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
8937
89382002-08-25 Andrew Choi <akochoi@shaw.ca>
8939
8940 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
8941 defined instead of MAC_OSX.
8942
8943 * s/darwin.h (select): Define select to sys_select only if
8944 HAVE_CARBON is defined.
8945 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
8946 (DONT_REOPEN_PTY): #def it.
8947
8948 * macterm.c (XTread_socket): Remove code to call
8949 SendEventToEventTarget for keys with command modifiers when
8950 mac_command_key_is_meta is nil.
8951
89522002-08-24 Andreas Schwab <schwab@suse.de>
8953
8954 * eval.c (Fdefvar): Fix last change.
8955
89562002-08-23 Richard M. Stallman <rms@gnu.org>
8957
8958 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
8959 Record variables in load history as (defvar . VAR).
8960 (Fdefvar): Don't record in load history if no initial value.
8961 (Qdefvar): New variable.
8962 (syms_of_eval): Init and staticpro it.
8963
8964 * lread.c (syms_of_lread): Doc fix.
8965 (build_load_history): Use Fmember to see if a definition
8966 is already in the Vload_history element.
8967
8968 * process.c (Fstart_process): Remove /: from program name.
8969
8970 * emacs.c (decode_env_path): Don't add /: if file name handler
8971 has a `safe-magic' property.
8972
8973 * callproc.c (Fcall_process): Remove /: from program name.
8974
89752002-08-23 Stefan Monnier <monnier@cs.yale.edu>
8976
8977 * regex.c (PATFETCH): Remove the translating fetch.
8978 (PATFETCH_RAW): Rename to PATFETCH.
8979 (set_image_of_range): New fun.
8980 (SET_RANGE_TABLE_WORK_AREA): Use it.
8981 (regex_compile): Don't translate the pattern chars so eagerly.
8982 Only do it when inserting an `exactn' bytecode or when handling
8983 a char-range.
8984 (mutually_exclusive_p): Avoid empty statement.
8985
89862002-08-22 Kim F. Storm <storm@cua.dk>
8987
8988 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
8989 end up on a partially visible line; this reverts a specific part
8990 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
8991 display error which has been reported several times now.
8992 However it introduces the problem that changes was supposed to fix.
8993 See my comments in the source if you want to debug this further.
8994
89952002-08-20 Kenichi Handa <handa@etl.go.jp>
8996
8997 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
8998
89992002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
9000
9001 * msdos.c (croak): Add `void' to definition.
9002
c1380aa6 9003 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
9004 Don't define them, they are defined in msdos.c.
9005
9006 * mem-limits.h [MSDOS]: Declare etext.
9007
9008 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
9009 `const' since CORRECT_DIR_SEPS modifies its target.
9010
90112002-08-19 Kim F. Storm <storm@cua.dk>
9012
2fb0ce67 9013 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
9014 KEEP-RECORD to avoid clearing lossage when we just want to clear
9015 the current key sequence (kmacro needs this).
9016
90172002-08-19 Kenichi Handa <handa@localhost>
9018
9019 * composite.c (run_composition_function): Call FUNC if it is fboundp.
9020
9021 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
9022 cons, return Qnil.
9023
90242002-08-17 Richard M. Stallman <rms@gnu.org>
9025
9026 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
9027
9028 * sysdep.c [!VMS]: Include sys/files.h.
9029
9030 * editfns.c (save_restriction_restore): Defend from unchained marker.
9031
9032 * buffer.c (overlays_at): Handle extending vec uniformly.
9033 (overlays_in): Handle extending vec from length 0 as in overlays_at.
9034
90352002-08-15 Andrew Choi <akochoi@shaw.ca>
9036
9037 * mac.c (init_mac_osx_environment): New function.
9038
9039 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
9040
90412002-08-14 Kim F. Storm <storm@cua.dk>
9042
9043 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
9044 executing macro before appending to it (when used from Lisp).
9045 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
9046 which is called prior to each iteration of macro (for kmacro.el).
9047 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
9048
9049 * lisp.h (Fexecute_kbd_macro): Update prototype.
9050
9051 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
9052
90532002-08-14 Kenichi Handa <handa@etl.go.jp>
9054
9055 * xselect.c (QUTF8_STRING): New variable.
9056 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
9057 (x_atom_to_symbol): Likewise.
9058 (x_get_local_selection): New argument local_request. If it is
9059 nonzero, call handler_fn with the second arg nil.
9060 (x_handle_selection_request): Call x_get_local_selection with
9061 local_request 0.
9062 (lisp_data_to_selection_data): Don't encode the string here.
9063 (Fx_get_selection_internal): Call x_get_local_selection with
9064 local_request 1.
9065 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
9066
9067 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
9068
9069 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
9070
90712002-08-13 Richard M. Stallman <rms@gnu.org>
9072
9073 * minibuf.c (Fminibufferp): New function.
9074 (syms_of_minibuf): Defsubr it.
9075 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
9076
90772002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
9078
9079 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
9080
90812002-08-12 Richard M. Stallman <rms@gnu.org>
9082
9083 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
9084 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
9085 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
9086 already.
9087
9088 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
9089
90902002-08-11 Andrew Choi <akochoi@shaw.ca>
9091
9092 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
9093 (Vmac_pass_command_to_system): New variable.
9094 (Vmac_pass_control_to_system): New variable.
9095 (do_mouse_moved): Check wp with is_emacs_window.
9096 (XTread_socket): Check window_ptr with is_emacs_window.
9097 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
9098 events back to Mac Toolbox for processing, depending on values of
9099 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
9100 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
9101 Vmac_pass_control_to_system.
9102
91032002-08-10 Kenichi Handa <handa@etl.go.jp>
9104
9105 * coding.c (unencodable_char_position): New function.
9106 (Funencodable_char_position): New function.
9107 (syms_of_coding): Defsubr Funencodable_char_position.
9108
91092002-08-10 Andrew Choi <akochoi@shaw.ca>
9110
9111 * mac.c (sys_select) [MAC_OSX]: New function.
9112
9113 * macterm.c (MakeMeTheFrontProcess): New function.
9114 (mac_initialize): Call MakeMeTheFrontProcess.
9115
9116 * s/darwin.h: Define select to sys_select.
9117
91182002-08-09 Richard M. Stallman <rms@gnu.org>
9119
9120 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
9121
91222002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
9123
9124 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
9125 end of the buffer.
9126
91272002-08-08 Ken Raeburn <raeburn@mit.edu>
9128
9129 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
9130
9131 * puresize.h (BASE_PURESIZE): Increase to 910000.
9132
91332002-08-08 Kenichi Handa <handa@etl.go.jp>
9134
9135 * coding.c (Ffind_operation_coding_system): For write-region, if
9136 VISIT is a filename, make it the target.
9137
91382002-08-07 Richard M. Stallman <rms@gnu.org>
9139
9140 * alloc.c (mark_object): Detect long lists for debugging.
9141 (mark_object_loop_halt): New variable.
9142
9143 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
9144
9145 * data.c (Fmake_variable_frame_local): Doc fix.
9146
91472002-08-01 David Ponce <david@dponce.com>
9148
9149 * w32menu.c (local_heap, local_alloc, local_free): New macros.
9150 (malloc_widget_value, free_widget_value)
9151 (w32_free_submenu_strings): Use them.
9152
9153 (push_submenu_start, push_submenu_end, push_left_right_boundary)
9154 (push_menu_pane, push_menu_item, single_keymap_panes)
9155 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
9156 (single_submenu, set_frame_menubar)
9157 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
9158
9159 (Fx_popup_menu): Don't show pop up menu until preceding one is
9160 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
9161
9162 * w32menu.c: Changes adapted from xmenu.c
9163 (set_frame_menubar): First parse all submenus,
9164 then make widget_value trees from them.
9165 Don't allocate any widget_value objects
9166 until we are done with the parsing.
9167 (parse_single_submenu): New function.
9168 (digest_single_submenu): New function.
9169 (single_submenu): Function deleted, replaced by those two.
9170
91712002-08-04 Andrew Choi <akochoi@shaw.ca>
9172
9173 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
9174 returns a valid window pointer before proceeding for keyDown and
9175 autoKey events.
9176
91772002-08-03 Andrew Choi <akochoi@shaw.ca>
9178
9179 * macterm.c (USE_CARBON_EVENTS): New macro.
9180 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
9181 (x_iconify_frame): Call CollapseWindow.
9182 (Vmac_reverse_ctrl_meta): New variable.
9183 (Vmac_wheel_button_is_mouse_2): New variable.
9184 (init_mac_drag_n_drop): New function.
9185 (mac_do_receive_drag): New function.
9186 (mac_handle_service_event): New function.
9187 (init_service_handler): New function.
9188 (mac_to_emacs_modifiers): New function.
9189 (mac_event_to_emacs_modifiers): New function.
9190 (mac_get_mouse_btn): New function.
9191 (mac_convert_event_ref): New function.
9192 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
9193 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
9194 mac_get_mouse_btn.
9195 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
9196
9197 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
9198 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
9199 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
9200 TOOL_BAR_EVENT for MAC_OS as well.
9201 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
9202 as for WINDOWS_NT.
9203 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
9204
9205 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
9206
92072002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
9208
9209 * xdisp.c (forward_to_next_line_start): Fix a condition that
9210 lead to a newline being skipped.
9211
92122002-08-02 Andrew Choi <akochoi@shaw.ca>
9213
9214 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
9215
92162002-08-01 Richard M. Stallman <rms@gnu.org>
9217
9218 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
9219
92202002-07-31 Andrew Choi <akochoi@shaw.ca>
9221
9222 * macfns.c: #undef init_process before #define-ing it.
9223
9224 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
9225 HAVE_CARBON is defined.
9226
92272002-07-31 Richard M. Stallman <rms@gnu.org>
9228
9229 * xmenu.c (set_frame_menubar): First parse all submenus,
9230 then make widget_value trees from them.
9231 Don't allocate any widget_value objects
9232 until we are done with the parsing.
9233 (parse_single_submenu): New function.
9234 (digest_single_submenu): New function.
9235 (single_submenu): Function deleted, replaced by those two.
9236
92372002-07-30 Juanma Barranquero <lektu@terra.es>
9238
9239 * w32proc.c (syms_of_ntproc): Fix docstring of
9240 `w32-get-true-file-attributes'.
9241
92422002-07-28 Richard M. Stallman <rms@gnu.org>
9243
9244 * s/hpux8.h (HPUX8): Define this before including hpux.h.
9245 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
9246
9247 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
9248
9249 * keyboard.c (make_lispy_event):
9250 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
9251 Explicitly clear up_modifier in event->modifiers.
9252
92532002-07-27 Richard M. Stallman <rms@gnu.org>
9254
9255 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
9256
9257 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9258 for bar cursor.
9259
92602002-07-26 Kenichi Handa <handa@etl.go.jp>
9261
9262 * coding.c (detect_coding_iso2022): While checking a byte sequence
9263 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
9264 it in the normal loop.
9265
92662002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
9267
9268 * xterm.c (expose_overlaps): New function.
9269 (expose_window): Use it to fix the display of overlapping rows.
9270
9271 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
9272
92732002-07-23 Ken Raeburn <raeburn@gnu.org>
9274
9275 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
9276 since it only depends on XUINT.
9277
9278 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
9279 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
9280 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
9281 Macros deleted.
3947677c 9282
77d1daf2
AS
9283 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
9284 its value over other approaches.
9285 * sysdep.c (start_of_data): Don't define the function if a macro
9286 form has been defined.
8a8e19a3 9287
048addec
JD
92882002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
9289
9290 * xdisp.c (redisplay_updating_p): New variable.
9291 (init_iterator): Don't free realized faces when
9292 redisplay_updating_p is set.
9293 (redisplay_internal): Set redisplay_updating_p while updating
9294 the display.
9295
92962002-07-23 Richard M. Stallman <rms@gnu.org>
9297
9298 * editfns.c (Fmessage): Treat "" like nil.
9299
93002002-07-23 Kenichi Handa <handa@etl.go.jp>
9301
9302 * xdisp.c (face_before_or_after_it_pos):
9303 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
9304
93052002-07-22 Juanma Barranquero <lektu@terra.es>
9306
9307 * callproc.c (init_callproc) [DOS_NT]:
9308 Initialize Vshared_game_score_directory to nil.
9309 (syms_of_callproc) [DOS_NT]: Likewise.
9310
93112002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
9312
9313 * xdisp.c (display_line): Replace an abort with xassert.
9314
93152002-07-21 Richard M. Stallman <rms@gnu.org>
9316
9317 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
9318 and END_UNCHANGED when setting buffer_unchanged_p.
9319 Use current_matrix_up_to_date_p to decide whether to use
9320 try_cursor_movement.
9321
9322 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
9323
9324 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
9325
9326 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
9327 Set to nil if dir does not exist.
9328 (syms_of_callproc): Init unconditionally and simply.
9329
9330 * buffer.c (Fbuffer_list): Doc fix.
9331
93322002-07-21 Ken Raeburn <raeburn@gnu.org>
9333
9334 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
9335
9336 * buffer.c (mmap_realloc): When shrinking, make sure number of
9337 pages to unmap is rounded towards zero.
9338
9339 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
9340 (XSETINT): Deleted.
9341
9342 * m/att3b.h (XINT): Don't define.
9343 (VALBITS, VALMASK, XTYPE): Deleted.
9344 (DATA_SEG_BITS): Define.
9345 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
9346 ARRAY_MARK_FLAG): Deleted.
9347 (DATA_SEG_BITS): Define.
9348 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
9349 (DATA_SEG_BITS): Define.
9350
93512002-07-20 Richard M. Stallman <rms@gnu.org>
9352
9353 * print.c (print_error_message): New args CONTEXT and CALLER.
9354 Calls changed.
9355
9356 * lisp.h (print_error_message): Declare new args.
9357
9358 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
9359 and CONTEXT to print_error_message, don't print them here.
9360 For a Quit, don't use Vsignaling_function.
9361 Call message_log_maybe_newline.
9362
9363 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
9364
93652002-07-20 Kim F. Storm <storm@cua.dk>
9366
9367 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
9368
93692002-07-19 Ken Raeburn <raeburn@gnu.org>
9370
9371 * bytecode.c (struct byte_stack): Pointers into byte string now
9372 point to const.
9373 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
9374 const.
9375 * charset.h (BCOPY_SHORT): Source pointer now points to const.
9376 * coding.c (encode_eol, detect_coding, detect_eol):
9377 (decode_coding, encode_coding, detect_coding_system):
9378 Source strings now treated as const.
9379 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
9380 modify Lisp string contents.
9381 * coding.h (decode_coding, encode_coding, detect_coding,
9382 detect_eol): Declarations updated.
9383 * composite.c (compose_chars_in_text): Treat Lisp string contents
9384 as const.
9385 * dispnew.c (safe_bcopy): Source pointer now points to const.
9386 * lisp.h (STRING_COPYIN): New macro.
9387 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
9388 (internal_with_output_to_temp_buffer): Declarations updated.
9389 * print.c (temp_output_buffer_setup):
9390 (internal_with_output_to_temp_buffer): Buffer name argument is now
9391 pointer to const.
9392 * sound.c (struct sound_device): Function pointer field "write"
9393 buffer argument now points to const.
9394 (vox_write): Buffer argument points to const.
9395 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
9396 contents as const.
9397 * sysdep.c (emacs_write): Buffer pointer now const.
9398 * term.c (encode_terminal_code): Buffer pointer now const.
9399 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
9400 (x_face_list_fonts, x_update_menu_appearance):
9401 (hash_string_case_insensitive): Treat Lisp string contents as const.
9402
94032002-07-19 Juanma Barranquero <lektu@terra.es>
9404
048addec
JD
9405 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
9406
9407 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
9408 (Ffile_name_as_directory): Fix argument name in docstring.
9409 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
9410
94112002-07-18 Richard M. Stallman <rms@gnu.org>
9412
9413 * data.c (Fdefalias): Doc fix.
9414
94152002-07-17 Dave Love <fx@gnu.org>
9416
9417 * intervals.h (text_property_stickiness): Use P_.
9418
9419 * ccl.c: Remove `emacs' conditionals.
9420 (ccl_backtrace_table): Fix size spec.
9421 (ccl_driver): Fix type errors.
9422
94232002-07-16 Ken Raeburn <raeburn@gnu.org>
9424
9425 * alloc.c (xstrdup, make_string, make_unibyte_string)
9426 (make_multibyte_string, build_string): String pointer args now
9427 point to const.
9428 * charset.c (find_charset_in_text, c_string_width):
9429 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
9430 * fileio.c (report_file_error):
9431 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
9432 (count_combining_before, count_combining_after, insert_1_both):
9433 (insert, insert_and_inherit, insert_string):
9434 (insert_before_markers, insert_before_markers_and_inherit):
9435 * lread.c (intern, oblookup, hash_string):
9436 * minibuf.c (temp_echo_area_glyphs):
9437 * search.c (fast_c_string_match_ignore_case):
9438 * sysdep.c (emacs_open, set_file_times):
9439 * xfaces.c (xstricmp):
9440 * xdisp.c (store_frame_title, string_char_and_length):
9441 (message_dolog, message2, message2_nolog, set_message): Likewise.
9442 (set_message_1): Cast message string argument to const pointer.
9443 * editfns.c (general_insert_function): Insertion function now
9444 takes pointer to const for input data.
9445 * charset.h (find_charset_in_text, c_string_width):
9446 (parse_str_as_multibyte): Declarations updated.
9447 * dispextern.h (xstricmp): Declaration updated.
9448 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
9449 (count_size_as_multibyte, count_combining_before):
9450 (count_combining_after, insert_1, insert_1_both, message_dolog):
9451 (insert, insert_and_inherit, insert_before_markers)
9452 (insert_before_markers_and_inherit, set_message, message2):
9453 (message2_dolog, build_string, make_string, make_unibyte_string):
9454 (make_multibyte_string, intern, oblookup, report_file_error):
9455 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
9456 (emacs_open, xstrdup): Declarations updated.
9457 * systime.h (set_file_times): Declaration updated.
9458
9459 * charset.c (find_charset_in_text, lisp_string_width): Use const
9460 for pointer to lisp string data.
9461 * charset.h (FETCH_STRING_CHAR_ADVANCE):
9462 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
9463 * coding.c (Ffind_coding_systems_region_interval):
9464 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
9465 (Fmake_directory_internal, Fdelete_directory):
9466 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
9467 * fontset.c (font_family_registry, fs_query_fontset):
9468 (list_fontsets):
9469 * frame.c (Fframe_parameter):
9470 * keyboard.c (cmd_error_internal):
9471 * keymap.c (Fdescribe_buffer_bindings):
9472 * lread.c (complete_filename_p, openp):
9473 * minibuf.c (Fminibuffer_complete_word):
9474 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
9475 (face_before_or_after_it_pos, next_element_from_string):
9476 (get_overlay_arrow_glyph_row, display_mode_element):
9477 (decode_mode_spec_coding):
9478 * xterm.c (same_x_server): Likewise.
9479
9480 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
9481 settings of non-existent fields.
9482
9483 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
9484 copy a lisp value.
9485
9486 * lread.c (Fintern_soft): Use string macros instead of
9487 Lisp_String fields.
9488 * keyboard.c (echo_char, parse_modifiers_uncached):
9489 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
9490 * textprop.c (validate_interval_range, interval_of): Likewise.
9491
9492 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
9493
9494 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9495 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
9496 XSTRING()->size_byte.
9497
9498 * lisp.h (SDATA, SREF): Produce rvalue.
9499 (SSET): New macro.
9500 * alloc.c (make_event_array): Use SSET for storing into a string.
9501 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
9502 a string.
9503 * casefiddle.c (casify_object): Use SSET.
9504 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9505 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
9506 address of string contents.
9507 * data.c (Faref): Use SDATA.
9508 (Faset): Use SDATA, SSET.
9509 * dired.c (directory_files_internal): Use SSET.
9510 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
9511 (Fread_file_name): Use SREF, SSET.
9512 * fns.c (concat): Use SSET.
9513 (concat, Fdelete): Use SDATA.
9514 * insdel.c (insert_from_string_1): Use SDATA.
9515 * keyboard.c (Fevent_convert_list): Use SREF.
9516 * lread.c (Fload): Use SDATA, SSET.
9517 * macfns.c (validate_x_resource_name): Use SSET.
9518 * process.c (status_message): Use SSET.
9519 * search.c (wordify): Use SDATA.
9520 (Freplace_match): Use SREF.
9521 * w32fns.c (validate_x_resource_name): Use SSET.
9522 * xfns.c (validate_x_resource_name): Use SSET.
9523 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
9524
95252002-07-16 Richard M. Stallman <rms@gnu.org>
9526
9527 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
9528
9529 * xdisp.c (reconsider_clip_changes):
9530 Don't test prevent_redisplay_optimizations_p.
9531 (redisplay_internal): Test prevent_redisplay_optimizations_p
9532 along with clip_changed in some cases.
9533 (try_window_id): Likewise.
9534 (redisplay_window): New local var buffer_unchanged_p.
9535
9536 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
9537
9538 * process.c (create_process): Test USG_SUBTTY_WORKS.
9539 (process_send_signal): Clean up handling of GID.
9540 Detect errors in ioctls meant to set GID.
9541
9542 * window.c (temp_output_buffer_show):
9543 Don't set prevent_redisplay_optimizations_p.
9544
95452002-07-15 Juanma Barranquero <lektu@terra.es>
9546
9547 * eval.c (Fdefvaralias): Add docstring argument.
9548
95492002-07-15 Ken Raeburn <raeburn@gnu.org>
9550
9551 * lisp.h (STRING_INTERVALS): Produce rvalue.
9552 (STRING_SET_INTERVALS): New macro.
9553 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
9554 * fns.c (Fstring_as_multibyte): Likewise.
9555 * intervals.c (balance_possible_root_interval, delete_interval)
9556 (create_root_interval, copy_intervals_to_string): Likewise.
9557 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
9558 instead of 0.
9559
95602002-07-14 Ken Raeburn <raeburn@gnu.org>
9561
9562 * lisp.h (STRING_SET_CHARS): New macro.
9563 (SCHARS, SBYTES): Produce rvalues.
9564 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
9565 * fns.c (concat): Likewise.
9566 * lread.c (read_vector): Likewise.
9567
9568 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
9569 (STRING_SET_UNIBYTE): New macro.
9570 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
9571 length of -1) changed to use STRING_SET_UNIBYTE.
9572 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
9573 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
9574 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
9575 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
9576 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
9577 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
9578 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
9579 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
9580 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
9581 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
9582 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
9583 STRING_BYTES or indirection changed to SCHARS, SBYTES,
9584 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
9585 unchanged for now.
9586
95872002-07-13 Kim F. Storm <storm@cua.dk>
9588
9589 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
9590
95912002-07-12 Richard M. Stallman <rms@gnu.org>
9592
9593 * fileio.c (Fwrite_region): Doc fix.
9594
9595 * print.c (print_error_message): Don't handle Vsignaling_function here.
9596
9597 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
9598 (command_loop_1): Avoid certain actions after memory-full error.
9599
9600 * eval.c (Fsignal): Don't call cancel_hourglass.
9601 For a memory-full error, don't call Vsignal_hook_function
9602 and don't set Vsignaling_function.
9603
9604 * process.c (process_send_signal): Add abort call.
9605
96062002-07-11 Markus Rost <rost@math.ohio-state.edu>
9607
9608 * keymap.c (Fkey_binding): Fix typo.
9609
96102002-07-11 Richard M. Stallman <rms@gnu.org>
9611
9612 * alloc.c (Vmemory_full): New variable.
9613 (Vmemory_signal_data): Renamed from memory_signal_data.
9614 Uses changed.
9615 (syms_of_alloc): Defvar them.
9616 (memory_full, buffer_memory_full): Set Vmemory_full.
9617
9618 * lisp.h (Vmemory_full): Add declaration.
9619 (current_column, indented_beyond_p): Change declaration.
9620
9621 * indent.c (last_known_column): Declare as double, not float.
9622 (current_column, current_column_1, string_display_width)
9623 (position_indentation): Return `double'.
9624 (indented_beyond_p): Arg `column' is `double'. Callers changed.
9625
9626 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
9627 (back_to_previous_visible_line_start)
9628 (reseat_at_next_visible_line_start, next_element_from_buffer):
9629 Use `double', not `float', when calling indented_beyond_p.
9630
9631 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
9632
9633 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
9634
96352002-07-11 Juanma Barranquero <lektu@terra.es>
9636
9637 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
9638 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
9639 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
9640 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
9641 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
9642 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
9643
96442002-07-10 Juanma Barranquero <lektu@terra.es>
9645
d814862a
JB
9646 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
9647 All callers changed.
048addec
JD
9648
96492002-07-09 Stefan Monnier <monnier@cs.yale.edu>
9650
9651 * data.c (Fdefalias): Add an optional `docstring' argument.
9652 (set_internal, Fsetq_default): Use XCAR/XCDR.
9653
9654 * composite.c (HASH_VALUE, HASH_KEY):
9655 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
9656
96572002-07-09 Kenichi Handa <handa@etl.go.jp>
9658
9659 * callproc.c (Fcall_process): Fix previous change.
9660
96612002-07-07 Stefan Monnier <monnier@cs.yale.edu>
9662
9663 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
9664 Add support for hash-tables.
9665 (Ftry_completion): Return t even if the string appears multiple times.
9666
9667 * fns.c (Fnconc): Use XCDR.
9668 (Fprovide): Use CONSP and XCDR.
9669 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9670 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
9671 (Fmake_hash_table): Accept `:size nil'.
9672 (Fmakehash): Delete: moved to subr.el.
9673 (syms_of_fns): Don't defsubr makehash.
9674
9675 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9676 (HASH_TABLE_SIZE): Move from fns.c.
9677
96782002-07-07 Richard M. Stallman <rms@gnu.org>
9679
9680 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
9681 Instead just return 0 when there is something to be done.
9682 (try_scrolling): If make_cursor_line_fully_visible returns 0,
9683 retry scrolling as if cursor were off the bottom.
9684 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
9685 return CURSOR_MOVEMENT_MUST_SCROLL.
9686 (redisplay_window): If make_cursor_line_fully_visible returns 0,
9687 go to try_to_scroll.
9688
9689 * buffer.c (Fbuffer_local_value): Store current value into its binding
9690 so we get the up-to-date value for the binding that is loaded.
9691
9692 * eval.c (Fdefmacro): Doc fix.
9693
96942002-07-05 Dave Love <fx@gnu.org>
9695
9696 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
9697 correctly.
9698
9699 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
9700 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
9701 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
9702 CCL_LookupCharConstTbl.
9703 (syms_of_ccl): Defvar translation-hash-table-vector.
9704
97052002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9706
9707 * xdisp.c: Remove unused variable `face'.
9708
97092002-07-04 Juanma Barranquero <lektu@terra.es>
9710
9711 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
9712 obsolescence information.
9713
97142002-07-03 Andrew Choi <akochoi@shaw.ca>
9715
9716 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
9717 pattern. Search cache first.
9718 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
9719 for Japanese font.
9720 (XLoadQueryFont): Use it.
9721
97222002-07-02 Richard M. Stallman <rms@gnu.org>
9723
9724 * keymap.c (Fdefine_key): Doc fix.
9725
9726 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
9727
97282002-07-02 Juanma Barranquero <lektu@terra.es>
9729
9730 * keymap.c (syms_of_keymap): Fix typo.
9731
97322002-07-01 Andrew Choi <akochoi@shaw.ca>
9733
9734 * s/darwin.h: Define POSIX_SIGNALS.
9735
9736 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
9737 and FSRefMakePath to convert FSSpec returned with Apple Event to
9738 Posix pathname.
9739 (mac_initialize) [TARGET_API_MAC_CARBON]:
9740 Call init_required_apple_events and disable the `Quit' menu item
9741 provided automatically by the Carbon Toolbox.
9742
97432002-07-01 Dave Love <fx@gnu.org>
9744
9745 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
9746 for K&R.
9747
9748 * xterm.c: Fix prototype for K&R.
9749
9750 * term.c (costs_set): Declare static, non-initialized for pcc.
9751
97522002-07-01 Richard M. Stallman <rms@gnu.org>
9753
9754 * keyboard.c (timer_last_idleness_start_time): New variable.
9755 (timer_start_idle): Set that.
9756 (read_key_sequence): Use that to reset timer_idleness_start_time
9757 to previous value.
9758
9759 * window.c (Frecenter): With arg, set optional_new_start.
9760
9761 * xdisp.c (redisplay_internal): Make optional_new_start really work.
9762
9763 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
9764 buffer for completion.
9765
97662002-06-29 Ken Raeburn <raeburn@gnu.org>
9767
9768 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
9769
97702002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9771
9772 * keyboard.c (readable_filtered_events): New function that filters
9773 FOCUS_IN_EVENT depending on parameter.
9774 (readable_events): Calls readable_filtered_events, not filtering
9775 FOCUS_IN_EVENT.
9776 (get_filtered_input_pending): New function, filtering parameter passed
9777 to readable_filtered_events.
9778 (get_input_pending): Calls get_filtered_input_pending, not filtering
9779 FOCUS_IN_EVENT.
9780 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
9781 FOCUS_IN_EVENT.
9782
9783 * xterm.h (struct x_output): Add focus_state.
9784
9785 * xterm.c (x_focus_changed): New function.
9786 (x_detect_focus_change): New function.
9787 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
9788 EnterNotify and LeaveNotify to track X focus changes.
9789
97902002-06-28 Andreas Schwab <schwab@suse.de>
9791
9792 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
9793
97942002-06-27 Kim F. Storm <storm@cua.dk>
9795
9796 * xdisp.c: (mode_line_string_list, mode_line_string_face)
9797 (mode_line_string_face_prop): New variables.
9798 (store_mode_line_string): New function.
9799 (display_mode_element): Use store_mode_line_string to
9800 add mode-line string elements to mode_line_string_list
9801 when mode_line_string_list is non-nil.
9802 (Fformat_mode_line): Now returns propertized string by
9803 default. New arg NO-PROPS to ignore properties.
9804 (decode_mode_spec): Only add two dashes for %- in propertized
9805 mode-line string.
9806 (syms_of_xdisp): Init and staticpro mode_line_string_list.
9807
98082002-06-27 Stefan Monnier <monnier@cs.yale.edu>
9809
9810 * minibuf.c (minibuffer_completion_contents): Add return type.
9811
98122002-06-27 Juanma Barranquero <lektu@terra.es>
9813
9814 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
9815
98162002-06-26 Juanma Barranquero <lektu@terra.es>
9817
9818 * fileio.c (read_file_name_cleanup): Add missing return.
9819
98202002-06-26 Richard M. Stallman <rms@gnu.org>
9821
9822 * window.c (Frecenter): Don't set force_start flag.
9823
9824 * minibuf.c (do_completion, Fminibuffer_complete_word)
9825 (Fminibuffer_completion_help): Complete just the text before point.
9826 (minibuffer_completion_contents): New function.
9827
9828 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
9829
9830 * frame.c (frames_bury_buffer): Function deleted.
9831
98322002-06-25 Miles Bader <miles@gnu.org>
9833
9834 * callint.c (Fcall_interactively): When checking to see if doprnt hit
9835 the end of callint_message, allow for a terminating '\0'.
9836
98372002-06-24 Juanma Barranquero <lektu@terra.es>
9838
9839 * w32select.c: Include composite.h
9840
9841 * w16select.c: Likewise.
9842
98432002-06-24 Kenichi Handa <handa@etl.go.jp>
9844
9845 * callproc.c (Fcall_process): If code detection is necessary,
9846 call detect_coding directly here.
9847
9848 * coding.c (detect_eol): Preserve coding->cmp_data.
9849
9850 * w16select.c (Fw16_get_clipboard_data):
9851 * w32fns.c (w32_to_x_font):
9852 * w32select.c (Fw32_get_clipboard_data):
9853 * xselect.c (selection_data_to_lisp_data):
9854 * xterm.c (XTread_socket): Disable composition handling.
9855
98562002-06-24 Stefan Monnier <monnier@cs.yale.edu>
9857
9858 * print.c (temp_output_buffer_setup): Kill all local variables.
9859
98602002-06-22 Stefan Monnier <monnier@cs.yale.edu>
9861
9862 * lread.c (Fread): Remove redundant and imprecise declaration.
9863
9864 * xfns.c (check_x_display_info): Use check_x_frame.
9865
9866 * .gdbinit (xprintsym): Use the new `xname' field.
9867 (xsymbol): Use it.
9868
98692002-06-22 Jason Rumney <jasonr@gnu.org>
9870
9871 * w32fns.c (file_dialog_callback): New function.
9872 (Fx_file_dialog): Allow selecting directories as well as files.
9873
98742002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9875
9876 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 9877 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
9878
98792002-06-17 Andrew Choi <akochoi@shaw.ca>
9880
9881 * macterm.c (mac_scroll_area): Set foreground and backcolor to
9882 black and white before scrolling. Restore frame background and
9883 foreground color after scrolling.
9884 (do_window_update): Call XClearWindow before calling expose_frame.
9885 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
9886 FRAME_FOREGROUND_PIXEL of frame.
9887
9888 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9889 test Mac command key as <ALT> key.
9890
98912002-06-17 Stefan Monnier <monnier@cs.yale.edu>
9892
9893 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
9894
9895 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
9896 Lookup keys in function-key-map immediately so that key-translation-map
9897 can be applied earlier.
9898 Remove function_key_possible and key_translation_possible, replaced
9899 by checking `keytran_start < t'.
9900
9901 * .gdbinit (xsymbol): Use the new `xname' field.
9902
99032002-06-17 Andrew Choi <akochoi@shaw.ca>
9904
9905 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9906 test Mac command key as <ALT> key.
9907
9908 * mac.c (do_applescript): Call initialize_applescript if necessary
9909 when first called. Dispose of result_desc only when there is no error.
9910 (Fdo_applescript): Use %d format specifier instead of %ld.
9911
99122002-06-16 Andrew Choi <akochoi@shaw.ca>
9913
9914 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
9915 of FrontWindow for cases keyDown and autoKey.
9916
9917 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
9918 Vdefault_fontset to Monaco with mac-roman coding.
9919
9920 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
9921 init_process before and after inclusion of Carbon/Carbon.h, resp.
9922
9923 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
9924 cursor_gc.
9925 (add_font_name_table_entry): New function.
9926 (init_font_name_table): Use add_font_name_table_entry; add italic,
9927 bold, and bold-italic entries for truetype fonts.
9928
9929 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
9930 for Mac too.
9931 (try_font_list) [MAC_OS]: If no font matches given registry, try
9932 fonts with any registry matching face_family.
9933 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
9934
9935 * s/darwin.h: If autoconf detects the Ncurses library, define
9936 LIBS_TERMCAP to -lncurses to use it.
9937
99382002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
9939
9940 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
9941
99422002-06-15 Richard M. Stallman <rms@gnu.org>
9943
9944 * window.c (Fset_window_configuration): Explicitly preserve
9945 the point value that new_current_buffer had at the start.
9946
99472002-06-14 Juanma Barranquero <lektu@terra.es>
9948
9949 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
9950 Fix typos.
9951
99522002-06-14 Kim F. Storm <storm@cua.dk>
9953
9954 * insdel.c (insert_1_both, insert_from_string_1)
9955 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
9956 insert happened in the end_unchanged region. Otherwise, the
9957 redisplay may be confused and duplicate the last line in the
9958 buffer [seen after save-buffer when require-final-newline==t].
9959
99602002-06-13 Jason Rumney <jasonr@gnu.org>
9961
9962 * w32.c (init_environment): Remove EMACSLOCKDIR.
9963 (stat): Swap _S_IFDIR and _S_IFREG.
9964
99652002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9966
9967 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
9968 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
9969 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
9970 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
9971 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
9972 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
9973 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
9974 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
9975 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
9976 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
9977 SELECTION_REQUEST_EVENT, selection_clear_event to
9978 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
9979 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
9980 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
9981 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
9982 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
9983 no_event to NO_EVENT.
9984
99852002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9986
9987 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
9988
99892002-06-12 Stefan Monnier <monnier@cs.yale.edu>
9990
9991 * intervals.c (textget): Don't forget to `return'.
9992 (lookup_char_property): Use XCAR/XCDR.
9993
99942002-06-12 Juanma Barranquero <lektu@terra.es>
9995
9996 * xdisp.c (Fformat_mode_line): Fix typo.
9997
99982002-06-12 Kim F. Storm <storm@cua.dk>
9999
10000 * xdisp.c (Fformat_mode_line): New function.
10001 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
10002 (store_frame_title_char, store_frame_title): Use unconditionally.
10003 (init_xdisp): Defsubr Fformat_mode_line.
10004 Initialize frame_title_buf etc. unconditionally.
10005
100062002-06-11 Stefan Monnier <monnier@cs.yale.edu>
10007
10008 * keyboard.c (read_key_sequence):
10009 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
10010 things through those maps after downcasing events.
10011 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
10012 applies after function-key-map.
10013 Make sure that keytran can be done in the middle in the sequence.
10014 Be careful not to throw away events past the one we downcase.
10015
10016 * lread.c (read_integer): Remove unused var `tem'.
10017 (read1): Fix int/Lisp_Object mixup.
10018
10019 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
10020
100212002-06-11 Richard M. Stallman <rms@gnu.org>
10022
10023 * keyboard.c (readable_events): Ignore any number of
10024 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
10025
100262002-06-09 Miles Bader <miles@gnu.org>
10027
10028 * xfaces.c (Ftty_supports_face_attributes_p): New function.
10029 (parse_rgb_list, tty_lookup_color): New functions.
10030 (tty_defined_color): Use `tty_lookup_color' to do all the work.
10031 (color_distance, Fcolor_distance): New functions.
10032 (TTY_SAME_COLOR_THRESHOLD): New macro.
10033 (Qtty_color_standard_values): New variable.
10034 (syms_of_xfaces): Initialize new vars & functions.
10035
100362002-06-08 Colin Walters <walters@verbum.org>
10037
10038 * textprop.c (Vchar_property_alias_alist): New variable.
10039 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
10040
10041 * intervals.c (lookup_char_property): New function for looking up
10042 overlay and text properties, created from textget.
10043 (textget): Use it.
10044
10045 * intervals.h (lookup_char_property): Declare.
10046 (Vchar_property_alias_alist): Declare.
10047
10048 * buffer.c (Foverlay_get): Use lookup_char_property.
10049
100502002-06-07 Sam Steingold <sds@gnu.org>
10051
10052 * xselect.c (lisp_data_to_selection_data): Fix last change:
10053 *data_ret is not a Lisp string, while unibyte_string is.
10054
100552002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
10056
10057 * xselect.c (lisp_data_to_selection_data): Fix last change:
10058 set size_ret.
10059
100602002-06-07 Andreas Schwab <schwab@suse.de>
10061
10062 * m/amdx86-64.h: New file.
10063
100642002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
10065
10066 * fns.c (Fstring_make_unibyte): Doc fix.
10067
10068 * xselect.c (lisp_data_to_selection_data): If the requested type
10069 is STRING, call string_make_unibyte to encode the selected text
10070 as a string.
10071
10072 * window.c (Fset_window_hscroll): Doc fix.
10073
100742002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10075
10076 * fileio.c (choose_write_coding_system):
10077 Call select-safe-coding-system properly.
10078
100792002-06-03 Richard M. Stallman <rms@gnu.org>
10080
10081 * xdisp.c (message_with_string): Error if STRING is not a string.
10082
10083 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
10084
10085 * fileio.c (choose_write_coding_system): Pass FILE arg to
10086 Vselect_safe_coding_system_function.
10087
100882002-06-03 Ken Raeburn <raeburn@gnu.org>
10089
10090 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
10091
100922002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
10093
10094 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
10095 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
10096 * keymap.c (describe_command): Likewise.
10097 * minibuf.c (read_minibuf): Likewise.
10098
10099 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
10100 Cast `current_column' return value to int.
10101 (back_to_previous_visible_line_start)
10102 (reseat_at_next_visible_line_start, next_element_from_buffer):
10103 Cast `indented_beyond_p' 3rd arg to float.
10104
10105 * indent.c (last_known_column): Now a float.
10106 (current_column_1, position_indentation, current_column)
10107 (string_display_width): Return float.
10108 (Fcurrent_column): Cast `current_column' return value to int.
10109 (Fcurrent_indentation): Cast `position_indentation' retval to int.
10110 (indented_beyond_p): Third arg now a float.
10111 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
10112
10113 * lisp.h (current_column): Now returns float.
10114 (indented_beyond_p): 3rd arg now a float.
10115
101162002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
10117
10118 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
10119 is Qcompound_text_with_extensions.
10120
10121 * xselect.c (lisp_data_to_selection_data): Always set selection
10122 type as string if x_encode_text returns streingp non-NULL.
10123
10124 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
10125
101262002-05-30 Richard M. Stallman <rms@gnu.org>
10127
10128 * window.c (Fset_window_configuration): Correct the handling
10129 of point in current buffer, to work with multiple windows.
10130
101312002-05-29 Colin Walters <walters@verbum.org>
10132
10133 * lread.c (Fread_from_string): Don't depend on order of evaluation
10134 for C function parameters.
10135
101362002-05-28 Richard M. Stallman <rms@gnu.org>
10137
10138 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
10139 way for blinked-off state and for a nonselected window.
10140
10141 * window.c (window_scroll_pixel_based): Don't call Fbolp;
10142 instead, see if the new start pos is at beginning of line.
10143
10144 * fileio.c (Fwrite_region): If START is a string, don't
10145 make any annotations.
10146
10147 * eval.c (syms_of_eval): Doc fix.
10148
101492002-05-28 Colin Walters <walters@debian.org>
10150
10151 * emacs.c (USAGE1): Add --no-splash.
10152 (standard_args): Ditto.
10153
101542002-05-28 Colin Walters <walters@gnu.org>
10155
10156 * lread.c (readchar_count): New variable.
10157 (readchar): Increment it.
10158 (unreadchar): Decrement it.
10159 (read_multibyte): Decrement it.
10160 (Vread_with_symbol_positions): New variable.
10161 (Vread_symbol_positions_list): New variable.
10162 (read_internal_start): New function, created from Fread and
10163 Fread_from_string. Handle Vread_symbol_positions_list and
10164 Vread_with_symbol_positions.
10165 (readevalloop, Fread, Fread_from_string): Use it.
10166 (read1): Use readchar_count to add symbol positions to
10167 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
10168 (syms_of_lread): DEFVAR_LISP and initialize them.
10169
10170 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
10171 (substitute_object_recurse, substitute_object_in_subtree)
10172 (substitute_in_interval): Prototype.
10173 (read_multibyte): Return c if it's less than zero.
10174
101752002-05-28 Kim F. Storm <storm@cua.dk>
10176
10177 * fileio.c (Fread_file_name_internal): Added brute-force
10178 speed up for using predicate file-directory-p.
10179
101802002-05-28 Kim F. Storm <storm@cua.dk>
10181
10182 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
10183 New variables.
10184 (syms_of_fileio): DEFVAR_LISP them.
10185 (read_file_name_cleanup): New unwind function.
10186 (Fread_file_name_internal): Only return completions satifying
10187 Vread_file_name_predicate. Temporarily unwind protect and rebind
10188 default-directory while checking completions against the predicate.
10189 (Fread_file_name): Added PREDICATE argument. Specbind it to
10190 Vread_file_name_predicate during completion.
10191 Call Vread_file_name_function to read the file name if non-nil.
10192
10193 * lisp.h (Fread_file_name): Now has 6 args.
10194
10195 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
10196 predicate for Fread_file_name when reading directory name.
10197 Supply Qnil for predicate in other calls to Fread_file_name.
10198
101992002-05-26 Miles Bader <miles@gnu.org>
10200
10201 * term.c (tty_capable_p): New function.
10202 * dispextern.h (tty_capable_p): New function declaration.
10203 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
10204 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
10205
102062002-05-23 Stefan Monnier <monnier@cs.yale.edu>
10207
10208 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
10209 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
10210 (Vwrite_region_annotate_functions): Docstring fix.
10211
102122002-05-23 Kim F. Storm <storm@cua.dk>
10213
10214 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
10215 phys_cursor's hpos is overwritten. This is still not completely
10216 correct, as it doesn't really make sense to use hpos at all to
10217 get the cursor glyph (as that is relative to the width of the
10218 characters on the line, which may have changed during the update).
10219
102202002-05-22 Jason Rumney <jasonr@gnu.org>
10221
10222 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
10223 Lisp_Object.
10224 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
10225 Use modified enumfont_t struct.
10226
10227 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10228
10229 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
10230 Handle the `hbar' cursor type.
10231 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10232
10233 * w32fns.c (Qhbar): New variable.
10234 (x_specified_cursor_type): Use it.
10235
102362002-05-21 Ken Raeburn <raeburn@gnu.org>
10237
10238 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
10239 now, when the address is needed.
10240
102412002-05-21 Colin Walters <walters@gnu.org>
10242
10243 * Makefile.in (shortlisp): Add font-core.el.
10244
102452002-05-20 Richard M. Stallman <rms@gnu.org>
10246
10247 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
10248
10249 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
10250 equivalent key bindings here.
10251
102522002-05-20 Ken Raeburn <raeburn@gnu.org>
10253
10254 Change symbol structure to contain a lisp object for the symbol
10255 name:
10256 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
10257 object field named "xname".
10258 (SYMBOL_NAME): New macro.
10259 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
10260 name field.
10261 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
10262 (mark_object, gc_sweep): Use symbol xname field and XSTRING
10263 instead of name field.
10264 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
10265 SYMBOL_NAME instead of XSYMBOL and name field.
10266 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
10267 instead of XSYMBOL and name field.
10268 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
10269 and SYMBOL_NAME instead of XSYMBOL and name field.
10270 * coding.c (Fread_coding_system, code_convert_region1)
10271 (code_convert_string1, code_convert_string_norecord)
10272 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
10273 XSYMBOL and name field.
10274 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
10275 (Fmake_variable_buffer_local, Fmake_local_variable)
10276 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
10277 of XSYMBOL and name field.
10278 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
10279 XSYMBOL and name field.
10280 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
10281 instead of XSYMBOL and name field.
10282 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
10283 XSYMBOL and name field.
10284 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
10285 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10286 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
10287 instead of XSYMBOL and name field.
10288 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
10289 (parse_modifiers, apply_modifiers, Fevent_convert_list)
10290 (parse_solitary_modifier, Fexecute_extended_command):
10291 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10292 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
10293 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
10294 of XSYMBOL and name field.
10295 (describe_command, describe_translation): Use SYMBOL_NAME and
10296 assignment instead of XSYMBOL and name field and XSETSTRING.
10297 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
10298 instead of XSYMBOL and name field.
10299 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
10300 name field and XSETSTRING.
10301 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10302 of XSYMBOL and name field.
10303 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
10304 assignment instead of XSYMBOL and name field and XSETSTRING.
10305 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
10306 XSTRING instead of XSYMBOL and name field.
10307 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
10308 and XSTRING instead of XSYMBOL and name field.
10309 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
10310 and XSTRING instead of XSYMBOL and name field.
10311 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
10312 XSTRING instead of XSYMBOL and name field.
10313 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10314 of XSYMBOL and name field.
10315 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
10316 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10317
103182002-05-19 Ken Raeburn <raeburn@gnu.org>
10319
10320 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
10321 and XCDR real rvalues in most configurations.
10322
10323 * buffer.c (fix_overlays_in_range, fix_overlays_before):
10324 Don't take the address of the cdr part of a cons cell; instead, track
10325 the parent cell and call XSETCDR, or set the variable for the head
10326 of the list if we haven't started down the list yet.
10327
103282002-05-19 Richard M. Stallman <rms@gnu.org>
10329
10330 * doc.c (reread_doc_file): Don't ask for confirmation.
10331
103322002-05-18 Jason Rumney <jasonr@gnu.org>
10333
10334 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
10335 (xbm_load_image): Use it.
10336 (xbm_load): Ditto.
10337 (xbm_read_bitmap_data): Reverted to xfns.c version.
10338 From David Ponce <david@dponce.com>.
10339
103402002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
10341
10342 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
10343 2.02 and later.
10344
103452002-05-16 Juanma Barranquero <lektu@terra.es>
10346
10347 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
10348
103492002-05-15 Stefan Monnier <monnier@cs.yale.edu>
10350
10351 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
10352 meaningful test.
10353 (read_char_minibuf_menu_prompt): Fix typo.
10354
103552002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
10356
10357 * eval.c (Fcommandp): Doc fix.
10358
103592002-05-13 Stefan Monnier <monnier@cs.yale.edu>
10360
10361 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
10362 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
10363 (Fset_keymap_parent): Gcpro a bit more.
10364 (access_keymap): Gcpro around meta_map call and around the main loop.
10365 (get_keyelt): Gcpro when following indirect references.
10366 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
10367 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
10368 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
10369 Remove useless ad-hoc remap code.
10370
103712002-05-13 Richard M. Stallman <rms@gnu.org>
10372
10373 * search.c (search_buffer): Give up boyer moore search if inverse
10374 translation change charset_base.
10375
103762002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
10377
10378 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
10379 characters is carried over from the previous block of text, adjust
10380 coding->produced to account for the extra character.
10381
103822002-05-11 Andreas Schwab <schwab@suse.de>
10383
10384 * coding.c (intersection): Keep the elements of the returned list
10385 in the same order as in the first list.
10386
103872002-05-11 Kim F. Storm <storm@cua.dk>
10388
10389 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
10390 only update cmm_size if realloc actually succeeds.
10391 Testing with initial size of 2 elements revealed that using
10392 realloc on GNU/Linux would cause a random trap in xmalloc
10393 later on, so I rewrote the code to use malloc/bcopy/free instead
10394 of realloc.
10395
103962002-05-10 Jason Rumney <jasonr@gnu.org>
10397
10398 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
10399
104002002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
10401
10402 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
10403 parens, to ensure correct evaluation order.
10404
104052002-05-10 Kim F. Storm <storm@cua.dk>
10406
10407 * keymap.c (Vemulation_mode_map_alists): New variable.
10408 (syms_of_keymap): DEFVAR_LISP it.
10409 (current_minor_maps): Process keymap alists in that list before
10410 minor-mode-overriding-map-alist and minor-mode-map-alist.
10411
104122002-05-09 Richard M. Stallman <rms@gnu.org>
10413
10414 * search.c (Freplace_match): Doc fix.
10415
104162002-05-09 Kim F. Storm <storm@cua.dk>
10417
10418 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10419 Enlarge cursor rectangle drawn around image with non-zero relief.
10420
10421 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
10422 Enlarge cursor rectangle drawn around image with non-zero relief.
10423
10424 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10425 Enlarge cursor rectangle drawn around image with non-zero relief.
10426
104272002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
10428
10429 * xselect.c (lisp_data_to_selection_data): Don't set selection
10430 type if comes from the Lisp object's car. If the selection
10431 contains a pure ASCII text, always return QSTRING as its type.
10432
104332002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10434
10435 * mac.c (mac-cut-function): Doc fix.
10436
104372002-05-05 Richard M. Stallman <rms@gnu.org>
10438
10439 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
10440
104412002-05-04 Jason Rumney <jasonr@gnu.org>
10442
10443 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
10444 for event-click-count.
10445
10446 * process.c (init_process): Only add server subfeature if we can
10447 use non-blocking I/O.
10448
104492002-05-04 Andrew Choi <akochoi@shaw.ca>
10450
10451 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
10452 repeatedly.
10453
104542002-05-03 Jason Rumney <jasonr@gnu.org>
10455
10456 * process.c (Fmake_network_process): Only support server sockets
10457 when we can make them non-blocking.
10458
10459 * s/ms-w32.h (HAVE_SELECT): Define.
10460
10461 * w32.h (FILE_NDELAY): New flag.
10462
10463 * w32.c (sys_getpeername, fcntl): New functions.
10464 (_sys_read_ahead): Temporarily block on non-blocking sockets.
10465
10466 * w32proc.c: include sys/file.h.
10467
104682002-05-03 Colin Walters <walters@verbum.org>
10469
10470 * callproc.c (Vgame_score_directory): Renamed to
10471 Vshared_game_score_directory.
10472
104732002-04-30 Richard M. Stallman <rms@gnu.org>
10474
10475 * s/gnu.h [emacs]: Include stdio.h.
10476 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
10477
10478 * eval.c (do_autoload): Error if called while preparing to dump.
10479
10480 * fns.c (Frequire): Error if need to load while preparing to dump.
10481
104822002-04-28 Colin Walters <walters@verbum.org>
10483
10484 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
10485 Default to "~/.emacs.d/games".
10486
104872002-04-29 Stefan Monnier <monnier@cs.yale.edu>
10488
10489 * lread.c (openp): Change arg exec_only to predicate.
10490 (build_load_history): Use XCAR/XCDR.
10491 (Flocate_file_internal): New fun.
10492 (syms_of_lread): Defsubr it.
10493 (Fload): Update call to openp.
10494
10495 * lisp.h (openp): Update prototype.
10496
10497 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
10498 * w32proc.c (sys_spawnve):
10499 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
10500 * w32.c (check_windows_init_file):
10501 * sound.c (Fplay_sound_internal):
10502 * process.c (Fstart_process):
10503 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
10504 * mac.c (run_mac_command):
10505 * emacs.c (init_cmdargs):
10506 * callproc.c (Fcall_process): Update call to openp.
10507
10508 * textprop.c (remove_properties): Don't use XCAR without CONSP.
10509
10510 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
10511
105122002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10513
10514 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
10515 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
10516
105172002-04-28 Richard M. Stallman <rms@gnu.org>
10518
10519 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
10520
10521 * eval.c (Fcommandp): New arg for_call_interactively.
10522 * lisp.h (Fcommandp): Declare new arg.
10523
105242002-04-28 Jason Rumney <jasonr@gnu.org>
10525
10526 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
10527
10528 * w32.c (stat, fstat): Use file index information to generate
10529 inodes for directories where available.
10530
105312002-04-26 Andrew Choi <akochoi@shaw.ca>
10532
10533 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
10534 [HAVE_CARBON]: Include Mac object files.
10535
10536 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
10537 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
10538 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
10539 MAC_OSX, and MAC_OS instead of macintosh.
10540
10541 * editfns.c [MAC_OS8]: Include stdio.h.
10542
10543 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
10544
10545 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
10546 Apple Monaco.
10547
10548 * process.c: Declare QCfamily and QCfilter as extern.
10549 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
10550 calling select.
10551
10552 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
10553
10554 * tparam.c [MAC_OSX]: Don't define BC and UP.
10555
10556 * config.in [HAVE_CARBON]: Add.
10557
10558 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
10559 Move here from mac/src and mac/inc.
10560
10561 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
10562
105632002-04-26 Gerd Moellmann <gerd@gnu.org>
10564
10565 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
10566 Compute phys_cursor_width from the x position returned
10567 by x_draw_glyhs, which is cheaper.
10568 (x_display_and_set_cursor): Compute the buffer-local value
10569 of `cursor-in-non-selected-windows' only when needed.
10570
105712002-04-25 Gerd Moellmann <gerd@gnu.org>
10572
10573 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
10574 cursor on a stretch glyph has a width that depends on
10575 x_stretch_cursor_p.
10576
105772002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10578
10579 * abbrev.c (abbrev-start-location): Doc fix.
10580
10581 * indent.c (Fvertical_motion): Fix last change.
10582
105832002-04-25 Gerd Moellmann <gerd@gnu.org>
10584
10585 * indent.c (Fvertical_motion): Move to the start of the line
10586 containing PT before moving up or down.
10587
105882002-04-24 Gerd Moellmann <gerd@gnu.org>
10589
10590 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
10591 case of writing a whole row, more or less analogous to the case of
10592 writing only parts of a row.
10593
10594 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
10595 0 for NO_CURSOR.
10596
10597 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
10598
105992002-04-23 Colin Walters <walters@verbum.org>
10600
10601 * buffer.c (syms_of_buffer): Doc fix.
10602
106032002-04-23 Gerd Moellmann <gerd@gnu.org>
10604
10605 * xterm.c (notice_overwritten_cursor): Handle the special case
10606 of the cursor being in the first blank non-text line at the
10607 end of a window.
10608
10609 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
10610 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
10611 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
10612 bar cursors only, to make phys_cursor_width contain what its name
10613 suggests.
10614 (notice_overwritten_cursor): Consider the cursor image erased if
10615 the output area intersects the cursor image in y-direction.
10616
106172002-04-23 Simon Marshall <simon@gnu.org>
10618
10619 * xfns.c (x_set_mouse_color): Change default for cross_cursor
10620 to XC_hand2.
10621
106222002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10623
10624 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
10625
106262002-04-22 Kim F. Storm <storm@cua.dk>
10627
10628 * textprop.c (remove_properties): Fixed trap for malformed plist.
10629
106302002-04-22 Richard M. Stallman <rms@gnu.org>
10631
10632 * cmds.c (Fend_of_line): Handle intangible text in mid line.
10633
10634 * window.c (make_window): Initialize height_fixed_p,
10635 last_cursor_off_p, and p->cursor_off_p slots.
10636
106372002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10638
10639 * fns.c (use-dialog-box): Doc fix.
10640
106412002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10642
10643 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
10644 variables `row', `i' and `area'.
10645 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
10646 toolkit library.
10647
106482002-04-19 Stefan Monnier <monnier@cs.yale.edu>
10649
10650 * xfaces.c (clear_font_table): Don't free the default font of
10651 a frame even if it's on another display.
10652 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
10653 that could be Qt.
10654
106552002-04-19 Juanma Barranquero <lektu@terra.es>
10656
10657 * indent.c (Fmove_to_column): Remove unused local variable
10658 `next_boundary_byte'.
10659 (current_column_1): Likewise.
10660
106612002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
10662
10663 * msdos.c (Qhbar): New variable.
10664 (syms_of_msdos): Intern and staticpro it.
10665 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
10666 cursor type.
10667
106682002-04-19 Dave Lambert <dlambert@acm.org>
10669
10670 Theses change implement an underscore-like (`hbar') cursor.
10671
10672 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10673
10674 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
10675 Handle the `hbar' cursor type.
10676 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10677
10678 * xfns.c (Qhbar): New variable.
10679 (syms_of_xfns): Intern and staticpro it.
10680 (x_specified_cursor_type): Handle `hbar' cursor.
10681
10682 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
10683 not defined.
10684
106852002-04-18 Richard M. Stallman <rms@gnu.org>
10686
10687 * textprop.c (remove_properties): New arg LIST allows scanning
10688 either a list or a plist.
10689 (interval_has_some_properties_list): New function, like
10690 interval_has_some_properties using list instead of plist.
10691 All callers changed.
10692 (Fremove_list_of_text_properties): New function.
10693 (syms_of_textprop): Defsubr it.
10694
106952002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
10696
10697 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
10698
106992002-04-17 Juanma Barranquero <lektu@terra.es>
10700
10701 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
10702
107032002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
10704
10705 * window.c (coordinates_in_window): Don't report on margin area
10706 if its width is zero.
10707
107082002-04-16 Jason Rumney <jasonr@gnu.org>
10709
10710 * w32fns.c (Fx_file_dialog): Decode file name before using.
10711
10712 * w32term.c (construct_drag_n_drop): Likewise.
10713
107142002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
10715
10716 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
10717 store load-history in pure space.
10718
10719 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
10720
107212002-04-16 Stefan Monnier <monnier@cs.yale.edu>
10722
10723 * xterm.c (Qlatin_1, Qutf_8): New vars.
10724 (syms_of_xterm): Initialize them.
10725 (XTread_socket): Eliminate incorrect optimization that tried to avoid
10726 decoding the output of X*LookupString.
10727 Always use latin-1 to decode the output of XLookupString.
10728 Try Xutf8LookupString if XmbLookupString failed.
10729
10730 * region-cache.c (new_region_cache): Use BEG.
10731
107322002-04-16 Gerd Moellmann <gerd@gnu.org>
10733
10734 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
10735 configuration files.
10736 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
10737 returns 0.
10738
107392002-04-15 Andreas Schwab <schwab@suse.de>
10740
10741 * config.in: Regenerated using autoheader.
10742
10743 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
10744 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
10745 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
10746 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
10747 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
10748 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
10749 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
10750 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
10751 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
10752 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
10753 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
10754 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
10755 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
10756 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
10757 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
10758 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
10759 STACK_DIRECTION, now set by autoconf.
10760
107612002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10762
10763 * dispnew.c (marginal_area_string): Sort arguments.
10764
10765 * dispextern.h (marginal_area_string): Add prototype.
10766
107672002-04-13 Richard M. Stallman <rms@gnu.org>
10768
10769 * fileio.c (Finsert_file_contents):
10770 Don't call temp_output_buffer_setup--do just part, by hand.
10771
10772 * coding.c (run_pre_post_conversion_on_str):
10773 Don't call temp_output_buffer_setup--do just part, by hand.
10774
10775 * keyboard.c (command_loop_1): Don't call start_hourglass
10776 or cancel_hourglass when executing a macro.
10777
10778 * marker.c (count_markers): New function.
10779
10780 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
10781 grow without limit. Move recently used elements to the front.
10782
107832002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
10784
10785 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
10786
107872002-04-12 Gerd Moellmann <gerd@gnu.org>
10788
10789 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
10790 rows marginal areas.
10791 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
10792 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
10793
10794 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
10795
107962002-04-12 Dave Love <fx@gnu.org>
10797
10798 * dispnew.c (marginal_area_string): New.
10799
10800 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
10801 (Qleft_margin, Qright_margin): Declare.
10802 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
10803
10804 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
10805 note_mode_line_highlight and extended.
10806
10807 * keyboard.c (Qleft_margin, Qright_margin): Declare.
10808 (make_lispy_event): Deal with mouse events in margins.
10809
108102002-04-12 Stefan Monnier <monnier@cs.yale.edu>
10811
10812 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
10813
10814 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
10815 than deactivating the mark if tmm is set to `lambda'.
10816 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
10817 Use a single event for HELP_EVENT.
10818 (Fexecute_extended_command): Save last_point_position.
10819
108202002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10821
10822 * lisp.h (Fpropertize): Add prototype.
10823
10824 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
10825
108262002-04-10 Colin Walters <walters@verbum.org>
10827
10828 * config.in: Add HAVE_SHARED_GAME_DIR.
10829
10830 * callproc.c: (Vgame_score_directory): New variable.
10831 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
10832
108332002-04-10 Richard M. Stallman <rms@gnu.org>
10834
10835 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
10836
108372002-04-09 Stefan Monnier <monnier@cs.yale.edu>
10838
10839 * minibuf.c (read_minibuf): Use empty_string.
10840 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
10841 Short-circuit the search as soon as it "failed".
10842 (Fall_completions): Allow lambda forms and lists of strings for alist.
10843 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
10844 when require_match is nil.
10845 (Ftest_completion): Rename from `test_completion' and export to elisp.
10846 Call the predicate also when alist is a list.
10847 Obey Vcompletion_regexp_list.
10848 (do_completion, Fminibuffer_complete_and_exit): Use it.
10849 (Fassoc_string): Rename from `assoc_for_completion'.
10850 Allow list of strings as well and export to elisp.
10851
108522002-04-08 Stefan Monnier <monnier@cs.yale.edu>
10853
10854 * puresize.h (BASE_PURESIZE): Increase to 900KB.
10855
108562002-04-08 Juanma Barranquero <lektu@terra.es>
10857
10858 * w32.c (sys_accept): Don't hide variable `s'.
10859
108602002-04-05 Gerd Moellmann <gerd@gnu.org>
10861
10862 * callint.c (Fcall_interactively): Use INTEGERP instead of
10863 NUMBERP for checking Vhistory_length.
10864
108652002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10866
10867 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
10868 Doc fix to reflect it.
10869
108702002-04-04 Richard M. Stallman <rms@gnu.org>
10871
10872 * xdisp.c (display_mode_element): New arg RISKY.
10873 Disregard text props found or specified within a variable
10874 that isn't marked risky-local-variable.
10875 (Qrisky_local_variable): New variable.
10876 (syms_of_xdisp): Init and staticpro it.
10877
108782002-04-04 Stefan Monnier <monnier@cs.yale.edu>
10879
10880 * undo.c (record_point): New fun.
10881 (record_delete, record_insert): Use it.
10882
108832002-04-03 Juanma Barranquero <lektu@terra.es>
10884
10885 * doc.c (Fdocumentation): Add missing parentheses.
10886 (Fdocumentation_property): Likewise.
10887
108882002-04-03 Stefan Monnier <monnier@cs.yale.edu>
10889
10890 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
10891 data is 0, just return nil.
10892
108932002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
10894
10895 * msdos.c (syms_of_msdos): Fix last change with
10896 mouse_autoselect_window.
10897
108982002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10899
10900 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
10901 mouse_autoselect_window.
10902
109032002-04-02 Stefan Monnier <monnier@cs.yale.edu>
10904
10905 * keyboard.c (make_lispy_event): Handle unknown keysyms together
10906 with system-specific keysyms. Use it also for unknown function keys.
10907
10908 * doc.c (reread_doc_file): Return whether reload was attempted.
10909 (Fdocumentation, Fdocumentation_property): Don't try to reload
10910 if the doc is 0 and only ask once.
10911
10912 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
10913
109142002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
10915
10916 * keyboard.c (read_char): If the event was Qselect_window,
10917 restore timer_idleness_start_time to its previous value.
10918
10919 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
10920
109212002-04-01 Stefan Monnier <monnier@cs.yale.edu>
10922
10923 * region-cache.c (new_region_cache): Use BEG.
10924
10925 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
10926 Use BEG and BEG_BYTE.
10927
10928 * doc.c (get_doc_string): Return nil if the location is wrong.
10929 (reread_doc_file): New fun.
10930 (Fdocumentation, Fdocumentation_property):
10931 Call it if get_doc_string fails.
10932 (Fsnarf_documentation): Make it work for a dumped Emacs.
10933
10934 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
10935 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
10936
10937 * charset.c (Fstring): Allow 0 arguments.
10938
10939 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
10940
10941 * process.c (DATAGRAM_CONN_P, list_processes_1)
10942 (Fprocess_datagram_address, Fset_process_datagram_address)
10943 (Fset_network_process_options, server_accept_connection):
10944 Fix some int/Lisp_Object confusions (thank you union types).
10945
109462002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10947
10948 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
10949
10950 * w32term.c: Likewise.
10951 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
10952
10953 * keyboard.c (Qselect_window): New symbol.
10954 (head_table): Use it.
10955 (keys_of_keyboard): Bound select-window event to handle-select-window.
10956 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
10957
10958 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
10959 (last_window): New variable.
10960 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
10961 (note_mouse_movement): Remove reimplemented code in #if 0.
10962 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
10963 Emacs windows.
10964
10965 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
10966
109672002-03-31 Gerd Moellmann <gerd@gnu.org>
10968
10969 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
10970 Callers changed.
10971
109722002-03-30 Richard M. Stallman <rms@gnu.org>
10973
10974 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
10975 loop whenever it stops making progress.
10976
10977 * widget.c (set_frame_size): Don't call change_frame_size.
10978
109792002-03-30 Gerd Moellmann <gerd@gnu.org>
10980
10981 * dispnew.c (direct_output_for_insert):
10982 Call mark_window_display_accurate.
10983
109842002-03-29 Jason Rumney <jasonr@gnu.org>
10985
10986 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
10987
109882002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
10989
10990 * Makefile.in (lread.o): Depend on coding.h.
10991
10992 * lread.c (openp, Fload): Encode the file name before passing it
10993 to `stat', `access', and `emacs_open'.
10994 (openp): GCPRO the encoded file name. Don't recompute Lisp
10995 strings unnecessarily.
10996
109972002-03-29 Kim F. Storm <storm@cua.dk>
10998
10999 * fns.c (Flax_plist_put): Doc fix.
11000
110012002-03-28 Miles Bader <miles@gnu.org>
11002
11003 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
11004
110052002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11006
11007 * process.c (set-network-process-options): Add usage.
11008 (make-network-process): Doc fix.
11009
110102002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
11011
11012 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
11013
110142002-03-26 Richard M. Stallman <rms@gnu.org>
11015
11016 * fns.c (Fsubstring_no_properties): New function.
11017 (Flax_plist_get, Flax_plist_put): New functions.
11018 (syms_of_fns): defsubr them.
11019
11020 * xdisp.c (update_menu_bar): Test only update_mode_lines;
11021 don't test or alter w->update_mode_line.
11022
11023 * window.c (Fdisplay_buffer): Doc fix.
11024
110252002-03-24 Richard M. Stallman <rms@gnu.org>
11026
11027 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
11028
110292002-03-24 Gerd Moellmann <gerd@gnu.org>
11030
11031 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
11032 (Fdefmacro): Handle `(declare ...)'.
11033 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
11034 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
11035
110362002-03-24 Jason Rumney <jasonr@gnu.org>
11037
11038 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
11039 (xbm_file_p): Add prototypes.
11040 (xbm_format, xbm_image_p): Sync with xfns.c.
11041 (reflect_byte): New function.
11042 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
11043 (xbm_load_image): Create bitmaps with a depth of 1.
11044 (init_xfns): Enable XBM images.
11045
110462002-03-23 Jason Rumney <jasonr@gnu.org>
11047
11048 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
11049 correctly. Do not pass up_modifier to keyboard buffer.
11050
11051 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
11052
110532002-03-22 Stefan Monnier <monnier@cs.yale.edu>
11054
11055 * Makefile.in (bootstrapclean): New target.
11056 (bootstrap-temacs, bootstrap-doc): Remove.
11057 (bootstrap-emacs): Use a bog-standard `temacs'.
11058 Don't bother to build a DOC file.
11059
11060 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
11061
11062 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
11063 in temacs even if !CANNOT_DUMP.
11064 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
11065
11066 * alloc.c (check_pure_size): Only output a warning.
11067
110682002-03-22 Jason Rumney <jasonr@gnu.org>
11069
11070 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
11071 supported.
11072
11073 * w32term.c (zv_bits): Declare as short, for word alignment.
11074 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
11075 (syms_of_w32term): Define x-use-underline-position-properties.
11076
11077 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
11078 (clear_image_cache): Block input, fix logic, clear matrices in
11079 all frames that share this cache.
11080
110812002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
11082
11083 * emacs.c (main): Update the Copyright year in the blurb printed
11084 by "emacs --version".
11085
11086 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
11087
11088 * xterm.c (XTread_socket): If XK_ISO_Lock and
11089 XK_ISO_Last_Group_Lock are defined, handle keysyms between
11090 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
11091
110922002-03-21 Kim F. Storm <storm@cua.dk>
11093
11094 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
11095 menu-bar bindings in keymap and local-map properties _are_ used.
11096 But try keymap property first in accordance with 2002-01-03 patch.
11097 Added comment describing why this is not always reliable.
11098 (tool_bar_items): Ditto for tool-bar.
11099
111002002-03-21 Jason Rumney <jasonr@gnu.org>
11101
11102 * w32fns.c (x_clear_image_1): Disable color table code.
11103
111042002-03-21 Kim F. Storm <storm@cua.dk>
11105
11106 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
11107 removed the wrong version of the DEFUN macro; fixed it.
11108
11109 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
11110 Fmember rather than Fmemq).
11111 (Fprovide): Check that subfeatures is a list.
11112
11113 * process.c (QCfeature, QCdatagram): Removed variables.
11114 (QCtype, Qdatagram): New variables.
11115 (network_process_featurep): Removed function.
11116 (Fmake_network_process): Removed :feature check.
11117 Use :type 'datagram instead of :datagram t to create a datagram
11118 socket. This allows us to add other connection types (e.g. raw
11119 sockets) later in a consistent manner.
11120 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
11121 supported subfeatures for feature make-network-process.
11122 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
11123 Intern and staticpro QCtype and Qdatagram.
11124 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
11125
11126 * xfns.c: (QCtype): Remove duplicate declaration and
11127 initialization (is now declared in process.c).
11128
11129 * w32fns.c: (QCtype): Remove duplicate declaration and
11130 initialization (is now declared in process.c).
11131
111322002-03-21 Richard M. Stallman <rms@gnu.org>
11133
11134 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
11135 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
11136 when jumping to `fail' to avoid undoing reg changes in the
11137 last iteration of the loop.
11138 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
11139
11140 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
11141 Depend on process.h.
11142
111432002-03-20 Jason Rumney <jasonr@gnu.org>
11144
11145 Most of the following changes are still conditional on HAVE_IMAGES
11146 which is not set by default on Windows.
11147
11148 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
11149
11150 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
11151 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
11152 (four_corners_best, x_clear_image_1, x_clear_image)
11153 (x_alloc_image_color, postprocess_image)
11154 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
11155 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
11156 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
11157
11158 * w32gui.h (struct XImage): Define.
11159
11160 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
11161 extract mouse co-ordinates.
11162
111632002-03-20 Jason Rumney <jasonr@gnu.org>
11164
11165 * w32.c (init_winsock): Dynamically load new server and UDP
11166 socket functions.
11167 (socket_to_fd): New function.
11168 (sys_socket): Use it.
11169 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
11170 (sys_recvfrom, sys_sendto): New wrapper functions.
11171
11172 * process.c (QCfamily, QCfilter): Remove duplicate declaration
11173 and initialization.
11174
11175 * makefile.w32-in (LIBS): Remove $(WSOCK32).
11176
111772002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
11178
11179 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
11180 Don't use "sun" as a variable, it's a predefined constant on Sun
11181 machines.
11182
111832002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11184
11185 * bytecode.c (Fbyte_code): Revert last change.
11186
111872002-03-19 Kim F. Storm <storm@cua.dk>
11188
11189 * makefile.w32-in (LIBS): Add $(WSOCK32).
11190 From David Ponce <dponce@voila.fr>.
11191
111922002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11193
11194 * process.c (wait_reading_process_input): Move variables `pname'
11195 and `pnamelen' down where they are used.
11196
11197 * bytecode.c (Fbyte_code): Discard unused computed value to
11198 prevent gcc warning.
11199
11200 * lisp.h (Fplist_member): Add prototype.
11201
112022002-03-18 Kim F. Storm <storm@cua.dk>
11203
11204 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
11205 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
11206
11207 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
11208 Remove explicit GNU_LINUX settings for datagram support.
11209
112102002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11211
11212 * process.c (Fmake_network_process): Remove unused variable `sa'.
11213 Doc fix. Add usage:.
11214 (set_socket_options): Remove unused variables `optnum' and `opttype'.
11215
112162002-03-17 Richard M. Stallman <rms@gnu.org>
11217
11218 * xdisp.c (cursor_type_changed): New variable.
11219 (redisplay_internal): Redisplay all windows if cursor_type_changed.
11220 Clear it when clearing windows_or_buffers_changed.
11221 (try_cursor_movement, redisplay_window, try_window_id)
11222 (try_window_reusing_current_matrix): Test cursor_type_changed
11223 along with windows_or_buffers_changed.
11224
11225 * window.h (cursor_type_changed): New variable.
11226
11227 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
11228 not update_mode_lines, and always set it to 1.
11229
11230 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
11231 if no frames needed redrawing.
11232
112332002-03-17 Kim F. Storm <storm@cua.dk>
11234
11235 The following changes add support for network server processes,
11236 datagram connections, and local (unix) sockets.
11237
11238 * process.h (struct Lisp_Process): New member log.
11239 Doc fix: Member command used to indicate stopped network process.
11240 Doc fix: Member childp contains plist for network process.
11241 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
11242
11243 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
11244 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
11245 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
11246 New variables.
11247 (NETCONN1_P): New macro.
11248 (DATAGRAM_SOCKETS): New conditional symbol.
11249 (datagram_address): New array.
11250 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
11251 (status_message): Use concat3.
11252 (Fprocess_status): Add `listen' status to doc string. Return `stop'
11253 for a stopped network process.
11254 (Fset_process_buffer): Update contact plist for network process.
11255 (Fset_process_filter): Ditto. Don't enable input for stopped
11256 network processes. Server must listen, even if filter is t.
11257 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
11258 New functions.
11259 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
11260 (Fprocess_contact): Added KEY argument. Handle datagrams.
11261 (list_processes_1): Optionally show only processes with the query
11262 on exit flag set. Dynamically adjust column widths. Omit tty
11263 column if not needed. Report stopped network processes.
11264 Identify server and datagram network processes.
11265 (Flist_processes): New optional arg `query-only'.
11266 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
11267 (conv_lisp_to_sockaddr, set_socket_options)
11268 (network_process_featurep, unwind_request_sigio): New helper functions.
11269 (Fprocess_datagram_address, Fset_process_datagram_address):
11270 (Fset_network_process_options): New lisp functions.
11271 (Fopen_network_stream): Removed. Now defined in simple.el.
11272 (Fmake_network_process): New lisp function. Code is based on previous
11273 Fopen_network_stream, but heavily reworked with new property list based
11274 argument list, support for datagrams, server processes, and local
11275 sockets in addition to old client-only functionality.
11276 (server_accept_connection): New function.
11277 (wait_reading_process_input): Use it to handle incoming connects.
11278 Do not enable input on a new connection if process is stopped.
f63fd14e 11279 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
11280 (send_process): Handle datagram sockets.
11281 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
11282 network process is indicated by setting command field to t .
11283 (Fprocess_send_eof): No-op if datagram connection.
11284 (Fstatus_notify): Don't read input for a stream server socket or a
11285 stopped network process.
11286 (init_process): Initialize datagram_address array.
11287 (syms_of_process): Intern and staticpro new variables, defsubr new
11288 functions.
11289
112902002-03-16 Jason Rumney <jasonr@gnu.org>
11291
11292 * w32fns.c (w32_to_all_x_charsets): Return correct type in
11293 startup case.
11294
112952002-03-16 Richard M. Stallman <rms@gnu.org>
11296
11297 * xdisp.c (redisplay_internal, redisplay_windows):
11298 Use list_of_error to call internal_condition_case_1.
11299 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
11300 so as to catch all errors with no possibility of debugger redisplay.
11301 (list_of_error): New variable.
11302 (syms_of_xdisp): Init and staticpro it.
11303
11304 * print.c (print_object): Delete `\ ' from printed rep of frame.
11305
113062002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
11307
11308 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
11309 until its implementation is fixed.
11310
113112002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11312
11313 * xfns.c (png_load): Remove unused variable `gamma_str'.
11314
113152002-03-14 Richard M. Stallman <rms@gnu.org>
11316
11317 * xfns.c (x_real_positions): Handle failure in XQueryTree.
11318
113192002-03-14 Miles Bader <miles@gnu.org>
11320
11321 * intervals.c (adjust_for_invis_intang): New function.
11322 (set_point_both): Use `adjust_for_invis_intang' to do most of the
11323 work for dealing with invisible+intangible regions. Do so before
11324 and after both forward and backward movements, to handle both
11325 front-sticky and rear-sticky cases.
11326 * textprop.c (text_property_stickiness): Function moved here from
11327 `editfns.c'.
11328 * intervals.h (text_property_stickiness): New declaration.
11329 * editfns.c (char_property_eq): Function removed.
11330 (text_property_stickiness): Function moved to `textprop.c'.
11331
113322002-03-13 Jason Rumney <jasonr@gnu.org>
11333
11334 * config.in: Add STRFTIME_NO_POSIX2.
11335
11336 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
11337 and %OX when underlying strftime does not.
11338
113392002-03-13 Stefan Monnier <monnier@cs.yale.edu>
11340
11341 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
11342 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
11343 line) to avoid annoying flicker.
11344 (xm_scroll_callback): Get rid of the now unnecessary kludge.
11345 (XTread_socket): Mark it static.
11346
11347 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
11348
113492002-03-13 Kim F. Storm <storm@cua.dk>
11350
11351 * puresize.h (BASE_PURESIZE): Increase to 775000.
11352
113532002-03-12 Juanma Barranquero <lektu@terra.es>
11354
11355 * editfns.c (syms_of_editfns): Fix typo.
11356
113572002-03-12 Gerd Moellmann <gerd@gnu.org>
11358
11359 * xsmfns.c: Include stdio.h because termhooks.h needs it.
11360 Include termopt.h for interrupt_input.
11361
113622002-03-11 Andreas Schwab <schwab@suse.de>
11363
11364 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
11365
113662002-03-11 Gerd Moellmann <gerd@gnu.org>
11367
11368 * xterm.c (note_mouse_movement): Put code for
11369 x_autoselect_window_p in #if 0.
11370
11371 * lread.c (Fload): Don't assume that message_with_string uses the
11372 string it is given like a C string.
11373
113742002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11375
11376 * xterm.h (x_session_check_input, x_session_initialize): Declared.
11377
11378 * xterm.c: (XTread_socket): Add call to x_session_check_input and
11379 x_session_have_connection.
11380 (x_initialize): Add call to x_session_initialize.
11381
11382 * termhooks.h (enum event_kind): Add save_session_event.
11383
11384 * keyboard.c: Add Emacs event save_session_event.
11385
11386 * emacs.c (main): Add call to syms_of_xsmfns.
11387
11388 * lisp.h: Declare syms_of_xsmfns as extern.
11389
11390 * config.in: Add HAVE_X_SM.
11391
11392 * Makefile.in (LIBXT): Add -lSM -lICE
11393 if HAVE_X_SM and not USE_X_TOOLKIT.
11394 (XOBJ): New file xsmfns.c added.
11395
11396 * xsmfns.c: New file for X session management.
11397
113982002-03-09 Jason Rumney <jasonr@gnu.org>
11399
11400 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
11401 read-only when setting modified time.
11402
114032002-03-08 Gerd Moellmann <gerd@gnu.org>
11404
11405 * xdisp.c (move_it_vertically_backward): At the end of the function,
11406 when moving forward by lines, treat terminal frames specially.
11407
11408 * keyboard.c (echo_char): Make sure to add a separator between
11409 keys even if echo_dash hasn't been called.
11410
11411 * xdisp.c: Use new string macros.
11412 (update_echo_area): Pass number of bytes to message3 instead of
11413 number of chars.
11414 (set_message_1): Don't access a string's size_byte directly.
11415 (decode_mode_spec_coding): Use number of bytes of eoltype string
11416 instead number of chars.
11417
11418 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
11419
114202002-03-08 Juanma Barranquero <lektu@terra.es>
11421
11422 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
11423 24-bit.
11424
114252002-03-06 Jason Rumney <jasonr@gnu.org>
11426
11427 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
11428
114292002-03-06 Gerd Moellmann <gerd@gnu.org>
11430
11431 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
11432 (cancel_echoing, echo_length, echo_truncate): Changed to
11433 work with new kboard definition.
11434 (echo_now): Use message3_nolog instead of message2_nolog.
11435
11436 * alloc.c (mark_kboards): Mark echo_string.
11437
11438 * keyboard.h (ECHOBUFSIZE): Removed.
11439 (struct kboard): Member echoptr removed, member echobuf renamed
11440 to echo_string.
11441
11442 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
11443 message3 instead of message2 to display the message using STRING's
11444 text properties.
11445
114462002-03-05 Andreas Schwab <schwab@suse.de>
11447
11448 * xdisp.c (hscroll_margin): Change to EMACS_INT.
11449
114502002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
11451
11452 * frame.c (default-frame-alist): Explain that setting it doesn't
11453 affect existing frames.
11454
114552002-03-05 Stefan Monnier <monnier@cs.yale.edu>
11456
11457 * indent.c (skip_invisible): Fix my brain fart.
11458
11459 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
11460
114612002-03-04 Stefan Monnier <monnier@cs.yale.edu>
11462
11463 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
11464 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
11465 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
11466 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
11467 and variables to use EMACS_INT instead of just int.
11468
11469 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
11470
114712002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
11472
11473 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
11474 environment, pass it down with corrected value.
11475
114762002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11477
11478 * lread.c (read_filtered_event): Do not call start_hourglass
11479 before returning.
11480
114812002-03-04 Juanma Barranquero <lektu@terra.es>
11482
11483 * w32term.c (x_display_and_set_cursor): Fix typo.
11484
114852002-03-03 Richard M. Stallman <rms@gnu.org>
11486
11487 * fileio.c (Fmake_temp_name): Doc fix.
11488
114892002-03-03 Gary Wong <gtw@gnu.org>
11490
11491 * termcap.c [!emacs]: Replace ospeed for building standalone
11492 libtermcap, for binary compatibility.
11493
11494 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
11495
114962002-03-03 Richard M. Stallman <rms@gnu.org>
11497
11498 * xrdb.c (file_p): Rename arg `path' to `filename'.
11499
11500 * abbrev.c (Fexpand_abbrev): Increment plist as use count
11501 only if it is an integer.
11502
11503 * xfns.c (png_load): Set screen_gamma based on f->gamma.
11504 If png_get_sRGB gives an answer, call png_set_gamma
11505 using the default image gamma value.
11506
11507 * lread.c (read1): When reading from a file, default string to
11508 multibyte only if it has some multibyte characters.
11509
11510 * print.c (print_object): Output multibyte chars 128...255
11511 using \x even if ! print_escape_multibyte.
11512
11513 * xdisp.c (display_mode_element): Move the places where
11514 bytepos, charpos, this, and lisp_string are set.
11515 Use lisp_string to set bytepos.
11516
11517 * xdisp.c (redisplay_internal):
11518 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
11519
11520 * xdisp.c (display_mode_element): Merge properties specified with
11521 :propertize onto those that come with the string.
11522
115232002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
11524
11525 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
11526 automatic-hscrolling. Users changed.
11527 <hscroll-margin>: Renamed from automatic-hscroll-margin.
11528 Users changed.
11529 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
11530
115312002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
11532
11533 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
11534
115352002-03-02 Kim F. Storm <storm@cua.dk>
11536
11537 * window.c (Fminibuffer_selected_window): New function.
11538 (syms_of_window): Defsubr it.
11539
115402002-03-01 Kim F. Storm <storm@cua.dk>
11541
11542 * window.h (struct window): New member phys_cursor_width.
11543
11544 * window.c (make_window, replace_window): Init phys_cursor_width.
11545
11546 * xterm.c (x_display_and_set_cursor): Blink box cursor using
11547 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11548
11549 * w32term.c (x_display_and_set_cursor): Blink box cursor using
11550 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11551
11552 * lisp.h (GCPRO6): New macro.
11553
11554 * process.c (Fopen_network_stream): Use GCPRO6.
11555
115562002-03-01 Kim F. Storm <storm@cua.dk>
11557
11558 * process.c (Qconnect, Qfailed): New variables.
11559 (syms_of_process): Intern and staticpro them.
11560 (Fprocess_status): Document connect and failed return values.
11561 [NON_BLOCKING_CONNECT]: New conditional.
11562 (connect_wait_mask, num_pending_connects): New variables.
11563 (status_message): Convert Qfailed status.
11564 (Fopen_network_stream): Added support for non-blocking connect.
11565 New optional args: filter, sentinel, non_blocking. Doc updated.
11566 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
11567 (deactivate_process): Handle pending non-blocking connect.
11568 (wait_reading_process_input): Poll for status of non-blocking
11569 connects. Exec sentinel directly when connect succeeds.
11570 (status_notify): Don't read process output if not yet connected.
11571
115722002-02-28 Kim F. Storm <storm@cua.dk>
11573
11574 * window.c: (minibuf_selected_window): Renamed from
11575 Vminibuf_selected_window. Users changed.
11576 (syms_of_window): Staticpro it.
11577
115782002-02-26 Kim F. Storm <storm@cua.dk>
11579
11580 The following changes add a new Vminibuf_selected_window variable
11581 which is similar to Vminibuf_scroll_window, but which is only set
11582 on entry to the minibuffer (from a non-minibuffer window):
11583
11584 * window.c: (Vminibuf_selected_window): New variable.
11585 (struct save_window_data): New member minibuf_selected_window.
11586 (Fset_window_configuration): Restore Vminibuf_selected_window.
11587 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
11588 Set minibuf_scroll_window member to nil if minibuf_level is 0.
11589 (compare_window_configurations): Compare minibuf_selected_window.
11590
11591 * window.h: (Vminibuf_selected_window): Declare extern.
11592
11593 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
11594 entry to minibuffer or on entry from a non-minibuffer window.
11595
11596 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
11597 Vminibuf_selected_window instead of Vminibuf_scroll_window.
11598
11599 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
11600 instead of Vminibuf_scroll_window when deciding in which window
11601 the region should be highlighted. Consequently, the region remains
11602 highlighteded even when a completion buffer is also displayed.
11603
116042002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
11605
11606 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
11607
11608 * xselect.c (Qcompound_text_with_extensions): Renamed from
11609 Qcompound_text_no_extensions.
11610 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
11611
116122002-02-26 Juanma Barranquero <lektu@terra.es>
11613
11614 * w32proc.c (syms_of_ntproc): Doc fix.
11615
116162002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11617
11618 * intervals.h: Include "dispextern.h" unconditionally.
11619
116202002-02-24 Jason Rumney <jasonr@gnu.org>
11621
11622 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
11623 and disp-table.elc.
11624 (lisp): Add emacs-lisp/backquote.elc.
11625
116262002-02-24 Kim F. Storm <storm@cua.dk>
11627
11628 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
11629 The validation of the event type was too strict as it didn't
11630 allow string events; buffer names are used in bindings for
11631 menu-bar-select-buffer (see `menu-bar-update-buffers').
11632
116332002-02-23 Kim F. Storm <storm@cua.dk>
11634
11635 The following changes rework my patch of 2002-02-06 which
11636 added command remapping by entering the commands directly into
11637 the keymaps. Now, command remapping uses an explicit `remap'
11638 prefix in the keymaps, i.e. [remap COMMAND].
11639
11640 * keymap.c (Qremap, remap_command_vector): New variables.
11641 (is_command_symbol): Removed function.
11642 (Fdefine_key): No longer accept a symbol for KEY.
11643 Added validation of [remap COMMAND] argument for KEY.
11644 The DEF is no longer required to be a symbol when remapping a command.
11645 (Fremap_command): New function to remap command through keymaps.
11646 (Flookup_key): Perform command remapping initiated by
11647 Fremap_command directly for speed.
11648 (Fkey_binding): Use Fremap_command for command remapping.
11649 (where_is_internal): Handle new command remapping representation.
11650 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
11651 staticpro them. Defsubr Fremap_command.
11652
11653 * keymap.h (Fremap_command): Declare extern.
11654 (is_command_symbol): Remove extern.
11655
11656 * keyboard.c (command_loop_1): Use Fremap_command for command
11657 remapping; now try command remapping for all symbols.
11658
116592002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11660
11661 * coding.h (run_pre_post_conversion_on_str): Add prototype.
11662
116632002-02-23 Jason Rumney <jasonr@gnu.org>
11664
11665 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
11666 on the string before encoding it.
11667 (Fw32_get_clipboard_data): Run post-read-conversion on the string
11668 after decoding it.
11669
11670 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
11671
116722002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11673
11674 * w32term.c (enter_timestamp): Remove unused static variable to
11675 prevent warning.
11676
11677 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
11678
116792002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11680
11681 * w16select.c (Fw16_get_clipboard_data): Fix last change.
11682
11683 * xselect.c (selection_data_to_lisp_data): Fix last change.
11684
116852002-02-22 Jason Rumney <jasonr@gnu.org>
11686
11687 * w32term.h (struct w32_output): New member menu_command_in_progress.
11688
11689 * w32menu.c (menubar_selection_callback): Free the menu and
11690 clear the menu_command_in_progress flag.
11691
11692 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
11693 (menu_free_timer): New variable.
11694 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
11695 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
11696 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
11697 menu command is in progress.
11698 <WM_COMMAND>: Set the menu_command_in_progress flag.
11699 Kill any menu_free_timer that is running.
11700
11701 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
11702 Call ExtTextOutA rather than ExtTextOut.
11703
117042002-02-22 Eli Zaretskii <eliz@gnu.org>
11705
11706 * puresize.h (BASE_PURESIZE): Increase to 755000.
11707
117082002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
11709
11710 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
11711 on the string before encoding it.
11712 (Fw16_get_clipboard_data): Run post-read-conversion on the string
11713 after decoding it.
11714
117152002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
11716
11717 Support for ICCCM Extended Segments in X selections:
11718
11719 * xselect.c <Qcompound_text_no_extensions>: New variable.
11720 (syms_of_xselect): Intern and staticpro it.
11721 (selection_data_to_lisp_data): Run post-read-conversion on decoded
11722 selection text.
11723 (lisp_data_to_selection_data): If next-selection-coding-system is
11724 compound-text-no-extensions, set the type of selection to be
11725 compound-text.
11726
11727 * xterm.h (x_encode_text): Update prototype.
11728
11729 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
11730 callers changed. If SELECTIONP is non-zero, run the
11731 pre-write-conversion function before encoding the selection text.
11732
117332002-02-21 Kim F. Storm <storm@cua.dk>
11734
11735 * frame.c (syms_of_frame): Change mouse-highlight default to t.
11736
11737 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
11738 Correct composing of language-change event.
11739
117402002-02-20 Kim F. Storm <storm@cua.dk>
11741
11742 * keyboard.c (menu_bar_items): Don't include keymap or local-map
11743 bindings at PT when building menu (the menu is not updated often
11744 enough for this to work reliable).
11745 (tool_bar_items): Likewise.
11746 (current_active_maps): Removed unused (and buggy) function.
11747
117482002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11749
11750 * xfns.c (gif_load): Use correct width and height for GIF images.
11751
117522002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
11753
11754 * floatfns.c (Fatan): Accept an optional second arg and call
11755 atan2 if passed 2 args.
11756
117572002-02-18 Jason Rumney <jasonr@gnu.org>
11758
11759 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
11760
117612002-02-17 Jason Rumney <jasonr@gnu.org>
11762
11763 * w32term.c (x_autoselect_window_p): New variable.
11764 (syms_of_w32term): DEFVAR_BOOL and initialize it.
11765 (note_mouse_movement): Use it.
11766
11767 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
11768
11769 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
11770
11771 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
11772 New variables.
11773 (syms_of_w32fns): Intern and staticpro them.
11774 (x_frame_parms) <"fullscreen">: New parameter.
11775 (x_fullscreen_move, x_set_fullscreen): New functions.
11776 (x_set_frame_parameters): Support Qfullscreen.
11777 (x_real_positions): Save x/y_pixels_diff frame params.
11778 (x_figure_window_size): Support full-screen frames.
11779 (Fx_create_frame): Default the fullscreen parameter.
11780
11781 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
11782 (x_fullscreen_adjust): New functions.
11783 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
11784 fullscreen. Call x_check_fullscreen_move, and set the
11785 want_fullscreen member of output_data.w32
11786 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
11787
11788 * w32term.h: New enum for FULLSCREEN_* constants.
11789 (struct w32_output): New members want_fullscreen, x_pixels_diff,
11790 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
11791 (x-fullscreen-adjust): New prototype.
11792
117932002-02-17 Kim F. Storm <storm@cua.dk>
11794
11795 * frame.c: (Vmouse_highlight): New variable.
11796 (syms_of_frame): DEFVAR_LISP it.
11797
11798 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 11799
048addec 11800 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 11801
048addec
JD
11802 * xterm.c (disable_mouse_highlight): Removed variable.
11803 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
11804 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11805 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
11806 and on after keyboard input.
11807 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 11808
048addec 11809 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 11810
048addec
JD
11811 * msdos.c (disable_mouse_highlight): Removed variable.
11812 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11813 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
11814 (internal_terminal_init): Initialize mouse_face_hidden.
11815 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
11816 and on after keyboard input.
4f1b1854 11817
048addec 11818 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 11819
048addec
JD
11820 * w32term.c (disable_mouse_highlight): Removed variable.
11821 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
11822 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11823 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
11824 and on after keyboard input.
11825 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 11826
048addec 118272002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 11828
048addec
JD
11829 * msdos.c (last_mouse_window): New variable.
11830 (dos_rawgetc): Fix last change--if the mouse is in the same window
11831 as recorded in last_mouse_window, don't select this window.
5cb6905d 11832
048addec 11833 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 11834
048addec
JD
11835 * msdos.c (x_autoselect_window_p): New variable.
11836 (syms_of_msdos): Defvar it.
11837 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
11838 which the last mouse movement occured, unless it is already selected.
437dfb9f 11839
048addec
JD
11840 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
11841 New variables.
11842 (syms_of_xdisp): DEVFAR them.
11843 (hscroll_window_tree): Use automatic_hscroll_margin and
11844 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 11845
048addec 118462002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 11847
048addec
JD
11848 * xterm.c (x-autoselect-window): New variable.
11849 (note_mouse_movement): Use it.
9f696a00 11850
048addec 11851 * keyboard.c: Do not include "systime.h" twice.
d57966d7 11852
048addec 118532002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 11854
048addec 11855 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 11856
048addec 11857 * alloc.c (NSTATICS): Increase to 1280.
74779f52 11858
048addec 118592002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 11860
048addec 11861 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 11862
048addec
JD
11863 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
11864 (Vx_super_keysym): New variables.
11865 (syms_of_xterm): DEFVAR_LISP them.
11866 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
11867 variables to determine which keys to use for the various modifiers.
a474d59c 11868
048addec 118692002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 11870
048addec
JD
11871 * window.c: (Vmode_line_in_non_selected_windows): Removed.
11872 (mode_line_in_non_selected_windows): New variable.
11873 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 11874
048addec
JD
11875 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
11876 Use mode_line_in_non_selected_windows.
11877 (mode_line_in_non_selected_windows): Declare extern.
11878 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 11879
048addec 118802002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 11881
048addec
JD
11882 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
11883 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
11884 (Fclear_this_command_keys): Doc fixes.
2d10309f 11885
048addec
JD
11886 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
11887 (update_face_from_frame_parameter): Increment face_change_count
11888 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 11889
048addec
JD
11890 * xdisp.c (QCpropertize): New variable.
11891 (mode_line_proptrans_alist): New variable.
11892 (display_mode_element): New arg PROPS; all calls changed.
11893 Implement this, for strings.
11894 Handle literal output of strings by sharing the
11895 main-line code for strings, using local var `literal'.
11896 Handle :propertize feature.
11897 (syms_of_xdisp): Initialze and staticpro QCpropertize and
11898 mode_line_proptrans_alist.
0b1e6b54 11899
048addec 119002002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 11901
048addec
JD
11902 * window.c: (Vmode_line_in_non_selected_windows): New variable.
11903 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 11904
048addec
JD
11905 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
11906 (CURRENT_MODE_LINE_FACE_ID): Use it.
11907 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 11908
048addec
JD
11909 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
11910 to get mode line face.
e17144de 11911
048addec 119122002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 11913
048addec
JD
11914 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
11915 variables; cus-start.el doesn't need them anymore.
44368f8f 11916
048addec 119172002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 11918
048addec
JD
11919 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
11920 reduction. This fixes a display problem where stray newlines were
11921 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 11922
048addec 119232002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 11924
048addec 11925 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 11926
048addec 11927 * xdisp.c (display_mode_lines): Fix last change.
453c5510 11928
048addec 119292002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 11930
048addec
JD
11931 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
11932 match each other.
11933 (w32_load_system_font): Prevent Cleartype fonts from loading.
11934 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 11935
048addec 119362002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 11937
048addec
JD
11938 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
11939 (CURRENT_MODE_LINE_HEIGHT): Use it.
11940 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 11941
048addec
JD
11942 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
11943 (pos_visible_p, handle_face_prop): Likewise.
11944 (display_mode_lines): Likewise, but for the real selected window.
11945 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 11946
048addec
JD
11947 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
11948 in non-selected windows.
11949 (realize_basic_faces): Realize it.
11950 (syms_of_term): Intern and staticpro it.
308dd672 11951
048addec 119522002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 11953
048addec
JD
11954 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
11955 Changed mail addresses to emacs-devel@gnu.org.
308dd672 11956
048addec 119572002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 11958
048addec
JD
11959 * fileio.c (Fsubstitute_in_file_name): If the file name includes
11960 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 11961
048addec 11962 * floatfns.c (Fround): Doc fix.
3c1e6b46 11963
048addec 119642002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 11965
048addec 11966 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 11967
048addec 119682002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 11969
048addec 11970 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 11971
048addec 119722002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 11973
048addec
JD
11974 * keymap.c (where_is_internal): Only check whether definition is
11975 remapped if it fulfills is_command_symbol.
0065bb74 11976
048addec 119772002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 11978
048addec 11979 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 11980
048addec 11981 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 11982
048addec 119832002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 11984
048addec
JD
11985 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
11986 defining command remapping. Doc updated.
11987 (Flookup_key): Remap command through keymap if KEY is a symbol.
11988 (is_command_symbol): New function.
11989 (Fkey_binding): Use it. New optional argument NO-REMAP.
11990 Doc updated. Callers changed. Perform command remapping via
11991 recursive call unless that arg is non-nil.
11992 (where_is_internal): New argument no_remap. Callers changed.
11993 Call recursively to find original key bindings for a remapped
11994 comand unless that arg is non-nil.
11995 (Fwhere_is_internal): New optional argument NO-REMAP.
11996 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 11997
048addec
JD
11998 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
11999 (is_command_symbol): Added prototype.
0d8466cc 12000
048addec
JD
12001 * keyboard.c (Vthis_original_command): New variable.
12002 (syms_of_keyboard): DEFVAR_LISP it.
12003 (command_loop_1): Set it, and perform command remapping.
15fff01d 12004
048addec 120052002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 12006
048addec 12007 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 12008
048addec 120092002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 12010
048addec 12011 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 12012
048addec 120132002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 12014
048addec 12015 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 12016
048addec 120172002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 12018
048addec 12019 * filelock.c (S_ISLNK): Define if not defined.
3a232704 12020
048addec 120212002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 12022
048addec 12023 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 12024
048addec
JD
12025 * lread.c (read1): Redesign strategy for force_multibyte and
12026 force_singlebyte. Now is_multibyte records whether read_buffer
12027 is multibyte. Encountering any multibyte character makes it so.
4e02881b 12028
048addec 120292002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 12030
048addec
JD
12031 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
12032 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 12033
048addec 120342002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 12035
048addec
JD
12036 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
12037 latter never being defined on GNU/Linux.
749f499f 12038
048addec 120392002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 12040
048addec
JD
12041 * xfaces.c (realize_default_face): Don't set the weight and slant of
12042 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 12043
048addec 120442002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 12045
048addec
JD
12046 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
12047 Call cancel_hourglass unconditionally.
d0fd26dd 12048
048addec
JD
12049 * eval.c (Fsignal): Remove duplicated declaration of
12050 the variable `display_hourglass_p'.
b4c45162 12051
048addec 120522002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 12053
048addec 12054 * editfns.c (region_limit): Nicer error message.
c95eaa61 12055
048addec
JD
12056 * coding.c (decode_composition_emacs_mule):
12057 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 12058
048addec
JD
12059 * callint.c (check_mark): New arg to specify clearer error message.
12060 Callers changed.
c95eaa61 12061
048addec 120622002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 12063
048addec 12064 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 12065
048addec 120662002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 12067
048addec
JD
12068 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
12069 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
12070 Fix doc-strings.
c95eaa61 12071
048addec 120722002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 12073
048addec 12074 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 12075
048addec
JD
12076 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
12077 and scroll_up_aggressively.
c95eaa61 12078
048addec 120792002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 12080
048addec 12081 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 12082
048addec 120832002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 12084
048addec
JD
12085 * textprop.c (Fnext_property_change, Fnext_single_property_change)
12086 (Fprevious_property_change, Fprevious_single_property_change):
12087 Stay within the narrowed-buffer boundaries.
e2c3786a 12088
048addec 120892002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 12090
048addec
JD
12091 * term.c (Ftty_display_color_cells): New function.
12092 (syms_of_term): Defsubr it.
12093 (Ftty_display_color_cells, Ftty_display_color_p): Change the
12094 argument name to DISPLAY. Doc fix.
bf794306 12095
048addec
JD
12096 * dispextern.h: Add prototype for set_tty_color_mode and
12097 tty_setup_colors.
bf794306 12098
048addec 120992002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 12100
048addec
JD
12101 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
12102 If region left to draw is not what was expected, mark the frame as
12103 garbaged.
62582985 12104
048addec
JD
12105 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
12106 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 12107
048addec 121082002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 12109
048addec
JD
12110 * w32term.c (x_update_window_begin): Only hide caret if
12111 w32_use_visible_system_caret is set.
12112 (x_update_window_end): Only show caret if
12113 w32_use_visible_system_caret is set.
12114 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 12115
048addec 12116 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 12117
048addec 121182002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 12119
048addec
JD
12120 * unexelf.c (unexec): Define n so as to cause compilation error
12121 for the code where people have often written n instead of nn.
1e9a6186 12122
048addec 12123 * .gdbinit (hookpost-run): Defined.
1e9a6186 12124
048addec 121252002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 12126
048addec 12127 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 12128
048addec 121292002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 12130
048addec
JD
12131 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
12132 if fullscreen is being set.
7c75be36 12133
048addec 121342002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 12135
048addec
JD
12136 * minibuf.c (Fminibuffer_contents)
12137 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
12138 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 12139
048addec 121402002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 12141
048addec 12142 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 12143
048addec 121442002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 12145
048addec
JD
12146 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
12147 height before comparison.
12148 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 12149
048addec 121502002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 12151
048addec
JD
12152 * w32term.c (w32_system_caret_width): Remove.
12153 (w32_use_visible_system_caret): New user flag.
12154 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
12155 Windows reports a screen reader running.
12156 (x_update_window_begin): Hide the system caret.
12157 (x_update_window_end): Show the system caret.
12158 (x_display_and_set_cursor): Don't draw a cursor when
12159 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 12160
048addec
JD
12161 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
12162 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
12163 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
12164 the user requests it. Use system default width when creating.
12165 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 12166
048addec
JD
12167 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
12168 New window messages.
905cc05a 12169
048addec 121702002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 12171
048addec 12172 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 12173
048addec 121742002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 12175
048addec 12176 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 12177
048addec 121782002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 12179
048addec 12180 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 12181
048addec 121822002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 12183
048addec
JD
12184 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
12185 that Windows returns. If a double check fails, try to guess how
12186 ExtTextOut is going to act.
4d0fa4f3 12187
048addec
JD
12188 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
12189 in place of stricmp.
12190 (w32_list_synthesized_fonts): Removed.
12191 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
12192 (struct enumfont_t): New element; list.
12193 (enum_font_cb2): List all style and charset variations of a font.
12194 (Fw32_select_font): New optional argument; include_proportional.
12195 Exclude vertical fonts. Exclude proportional fonts unless
12196 include_proportional is non-nil.
12197 (w32_enable_synthesized_fonts): Change to a boolean.
12198 (Fw32_send_sys_command): Doc fix.
493faf20 12199
048addec 122002002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 12201
048addec
JD
12202 * dispnew.c (update_frame): Move the variable `tem' to the block
12203 where it is used.
4971e491 12204
048addec 122052002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 12206
048addec
JD
12207 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
12208 call to face-set-after-frame-default.
4971e491 12209
048addec 122102002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 12211
048addec
JD
12212 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
12213 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 12214
048addec 122152002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 12216
048addec
JD
12217 * window.c (enlarge_window): When exceeding size of parent,
12218 directly delete all the siblings instead of trying to resize it.
201c831a 12219
048addec 122202002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 12221
048addec 12222 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 12223
048addec 122242002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 12225
048addec 12226 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 12227
048addec 122282002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 12229
048addec
JD
12230 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
12231 is invisible. This can happen if cursor is on top line of a
12232 window, and we switch to a buffer with a header line.
d77fbc16 12233
048addec 12234 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 12235
048addec 122362002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 12237
048addec
JD
12238 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
12239 `dont_resize' only when used.
61e3b944 12240
048addec 12241 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 12242
048addec 122432002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 12244
048addec
JD
12245 * xdisp.c (display_mode_element): When computing charpos, depend
12246 on multibyteness of elt, not the text in field.
8af01033 12247
048addec 122482002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 12249
048addec
JD
12250 * buffer.c (Fkill_all_local_variables):
12251 Increment `update_mode_lines' only once.
7363986a 12252
048addec 122532002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 12254
048addec
JD
12255 * lisp.h (adjust_after_replace_noundo)
12256 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 12257
048addec 12258 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 12259
048addec 122602002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 12261
048addec
JD
12262 Support for the --color command-line argument and tty-color-mode
12263 frame parameter:
f1a85b89 12264
048addec
JD
12265 * term.c (tty_default_color_capabilities, tty_setup_colors)
12266 (set_tty_color_mode): New functions.
12267 (term_init): Call tty_default_color_capabilities.
12268 (Qtty_color_mode_alist): New variable.
12269 (syms_of_term): Intern and staticpro it.
f1a85b89 12270
048addec
JD
12271 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
12272 frames.
12273 (do_switch_frame): For termcap frames, switch the tty
12274 color mode as specified by the frame's parameters.
12275 (Qtty_color_mode): New variable.
12276 (syms_of_frame): Intern and staticpro it.
3a62677f 12277
048addec
JD
12278 * emacs.c (USAGE2): Add the --color option.
12279 (standard_args): Ditto.
72244db2 12280
048addec
JD
122812002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12282
12283 * xterm.h (struct x_output): New members want_fullscreen,
12284 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
12285 y_pixels_outer_diff.
12286 New enum for FULLSCREEN_* constants.
12287 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
12288 is NULL.
12289 (x_fullscreen_adjust): Add prototype.
3a62677f 12290
048addec
JD
12291 * emacs.c (USAGE2): Add the new full-screen arguments.
12292 (standard_args): Ditto.
3a62677f 12293
048addec
JD
12294 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12295 New variables.
12296 (syms_of_xfns): Intern and staticpro them.
12297 (x_frame_parms) <"fullscreen">: New parameter.
12298 (x_fullscreen_move, x_set_fullscreen): New functions.
12299 (x_set_frame_parameters): Support for Qfullscreen.
12300 (x_real_positions): More accurate computation of the frame position.
12301 (x_figure_window_size): Support full-screen frames.
12302 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 12303
048addec
JD
12304 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
12305 (XTread_socket) <Expose>: Call x_check_fullscreen.
12306 <ConfigureNotify>: Don't resize to fullscreen.
12307 Call x_check_fullscreen_move, and set the want_fullscreen member of
12308 output_data.x.
3a62677f 12309
048addec 123102002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 12311
048addec
JD
12312 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
12313 for mice with more than 3 buttons.
b8523839 12314
048addec
JD
12315 * w32term.c (parse_button): New parameter xbutton. Callers changed.
12316 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 12317
048addec
JD
12318 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
12319 (syms_of_w32fns): DEFVAR_BOOL it.
12320 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 12321
048addec 123222002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 12323
048addec 12324 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 12325
048addec 123262002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 12327
048addec 12328 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 12329
048addec 123302002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 12331
048addec
JD
12332 * .gdbinit (xbuffer): Remove address operator since data is now a
12333 pointer.
c93674bb 12334
048addec 123352002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 12336
048addec 12337 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 12338
048addec 12339 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 12340
048addec 123412002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 12342
048addec
JD
12343 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
12344 when checking for multiple frames.
91175673 12345
048addec 123462002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 12347
048addec
JD
12348 * window.c (delete_window): Rewrite the code for changing the
12349 selected window to handle the case where WINDOW is not a leaf.
91175673 12350
048addec 123512002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 12352
048addec
JD
12353 * process.c (send_process): Set src_multibyte to 1 after the call
12354 top setup_coding_system, not before the call.
e0fead5d 12355
048addec 123562002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 12357
048addec
JD
12358 * xmenu.c (set_frame_menubar, xmenu_show):
12359 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 12360
048addec
JD
12361 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
12362 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 12363
048addec 123642002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 12365
048addec 12366 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 12367
048addec 12368 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 12369
048addec 12370 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 12371
048addec 123722002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 12373
048addec
JD
12374 * insdel.c (make_gap_larger): Make sure buffer size does not
12375 overflow range of int.
62854fe2 12376
048addec 123772002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 12378
048addec
JD
12379 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12380 OVERLAPS_P.
656f46bb 12381
048addec 12382 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 12383
048addec
JD
12384 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
12385 to the left or to the right of the pointer, put it against
12386 the left screen edge.
12387 (x_frame_parms): Add missing braces around initializer.
036e218d 12388
048addec
JD
12389 * w32term.c (x_setup_relief_colors): Don't compute an image's
12390 background color if it doesn't have a Pixmap.
12391 (notice_overwritten_cursor): Don't depend on
12392 output_cursor and updated_area. Compare pixel coordinates with
12393 window's cursor pixel coordinates.
12394 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12395 Call notice_overwritten_cursor with new arg list.
12396 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12397 unconditionally.
12398 (x_draw_image_relief): Use predefined macro instead of
12399 constant when the value of `tool_bar_button_relief' is negative.
036e218d 12400
048addec 12401 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 12402
048addec 124032002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 12404
048addec 12405 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 12406
048addec 124072002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 12408
048addec
JD
12409 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
12410 (Fkey_binding): Try the `keymap' property map first.
12411 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
12412 minor mode bindings.
90647b07 12413
048addec 124142002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 12415
048addec 12416 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 12417
048addec 124182002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 12419
048addec
JD
12420 * keyboard.c (read_key_sequence): Handle the keymap property
12421 before minor mode maps.
9fbc32aa 12422
048addec
JD
12423 * editfns.c (Fformat): Update thissize from field_width
12424 based on the actual width, in the string case.
036e218d 12425
048addec 124262002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 12427
048addec
JD
12428 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
12429 when used as truth value to prevent gcc warnings.
9fbc32aa 12430
048addec
JD
12431 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
12432 * w32proc.c: Include <config.h>.
9fbc32aa 12433
048addec 124342002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 12435
048addec
JD
12436 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
12437 not EMACS_INT, to make them compatible with DEFVAR_INT.
12438 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 12439
048addec 124402002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 12441
048addec
JD
12442 * print.c (print_object): Test print_escape_nonascii only for
12443 unibyte strings.
12444 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
12445 when outputting to a multibyte buffer.
9fbc32aa 12446
048addec 124472001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 12448
048addec
JD
12449 * print.c (print_object): In multibyte string, use hex escapes.
12450 Use octal only for unibyte strings.
12451 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 12452
048addec
JD
12453 * lread.c (read_escape): New arg BYTEREP for reporting whether
12454 escape forces unibyte or multibyte.
12455 (read1): When reading a string, take note of that info.
0142178a 12456
048addec 124572001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 12458
048addec
JD
12459 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
12460 comparison to test lisp value returned by Fget.
d4824a5d 12461
048addec 124622001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 12463
048addec 12464 * lisp.h (max_specpdl_size): Add declaration.
b1356234 12465
048addec 12466 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 12467
048addec
JD
12468 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
12469 Handle modifier bits. Correct typo in error message.
99e380ee 12470
048addec 124712001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 12472
048addec
JD
12473 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
12474 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
12475 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
12476 Update calls to Fdefine_abbrev.
12477 (write_abbrev): Update for changed data format.
12478 Don't list "system" abbrevs.
12479 (Fexpand_abbrev): Update use count with new data format.
12480 (describe_abbrev): Update for changed data format.
12481 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 12482
048addec 12483 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 12484
048addec 12485 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 12486
048addec
JD
12487 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
12488 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 12489
048addec
JD
12490 * keymap.c (Flookup_key): Error message if key has wrong data type.
12491 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
12492 (exclude_key): New variable.
59a86c99 12493
048addec 124942001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 12495
048addec
JD
12496 * xterm.c (x_setup_relief_colors): Don't compute an image's
12497 background color if it doesn't have a Pixmap.
eb77a5f4 12498
048addec
JD
12499 * xterm.c (notice_overwritten_cursor): Don't depend on
12500 output_cursor and updated_area. Compare pixel coordinates with
12501 window's cursor pixel coordinates.
12502 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12503 Call notice_overwritten_cursor with new arg list.
12504 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12505 unconditionally.
eb77a5f4 12506
048addec
JD
12507 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
12508 height of the cursor line to the amount to scroll.
eb77a5f4 12509
048addec 125102001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 12511
048addec
JD
12512 * intervals.c (set_point_both): The position after an invisible,
12513 intangible character is not an acceptable stopping point.
bb313871 12514
048addec 125152001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 12516
048addec
JD
12517 * window.c (enlarge_window): In new preserve_before code, convert
12518 CURBEG from lisp object to integer before doing arithmetic.
6052529b 12519
048addec 125202001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 12521
048addec 12522 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 12523
048addec 125242001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 12525
048addec
JD
12526 * keyboard.c (record_char): Ignore duplicate help-echo events only
12527 separated by mouse-movement. When tracking mouse, only record
12528 first and last mouse-movement event in same window.
12529 Don't record mouse-movement events in keyboard macros.
3ce081f5 12530
048addec 125312001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 12532
048addec
JD
12533 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
12534 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 12535
048addec
JD
12536 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
12537 instead of Fstring_as_unibyte.
9fabb2f5 12538
048addec 125392001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 12540
048addec 12541 The following changes remove mocklisp support:
9fabb2f5 12542
048addec 12543 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 12544
048addec
JD
12545 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
12546 `Qmocklisp' and `Qmocklisp_arguments'.
12547 Remove prototype of syms_of_mocklisp.
2fa0eedf 12548
048addec 12549 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 12550
048addec
JD
12551 * callint.c: Do not include mocklisp.h.
12552 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 12553
048addec
JD
12554 * eval.c: Remove variables `Qmocklisp_arguments',
12555 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
12556 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
12557 Do not test for mocklisp case.
12558 (Fwhile): Remove unused variable `tem'.
12559 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 12560
048addec 12561 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 12562
048addec 12563 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 12564
048addec 12565 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 12566
048addec 125672001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 12568
048addec
JD
12569 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
12570 to the left or to the right of the pointer, put it against
12571 the left screen edge.
6108b49c 12572
048addec 125732001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 12574
048addec
JD
12575 * Makefile.in (distclean): Remove .gdbinit if we are building
12576 outside the source tree.
5eea19a4 12577
048addec 125782001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 12579
048addec 12580 * w32.c (emacs_root_dir): New function.
5eea19a4 12581
048addec 12582 * msdos.c (emacs_root_dir): New function.
5eea19a4 12583
048addec
JD
12584 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
12585 of the current drive as the fallback for default_directory.
438e57dd 12586
048addec
JD
12587 * dired.c (file_name_completion): Run the elements of
12588 completion-ignored-extensions through ENCODE_FILE.
438e57dd 12589
048addec
JD
12590 * lisp.h (scmp): Remove prototype, since it's now a static
12591 function private to dired.c.
c88e5347 12592
048addec 125932001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 12594
048addec
JD
12595 * dired.c (scmp): Function moved from minibuf.c.
12596 Delete multibyte handling--used only on encoded strings.
59ce1461 12597
048addec 12598 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 12599
048addec 12600 * fns.c (merge): Add QUIT call.
59ce1461 12601
048addec 126022001-12-18 Dave Love <fx@gnu.org>
8727d588 12603
048addec
JD
12604 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
12605 language/georgian.el.
8727d588 12606
048addec 126072001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 12608
048addec
JD
12609 * Makefile.in (lisp, shortlisp): Synchronize with changes to
12610 lisp/Makefile.in:DONTCOMPILE.
cc63037e 12611
048addec 126122001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 12613
048addec
JD
12614 * xdisp.c (window_box_height): Do not return negative values.
12615 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 12616
048addec 12617 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 12618
048addec 12619 * term.c (keys): Likewise.
deece6f5 12620
048addec 12621 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 12622
048addec 126232001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 12624
048addec
JD
12625 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
12626 patch (COMPOSING_P, not COMPOSING).
28ff4293 12627
048addec 126282001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 12629
048addec 12630 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 12631
048addec
JD
12632 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
12633 before calling decode_coding.
9b46de40 12634
048addec 12635 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 12636
048addec
JD
12637 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
12638 instead of only for COMPOSITION_DISABLED.
9b46de40 12639
048addec 126402001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 12641
048addec 12642 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 12643
048addec 12644 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 12645
048addec
JD
12646 * buffer.h (struct buffer): New field `display_error_modiff'.
12647 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 12648
048addec 12649 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 12650
048addec
JD
12651 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
12652 Call redisplay_window, but not if display_error_modiff field says no.
12653 (redisplay_window_error): New function.
12654 (displayed_buffer): New variable.
12655 (redisplay_internal, redisplay_windows): Call the new functions
12656 instead of redisplay_window directly.
2cd23960 12657
048addec 126582001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 12659
048addec 12660 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 12661
048addec 126622001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 12663
048addec 12664 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 12665 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 12666 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 12667
048addec 126682001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 12669
048addec
JD
12670 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
12671 parameter have a numeric value all the time.
f6fa0866 12672
048addec 12673 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 12674
048addec 126752001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 12676
048addec 12677 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 12678
048addec
JD
12679 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
12680 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 12681
048addec 126822001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 12683
048addec
JD
12684 * xdisp.c (move_it_vertically_backward): Change heuristic
12685 for the case that we didn't move far enough initially.
91c153e2 12686
048addec
JD
12687 * window.c (Frecenter): Simplify computation in the case of window
12688 system frames and ARG < 0; use window_box_height.
65b7d3e7 12689
048addec 126902001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 12691
048addec
JD
12692 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
12693 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 12694
048addec 126952001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 12696
048addec
JD
12697 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
12698 arg is negative.
be676094 12699
048addec 127002001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 12701
048addec
JD
12702 * m/hp800.h: Split the __hpux conditional into the parts
12703 that are right for GNU/Linux too and the parts that are not.
12704 Use the former if GNU_LINUX.
12705 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 12706
048addec 12707 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 12708
048addec 127092001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 12710
048addec
JD
12711 * macros.c, msdos.c, w16select.c: Change doc-string comments to
12712 `new style' [w/`doc:' keyword].
032a857d 12713
048addec 127142001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 12715
048addec
JD
12716 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
12717 before using.
b6270150 12718
048addec 127192001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 12720
048addec
JD
12721 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
12722 keyword].
98cbb9fa 12723
048addec 127242001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 12725
048addec 12726 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 12727
048addec 12728 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 12729
048addec 127302001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 12731
048addec
JD
12732 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
12733 Add comment to explain where the struct came from.
12734 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
12735 (add_menu_item): Process pop-up menus first to avoid memory leak.
12736 (add_menu_item, w32_menu_display_help): Use `help' field as
12737 Lisp_Object.
12738 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 12739
048addec 127402001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 12741
048addec 12742 * COPYING: Moved back.
fa336b91 12743
048addec
JD
12744 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
12745 Add parentheses around && within ||.
077907d4 12746
048addec 12747 * indent.c (compute_motion): Likewise.
aa2af83a 12748
048addec 12749 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 12750
048addec
JD
12751 * coding.c (setup_coding_system, shrink_encoding_region)
12752 (Fdecode_sjis_char): Likewise.
60a653f1 12753
048addec 127542001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 12755
048addec
JD
12756 * xdisp.c (display_mode_element): Don't read past end of string if
12757 it ends with '%'.
60a653f1 12758
048addec
JD
12759 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
12760 can hold.
60a653f1 12761
048addec
JD
12762 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
12763 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
12764 type changed to Lisp_Object.
12765 (syms_of_data): DEFVAR_LISP them.
60a653f1 12766
048addec 127672001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 12768
048addec
JD
12769 * callproc.c (init_callproc): Set Vdata_directory based on the source
12770 location whenever Emacs was run uninstalled.
60a653f1 12771
048addec 127722001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 12773
048addec
JD
12774 * config.in (HAVE_WORKING_VFORK): New #undefs.
12775 * process.c (create_process):
12776 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
12777 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
12778 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
12779 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
12780 * m/intel386.h (HAVE_VFORK): Likewise.
12781 * m/mips-siemens.h (HAVE_VFORK): Likewise.
12782 * m/mips.h (HAVE_VFORK): Likewise.
12783 * s/freebsd.h (vfork): Remove #define.
12784 * s/lynxos.h (HAVE_VFORK): Remove #undef.
12785 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 12786
048addec 127872001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 12788
048addec
JD
12789 * s/hpux10.h (random): Add undef.
12790 (HAVE_RANDOM): Define it just once.
60a653f1 12791
048addec 127922001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12793
048addec 12794 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 12795
048addec 127962001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 12797
048addec
JD
12798 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
12799 scroll bars of the frame before deleting the frame itself. If the
12800 frame has a widget, delete the frame with XtDestroyWidget, and do
12801 not call XDestroyWindow before that.
60a653f1 12802
048addec 128032001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 12804
048addec 12805 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 12806
048addec 12807 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 12808
048addec 128092001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 12810
048addec
JD
12811 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
12812 excessively large.
60a653f1 12813
048addec
JD
12814 * insdel.c (make_gap_larger): New function.
12815 (make_gap_smaller): New function.
12816 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
12817 Call make_gap_smaller if arg is negative.
60a653f1 12818
048addec 128192001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12820
048addec
JD
12821 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
12822 Pass a dummy argument when calling interrupt_signal.
12823 (parse_menu_item): Mark disabled items before checking for empty def.
12824 (read_char_minibuf_menu_prompt): Make safety more visible.
12825 (read_key_sequence): Add a `first_unbound' variable.
12826 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
12827 unbound prefix as soon as we can detect it.
60a653f1 12828
048addec
JD
12829 * doc.c (Fsnarf_documentation): Add prototype.
12830 (get_doc_string): Handle negative arguments.
12831 (Fdocumentation): Use AREF and ASIZE.
12832 Move the calls to get_doc_string to a single place.
12833 Don't confuse an interactive-spec for a docstring reference.
12834 (Fdocumentation_property): Take advantage of the fact that
12835 get_doc_string now ignores the sign of the docstring position.
60a653f1 12836
048addec 12837 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 12838
048addec 128392001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12840
a64387ee 12841 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 12842
048addec 128432001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12844
048addec
JD
12845 * xterm.c (x_draw_image_relief): Use predefined macro instead of
12846 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 12847
048addec 128482001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 12849
048addec
JD
12850 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
12851 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 12852
048addec 12853 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 12854
048addec 128552001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12856
048addec 12857 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 12858
048addec 128592001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 12860
048addec 12861 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 12862
048addec 128632001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 12864
f63fd14e 12865 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 12866
048addec
JD
12867 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
12868 [!WM_MOUSELEAVE]: Define.
60a653f1 12869
048addec
JD
12870 * w32menu.c (current_popup_menu, get_menu_item_info):
12871 (set_menu_item_info): New vars.
12872 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
12873 (w32_menu_show): Set current_popup_menu.
12874 (add_menu_item): Allocate new strings for owner-drawn menu items
12875 and help strings.
12876 Use owner-draw for disabled menu items again.
12877 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
12878 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 12879
048addec
JD
12880 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
12881 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
12882 <WM_EXITMENULOOP>: Free menu strings.
12883 <WM_MOUSELEAVE>: Stop tracking mouse.
12884 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 12885
048addec
JD
12886 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
12887 and mouse face.
60a653f1 12888
048addec 128892001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 12890
048addec
JD
12891 The following changes add left-fringe and right-fringe
12892 frame parameters to adjust fringe widths, or remove one or
12893 both fringes.
60a653f1 12894
048addec
JD
12895 * frame.h (struct frame): Remove trunc_area_pixel_width and
12896 trunc_area_cols fields.
12897 (Qleft_fringe, Qright_fringe): Declare.
12898 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 12899
048addec
JD
12900 * frame.c (Qleft_fringe, Qright_fringe): New vars.
12901 (syms_of_frame): Initialize them.
60a653f1 12902
048addec
JD
12903 * window.c (coordinates_in_window): Handle separate left and right
12904 fringe widths.
60a653f1 12905
048addec
JD
12906 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
12907 and fringe_cols fields.
12908 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
12909 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
12910 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
12911 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
12912 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
12913 (x_compute_fringe_widths): Add prototype.
60a653f1 12914
048addec
JD
12915 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
12916 fill fringe evenly with small dashes.
f63fd14e 12917 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
12918 clip the new ZV bitmap to avoid jitter between rows.
12919 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
12920 background. Don't draw fringe bitmaps if fringe width is zero.
12921 (x_compute_fringe_widths): New function.
12922 (x_new_font, x_set_window_size_1): Use it.
60a653f1 12923
048addec
JD
12924 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
12925 (x_set_frame_parameters): Process `font' parameter before other
12926 parameters as fringe widths depend on it.
12927 (x_set_fringe_width): New function.
12928 (x_figure_window_size): Use x_compute_fringe_widths.
12929 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
12930 parameters.
60a653f1 12931
048addec
JD
12932 * widget.c (set_frame_size): Use x_compute_fringe_widths.
12933 (EmacsFrameSetCharSize): Ditto.
60a653f1 12934
048addec
JD
12935 * w32term.h: Merged changes from xterm.h.
12936 * w32term.c: Merged changes from xterm.c.
12937 * w32fns.c: Merged changes from xfns.c.
60a653f1 12938
048addec 129392001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12940
048addec 12941 * COPYING: Removed.
60a653f1 12942
048addec 129432001-11-29 Dave Love <fx@gnu.org>
60a653f1 12944
048addec
JD
12945 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
12946 extra extra slot.
12947 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 12948
048addec 129492001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12950
048addec
JD
12951 * fileio.c (file-name-coding-system)
12952 (default-file-name-coding-system): Doc fix (links to referenced
12953 variables added).
60a653f1 12954
048addec 129552001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12956
048addec
JD
12957 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
12958 Add dummy uses of gcproN variables.
60a653f1 12959
048addec
JD
12960 * category.c (describe_category, describe_category_1)
12961 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
12962 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 12963
048addec 129642001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 12965
048addec 12966 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 12967
048addec
JD
12968 * Makefile.in (lispdir): New variable, referring to build dir.
12969 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 12970
048addec 129712001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 12972
048addec
JD
12973 * w32menu.c (w32_menu_display_help): Actually add the new argument
12974 OWNER.
60a653f1 12975
048addec 129762001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 12977
048addec
JD
12978 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
12979 menu items. From David Ponce <dponce@wanadoo.fr>.
12980 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
12981 conditionally.
f63fd14e 12982 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 12983 help event in the owner frame's keyboard buffer.
60a653f1 12984
048addec
JD
12985 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
12986 (Fx_show_tip): Don't subtract last width from row width.
12987
12988 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
12989 (w32_read_socket): Use EQ to compare frames.
60a653f1 12990
048addec 129912001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 12992
048addec
JD
12993 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12994 OVERLAPS_P.
60a653f1 12995
048addec 129962001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12997
048addec
JD
12998 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
12999 `gcpro3' and `gcpro4'.
60a653f1 13000
048addec 13001 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 13002
048addec 130032001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13004
048addec 13005 * ccl.c: Use AREF and ASIZE.
60a653f1 13006
048addec 130072001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13008
048addec
JD
13009 * lisp.h (run_hook_list_with_args): Remove.
13010 (LIST_END_P): Fix call to wrong_type_argument.
13011 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 13012
048addec 130132001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13014
048addec
JD
13015 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
13016 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 13017
048addec
JD
13018 * eval.c: Use AREF and ASIZE.
13019 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 13020
048addec
JD
13021 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
13022 which match the end of the file-name.
13023 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
13024 is not a valid env var, but leave it as is instead.
60a653f1 13025
048addec
JD
13026 * keymap.c (access_keymap): Handle t bindings like nil bindings.
13027 Make nil bindings in char-tables transparent.
13028 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 13029
048addec 130302001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 13031
048addec
JD
13032 * textprop.c (set_text_properties_1): Allow START, END in either order.
13033 Do nothing if range is empty.
60a653f1 13034
048addec 13035 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 13036
048addec
JD
13037 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
13038 (clean): Not here.
60a653f1 13039
048addec 130402001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13041
048addec
JD
13042 * textprop.c (set_text_properties_1): Clearly mark that the
13043 interval should not be empty.
60a653f1 13044
048addec
JD
13045 * intervals.c (graft_intervals_into_buffer):
13046 Don't call set_text_properties_1 on an empty interval.
60a653f1 13047
048addec 130482001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 13049
048addec 13050 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 13051
048addec
JD
13052 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
13053 don't lose the data in it.
60a653f1 13054
048addec 130552001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 13056
048addec 13057 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 13058
c62aec78 13059 * buffer.c (Fkill_buffer): Likewise.
60a653f1 13060
c62aec78 13061 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 13062
048addec 130632001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13064
048addec 13065 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 13066
048addec 130672001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13068
048addec
JD
13069 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
13070 Niemitalo <kon@iki.fi>.
60a653f1 13071
048addec 130722001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 13073
048addec 13074 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 13075
048addec
JD
13076 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
13077 (Fx_show_tip): Block input during frame creation.
13078 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 13079
048addec 130802001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 13081
048addec
JD
13082 * lread.c (Fload): Detect recursive load error for more than 3
13083 nestings of the same file.
13084 (Vrecursive_load_depth_limit): Variable deleted.
13085 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 13086
048addec 130872001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 13088
048addec
JD
13089 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
13090 mouse position if either left or top is not specified.
60a653f1 13091
048addec
JD
13092 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
13093 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
13094 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
13095 (my_create_tip_window): Assign tip_window.
13096 (x_create_tip_frame): Use same defaults as X.
13097 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 13098 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 13099
048addec
JD
13100 * w32term.c (x_after_update_window_line): Doc fix.
13101 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
13102 frames.
13103 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 13104
048addec
JD
13105 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
13106 for all Windowed systems.
60a653f1 13107
048addec 131082001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13109
048addec
JD
13110 * msdos.c (IT_clear_screen): If the frame's faces are not yet
13111 realized, use the initial screen colors to clear the screen.
60a653f1 13112
048addec 131132001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13114
048addec
JD
13115 * textprop.c (Fset_text_properties): Remove unused variables
13116 `unchanged', `prev_changed', `s' and `len'.
60a653f1 13117
048addec
JD
13118 * search.c (Freplace_match): Remove unused variable `inslen'.
13119
13120 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
13121
131222001-11-22 Jason Rumney <jasonr@gnu.org>
13123
13124 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
13125 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
13126 (my_create_tip_window): New function.
13127 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
13128 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
13129
131302001-11-20 Jason Rumney <jasonr@gnu.org>
13131
13132 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
13133 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
13134
13135 * w32fns.c (Vw32_system_coding_system): Remove.
13136 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
13137
131382001-11-19 Stefan Monnier <monnier@cs.yale.edu>
13139
13140 * fileio.c (Fwrite_region): Move choose_write_coding_system to
13141 after build_annotations.
13142
13143 * syntax.c (describe_syntax): Add dummy arg.
13144 (describe_syntax_1): Update call to describe_vector.
13145
13146 * category.c (describe_category): Add dummy arg.
13147 (describe_category_1): Update call to describe_vector.
13148
13149 * keymap.c (Fdescribe_vector): Add `describer' parameter.
13150 (describe_command, describe_translation): Add dummy second param.
13151 (describe_map): Call elt_describer with two arguments.
13152 (describe_vector_princ): Add `fun' parameter.
13153 Call it instead of the hardcoded `princ'.
13154 (describe_vector): Add arg `args'.
13155 Pass it as a new second argument to elt_describer.
60a653f1 13156
048addec 13157 * keymap.h (describe_vector): Update prototype.
60a653f1 13158
048addec
JD
13159 * frame.c: Don't include keymap.h any more.
13160 (keys_of_frame): Remove.
60a653f1 13161
048addec 13162 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 13163
048addec 13164 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 13165
048addec 131662001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 13167
048addec
JD
13168 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
13169 if defined, 0 otherwise.
13170 (MAP_FAILED): Define if not defined and use it to test mmap failure.
13171 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 13172
048addec 131732001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 13174
048addec 13175 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 13176
048addec 131772001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 13178
048addec
JD
13179 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
13180 (x_draw_bar_cursor): If the background color of the glyph under
13181 the cursor equals the frame's cursor color, use the glyph's
13182 foreground color for drawing the bar cursor.
13183 (x_after_update_window_line): Clear internal border in different
13184 circumstances.
13185 (w32_set_vertical_scroll_bar): Check for width and height > 0.
13186 (w32_draw_relief_rect): Correct relief by 1 pixel.
13187 (x_set_glyph_string_background_width):
13188 Set extends_to_end_of_line_p if the row's fill_line_p is set and
13189 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
13190 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
13191 if cursor_in_non_selected_windows is false.
13192 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
13193 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
13194 Notice if cursor gets overwritten.
13195 (notice_overwritten_cursor): Renamed from
13196 note_overwritten_text_cursor. Rewritten to take glyph widths
13197 into account, and to take X positions as parameters.
13198 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13199 around call to x_draw_glyphs.
13200 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13201 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13202 color to use for image glyph reliefs.
13203 (x_draw_image_relief): Accept zero tool_bar_button_relief.
13204 (glyph_rect): Remove unused variable `area'.
60a653f1 13205
048addec
JD
13206 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
13207 some items.
13208 (x_set_internal_border_width): Set frame garbaged when window
13209 doesn't exist yet.
13210 (Fx_create_frame): Accept zero tool_bar_button_relief.
13211 (x_clear_image_1, four_corners_best, image_background)
13212 (image_background_transparent): New functions.
13213 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
13214 (gs_format): Add `:background' entry.
13215 (lookup_image): Set IMG's background color if specified.
13216 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13217 when appropriate.
13218 (x_clear_image_1): Reset `background_valid' and
13219 `background_transparent_valid' fields.
13220 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13221 calculating it here. Set IMG's background_transparent field.
13222 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13223 (enum png_keyword_index): Add PNG_BACKGROUND.
13224 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13225 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13226 (enum gif_keyword_index): Add GIF_BACKGROUND.
13227 (enum gs_keyword_index): Add GS_BACKGROUND.
13228 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
13229 Pre-calculate image background color where necessary.
13230 (x_create_x_image_and_pixmap, xbm_load, gs_load):
13231 Use display info's n_cbits entry for screen depth.
13232 (Fx_show_tip): Remove unused variables `buffer', `top',
13233 `left', `max_width' and `max_height'.
60a653f1 13234
048addec 13235 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 13236
048addec 132372001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 13238
048addec 13239 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 13240
048addec 132412001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13242
048addec 13243 * frame.c (Fframe_live_p): Doc fix.
60a653f1 13244
048addec 132452001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 13246
048addec
JD
13247 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
13248 (message_dolog_marker3): New static variables hold three markers.
13249 (syms_of_xdisp): Initialize and staticpro them.
13250 (message_dolog): Use message_dolog_marker1..3 instead of
13251 allocating markers each time. Unchain them when done.
60a653f1 13252
048addec 132532001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13254
048addec 13255 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 13256
048addec 132572001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 13258
048addec 13259 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 13260
048addec 132612001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13262
048addec 13263 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 13264
048addec 132652001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 13266
048addec 13267 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 13268
048addec 132692001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 13270
048addec
JD
13271 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
13272 with invalid position.
60a653f1 13273
048addec 132742001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 13275
048addec 13276 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 13277
048addec
JD
13278 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
13279 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
13280 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 13281
048addec 13282 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 13283
048addec 132842001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13285
048addec
JD
13286 * fileio.c (build_annotations): Split off the tail.
13287 (build_annotations_2): New fun. Extracted from build_annotations.
13288 (Fwrite_region): Split the call to build_annotations into two
13289 calls to build_annotations and build_annotations_2.
077907d4 13290
048addec 132912001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 13292
048addec
JD
13293 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
13294 clear_waiting_for_input with argument.
1756e2fb 13295
048addec 13296 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 13297
048addec 13298 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 13299
048addec 13300 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 13301
048addec 13302 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 13303
048addec 133042001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 13305
048addec
JD
13306 * fileio.c (choose_write_coding_system): New fun, extracted
13307 from Fwrite_region.
13308 (Fwrite_region): Use it.
fa336b91 13309
048addec
JD
13310 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
13311 (funcall_lambda, run_hook_with_args): Make static and add prototype.
13312 (ml_apply, find_handler_clause): Add prototype.
fa336b91 13313
048addec 133142001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 13315
048addec 13316 * config.in: Add #undef HAVE_COFF_H.
fa336b91 13317
048addec
JD
13318 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
13319 Required for ISC 4.1.
fa336b91 13320
048addec 133212001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 13322
048addec
JD
13323 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
13324 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 13325
048addec 133262001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 13327
048addec
JD
13328 The following changes are made to clean up the various internal
13329 references to the fringes to actually use the term `fringe' for
13330 them. Previously, they were called `flags areas', `bitmap areas',
13331 `left/right side of windows', or implicitly as `flags' or
13332 `bitmaps':
fa336b91 13333
048addec 13334 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 13335 Comments fixed. Use renamed symbols.
06e8f738 13336
f63fd14e 13337 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 13338
048addec
JD
13339 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
13340 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
13341 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 13342
048addec 13343 * msdos.c: Comment fix.
9ce647f4 13344
048addec 13345 * w32fns.c: Use renamed symbols.
9b784ab8 13346
f63fd14e 13347 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
13348 (fringe_bitmap_type): Renamed from bitmap_type.
13349 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13350 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
13351 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 13352
f63fd14e 13353 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
13354 (fringes_extra): Renamed from flags_areas_extra.
13355 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13356 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13357 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13358 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13359 (FRAME_X_LEFT_FRINGE_WIDTH):
13360 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13361 (FRAME_X_RIGHT_FRINGE_WIDTH):
13362 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 13363
048addec 13364 * widget.c: Use renamed symbols.
9f7e52b4 13365
f63fd14e 13366 * window.c: Comment fixes. Use renamed symbols.
048addec 13367 (coordinates-in-window-p): Doc fix.
fa336b91 13368
f63fd14e 13369 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 13370
048addec 13371 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 13372
048addec 13373 * xfns.c: Use renamed symbols.
89512fcd 13374
f63fd14e 13375 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
13376 (fringe_bitmap_type): Renamed from bitmap_type.
13377 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13378 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
13379 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 13380
f63fd14e 13381 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
13382 (fringes_extra): Renamed from flags_areas_extra.
13383 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13384 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13385 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13386 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13387 (FRAME_X_LEFT_FRINGE_WIDTH):
13388 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13389 (FRAME_X_RIGHT_FRINGE_WIDTH):
13390 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13391
133922001-11-15 Jason Rumney <jasonr@gnu.org>
13393
13394 * w32menu.c (add-menu-item): Make help_echo and radio buttons
13395 work for most menu items. From David Ponce
13396 <david.ponce@wanadoo.fr>.
13397
133982001-11-15 Gerd Moellmann <gerd@gnu.org>
13399
13400 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
13401 Some x_set_* function expect to be called even if old and new
13402 value are equal.
13403
13404 * xdisp.c (build_desired_tool_bar_string): Accept zero
13405 tool_bar_button_relief.
13406
13407 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
13408
13409 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
13410
13411 * xterm.c (x_draw_bar_cursor): If the background color of the
13412 glyph under the cursor equals the frame's cursor color, use
13413 the glyph's foreground color for drawing the bar cursor.
13414
13415 * dispnew.c (direct_output_forward_char): Fix character/byte
13416 position comparison.
7d18891d 13417
048addec 134182001-11-15 Miles Bader <miles@gnu.org>
d2936d21 13419
048addec
JD
13420 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
13421 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
13422 Update arguments to find_field.
13423 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
13424 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
13425 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
13426 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 13427
048addec 134282001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 13429
048addec 13430 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 13431
048addec
JD
13432 * dispextern.h (image_background, image_background_transparent):
13433 Conditionalize on HAVE_X_WINDOWS.
7d18891d 13434
048addec 134352001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 13436
048addec 13437 * print.c (Fprin1_to_string): Doc fix.
7d18891d 13438
048addec 13439 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 13440
048addec 13441 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 13442
048addec 13443 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 13444
048addec 13445 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 13446
048addec 13447 * eval.c (syms_of_eval): Doc fix.
7d18891d 13448
048addec 13449 * coding.c (syms_of_coding): Doc fix.
7d18891d 13450
048addec 13451 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 13452
048addec 13453 * dispnew.c (syms_of_display): Doc fix.
9474c847 13454
048addec 13455 * category.c (Fget_unused_category): Doc fix.
9474c847 13456
048addec 13457 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 13458
048addec 134592001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 13460
048addec 13461 * print.c (prin1, print): Doc fix.
e3059a5d 13462
048addec 134632001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 13464
048addec
JD
13465 * fontset.h: Remove declarations of variables
13466 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 13467
048addec
JD
13468 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
13469 `Vclip_large_size_font'.
eae936e2 13470
048addec 134712001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 13472
048addec 13473 * w32fns.c: Doc fix.
ddb67bdc 13474
048addec 134752001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 13476
048addec 13477 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 13478
048addec 13479 * fns.c: Doc fix.
6e1b91d7 13480
048addec 13481 * emacs.c: Doc fix.
1c1d3d69 13482
048addec 13483 * coding.c: Doc fix.
1c1d3d69 13484
048addec
JD
13485 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
13486 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
13487 `new style' [w/`doc:' keyword].
b6f4c7ba 13488
048addec 134892001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 13490
048addec
JD
13491 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
13492 LeaveNotify events. Only FocusIn and FocusOut do that now.
13493 (x_display_and_set_cursor): Do display hollow cursors in active
13494 minibuffer windows when they are not selected.
b6f4c7ba 13495
048addec 134962001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 13497
048addec 13498 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
13499 * w32term.c: Change doc-string comments to `new style'
13500 [w/`doc:' keyword]. Doc fixes.
a89f435d 13501
048addec
JD
13502 * w32fns.c: Don't define max.
13503 (Fx_open_connection): Only execute once.
a4cd0cd7 13504
048addec 135052001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 13506
048addec
JD
13507 * ccl.c: Change macros to use do-while block instead of if-else.
13508 Use braces to follow GNU Coding Standards.
eafb659a 13509
048addec 135102001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 13511
048addec 13512 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 13513
048addec 13514 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 13515
048addec
JD
13516 * insdel.c (replace_range): Use adjust_markers_for_replace
13517 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 13518
048addec 13519 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 13520
048addec
JD
13521 * textprop.c (set_text_properties_1): New subroutine
13522 broken out of set_text_properties.
13523 (set_text_properties): Use set_text_properties_1.
91823618 13524
048addec
JD
13525 * intervals.c (graft_intervals_into_buffer):
13526 Use set_text_properties_1 to clear out properties.
91823618 13527
048addec
JD
13528 * search.c (Freplace_match): Use replace_range to insert
13529 and delete. Don't request property inheritance from
13530 surrounding text.
86928dfb 13531
048addec 135322001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 13533
048addec 13534 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 13535 vertical fonts. Allow them if face name is explicitly specified.
048addec 13536 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 13537
048addec 135382001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 13539
048addec
JD
13540 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
13541 instead of malloc/free.
a78e0303 13542
048addec 135432001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 13544
048addec
JD
13545 * xfaces.c (merge_face_vectors): Use braces to follow GNU
13546 Coding Standards.
13547 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 13548
048addec 13549 * buffer.c (Fbury_buffer): Likewise.
0c99b139 13550
048addec 13551 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 13552
048addec
JD
13553 * coding.c (encode_coding): Use precomputed value of `src'.
13554 (encode_coding): Remove unused variable `src_end'.
13555 (code_convert_region): Remove unused variables `count'.
830ddd77 13556
048addec 135572001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 13558
048addec
JD
13559 * w32term.c (x_display_and_set_cursor): Do not move system caret
13560 if cursor_glyph is NULL.
55c6d645 13561
048addec 135622001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 13563
048addec 13564 * keymap.c (access_keymap): Fix compilation error.
5de38842 13565
048addec 135662001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 13567
048addec 13568 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 13569
048addec 135702001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 13571
048addec
JD
13572 * intervals.c (graft_intervals_into_buffer):
13573 Remove #ifdef'd-out code.
13574 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 13575
048addec
JD
13576 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
13577 code (eval-current-buffer).
13578 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 13579
048addec 135802001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 13581
048addec 13582 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 13583
048addec 135842001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 13585
048addec 13586 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 13587
048addec
JD
13588 * keyboard.c (make_lispy_event): Check integerness and fix
13589 Lisp_Object/int mixup.
17893c65 13590
048addec 135912001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 13592
048addec 13593 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 13594
048addec
JD
13595 * fontset.c (fontset_font_pattern): Remove unused variable
13596 `family_registry'.
d5360cc7 13597
048addec 13598 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 13599
048addec 136002001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 13601
048addec 13602 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 13603
048addec
JD
13604 * buffer.c (Fkill_buffer): Don't delete auto save file
13605 if buffer is modified.
d9d54213 13606
048addec 136072001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 13608
048addec
JD
13609 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
13610 CHECK_NUMBER_CDR.
b116830b 13611
048addec 136122001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 13613
048addec 13614 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 13615
048addec 136162001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 13617
048addec 13618 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 13619
048addec 136202001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 13621
048addec 13622 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 13623
048addec 136242001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 13625
048addec
JD
13626 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
13627 the program image directly.
982f6c7e 13628
048addec 136292001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 13630
048addec 13631 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 13632
048addec 136332001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 13634
048addec
JD
13635 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
13636 and CHECK_BUFFER.
d31053f9 13637
048addec
JD
13638 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
13639 (record_char): Likewise.
d31053f9 13640
048addec
JD
13641 * keyboard.c (make_lispy_event): Don't insist a drag event must
13642 move to a different buffer position. Instead, check for moving at
13643 least double_click_fuzz.
982f6c7e 13644
048addec 13645 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 13646
048addec 13647 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 13648
048addec
JD
13649 * indent.c (current_column_1, Fmove_to_column): Separate the code
13650 for display-table glyphs from the code for buffer text, to fix
13651 bugs in the former.
830047fd 13652
048addec 136532001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 13654
048addec
JD
13655 * buffer.c (Fbuffer_local_value): New function.
13656 (syms_of_buffer): Defsubr it.
2df5238c 13657
048addec
JD
13658 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
13659 value of `cursor-in-non-selected-windows'.
4e397688 13660
048addec
JD
13661 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
13662 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
13663 (syms_of_xdisp): Initialize it.
48b0f3ae 13664
048addec 136652001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 13666
048addec 13667 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 13668
048addec
JD
13669 * coding.c: Change doc-string comments to `new style' [w/`doc:'
13670 keyword].
3ecaf7e5 13671
048addec
JD
13672 * eval.c (top_level_value, top_level_set): Remove commented and
13673 #ifdef'd-out code.
13674 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 13675
048addec 136762001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 13677
048addec 13678 * xfns.c: Include unistd.h, if it exists.
8db2e33b 13679
048addec 13680 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 13681
048addec 13682 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 13683
048addec 136842001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 13685
048addec
JD
13686 * lisp.h (CHECK_STRING_CAR): New macro.
13687 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
13688 treating XCAR and XCDR as lvalues.
13689 (openp): Use CHECK_STRING_CAR.
13690 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 13691
048addec 136922001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 13693
048addec
JD
13694 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
13695 (SIGMASKTYPE): Define.
1b1acc13 13696
048addec 13697 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 13698
048addec 136992001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 13700
048addec
JD
13701 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
13702 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
13703 Fix typos in comments.
6cb16f95 13704
048addec
JD
13705 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
13706 and #ifdef'd-out code.
13707 Fix and reindent comments.
6cb16f95 13708
048addec 13709 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 13710
048addec
JD
13711 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
13712 argument `i' in macros.
6cb16f95 13713
048addec
JD
13714 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
13715 `i' in macros.
7e9d3c2f 13716
048addec
JD
13717 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
13718 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
13719 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
13720 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
13721 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
13722 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
13723 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
13724 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
13725 in macros.
7e9d3c2f 13726
048addec
JD
13727 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
13728 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
13729 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
13730 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
13731 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
13732 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
13733 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
13734 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
13735 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
13736 (remove unused second argument).
7e9d3c2f 13737
048addec 137382001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 13739
048addec
JD
13740 * syntax.c (describe_syntax): New wrapper.
13741 (Finternal_describe_syntax_value): Rename from describe_syntax.
13742 Don't insert space at front and \n at the end.
13743 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 13744
048addec
JD
13745 * regex.c (re_wctype): Try to fix some warnings.
13746 (regcomp, regexec): Don't forget the __restrict.
9ba48103 13747
048addec 137482001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 13749
048addec 13750 * textprop.c (Fget_char_property): Doc fix.
9ba48103 13751
048addec 137522001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 13753
048addec 13754 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 13755
048addec 13756 * data.c (Fsetq_default): Ditto.
c22e59e1 13757
048addec 13758 * callint.c (Finteractive): Ditto.
9271ed2c 13759
048addec 137602001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 13761
048addec
JD
13762 * macros.c: Don't include keymap.h any more.
13763
137642001-11-01 Richard M. Stallman <rms@gnu.org>
13765
13766 * data.c (Fmake_local_variable): Doc fix.
13767
13768 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
13769 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 13770
048addec 13771 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
13772 bindings along with or instead of the buffer local map.
13773 Make the overriding maps override what they should.
13774
f00691a3 137752001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
13776
13777 * window.c (grow_mini_window): Fix typo in comment.
13778
27188d11
GM
137792001-11-01 Gerd Moellmann <gerd@gnu.org>
13780
7b49b9d2
GM
13781 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
13782 (XTset_vertical_scroll_bar): Likewise.
13783
43f7c3ea
GM
13784 * xfns.c (x_build_heuristic_mask): Use four_corners_best
13785 instead of IMAGE_BACKGROUND.
c22e59e1 13786
b350c2e5
GM
13787 * xfns.c (four_corners_best): Reindent.
13788
c22e59e1 13789 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
13790 Handle :box so that it is possible to specify sexprs.
13791
bf00d461
EZ
137922001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
13793
13794 * s/hpux11.h: New file.
13795
f00691a3 137962001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 13797
2b209b97
PJ
13798 * emacs.c (USAGE1): Show command line option --no-window-system
13799 instead of --no-windows in usage.
13800 (standard_args): Rename --no-windows to --no-window-system.
13801 (bug_reporting_address): Follow Emacs coding conventions.
13802
9dbc9081
PJ
13803 * eval.c (Fcommandp): Doc fix.
13804 Change doc-string comments to `new style' [w/`doc:' keyword].
13805
4e10df59
PJ
13806 * frame.c (Fframe_live_p): Doc fix.
13807
13808 * buffer.c (selective-display-ellipses): Doc fix.
13809
dd387b25
GM
138102001-10-31 Gerd Moellmann <gerd@gnu.org>
13811
fe957e65
GM
13812 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
13813
dd387b25
GM
13814 * xfaces.c (realize_x_face): If C is not a single-byte character,
13815 set the face's colors_copied_bitwise_p instead of the defaulted_p
13816 members which have a different meaning.
13817 (free_face_colors): Do nothing for a face whose colors have been
13818 copied bitwise.
13819
c22e59e1 13820 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 13821
f00691a3 138222001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 13823
687784e8
PJ
13824 * marker.c, mocklisp.c: Change doc-string comments to `new style'
13825 [w/`doc:' keyword].
2e1280f8 13826
b9d9a9b9
GM
138272001-10-31 Gerd Moellmann <gerd@gnu.org>
13828
13829 * fns.c (require_unwind): Return Lisp_Object.
13830
f00691a3 138312001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 13832
fa1361cb
PJ
13833 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
13834 (last-input-char): Revert doc-string to be the same as the
13835 doc-string of `last-input-event'.
13836
6c465a15 13837 * xdisp.c: Fix typos in comments.
48400103 13838
eafa3196
GM
138392001-10-31 Gerd Moellmann <gerd@gnu.org>
13840
13841 * window.c (grow_mini_window): Handle case that the root
13842 window is already smaller than the nominal mininum height.
13843
747d3f2a
SM
138442001-10-30 Stefan Monnier <monnier@cs.yale.edu>
13845
bf9bb76f
SM
13846 * emacs.c (main): Don't call keys_of_macros any more.
13847
13848 * lisp.h (keys_of_macros): Remove.
13849
13850 * macros.c (keys_of_macros): Remove.
13851
747d3f2a
SM
13852 * xfaces.c (Fface_attribute_relative_p): Declare args.
13853
5e905a57
JR
138542001-10-30 Jason Rumney <jasonr@gnu.org>
13855
13856 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
13857 (enum_font_cb2): Ignore fonts with vertical orientation.
13858
3a426197
RS
138592001-10-30 Richard M. Stallman <rms@gnu.org>
13860
13861 * keyboard.c (Finput_pending_p): Doc fix.
13862
a742d646
GM
138632001-10-30 Gerd Moellmann <gerd@gnu.org>
13864
259cf6bc
GM
13865 * xterm.c (x_after_update_window_line): Don't run the code
13866 clearing in borders for rows whose visible height is 0.
13867
3f99f948
GM
13868 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
13869 resized_p flag is set. If not set, use the much less flickering
13870 method previously used.
13871
13872 * dispnew.c (change_frame_size_1): Set frame's resized_p.
13873
13874 * frame.h (struct frame) <resized_p>: New member.
13875
b4a3be43
GM
13876 * lread.c (to_multibyte): Ensure read_buffer is at least twice
13877 as large as the number of bytes to convert.
747d3f2a 13878
a742d646
GM
13879 * lread.c (to_multibyte): New function.
13880 (read1): Use it.
13881
cacbb9e9
EZ
138822001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
13883
13884 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
13885
99cb6b2f
GM
138862001-10-30 Gerd Moellmann <gerd@gnu.org>
13887
327f42ee 13888 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
13889 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
13890 if the row's fill_line_p is set and drawing the last glyph with
13891 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 13892
99cb6b2f
GM
13893 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
13894
8e8223e2
SM
138952001-10-29 Stefan Monnier <monnier@cs.yale.edu>
13896
13897 * xmenu.c: Include coding.h and charset.h.
13898 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
13899 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
13900 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
13901 Explicitly set wv->help. Use `TRUE' rather than `True'.
13902 (menu_help_callback): Use empty_string.
13903
13904 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
13905 (Fx_popup_dialog): Explicitly init f.
13906 (w32_menu_display_help): Use empty_string.
13907
4d083a8f
RS
139082001-10-29 Richard M. Stallman <rms@gnu.org>
13909
b2304472
RS
13910 * fns.c (Frequire): Detect recursive try to require the same
13911 feature 3 or more levels deep, and get error.
13912 (require_unwind): New subroutine.
13913 (require_nesting_list): New variable.
13914 (syms_of_fns): Init and staticpro it.
13915
4d083a8f
RS
13916 * print.c (print_object): Clarify indication of insertion type.
13917
2fe41216
EZ
139182001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
13919
90480000
EZ
13920 * coding.c (syms_of_coding): Document that locale-coding-system is
13921 used for decoding input on X.
13922
2fe41216
EZ
13923 * window.c (Fscroll_left, Fscroll_right): Doc fix.
13924
f00691a3 139252001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
13926
13927 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
13928 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
13929
60ebcfe8
GM
139302001-10-29 Gerd Moellmann <gerd@gnu.org>
13931
9a7bdceb
GM
13932 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
13933 use NO_CURSOR if cursor_in_non_selected_windows is false.
13934
3f08fcd2
GM
13935 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
13936 the slant attribute if FRAME is t.
13937
0ccfdad2
GM
13938 * xfns.c (x_set_internal_border_width): Set frame garbaged
13939 when X window doesn't exist yet.
13940
ef253080
GM
13941 * xterm.c (x_after_update_window_line): Clear internal border
13942 in different circumstances.
b116830b 13943
60ebcfe8
GM
13944 * xterm.c (XTread_socket) <KeyPress>: Don't use
13945 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
13946 <handa@etl.go.jp>.
13947
73d25f9c
EZ
139482001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
13949
13950 * m/ibms390.h: New file. From Adam Thornton
13951 <athornton@sinenomine.net>.
13952
cac1daf0
GM
139532001-10-28 Gerd Moellmann <gerd@gnu.org>
13954
053b3256 13955 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 13956
cac1daf0
GM
13957 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
13958 a loop counter.
13959
f00691a3 139602001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 13961
f9711de4 13962 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 13963
4707d2d0
PJ
13964 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
13965 keyword].
13966 Fix typos in comments.
b116830b 13967
d883731c
PJ
13968 * emacs.c (bug_reporting_address): New function.
13969 Use it when displaying usage message.
13970
04012254
PJ
13971 * minibuf.c (read_minibuf): Remove unused external declaration of
13972 variable `Qread_only'.
13973
13b1a09c
PJ
13974 * keymap.c (access_keymap): Remove unused variable `charset'.
13975
5bbf4378
MB
139762001-10-28 Miles Bader <miles@gnu.org>
13977
13978 * xfaces.c (merge_face_heights): Handle TO being relative as well.
13979 Remove #ifdef'd-out code.
13980 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
13981 (syms_of_xfaces): Initialize them.
13982
1ce1e4ee
JR
139832001-10-27 Jason Rumney <jasonr@gnu.org>
13984
13985 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
13986 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
13987 position using the system caret.
13988
13989 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
13990 (w32_system_caret_height, w32_system_caret_x)
13991 (w32_system_caret_y): New variables for tracking system caret.
13992 (w32_initialize): Initialize them.
c2d53558 13993 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 13994
c2d53558
SM
13995 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
13996 New messages types.
1ce1e4ee
JR
13997
13998 * w32term.c (note_mouse_highlight): Clear old help_echo.
13999
f00691a3 140002001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 14001
bb4600a4
PJ
14002 * xterm.c: Fix typo in a comment.
14003
7db35a48
PJ
14004 * emacs.c: Fix typos in comments.
14005 Remove unnecessary spaces.
14006 Change doc-string comments to `new style' [w/`doc:' keyword].
14007 (USAGE2): Fix typos in usage string.
14008
a7248e4f
PJ
14009 * xterm.c: Fix typo in a comment.
14010
4e30ce42
PJ
14011 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
14012 emacs.c.
14013
62725a92
GM
140142001-10-27 Gerd Moellmann <gerd@gnu.org>
14015
798dbe1f 14016 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 14017 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
14018 farther backward when target_y was not reached.
14019
62725a92
GM
14020 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
14021 Display errno only if non-zero.
14022 (sound_warning): New function.
14023 (vox_configure): Don't treat failing to set sample rate as error.
14024 (various places): Improve error messages.
14025
d4e34d24
EZ
140262001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
14027
944e6f60
EZ
14028 * fileio.c (Faccess_file): Run the argument filename through
14029 Fexpand_file_name, before using it.
14030
d4e34d24
EZ
14031 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
14032 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
14033
38d2af0c
GM
140342001-10-26 Gerd Moellmann <gerd@gnu.org>
14035
da80a8d5
GM
14036 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
14037
38d2af0c
GM
14038 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14039 Fix clearing in the case of scroll bars on the right.
c2d53558 14040
45de4a6f 140412001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
14042
14043 * w32gui.h (XImage): Add a dummy typedef.
14044
fbd5ceb2
GM
140452001-10-26 Gerd Moellmann <gerd@gnu.org>
14046
c2d53558 14047 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 14048
b23236fb
EZ
140492001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
14050
14051 * frame.c (Fframe_parameter): Fix last change.
14052
5d991fc4
EZ
14053 * fileio.c: Revert last change (which removed old commented-out
14054 version of expand-file-name). Add a comment that explains why
14055 this old version should not be removed.
14056
879eadc3
GM
140572001-10-25 Gerd Moellmann <gerd@gnu.org>
14058
75700ff2
GM
14059 * frame.c (Fframe_parameter): Fix a bug whereby some
14060 ``artificial'' frame parameters, like `minibuffer' were not
14061 obtained by calling Fframe_parameters.
14062
dfe92a6a
GM
14063 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
14064 cursor differently.
14065
879eadc3
GM
14066 * xdisp.c (move_it_vertically_backward): Compute line height
14067 differently. Add heuristic to try to be more compatible to 20.x.
14068
e1010ebe
SM
140692001-10-25 Stefan Monnier <monnier@cs.yale.edu>
14070
d73a471b
SM
14071 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
14072
d6da5a06
GM
14073 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
14074 boolean.
e1010ebe 14075
f66bd220
MB
140762001-10-25 Miles Bader <miles@gnu.org>
14077
14078 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
14079 BG is a pointer to a structure, not a structure.
14080 (gif_format, png_format): Add missing commas.
14081
d436d538
RS
140822001-10-24 Richard M. Stallman <rms@gnu.org>
14083
14084 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 14085 (syms_of_xfaces): Defsubr it.
d436d538 14086
f00691a3 140872001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
14088
14089 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
14090 variable `area'.
14091
f00691a3 140922001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 14093
c2d53558 14094 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 14095
e2a57b34
MB
140962001-10-25 Miles Bader <miles@gnu.org>
14097
14098 * dispextern.h (struct image): Add `background',
14099 `background_valid', and `background_transparent' fields.
14100 (image_background, image_background_transparent): New declarations.
14101 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
14102 * xfns.c (image_background, image_background_transparent)
14103 (four_corners_best): New functions.
c2d53558 14104 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
14105 (gs_format): Add `:background' entry.
14106 (lookup_image): Set IMG's background color if specified.
14107 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14108 when appropriate.
14109 (x_clear_image_1): Reset `background_valid' and
14110 `background_transparent_valid' fields.
14111 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14112 calculating it here. Set IMG's background_transparent field.
14113 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14114 (enum png_keyword_index): Add PNG_BACKGROUND.
14115 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14116 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14117 (enum gif_keyword_index): Add GIF_BACKGROUND.
14118 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 14119 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
14120 Pre-calculate image background color where necessary.
14121 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14122 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14123 color to use for image glyph reliefs.
14124
b547b6e8
GM
141252001-10-24 Gerd Moellmann <gerd@gnu.org>
14126
d9e3b8c6
GM
14127 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
14128 in full-width rows.
c2d53558 14129
b547b6e8
GM
14130 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14131 Fix clearing of area not covered by scroll bar.
14132
f00691a3 141332001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
14134
14135 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
14136 and `real_start'.
c2d53558 14137 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
14138 (glyph_rect): Remove unused variable `area'.
14139
76cb5e06
GM
141402001-10-24 Gerd Moellmann <gerd@gnu.org>
14141
bdbdebff 14142 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
14143
14144 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
14145 (row_containing_pos): Take additional argument DY.
14146 Treat rows ending in middle of char differently.
62e33982
GM
14147 (display_line): Handle tabs on window systems differently.
14148
14149 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
14150 with additional argument.
14151
14152 * dispextern.h (row_containing_pos): Adjust prototype.
14153
76cb5e06
GM
14154 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
14155 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
14156 (try_window_id, try_window_reusing_current_matrix)
14157 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 14158 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 14159
f00691a3 141602001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 14161
c9e60620
PJ
14162 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
14163 gnuemacs).
14164 (HAVE_BOXES): Fix typo in comment.
14165 (push_menu_pane): Fix typo in comment.
14166
3b552d56
PJ
14167 * xdisp.c: (display_prop_string_p): Remove unused local declaration
14168 of `Qwhen'.
14169 (single_display_prop_string_p): Remove unused local declarations
14170 of `Qwhen' and `Qmargin'.
14171 (string_buffer_position): Remove unused variable `around'.
14172 (store_frame_title): Remove unused variable `width'.
14173
15c565ac
PJ
14174 * window.c: Don't define max.
14175 (coordinates_in_window): Remove unused variable `uy'.
14176
a8818eb9
PJ
14177 * widget.c: Don't define max.
14178
996fee11
PJ
14179 * process.c: Don't define max.
14180 (create_process): Remove unused variable `buffer'.
14181
496e1a5b
GM
141822001-10-23 Gerd Moellmann <gerd@gnu.org>
14183
c2d53558 14184 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 14185
5905ae8b
EZ
141862001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
14187
14188 * xfaces.c (Finternal_set_lisp_face_attribute)
14189 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
14190 frame is on a windowed display.
14191
24db49fb
GM
141922001-10-23 Gerd Moellmann <gerd@gnu.org>
14193
c2d53558
SM
14194 * dispnew.c (sync_window_with_frame_matrix_rows):
14195 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
14196 of marginal areas.
14197
c2d53558 14198 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 14199
f0487f05
EZ
142002001-10-23 Andreas Schwab <schwab@suse.de>
14201
14202 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
14203 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
14204
f0a48a01
GM
142052001-10-23 Gerd Moellmann <gerd@gnu.org>
14206
c2d53558 14207 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
14208 REAL_END. Notice if cursor gets overwritten.
14209 (notice_overwritten_cursor): Take X positions as parameters.
14210 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14211 around call to x_draw_glyphs.
14212
f00691a3 142132001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 14214
fc11dff0
PJ
14215 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
14216 instead of C) and usage.
a50a10a0 14217
fc11dff0
PJ
14218 * editfns.c (char-to-string): Fix argument names (use CHAR instead
14219 of C) and usage.
a50a10a0
PJ
14220
14221 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
14222 `left', `max_width' and `max_height'.
14223
8738febd
GM
142242001-10-23 Gerd Moellmann <gerd@gnu.org>
14225
14226 * xdisp.c (display_line): For a tab continued to the next line,
14227 set row's ends_in_middle_of_char_p.
14228
653c329b
GM
142292001-10-22 Gerd Moellmann <gerd@gnu.org>
14230
14231 * xdisp.c (display_line): Fix computation of continuation lines
14232 width for TABs.
14233
f00691a3 142342001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 14235
7ba51063
PJ
14236 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
14237 `Qlaplace'.
14238
f958c5ac
PJ
14239 * fileio.c: Remove unused code.
14240
eb360291
MB
142412001-10-22 Miles Bader <miles@gnu.org>
14242
14243 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
14244 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
14245 Remove `DOC_STRINGS_IN_COMMENTS' cases.
14246
98515cf0
JR
142472001-10-21 Jason Rumney <jasonr@gnu.org>
14248
14249 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
14250
93026d88
EZ
142512001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
14252
14253 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
14254 (Finsert_string): Avoid the multi-line string literals warning.
14255
c9a95b79
MB
142562001-10-22 Miles Bader <miles@gnu.org>
14257
14258 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
14259 (Fdocumentation): Don't use it.
14260 (syms_of_doc): Don't initialize it.
14261
14262 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
14263 * print.c (Fwith_output_to_temp_buffer): Likewise.
14264 * window.c (Fsave_window_excursion): Likewise.
c2d53558 14265 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 14266 (Fsave_restriction): Likewise.
c2d53558
SM
14267 * eval.c (Frun_hooks, Frun_hook_with_args)
14268 (Frun_hook_with_args_until_failure)
14269 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
14270 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
14271 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
14272 (Funwind_protect, Fcondition_case): Likewise.
14273 * coding.c (Ffind_operation_coding_system): Likewise.
14274 * keyboard.c (Ftrack_mouse): Likewise.
14275
a3b10252
MB
142762001-10-21 Miles Bader <miles@gnu.org>
14277
c2d53558 14278 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
14279 (Fmake_hash_table): Add usage: string to doc string.
14280 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 14281 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
14282 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
14283 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
14284 (Fml_prefix_argument_loop): Likewise.
14285
f00691a3 142862001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 14287
c2d53558 14288 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 14289
c6f73eec
PJ
14290 * sysdep.c (init_sys_modes): Change doc-string comments to `new
14291 style' [w/`doc:' keyword].
14292
14293 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
14294 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
14295 comments to `new style' [w/`doc:' keyword].
14296
3cf3436e
JR
142972001-10-21 Jason Rumney <jasonr@gnu.org>
14298
14299 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
14300
c169b8f1
JR
14301 * w32term.c (remember_mouse_glyph): New function.
14302 (w32_mouse_position): Use it.
14303 (note_mouse_movement): If the mouse moved off the glyph, remember
14304 its new position.
c2d53558 14305
4fdd691b
JR
14306 * w32term.h (struct w32_output): Correct spelling of x_compatible.
14307 (w32_display_info): Add mouse_face_overlay.
14308
c169b8f1
JR
14309 * w32term.c (notice_overwritten_cursor): Renamed from
14310 note_overwritten_text_cursor. Rewritten to take glyph widths into
14311 account.
14312 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
14313 (fast_find_string_pos): New function.
14314 (fast_find_position): Return the correct vpos. Add parameter
14315 STOP. In the final row, stop before glyphs having STOP as object.
14316 Don't consider glyphs that are not from a buffer.
14317 (fast_find_position) [0]: Add a presumably more correct version
14318 for after 21.1.
14319 (expose_window_tree, expose_frame): Don't compute intersections here.
14320 (expose_window): Do it here instead.
14321 (expose_window_tree, expose_window, expose_line): Return 1 when
14322 overwriting mouse-face.
14323 (expose_window): If W is the window currently being updated, mark
14324 the frame garbaged.
14325 (expose_frame): If mouse-face was overwritten, redo it.
14326 (x_use_underline_position_properties): New variable.
14327 (syms_of_xterm): DEFVAR_BOOL it.
14328 (x_draw_glyph_string): Add comment to use it in future.
14329 (x_draw_glyph_string): Restore clipping after drawing box.
14330 Fix a computation of the underline position.
14331 (w32_get_glyph_string_clip_rect): Minor cleanup.
14332 (x_fill_stretch_glyph_string): Remove an assertion.
14333 (x_produce_glyphs): Don't convert multibyte characters
14334 to unibyte characters in unibyte buffers.
14335 (cursor_in_mouse_face_p): New function.
14336 (x_draw_stretch_glyph_string): Use it to choose a different GC
14337 when drawing a cursor within highlighted text. Don't draw
14338 background again if it has already been drawn.
14339 (x_draw_glyph_string_box): Don't draw a full-width
14340 box just because the glyph row's full_width_p flag is set.
14341 (x_draw_glyphs): Fix computation of rightmost x for
14342 full-width rows.
14343 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
14344 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 14345 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
14346 (x_update_window_end): Handle overwritten mouse face
14347 also for tool bar windows.
14348 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
14349 DRAW is DRAW_IMAGE_RAISED.
14350 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
14351 actually redrawn. Make the function static.
14352 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
14353 optimize away highlighting if we pass over that same overlay again.
14354 (note_mouse_highlight): Call mouse_face_overlay_overlaps
14355 to detect a case where we have to highlight a different region
14356 despite not having left the currently highlighted region.
14357 Set mouse_face_overlay in the x_display_info. Avoid changing the
14358 mouse pointer shape when show_mouse_face has already done it, or
14359 there is no need. Handle mouse-face and help-echo in strings.
14360 (glyph_rect): New function.
14361 (w32_mouse_position): Use it to raise the threshold for mouse
14362 movement event generation.
14363 (w32_initialize_display_info): Initialize the x_display_info's
14364 mouse_face_overlay.
14365 (w32_set_vertical_scroll_bar): Don't clear a zero height
14366 or width area.
14367 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
14368 a widget to zero height.
14369
3cf3436e 14370 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 14371 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
14372 equivalents in menu_items.
14373 (w32_menu_show): Don't overwrite an item's name with its key
14374 description in case the description is a multibyte string.
14375 (single_submenu): Some cleanup.
14376
14377 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
14378 (postprocess_image): New function.
14379 (lookup_image): Call it for all image types except PostScript.
14380 (x_kill_gs_process): Call postprocess_image.
14381 (tiff_error_handler, tiff_warning_handler): New functions.
14382 (tiff_load): Install them as handlers.
14383 (x_kill_gs_process): Recognize if someone has cleared the image
14384 cache under us.
14385 (valid_image_p): Protect better against invalid image
14386 specifications. Previous code could signal an error.
14387 (Fx_hide_tip, Fshow_tip): Doc fix.
14388 (Fv_max_tooltip_size): New variable.
14389 (syns_of_xfns): DEFVAR_LISP it.
14390 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 14391 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
14392 window_width. Use a maximum tooltip size specified by
14393 Vx_max_tooltip_size, if that has valid contents.
14394 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
14395 Make sure the tooltip is completely visible.
14396 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
14397 (Fx_create_frame): Adjust the frame's height for presence
14398 of the tool bar before calling x_figure_window_size.
14399 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
14400 when the window gets smaller.
14401 (x_set_foreground_color): Set frame's cursor_pixel.
14402 (x_set_foreground_color, x_set_background_color): Cleaned up.
14403 (x_set_font): Handle case of x_new_fontset returning the same name
14404 as before, although there was a change in fontsets.
14405
386ca361
MB
144062001-10-21 Miles Bader <miles@gnu.org>
14407
c2d53558 14408 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
14409 (Flogxor): Add usage: string to doc string.
14410 * charset.c (Fstring): Likewise.
14411 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
14412 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
14413
f00691a3 144142001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 14415
03be2694
PJ
14416 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
14417
14418 * alloc.c: Reindent DEFUNs with doc: keywords.
14419
14420 * abbrev.c (Finsert_abbrev_table_description): Reindent.
14421
14ff1ee0
PJ
14422 * frame.c: Change doc-string comments to `new style' [w/`doc:'
14423 keyword].
14424
2f147815 14425See ChangeLog.9 for earlier changes.
6922b018
KH
14426
14427;; Local Variables:
49b3bd82 14428;; coding: iso-2022-7bit
6922b018 14429;; End:
2a34a036 14430
2f147815 14431 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
14432 Copying and distribution of this file, with or without modification,
14433 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
14434
14435;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4